@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap");
:root {
  --an-bg: #F5F7FA;
  --an-surface: #FFFFFF;
  --an-surface-rgb: 255, 255, 255;
  --an-surface2: #F3F4F6;
  --an-surface3: #E5E7EB;
  --an-surface-brighter: #FFFFFF;
  --an-primary: #497fe4;
  --an-primary-rgb: 73, 127, 228;
  --an-primary-soft: rgba(73, 127, 228, 0.08);
  --an-border: rgba(0, 0, 0, 0.10);
  --an-border-strong: rgba(0, 0, 0, 0.18);
  --an-control-border: rgba(0, 0, 0, 0.54);
  --an-placeholder: rgba(0, 0, 0, 0.6);
  --an-border-light: rgba(0, 0, 0, 0.05);
  --an-border-hover: rgba(0, 0, 0, 0.22);
  --an-bg-active: rgba(236, 78, 54, 0.07);
  --an-bg-subtle: #F9FAFB;
  --an-text: #111827;
  --an-text-muted: #6B7280;
  --an-text-faint: #9CA3AF;
  --an-rose: #EC4E36;
  --an-rose-soft: rgba(236, 78, 54, 0.08);
  --an-rose-ring: rgba(236, 78, 54, 0.30);
  --an-rose-glow: 0 0 16px rgba(236, 78, 54, 0.15);
  --an-orange: #F97316;
  --an-orange-soft: rgba(249, 115, 22, 0.08);
  --an-danger: var(--an-rose);
  --an-emerald: #10B981;
  --an-emerald-soft: rgba(16, 185, 129, 0.08);
  --an-amber: #F59E0B;
  --an-amber-soft: rgba(245, 158, 11, 0.08);
  --an-sky: #38BDF8;
  --an-sky-soft: rgba(56, 189, 248, 0.08);
  --an-violet: #6C63FF;
  --an-violet-soft: rgba(108, 99, 255, 0.08);
  --an-indigo: #818CF8;
  --an-shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.04);
  --an-shadow-sm: 0 1px 4px rgba(0, 0, 0, 0.05), 0 1px 2px rgba(0, 0, 0, 0.03);
  --an-shadow: 0 2px 8px rgba(0, 0, 0, 0.04), 0 1px 2px rgba(0, 0, 0, 0.02);
  --an-shadow-md: 0 4px 16px rgba(0, 0, 0, 0.06), 0 2px 4px rgba(0, 0, 0, 0.03);
  --an-shadow-lg: 0 12px 40px rgba(0, 0, 0, 0.08), 0 4px 12px rgba(0, 0, 0, 0.04);
  --an-shadow-xl: 0 20px 60px rgba(0, 0, 0, 0.12), 0 8px 20px rgba(0, 0, 0, 0.06);
  --an-radius: 14px;
  --an-radius-sm: 8px;
  --an-radius-xs: 6px;
  --an-radius-lg: 18px;
  --an-radius-pill: 9999px;
  --space-xs: 4px;
  --space-sm: 8px;
  --space-md: 12px;
  --space-lg: 16px;
  --space-xl: 24px;
  --space-2xl: 32px;
  --space-3xl: 48px;
  --an-gutter: 24px;
  --an-content-max-width: 1600px;
  --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-mono: 'SF Mono', 'Fira Code', monospace;
  --an-icon-size: 20px;
  --ease-default: cubic-bezier(0.4, 0, 0.2, 1);
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
  --ease-out: cubic-bezier(0, 0, 0.2, 1);
  --duration-fast: 150ms;
  --duration-norm: 250ms;
  --duration-slow: 400ms;
}

.waitry-dark-theme {
  --an-bg: #0F1117;
  --an-surface: #1A1D27;
  --an-surface-rgb: 26, 29, 39;
  --an-surface2: #22263A;
  --an-surface3: #2E3348;
  --an-surface-brighter: #2A2F45;
  --an-primary: #6B9FF8;
  --an-primary-rgb: 107, 159, 248;
  --an-primary-soft: rgba(107, 159, 248, 0.12);
  --an-border: rgba(255, 255, 255, 0.12);
  --an-border-strong: rgba(255, 255, 255, 0.20);
  --an-control-border: rgba(255, 255, 255, 0.42);
  --an-placeholder: #8B91A8;
  --an-border-light: rgba(255, 255, 255, 0.06);
  --an-border-hover: rgba(255, 255, 255, 0.28);
  --an-bg-active: rgba(240, 101, 80, 0.10);
  --an-bg-subtle: rgba(255, 255, 255, 0.03);
  --an-text: #E8EAF0;
  --an-text-muted: #8B91A8;
  --an-text-faint: #838AA8;
  --an-shadow-xs: 0 1px 3px rgba(0, 0, 0, 0.3);
  --an-shadow-sm: 0 2px 6px rgba(0, 0, 0, 0.35);
  --an-shadow: 0 4px 24px rgba(0, 0, 0, 0.4);
  --an-shadow-md: 0 8px 32px rgba(0, 0, 0, 0.5);
  --an-shadow-lg: 0 16px 48px rgba(0, 0, 0, 0.6), 0 6px 16px rgba(0, 0, 0, 0.4);
  --an-shadow-xl: 0 24px 64px rgba(0, 0, 0, 0.7), 0 8px 24px rgba(0, 0, 0, 0.5);
  --an-rose: #F06550;
  --an-rose-soft: rgba(240, 101, 80, 0.12);
  --an-rose-ring: rgba(240, 101, 80, 0.38);
  --an-rose-glow: 0 0 20px rgba(240, 101, 80, 0.25);
  --an-orange: #FB923C;
  --an-orange-soft: rgba(251, 146, 60, 0.12);
  --an-danger: var(--an-rose);
  --an-emerald: #34D399;
  --an-emerald-soft: rgba(52, 211, 153, 0.12);
  --an-amber: #FBBF24;
  --an-amber-soft: rgba(251, 191, 36, 0.12);
  --an-sky: #7DD3FC;
  --an-sky-soft: rgba(125, 211, 252, 0.12);
  --an-violet: #8B83FF;
  --an-violet-soft: rgba(139, 131, 255, 0.12);
  --an-indigo: #A5B4FC;
  color-scheme: dark;
}
.waitry-dark-theme ::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.12);
}
.waitry-dark-theme ::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.2);
}

html.waitry-full-width .home-container,
html.waitry-full-width .rpt-content,
html.waitry-full-width .mkt-dashboard-grid {
  max-width: none;
}

body,
html {
  font-family: var(--font-sans) !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: var(--an-text);
  background: var(--an-bg);
  text-rendering: optimizeLegibility;
  height: 100%;
  overflow: hidden;
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-sans) !important;
  color: var(--an-text);
  letter-spacing: -0.3px;
}

h1 {
  font-size: 28px;
  font-weight: 800;
  letter-spacing: -0.5px;
}

h2 {
  font-size: 22px;
  font-weight: 700;
  letter-spacing: -0.4px;
}

h3 {
  font-size: 18px;
  font-weight: 700;
}

h4 {
  font-size: 16px;
  font-weight: 600;
}

h5 {
  font-size: 14px;
  font-weight: 600;
}

h6 {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text-muted);
}

p, span, label, a, li, td, th, div {
  font-family: var(--font-sans);
}

::selection {
  background: rgba(236, 78, 54, 0.15);
  color: var(--an-text);
}

::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}

::-webkit-scrollbar-track {
  background: transparent;
}

::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.12);
  border-radius: var(--an-radius-pill);
}
::-webkit-scrollbar-thumb:hover {
  background: rgba(0, 0, 0, 0.2);
}

.green {
  color: #7ac142 !important;
}

.blue {
  color: #497fe4 !important;
}

.gray {
  color: #888888 !important;
}

.an-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 10px;
  border-radius: var(--an-radius-pill);
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
  line-height: 1.4;
  transition: background-color 0.15s ease, box-shadow 0.15s ease;
}
.an-badge i {
  font-size: 12px;
}
.an-badge--dynamic {
  background: var(--an-surface2);
  background: color-mix(in srgb, var(--badge-color, var(--an-text-muted)) 14%, transparent);
  color: var(--badge-color, var(--an-text));
}
.an-badge--red {
  background: rgba(236, 78, 54, 0.14);
  color: var(--an-rose);
}
.an-badge--amber {
  background: rgba(245, 158, 11, 0.14);
  color: var(--an-amber);
}
.an-badge--sky {
  background: rgba(56, 189, 248, 0.14);
  color: var(--an-sky);
}
.an-badge--green {
  background: rgba(16, 185, 129, 0.14);
  color: var(--an-emerald);
}
.an-badge--gray {
  background: var(--an-surface2);
  color: var(--an-text-muted);
}
.an-badge--compact {
  font-size: 10px;
  max-width: 140px;
}
.an-badge--compact .an-badge-label {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
}

.an-pill {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 9px;
  border-radius: var(--an-radius-pill);
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  white-space: nowrap;
}
.an-pill--member {
  background: linear-gradient(90deg, rgba(245, 158, 11, 0.12), rgba(251, 191, 36, 0.08));
  border: 1px solid rgba(245, 158, 11, 0.35);
  color: #92400e;
}
.an-pill--member i {
  color: #f59e0b;
}
.an-pill--muted {
  background: rgba(156, 163, 175, 0.07);
  border: 1px solid rgba(156, 163, 175, 0.18);
  color: var(--an-text-faint, #9ca3af);
}

@-moz-keyframes spin {
  from {
    -moz-transform: rotate(0deg);
  }
  to {
    -moz-transform: rotate(360deg);
  }
}
@-webkit-keyframes spin {
  from {
    -webkit-transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
  }
}
@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@keyframes open {
  0% {
    transform: rotateX(180deg);
    z-index: 2;
  }
  99% {
    transform: rotateX(0deg);
    z-index: 2;
  }
  100% {
    z-index: 0;
  }
}
@keyframes slideUp {
  0% {
    transform: translateY(0px);
  }
  100% {
    transform: translateY(-30px);
  }
}
.envelope {
  position: relative;
  margin: 30px auto;
  width: 98px;
  height: 66px;
  background: #eeeeee;
  border-radius: 0 0 5px 5px;
  box-shadow: 0 0 1px #eeeeee inset;
}
.envelope:hover .paper {
  bottom: 30px;
}

.envelope:before,
.envelope:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border: 0 solid transparent;
  border-width: 33px 49px;
  left: 0;
}

.envelope:before {
  border-bottom-color: #eeeeee;
  top: -100%;
  left: 0px;
  transform-origin: center bottom;
  animation: open 1s ease-in-out;
  z-index: 1;
}

.envelope:after {
  border-right-color: rgb(240.805, 240.805, 240.805);
  border-left-color: rgb(241.825, 241.825, 241.825);
  border-bottom-color: rgb(241.825, 241.825, 241.825);
  top: 0;
  border-radius: 0 0 5px 5px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
  z-index: 3;
}

.paper {
  background: #fff;
  width: 87px;
  height: 66px;
  margin: 0 auto;
  border-radius: 5px;
  position: absolute;
  left: 6px;
  bottom: 5px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
  transform: translateY(0px);
  animation: slideUp 1s ease-in-out;
  animation-delay: 1s;
  animation-fill-mode: forwards;
  z-index: 1;
  transition: all ease-in-out 0.3s;
}

.paper:before,
.paper:after {
  content: "";
  position: absolute;
  left: 12px;
  background: #e3f1fc;
  height: 4px;
  border-radius: 5px;
}

.paper:before {
  top: 14px;
  width: 31px;
}

.paper:after {
  right: 12px;
  top: 28px;
  box-shadow: 0 8px 0 #e3f1fc, 0 16px 0 #e3f1fc, 0 24px 0 #e3f1fc, 0 40px 0 #e3f1fc;
}

.checkmark {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  stroke-width: 2;
  stroke: #fff;
  stroke-miterlimit: 10;
  box-shadow: inset 0px 0px 0px #7ac142;
  animation: fill 0.4s ease-in-out 0.4s forwards, scale 0.3s ease-in-out 0.9s both;
  display: block;
  margin: 0 auto;
}

.checkmark__circle {
  stroke-dasharray: 166;
  stroke-dashoffset: 166;
  stroke-width: 2;
  stroke-miterlimit: 10;
  stroke: #7ac142;
  fill: none;
  animation: stroke 0.6s cubic-bezier(0.65, 0, 0.45, 1) forwards;
  stroke-linecap: round;
}

.checkmark__check {
  transform-origin: 50% 50%;
  stroke-dasharray: 48;
  stroke-dashoffset: 48;
  animation: stroke 0.3s cubic-bezier(0.65, 0, 0.45, 1) 0.8s forwards;
  stroke-linecap: round;
  stroke-linejoin: round;
}

@keyframes stroke {
  100% {
    stroke-dashoffset: 0;
  }
}
@keyframes scale {
  0%, 100% {
    transform: none;
  }
  50% {
    transform: scale3d(1.1, 1.1, 1);
  }
}
@keyframes fill {
  100% {
    box-shadow: inset 0px 0px 0px 40px #7ac142;
  }
}
@keyframes anFadeUp {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes anSkeleton {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
@keyframes anPulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
}
.an-stagger-item {
  animation: anFadeUp 0.4s var(--ease-out) both;
}
.an-stagger-item:nth-child(1) {
  animation-delay: 0.03s;
}
.an-stagger-item:nth-child(2) {
  animation-delay: 0.06s;
}
.an-stagger-item:nth-child(3) {
  animation-delay: 0.09s;
}
.an-stagger-item:nth-child(4) {
  animation-delay: 0.12s;
}
.an-stagger-item:nth-child(5) {
  animation-delay: 0.15s;
}
.an-stagger-item:nth-child(6) {
  animation-delay: 0.18s;
}
.an-stagger-item:nth-child(7) {
  animation-delay: 0.21s;
}
.an-stagger-item:nth-child(8) {
  animation-delay: 0.24s;
}
.an-stagger-item:nth-child(9) {
  animation-delay: 0.27s;
}
.an-stagger-item:nth-child(10) {
  animation-delay: 0.3s;
}
.an-stagger-item:nth-child(11) {
  animation-delay: 0.33s;
}
.an-stagger-item:nth-child(12) {
  animation-delay: 0.36s;
}
.an-stagger-item:nth-child(13) {
  animation-delay: 0.39s;
}
.an-stagger-item:nth-child(14) {
  animation-delay: 0.42s;
}
.an-stagger-item:nth-child(15) {
  animation-delay: 0.45s;
}
.an-stagger-item:nth-child(16) {
  animation-delay: 0.48s;
}
.an-stagger-item:nth-child(17) {
  animation-delay: 0.51s;
}
.an-stagger-item:nth-child(18) {
  animation-delay: 0.54s;
}
.an-stagger-item:nth-child(19) {
  animation-delay: 0.57s;
}
.an-stagger-item:nth-child(20) {
  animation-delay: 0.6s;
}

.an-skeleton {
  background: linear-gradient(90deg, var(--an-surface2) 25%, var(--an-surface) 50%, var(--an-surface2) 75%);
  background-size: 400% 100%;
  animation: anSkeleton 1.5s ease infinite;
  border-radius: var(--an-radius-sm);
}

.an-pulse {
  animation: anPulse 2s ease-in-out infinite;
}

.narrow {
  margin: 0;
}

.small {
  font-size: 0.8rem;
}
.small a {
  color: inherit;
}

.card-noborders {
  margin: 0;
  padding: 0;
}

.text-right {
  text-align: right;
}

.text-primary {
  color: #E23E2B;
}

.mr4 {
  margin-right: 4px;
}

.mr-8 {
  margin-right: 8px;
}

.ml-8 {
  margin-left: 8px;
}

.displayFlex {
  display: flex;
}

.w-100 {
  width: 100%;
}

.h-100 {
  height: 100%;
}

.block {
  display: block !important;
}

.mb-0 {
  margin-bottom: 0px;
}

.mb-4 {
  margin-bottom: 4px;
}

.mb-16 {
  margin-bottom: 16px !important;
}

.mb-32 {
  margin-bottom: 32px;
}

.mb-64 {
  margin-bottom: 64px;
}

.mt-0 {
  margin-top: 0px;
}

.mt-13 {
  margin-top: 13px !important;
}

.mt-16 {
  margin-top: 16px;
}

.mt-24 {
  margin-top: 24px !important;
}

.mt-42 {
  margin-top: 42px !important;
}

.mr-4 {
  margin-right: 4px;
}

.green-check {
  color: #33aa66;
  width: 42px;
  height: 42px;
}

.md-gray {
  background-color: #FAFAFA;
}

.md-white {
  background-color: #FFFFFF;
}

.md-green {
  background-color: #33aa66 !important;
}

.md-green-button {
  background: linear-gradient(180deg, #23A455 0%, #33B665 100%) !important;
  color: #ffffff !important;
  box-shadow: 0px 4px 30px rgba(35, 164, 85, 0.2);
}
.md-green-button span, .md-green-button i, .md-green-button .md-button-wrapper {
  color: #ffffff !important;
}

.md-yellow {
  background-color: rgb(230, 183, 30) !important;
}

.text-green {
  color: #33aa66 !important;
}

.text-yellow {
  color: rgb(230, 183, 30) !important;
}

.text-center {
  text-align: center;
}

.text-right {
  text-align: right;
}

.cleanAutocomplete {
  background: transparent;
  border: none;
}
.cleanAutocomplete md-autocomplete-wrap {
  box-shadow: none;
}

md-input-container.narrow {
  margin-top: 0px;
  margin-bottom: 0px;
}

.default-bk {
  background-color: #F5F5F5;
}

.waitry-logo-span {
  padding-right: 20px;
  margin-left: -1.57px;
}

.waitry-logo {
  height: auto;
  width: 120px;
  display: block;
  vertical-align: middle;
}
.waitry-logo .wLogoIso path {
  fill: var(--an-rose);
}
.waitry-logo .wLogoName path {
  fill: var(--an-text);
}

html.waitry-dark-theme .waitry-logo .wLogoIso path,
html.waitry-dark-theme .waitry-logo .wLogoName path,
md-toolbar.toolbar-venue-branded:not(.toolbar-light-bg) .waitry-logo .wLogoIso path,
md-toolbar.toolbar-venue-branded:not(.toolbar-light-bg) .waitry-logo .wLogoName path {
  fill: #FFFFFF;
}

.wt-wordmark .wLogoName path {
  fill: #3E3E3E;
}

html.waitry-dark-theme .wt-wordmark .wLogoName path {
  fill: rgba(255, 255, 255, 0.9) !important;
}

.partner-logo {
  height: auto;
  width: 120px;
  display: block;
  vertical-align: middle;
}

.validate-message {
  justify-content: center;
  font-weight: bold;
  background-color: #e6b43e;
  font-size: 15px;
  height: 48px;
  color: rgba(255, 255, 255, 0.8);
  cursor: pointer;
}

.validating-message {
  justify-content: center;
  font-weight: bold;
  background-color: #497fe4;
  font-size: 15px;
  height: 48px;
  color: rgba(255, 255, 255, 0.8);
}

.validation-file-message {
  margin: 6px 8px;
  padding: 6px 0px;
  align-items: center;
}

.info-message {
  justify-content: center;
  text-align: center;
  font-weight: bold;
  background-color: #497fe4;
  font-size: 13px;
  height: 48px;
  color: rgba(255, 255, 255, 0.8);
  cursor: pointer;
}
.info-message .close {
  border: 1px #FFFFFF solid;
  border-radius: 4px;
  padding: 3px;
  margin-left: 10px;
}

.md-toolbar-tools .buttonmd {
  margin: 0;
}

.md-toolbar-tools .buttonw {
  min-width: 88px;
  text-align: center;
}

.toolbar-small-text {
  font-family: var(--font-sans);
  font-size: 14px;
}

.menu-icon-20 {
  --an-icon-size: 20px;
}

.menu-icon-22 {
  --an-icon-size: 22px;
}

.menu-icon-24 {
  --an-icon-size: 24px;
}

.menu-icon-32 {
  --an-icon-size: 32px;
}

.menu-icon-36 {
  --an-icon-size: 36px;
}

.menu-icon-50 {
  --an-icon-size: 50px;
}

.menu-icon-20:not([class*=iconoir-]) {
  height: 20px;
  width: 20px;
  font-size: 20px;
}

.menu-icon-22:not([class*=iconoir-]) {
  height: 22px;
  width: 22px;
  font-size: 22px;
}

.menu-icon-24:not([class*=iconoir-]) {
  height: 24px;
  width: 24px;
  font-size: 24px;
}

.menu-icon-32:not([class*=iconoir-]) {
  height: 32px;
  width: 32px;
  font-size: 32px;
}

.menu-icon-36:not([class*=iconoir-]) {
  height: 36px;
  width: 36px;
  font-size: 36px;
}

.menu-icon-50:not([class*=iconoir-]) {
  height: 50px;
  width: 50px;
  font-size: 50px;
}

.icon-button-small {
  padding: 2px !important;
  margin: 0 2px !important;
}

.fleft {
  float: left;
}

.fix-icon-text {
  margin-left: 5px;
}

.fix-icon-text-24 {
  margin-left: 5px;
}

/* contextMenu */
.inContext {
  width: 10px;
}

ul.contextMenu {
  position: absolute;
  list-style-type: none;
  background-color: var(--an-surface);
  box-shadow: var(--an-shadow-lg);
  width: 180px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  top: 0;
  left: 0;
  font-family: var(--font-sans);
  font-size: 14px;
  color: var(--an-text);
  padding: 4px;
}

ul.contextMenu li {
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  margin: 0;
  cursor: pointer;
  position: relative;
  transition: background-color 0.25s;
  overflow: hidden;
  line-height: 2;
}

ul.contextMenu li:last-of-type {
  border-bottom: 0;
}

ul.contextMenu li a {
  padding: 8px 12px 0 35px;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: color 0.25s;
  text-decoration: none;
}

ul.contextMenu li:hover a {
  color: var(--an-text);
}

ul.contextMenu li:hover img {
  opacity: 1;
}

/* data table — modernized */
.ng-table {
  border: 0;
  margin: 0;
  min-width: 100%;
  border-collapse: collapse;
  font-family: var(--font-sans);
}

.ng-table thead {
  border-bottom: 2px solid var(--an-border);
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-faint);
  box-sizing: border-box;
}

.ng-table thead th {
  padding: 8px 12px 8px 0;
  text-align: left;
  white-space: nowrap;
  cursor: default;
  transition: color var(--duration-fast) var(--ease-default);
  font-family: var(--font-sans);
  position: sticky;
  top: 0;
  z-index: 2;
  background: var(--an-surface);
}
.ng-table thead th.sortable {
  cursor: pointer;
  user-select: none;
}
.ng-table thead th.sortable::after {
  content: "⇅";
  opacity: 0.35;
  margin-left: 6px;
  font-size: 11px;
  display: inline-block;
  vertical-align: middle;
}
.ng-table thead th.sortable .ng-table-header,
.ng-table thead th.sortable > div,
.ng-table thead th.sortable > a {
  display: inline-flex !important;
  align-items: center;
  vertical-align: middle;
  white-space: nowrap;
  color: inherit;
  text-decoration: none;
}
.ng-table thead th.sortable:hover {
  color: var(--an-text);
}
.ng-table thead th.sortable:hover::after {
  opacity: 0.6;
}
.ng-table thead th.sortable.sort-asc {
  color: var(--an-rose);
}
.ng-table thead th.sortable.sort-asc::after {
  content: "↑";
  opacity: 1;
  color: var(--an-rose);
}
.ng-table thead th.sortable.sort-desc {
  color: var(--an-rose);
}
.ng-table thead th.sortable.sort-desc::after {
  content: "↓";
  opacity: 1;
  color: var(--an-rose);
}

.ng-table thead th:first-of-type {
  padding: 8px 12px;
  text-align: left;
}

.ng-table tbody td {
  font-size: 13px;
  padding: 10px 12px 10px 0;
  box-sizing: border-box;
  border-bottom: 1px solid var(--an-border);
  color: var(--an-text);
  vertical-align: middle;
  font-family: var(--font-sans);
}

.ng-table tbody tr {
  transition: background var(--duration-fast) var(--ease-default);
}

.ng-table tbody tr:hover td {
  background: rgba(0, 0, 0, 0.02);
}

.ng-table tbody td:first-of-type {
  padding: 10px 12px;
}

.ng-table .md-fab.md-mini,
table.table .md-fab.md-mini {
  background: transparent !important;
  box-shadow: none !important;
  border-radius: var(--an-radius-sm) !important;
  width: 32px !important;
  height: 32px !important;
  line-height: 32px !important;
  margin: 0;
}
.ng-table .md-fab.md-mini md-icon,
table.table .md-fab.md-mini md-icon {
  color: var(--an-text-muted) !important;
  font-size: 18px;
}
.ng-table .md-fab.md-mini:hover,
table.table .md-fab.md-mini:hover {
  background: rgba(0, 0, 0, 0.04) !important;
  transform: none;
}
.ng-table .md-fab.md-mini:hover md-icon,
table.table .md-fab.md-mini:hover md-icon {
  color: var(--an-text) !important;
}

.ng-table .bold {
  font-weight: 700;
}

.ng-table th.sortable .sort-indicator {
  padding-right: 0 !important;
}
.ng-table th.sortable .sort-indicator::before, .ng-table th.sortable .sort-indicator::after {
  display: none !important;
}

.waitry-dark-theme .md-color-picker-container {
  background: var(--an-surface2);
  box-shadow: var(--an-shadow-lg);
}
.waitry-dark-theme .md-color-picker-container .md-color-picker-tabs .md-tab {
  color: var(--an-text-muted);
}
.waitry-dark-theme .md-color-picker-container .md-color-picker-tabs.md-color-picker-colors .md-tab {
  background: rgba(255, 255, 255, 0.06);
}
.waitry-dark-theme .md-color-picker-container .md-color-picker-tabs.md-color-picker-colors .md-tab.md-active {
  background: var(--an-surface3);
}
.waitry-dark-theme [md-color-picker] .md-color-picker-input-container .md-color-picker-clear,
.waitry-dark-theme md-color-picker .md-color-picker-input-container .md-color-picker-clear {
  color: var(--an-text-faint);
}
.waitry-dark-theme [md-color-picker] .md-color-picker-input-container .md-color-picker-preview,
.waitry-dark-theme md-color-picker .md-color-picker-input-container .md-color-picker-preview {
  border-color: var(--an-surface2);
}

.pagination {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  padding: 12px 20px;
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 500;
  color: var(--an-text-muted);
  user-select: none;
  position: sticky;
  bottom: 0;
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-top: 1px solid var(--an-border);
  z-index: 3;
}

.paginationCount {
  color: var(--an-text);
  font-weight: 600;
  margin-right: 2px;
}

.paginationPage {
  color: var(--an-text-muted);
  margin-right: 4px;
}

.paginationPager {
  display: flex;
  align-items: center;
  gap: 4px;
}

.pagination .pager {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 0;
  margin: 0;
}

.pagination ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 4px;
}

.pagination .pager li {
  display: flex;
}

.pagination .pager li a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: var(--an-radius-sm);
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  color: var(--an-text-muted);
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  transition: all var(--duration-fast) var(--ease-default);
  cursor: pointer;
}
.pagination .pager li a:hover {
  background: var(--an-surface2);
  color: var(--an-text);
  border-color: var(--an-border-strong);
  box-shadow: var(--an-shadow-xs);
}
.pagination .pager li a:active {
  transform: scale(0.95);
}

.pagination .pager li.disabled a {
  color: var(--an-text-faint);
  background: transparent;
  border-color: transparent;
  cursor: default;
  opacity: 0.4;
  pointer-events: none;
}
.pagination .pager li.disabled a:hover {
  transform: none;
  box-shadow: none;
}

.whitebg {
  background-color: #FFFFFF;
  padding: 3px;
  border-radius: 3px;
}

.whiteCenter {
  text-align: center;
  border-radius: 10px;
}

.asRow {
  font-size: 0.8em;
  padding: 2px;
  margin: 10px;
}

.asRowHeader {
  font-size: 0.8em;
  padding: 2px;
  font-weight: bold;
  border-bottom: 1px solid rgb(230, 230, 230);
  margin: 10px;
}
.asRowHeader > div {
  padding-top: 10px;
}
.asRowHeader .headerWithAction {
  padding-top: 0px;
}
.asRowHeader .headerWithAction > div {
  padding-top: 10px;
}

.asRow .group {
  background-color: rgb(230, 230, 230);
  margin-left: 4px;
}

.asRow .md-errors-spacer {
  min-height: 4px !important;
}

/* dialog */
.dialog-table {
  font-size: 1em;
  margin: 5px;
}

.dialog-content-w {
  padding: 0px;
}

.md-subheader {
  margin: 0px;
}

/* sidemenu */
.sideBt {
  width: 100%;
}

.sideBtRight.md-button {
  margin: 0px 0px 8px 0px;
  text-align: right;
}

.sideBtLeft.md-button {
  margin: 0px 0px 8px 0px;
  text-align: left;
}

.sideheader .md-subheader-inner {
  padding: 16px 0px 16px 4px;
}

.sideList .md-list-item-inner,
.sideList md-list-item {
  min-height: 10px;
}

.sideList md-list-item > md-checkbox:first-child,
.sideList md-list-item .md-list-item-inner > md-checkbox:first-child {
  margin-right: 0px;
}

/* tables */
.gridListTableTiles md-grid-tile-footer figcaption {
  width: 100%;
}

.gridListTableTiles md-grid-tile-footer figcaption h3 {
  margin: 0;
  font-weight: 700;
  width: 100%;
  text-align: center;
}

[ng\:cloak],
[ng-cloak],
[data-ng-cloak],
[x-ng-cloak],
.ng-cloak,
.x-ng-cloak {
  display: none !important;
}

.salonTable {
  cursor: pointer;
  height: 95%;
  top: 0;
  width: 100%;
}

.salonTableProfile {
  background: rgba(0, 0, 0, 0.18) none repeat scroll 0 0;
  color: #fff;
  height: 40%;
  width: 100%;
}

.salonTableProfile img {
  margin: 8%;
}

.salonTableProfile .nombre {
  margin-top: 15%;
}

.salonTableState {
  height: 60%;
  width: 100%;
  text-align: center;
}

.salonTableState div {
  text-align: center;
  margin-top: 10%;
}

.salonTableState .state {
  text-align: center;
  margin-top: 14%;
}

.fbold {
  font-weight: bold;
}

.spacetext {
  margin-bottom: 4px;
}

.spaceTop {
  margin-top: 4px;
}

.circular {
  border-radius: 50%;
  max-height: 100%;
  max-width: 100%;
}

.circularSmall {
  border-radius: 50%;
  max-height: 80%;
  max-width: 80%;
}

.streaming {
  box-sizing: border-box;
  border-style: solid;
  border-width: 1px;
  border-color: #CCCCCC;
  padding: 1%;
  margin-right: 1%;
}

.streaming .alert {
  background: #F2F2F2 none repeat scroll 0 0;
  margin-bottom: 4px;
  padding: 1%;
}

md-card {
  position: relative;
}

.banner-img {
  height: 250px;
  width: 350px;
  overflow: hidden;
  position: relative;
  border-radius: 4px 4px 0 0;
}

.banner-img > img {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  height: auto;
}

.video-img {
  height: 250px;
  width: 150px;
  overflow: hidden;
  position: relative;
  border-radius: 4px 4px 0 0;
}

.video-img > img {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  height: auto;
}

.header .banner-img {
  width: 100%;
  height: 150px;
}

.header .avatar-img {
  position: absolute;
  top: 20px;
  left: 20px;
  width: 96px;
  height: 96px;
}

.avatar-img {
  width: 192px;
  height: 192px;
  border-radius: 50%;
  overflow: hidden;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}

.avatar-img img {
  width: 100%;
  height: auto;
  position: relative;
  transform: translate(50%, -50%);
  top: 50%;
  right: 50%;
}

.header .banner-zoom {
  position: absolute;
  top: 10px;
  left: 85%;
}

.banner-zoom-item {
  position: absolute;
  top: 20px;
  left: 3%;
}

.panel-zoom {
  background: white;
  border-radius: 4px;
  box-shadow: 0 7px 8px -4px rgba(0, 0, 0, 0.2), 0 13px 19px 2px rgba(0, 0, 0, 0.14), 0 5px 24px 4px rgba(0, 0, 0, 0.12);
  width: 716px;
  height: 392px;
}

.zoom-no-image {
  font-size: 1.2em;
  width: 100%;
  text-align: center;
  margin-top: 20%;
}

.cropArea {
  background: #E4E4E4;
  overflow: hidden;
  width: 320px;
  height: 256px;
}

.brochure-img {
  width: 96%;
  max-width: 200px;
  margin: 0 auto;
  border-radius: 4px 4px 0 0;
}

.brochure-img > img {
  width: 100%;
  height: auto;
}

/* alert animation */
.alertTableBorder {
  border: solid 2px grey;
  -webkit-animation: alertTableAnimationBorder 2s infinite;
  /* Chrome, Safari, Opera */
  animation: alertTableAnimationBorder 2s infinite;
}

/* Chrome, Safari, Opera */
@-webkit-keyframes alertTableAnimationBorder {
  from {
    border-color: grey;
  }
  to {
    border-color: red;
  }
}
/* Standard syntax */
@keyframes alertTableAnimationBorder {
  from {
    border-color: grey;
  }
  to {
    border-color: red;
  }
}
.alertTableFooter {
  -webkit-animation: alertTableAnimationBg 2s infinite;
  /* Chrome, Safari, Opera */
  animation: alertTableAnimationBg 2s infinite;
}

/* Chrome, Safari, Opera */
@-webkit-keyframes alertTableAnimationBg {
  from {
    background-color: grey;
  }
  to {
    background-color: red;
  }
}
/* Standard syntax */
@keyframes alertTableAnimationBg {
  from {
    background-color: grey;
  }
  to {
    background-color: red;
  }
}
.md-tab {
  font-size: 13px;
}

.statePoint {
  border-radius: 20%;
  height: 15px;
  width: 15px;
}

.md-icon-button.active md-icon {
  color: #C52418 !important;
}

.message-card {
  margin-left: auto;
  margin-right: auto;
}

.toastok {
  background-color: #33cc33 !important;
}

.toastalert {
  background-color: #df994a !important;
}

.toast-dialog {
  background-color: #FFFFFF !important;
}

.inputSpace {
  margin: 15px;
}

.fullheight {
  max-height: 100%;
  margin: 0;
  padding: 0;
}

.order-card {
  width: 220px;
  float: left;
  cursor: pointer;
  outline: none;
  margin: 6px;
}
.order-card md-card {
  border-radius: var(--an-radius) !important;
  transition: transform var(--duration-fast) var(--ease-default), box-shadow var(--duration-fast) var(--ease-default);
}
.order-card md-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--an-shadow-md) !important;
}

.order-card md-card-avatar {
  margin-left: 0 !important;
}

.order-card md-card-header {
  padding: 12px 16px 4px;
  font-family: var(--font-sans);
}

.order-card md-card-content {
  padding: 0 16px 8px;
  font-family: var(--font-sans);
  font-size: 13px;
}

.order-card md-fab-speed-dial {
  top: 8px;
  left: 8px;
}

.order-card md-fab-speed-dial md-fab-trigger {
  transition: all 0.3s ease-in-out;
  transform: scale(1);
}

.order-card md-fab-speed-dial.ng-hide md-fab-trigger {
  transform: scale(0);
}

.chekboxInput {
  margin-bottom: 10px;
  height: 20px;
}

#mini-action {
  margin: 0 4px;
  height: 18px;
  min-width: 0;
  line-height: 20px;
  padding: 2px;
  width: 18px;
  border-radius: 50%;
  min-height: 18px;
}

#mini-action md-icon {
  margin: auto;
  background-repeat: no-repeat;
  display: block;
  vertical-align: middle;
  fill: currentColor;
  height: 16px;
  width: 16px;
  min-height: 16px;
  min-width: 16px;
}

.mini-action md-icon {
  height: 16px;
  width: 16px;
  min-height: 16px;
  min-width: 16px;
  font-size: 16px;
}

.fieldset {
  border: 1px solid;
  border-color: rgba(0, 0, 0, 0.12);
}

.state {
  margin: 4px;
  padding: 6px;
  background-color: rgb(255, 249, 196);
}
.waitry-dark-theme .state {
  background-color: var(--an-amber-soft);
  color: var(--an-text);
}

.state_arrow {
  margin: 4px;
}

.stateDisable {
  background-color: #cccccc !important;
}
.waitry-dark-theme .stateDisable {
  background-color: var(--an-surface2) !important;
}

.stateTextDisable {
  color: #cccccc !important;
}
.waitry-dark-theme .stateTextDisable {
  color: var(--an-text-faint) !important;
}

.commentText {
  font-size: 16px !important;
  line-height: 1.8em !important;
  font-style: italic !important;
  margin-bottom: 15px !important;
}

.bgGrey {
  background-color: rgb(241, 240, 239) !important;
}
.waitry-dark-theme .bgGrey {
  background-color: var(--an-surface2) !important;
  color: var(--an-text) !important;
}

.animatedPause {
  -moz-animation-duration: 2s;
  animation-duration: 2s;
}

.tooltip-multiline {
  height: auto;
  max-width: 200px;
  white-space: pre-line;
}

.md-icon-big {
  margin: auto;
  background-repeat: no-repeat;
  display: block;
  vertical-align: middle;
  fill: currentColor;
  height: 36px;
  width: 36px;
  min-height: 36px;
  min-width: 36px;
}

.dash-value {
  height: 36px;
  text-align: center;
  vertical-align: middle;
}

.dash-label {
  height: 36px;
  text-align: left;
  vertical-align: middle;
  margin-top: 4px;
}

.dash-space {
  margin-top: 22px;
}

.md-warn svg {
  fill: rgb(255, 87, 34);
}

.loading-table {
  position: absolute;
  margin: auto;
  width: 80%;
}

.card-avatar-img {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  overflow: hidden;
}

.newItemsList {
  box-sizing: border-box;
  border-top: 1px solid rgb(230, 230, 230);
}

.border-warn {
  border: 1px solid rgb(255, 87, 34);
}

.paidData {
  box-sizing: border-box;
  border-bottom: 1px solid rgb(230, 230, 230);
}

.paidData .paidDataType {
  padding: 5px;
  padding-left: 10px;
}

.paidData .paidDataAmount {
  padding: 5px;
  text-align: center;
}

.subtract {
  color: rgb(255, 87, 34);
}

.md-warn-icon svg {
  fill: #FFFFFF !important;
}

.cust-medium-button {
  width: 150px;
  min-height: 56px;
  font-size: 16px;
}

.cust-medium-input {
  font-size: 16px;
}

.item-tile {
  background-color: rgb(150, 150, 150);
  overflow: hidden;
}

.item-tile img {
  height: 100%;
  width: auto;
  transform: translate(-50%, -50%);
  position: absolute;
  top: 50%;
  left: 50%;
}

.item-tile md-icon {
  position: absolute;
  top: 50%;
  width: 64px;
  height: 64px;
  left: 50%;
  margin: -45px 0 0 -32px;
}

.item-tile md-grid-tile-footer {
  background-color: rgba(0, 0, 0, 0.6);
}

.item-tile md-grid-tile-footer figcaption {
  width: 100%;
}

.item-tile md-grid-tile-footer figcaption h3 {
  margin: 0;
  font-weight: 700;
  width: 100%;
  text-align: center;
}

.avatar {
  width: 50px;
  height: 50px;
  overflow: hidden;
  border-radius: 50%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}

.avatar-large {
  width: 192px;
  height: 192px;
  margin: 10px auto;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
}

.card-avatar {
  height: 300px;
  background-size: cover;
  background-position: center center;
}

md-dialog.fullscreen-dialog {
  max-width: 80%;
  max-height: 80%;
  width: 100%;
  height: 100%;
  border-radius: 0;
}

#profile {
  margin-bottom: 20px;
}

#profile td {
  padding: 10px 20px;
}

.fixed-icon svg {
  fill: rgb(255, 87, 34) !important;
}

.amountType {
  margin-right: 20px;
  padding: 10px;
  margin-bottom: 5px;
  min-width: 140px;
}

.noPadding {
  padding: 0 !important;
}

.promo-tab md-tabs-content-wrapper {
  top: 0px !important;
}

.wait-ok {
  background-color: #b7cabf;
}

.count-badge {
  background: rgba(230, 183, 30, 0.7);
  padding: 2px;
  border-radius: 5px;
  min-width: 30px;
  text-align: center;
}
.waitry-dark-theme .count-badge {
  color: #1f2937;
}

.count-badge-warn {
  background: rgba(255, 87, 34, 0.7);
  padding: 2px;
  border-radius: 5px;
  min-width: 30px;
  text-align: center;
}
.waitry-dark-theme .count-badge-warn {
  color: #1f2937;
}

.font-warn {
  color: rgb(255, 87, 34);
}

.md-ok {
  color: #7ac142;
}

.md-ok md-icon {
  color: #7ac142;
}

.cancel-total {
  text-decoration: line-through;
}

.table-free {
  background-color: #999999;
}

.table-busy {
  background-color: #ec4e36;
}

md-toolbar.md-hue-3:not(.md-menu-toolbar) md-icon.red-white {
  fill: rgb(255, 255, 255);
}

.allergen {
  width: 40px;
  margin-right: 10px;
}

.file-over {
  border: 2px dashed black !important;
  display: flex !important;
  justify-content: center;
  align-items: center;
}

.poweredBy {
  font-size: 12px;
  display: block;
  margin-top: 40px;
  text-align: center;
}
.poweredBy a {
  text-decoration: none;
  color: #757575;
}
.poweredBy svg {
  display: block;
  height: 40px;
  margin: 0 auto;
}

#live-chat-widget {
  right: 10px !important;
}

.warning {
  color: #ec4e36;
  font-style: italic;
  font-size: 14px;
}

.members-datepicker .md-datepicker-button {
  margin-left: 0px !important;
  padding-left: 0px !important;
}

.display-flex {
  display: flex !important;
}

.programed-import-list-item {
  border-bottom: 1px solid #e6e6e6;
}
.programed-import-list-item .display-flex {
  width: 100%;
  align-items: center;
}
.programed-import-list-item p {
  margin-right: 20px;
}

.carousel {
  display: flex;
  align-items: center;
  height: 100vh;
}
.carousel md-radio-button .md-ink-ripple .md-off {
  width: 12px;
  height: 12px;
  border-color: transparent !important;
  background: rgba(255, 255, 255, 0.5);
}
.carousel md-radio-button .md-ink-ripple .md-on {
  width: 32px;
  height: 12px;
  border-radius: 50px;
  background-color: white;
}
.carousel md-radio-button.md-checked .md-ink-ripple .md-off {
  width: 32px;
  height: 12px;
  border-color: transparent !important;
  background: white;
  border-radius: 50px;
  left: -12px;
}
.carousel md-radio-button.md-checked .md-ink-ripple .md-on {
  width: 32px;
  height: 12px;
  border-radius: 50px;
  background-color: white;
  left: -12px;
}

.carouselIndicator {
  width: 12px !important;
  height: 12px !important;
  background: rgba(255, 255, 255, 0.5) !important;
  border-radius: 100% !important;
  margin-left: 3px;
  margin-right: 3px;
  cursor: pointer;
}

.carouselIndicators {
  position: absolute;
  right: 0;
  bottom: 10px;
  left: 0;
  z-index: 15;
  display: flex;
  justify-content: center;
  padding-left: 0;
  margin-right: 15%;
  margin-left: 15%;
  list-style: none;
}
.carouselIndicators .active {
  width: 32px !important;
  height: 12px !important;
  background: #FFFFFF !important;
  border-radius: 50px !important;
}

.jk-carousel .right-arrow-button {
  display: none;
}
.jk-carousel .left-arrow-button {
  display: none;
}

.centered {
  display: flex;
  justify-content: center;
  align-items: center;
}

.button-primary {
  background: linear-gradient(180deg, #E23E2B 0%, #D96356 100%);
  box-shadow: 0px 4px 30px rgba(226, 62, 43, 0.2);
  border-radius: 6px;
  border: none;
  width: 100%;
  color: white;
  height: 50px;
  text-transform: uppercase;
  font-style: "Inter", sans-serif;
  font-weight: 700;
  cursor: pointer;
  font-size: 16px;
  line-height: 50px;
  transition: opacity 0.3s;
}
.button-primary:disabled {
  opacity: 0.5;
}
.button-primary svg path {
  stroke: white;
}

.link-primary {
  font-style: normal;
  font-weight: bold;
  font-size: 16px;
  line-height: 28px;
  text-transform: capitalize;
  color: #E23E2B;
  text-decoration: none;
}

.link {
  color: #3B7DEB;
  font-weight: 700;
}

.validation-code {
  justify-content: center;
}

.code-input {
  background: #F7F7F7;
  border-radius: 8px;
  border: none;
  font-family: "Inter", sans-serif;
  font-style: normal;
  font-weight: 500;
  font-size: 36px;
  line-height: 28px;
  width: 70px;
  height: 70px;
  margin: 0 8px;
  min-width: 35px;
  padding: 0;
  text-align: center;
  text-transform: uppercase;
}

.code-input:focus {
  outline: none;
}

md-input-container:not(.md-input-invalid) .md-errors-spacer {
  display: none;
}

.sidenav-help {
  position: absolute;
  z-index: 2147483110 !important;
  background-color: var(--an-surface, #ffffff);
  display: flex;
  flex-direction: column;
}
.sidenav-help md-toolbar {
  flex: 0 0 auto;
}
.sidenav-help md-toolbar .md-toolbar-tools h3 {
  color: #fff !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  letter-spacing: -0.2px !important;
}

.sidenav-help__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  margin-right: 14px !important;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.18);
  font-size: 15px;
  --an-icon-size: 15px;
}
.sidenav-help__badge::before {
  color: #fff !important;
}

.sidenav-help__content {
  flex: 1 1 auto;
  overflow-y: auto;
  padding: 18px;
  color: var(--an-text, #111827);
  font-size: 14px;
  line-height: 1.6;
}
.sidenav-help__content > *:first-child {
  margin-top: 0;
}
.sidenav-help__content .sidenav-help__preamble {
  margin-bottom: 4px;
}
.sidenav-help__content .sidenav-help__preamble p:last-child {
  margin-bottom: 0;
}
.sidenav-help__content .sidenav-help__items {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.sidenav-help__content .sidenav-help__item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 16px;
  background: var(--an-surface2, #F3F4F6);
  border: 1px solid var(--an-border, rgba(0, 0, 0, 0.08));
  border-radius: var(--an-radius, 14px);
  transition: border-color 0.15s ease, background-color 0.15s ease;
}
.sidenav-help__content .sidenav-help__item:hover {
  border-color: var(--an-primary, #497fe4);
  background: var(--an-primary-soft, rgba(73, 127, 228, 0.08));
}
.sidenav-help__content .sidenav-help__item-icon {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  margin-top: 1px;
  border-radius: 50%;
  background: var(--an-primary-soft, rgba(73, 127, 228, 0.08));
  font-size: 16px;
}
.sidenav-help__content .sidenav-help__item-icon::before {
  color: var(--an-primary, #497fe4) !important;
}
.sidenav-help__content .sidenav-help__item-body {
  min-width: 0;
}
.sidenav-help__content .sidenav-help__item-body > *:last-child {
  margin-bottom: 0;
}
.sidenav-help__content .sidenav-help__item-body > *:first-child {
  font-weight: 700;
  font-size: 14.5px;
  line-height: 1.3;
  color: var(--an-text, #111827);
  margin: 0 0 4px;
}
.sidenav-help__content .sidenav-help__item-body > *:first-child b, .sidenav-help__content .sidenav-help__item-body > *:first-child strong {
  font-weight: 700;
}
.sidenav-help__content .sidenav-help__item-body > *:not(:first-child) {
  font-size: 13.5px;
  line-height: 1.5;
  color: var(--an-text-muted, #6B7280);
  margin: 0 0 4px;
}
.sidenav-help__content .sidenav-help__footer {
  margin-top: 16px;
  padding: 12px 16px;
  background: var(--an-primary-soft, rgba(73, 127, 228, 0.08));
  border-radius: var(--an-radius-sm, 8px);
}
.sidenav-help__content .sidenav-help__footer p {
  margin: 0;
}
.sidenav-help__content h1, .sidenav-help__content h2, .sidenav-help__content h3, .sidenav-help__content h4 {
  color: var(--an-text, #111827);
  font-weight: 700;
  line-height: 1.3;
  margin: 0 0 4px;
  font-size: 15px;
}
.sidenav-help__content .sidenav-help__preamble h1, .sidenav-help__content .sidenav-help__preamble h2 {
  font-size: 18px;
  margin: 0 0 8px;
}
.sidenav-help__content p {
  margin: 0 0 12px;
  color: var(--an-text-muted, #6B7280);
}
.sidenav-help__content ul, .sidenav-help__content ol {
  margin: 0 0 12px;
  padding-left: 20px;
  color: var(--an-text-muted, #6B7280);
}
.sidenav-help__content a {
  color: var(--an-primary, #497fe4);
  font-weight: 600;
  text-decoration: none;
}
.sidenav-help__content a:hover {
  text-decoration: underline;
}
.sidenav-help__content img {
  max-width: 100%;
  height: auto;
  border-radius: var(--an-radius-sm, 8px);
  border: 1px solid var(--an-border, rgba(0, 0, 0, 0.1));
}
.sidenav-help__content strong, .sidenav-help__content b {
  color: var(--an-text, #111827);
}
.sidenav-help__content input,
.sidenav-help__content textarea,
.sidenav-help__content select {
  display: block;
  width: 100%;
  box-sizing: border-box;
  margin: 8px 0 16px;
  padding: 10px 12px;
  font-family: inherit;
  font-size: 14px;
  color: var(--an-text-muted, #6B7280);
  background-color: var(--an-surface, #ffffff);
  border: 1px solid var(--an-border, rgba(0, 0, 0, 0.1));
  border-radius: var(--an-radius-sm, 8px);
  pointer-events: none;
}
.sidenav-help__content textarea {
  min-height: 90px;
  resize: none;
}
.sidenav-help__content button,
.sidenav-help__content .md-button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 4px 8px 4px 0;
  padding: 0 16px;
  min-height: 36px;
  line-height: 36px;
  font-family: inherit;
  font-size: 14px;
  font-weight: 600;
  color: var(--an-text, #111827);
  background-color: var(--an-surface, #ffffff);
  border: 1px solid var(--an-border, rgba(0, 0, 0, 0.1));
  border-radius: var(--an-radius-sm, 8px);
  pointer-events: none;
}
.sidenav-help__content button.primary, .sidenav-help__content button[class*=btn-primary],
.sidenav-help__content .md-button.primary,
.sidenav-help__content .md-button[class*=btn-primary] {
  color: #fff;
  background-color: var(--an-primary, #497fe4);
  border-color: transparent;
}
.sidenav-help__content [class*=card]:not(.sidenav-help__item) {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 16px;
  margin: 8px 8px 16px 0;
  background-color: var(--an-surface, #ffffff);
  border: 1px solid var(--an-border, rgba(0, 0, 0, 0.1));
  border-radius: var(--an-radius, 14px);
  text-align: center;
  font-weight: 600;
}
.sidenav-help__content md-icon, .sidenav-help__content [class*=iconoir-] {
  color: var(--an-primary, #497fe4);
}

.attachment__caption {
  display: none;
}

.attachment__caption--edited {
  display: none;
}

.is-pointer {
  cursor: pointer;
}

.waitry-help {
  margin: 10px;
  margin-right: 5px;
}

.progressIndicatorPoint {
  position: relative;
  padding: 0;
  margin: 20px;
}
.progressIndicatorPoint .step {
  border-radius: 50%;
  border: solid 1px #ec4e36;
  width: 25px;
  height: 25px;
  text-align: center;
  padding: 5px;
  line-height: 12px;
  font-size: 12px;
  font-weight: bold;
  transition: all 0.5s ease-in-out;
  position: relative;
  color: #ec4e36;
  outline: none;
}
.progressIndicatorPoint .step.active {
  transform: scale(1.1);
}
.progressIndicatorPoint .step.past {
  background: #ec4e36;
  color: white;
}
.progressIndicatorPoint .progress {
  background: rgba(236, 78, 54, 0.5);
  height: 3px;
  position: absolute;
  top: 10px;
  transition: all 0.5s ease-in-out;
}

.order-item-detail .md-subheader-content {
  display: flex;
}

.itemSearch {
  background-color: #fdfdfd;
  width: 25%;
}
.itemSearch .md-whiteframe-1dp,
.itemSearch .md-whiteframe-z1 {
  box-shadow: none;
}

.search-head {
  font-size: 11px;
  line-height: 16px;
  padding-top: 4px;
  font-style: italic;
}

.search-main {
  font-size: 16px;
  line-height: 24px;
}

.table-explain {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 4px 24px 12px;
  font-size: 12.5px;
  line-height: 1.5;
  color: var(--an-text-muted);
}
.table-explain md-icon {
  --an-icon-size: 15px;
  color: var(--an-text-faint);
  margin-top: 1px;
}

.md-tooltip {
  background: rgba(24, 24, 27, 0.95) !important;
  border-radius: 8px !important;
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.15), 0 8px 10px -6px rgba(0, 0, 0, 0.1) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  font-family: inherit !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: 0.2px !important;
  color: #ffffff !important;
  padding: 8px 14px !important;
  height: auto !important;
  line-height: 1.4 !important;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2) !important;
  transition: all 0.25s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
  overflow: visible !important;
  z-index: 2147483647 !important;
  pointer-events: none !important;
}
@media (min-width: 960px) {
  .md-tooltip {
    font-size: 13px !important;
    height: auto !important;
    line-height: 1.4 !important;
    padding: 8px 14px !important;
  }
}

.md-tooltip {
  transition: opacity 0.25s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
}

.md-tooltip.md-show {
  opacity: 1 !important;
}

.md-tooltip.md-hide {
  opacity: 0 !important;
}

.md-panel-outer-wrapper,
.md-panel-inner-wrapper {
  z-index: 2147483647 !important;
}

:where(a[href]) {
  color: var(--an-primary);
  text-decoration: none;
}

:where(a[href]:hover) {
  text-decoration: underline;
}

.hint {
  display: block;
  font-size: 12px;
  line-height: 1.5;
  color: var(--an-text-muted);
  margin-top: 6px;
}

md-dialog {
  border-radius: 14px !important;
  overflow: hidden;
  box-shadow: 0 20px 60px -12px rgba(0, 0, 0, 0.15), 0 8px 20px -8px rgba(0, 0, 0, 0.08) !important;
}
md-dialog md-toolbar {
  min-height: 56px;
}
md-dialog md-toolbar .md-toolbar-tools {
  font-size: 16px;
  font-weight: 700;
  letter-spacing: -0.2px;
}
md-dialog md-dialog-content {
  padding: 20px 24px;
}
md-dialog md-dialog-actions {
  padding: 12px 20px;
  border-top: 1px solid rgba(0, 0, 0, 0.06);
  min-height: 52px;
}
md-dialog md-dialog-actions .md-button {
  border-radius: 8px;
  text-transform: none;
  font-weight: 600;
  font-size: 14px;
  min-height: 36px;
  line-height: 36px;
  padding: 0 16px;
}

md-backdrop:not(.md-select-backdrop):not(.md-menu-backdrop) {
  opacity: 0 !important;
  backdrop-filter: blur(20px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(20px) saturate(180%) !important;
  background-color: rgba(255, 255, 255, 0.3) !important;
  transition: opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  will-change: opacity;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
md-backdrop:not(.md-select-backdrop):not(.md-menu-backdrop).md-opaque {
  opacity: 1 !important;
}

md-backdrop.md-select-backdrop,
md-backdrop.md-menu-backdrop {
  opacity: 0 !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  background-color: transparent !important;
}

md-backdrop.md-select-backdrop {
  z-index: 2147483102 !important;
}

md-backdrop.md-menu-backdrop {
  z-index: 2147483102 !important;
}

.md-open-menu-container {
  z-index: 2147483103 !important;
}

md-backdrop.md-dialog-backdrop {
  z-index: 2147483100 !important;
}

.md-dialog-container {
  z-index: 2147483101 !important;
}

md-dialog.fullscreen-dialog {
  border-radius: 0 !important;
}

md-dialog.item-form-dialog md-dialog-content:has(> :only-child),
md-dialog.fullscreen-dialog md-dialog-content:has(> :only-child),
md-dialog.tvc-dialog md-dialog-content:has(> :only-child),
md-dialog.le-dialog md-dialog-content:has(> :only-child),
md-dialog.mcf-dialog md-dialog-content:has(> :only-child),
md-dialog.wf-dz-dialog md-dialog-content:has(> :only-child) {
  display: flex;
  flex-direction: column;
  min-height: 0;
}
md-dialog.item-form-dialog md-dialog-content:has(> :only-child) > :only-child,
md-dialog.fullscreen-dialog md-dialog-content:has(> :only-child) > :only-child,
md-dialog.tvc-dialog md-dialog-content:has(> :only-child) > :only-child,
md-dialog.le-dialog md-dialog-content:has(> :only-child) > :only-child,
md-dialog.mcf-dialog md-dialog-content:has(> :only-child) > :only-child,
md-dialog.wf-dz-dialog md-dialog-content:has(> :only-child) > :only-child {
  flex: 1 0 auto;
}

.md-open-menu-container {
  border-radius: var(--an-radius) !important;
  box-shadow: var(--an-shadow-xl) !important;
}

md-menu-content {
  background: var(--an-surface) !important;
  border: 1px solid var(--an-border-light) !important;
  border-radius: var(--an-radius) !important;
  box-shadow: none !important;
  padding: 6px;
  min-width: 180px;
}
md-menu-content md-menu-item {
  min-height: 36px;
  height: auto;
}
md-menu-content md-menu-item > .md-button {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  transform: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px;
  width: 100%;
  margin: 0;
  padding: 0 10px;
  min-height: 34px;
  line-height: 34px;
  border-radius: var(--an-radius-sm);
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none;
  color: var(--an-text);
  transition: background-color var(--duration-fast) var(--ease-default), color var(--duration-fast) var(--ease-default);
}
md-menu-content md-menu-item > .md-button div[layout=row],
md-menu-content md-menu-item > .md-button div.layout-row {
  width: 100%;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
}
md-menu-content md-menu-item > .md-button p {
  margin: 0 !important;
  line-height: 1.2 !important;
}
md-menu-content md-menu-item > .md-button md-icon,
md-menu-content md-menu-item > .md-button i[class*=iconoir-] {
  font-size: 16px;
  min-width: 16px;
  height: auto;
  color: var(--an-text-muted);
  transition: color var(--duration-fast) var(--ease-default);
}
md-menu-content md-menu-item > .md-button:hover:not([disabled]), md-menu-content md-menu-item > .md-button:focus:not([disabled]) {
  background: var(--an-surface2) !important;
  color: var(--an-text) !important;
  transform: none !important;
}
md-menu-content md-menu-item > .md-button:hover:not([disabled]) md-icon,
md-menu-content md-menu-item > .md-button:hover:not([disabled]) i[class*=iconoir-], md-menu-content md-menu-item > .md-button:focus:not([disabled]) md-icon,
md-menu-content md-menu-item > .md-button:focus:not([disabled]) i[class*=iconoir-] {
  color: var(--an-text);
}
md-menu-content md-menu-item > .md-button:active:not([disabled]) {
  transform: none !important;
}
md-menu-content md-menu-item > .md-button[disabled] {
  opacity: 0.45;
}
md-menu-content md-menu-item > .md-button.md-warn {
  color: var(--an-rose) !important;
}
md-menu-content md-menu-item > .md-button.md-warn span {
  color: inherit !important;
}
md-menu-content md-menu-item > .md-button.md-warn md-icon,
md-menu-content md-menu-item > .md-button.md-warn i[class*=iconoir-] {
  color: var(--an-rose);
}
md-menu-content md-menu-item > .md-button.md-warn:hover:not([disabled]), md-menu-content md-menu-item > .md-button.md-warn:focus:not([disabled]) {
  background: var(--an-rose-soft) !important;
  color: var(--an-rose) !important;
}
md-menu-content md-menu-item > .md-button.md-warn:hover:not([disabled]) md-icon,
md-menu-content md-menu-item > .md-button.md-warn:hover:not([disabled]) i[class*=iconoir-], md-menu-content md-menu-item > .md-button.md-warn:focus:not([disabled]) md-icon,
md-menu-content md-menu-item > .md-button.md-warn:focus:not([disabled]) i[class*=iconoir-] {
  color: var(--an-rose);
}
md-menu-content md-menu-divider {
  height: 1px !important;
  min-height: 1px !important;
  max-height: 1px !important;
  width: auto !important;
  margin: 5px 4px !important;
  background-color: var(--an-border-light) !important;
}
md-menu-content md-subheader,
md-menu-content .md-subheader {
  background: transparent !important;
  color: var(--an-text-faint) !important;
  font-family: var(--font-sans);
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  min-height: 0;
}
md-menu-content md-subheader .md-subheader-inner,
md-menu-content .md-subheader .md-subheader-inner {
  background: transparent !important;
  padding: 8px 10px 4px;
}

@keyframes wf-menu-pop {
  from {
    opacity: 0;
    transform: translateY(-4px) scale(0.985);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.md-open-menu-container.md-active > md-menu-content {
  transform-origin: top center;
  animation: wf-menu-pop 140ms var(--ease-default);
}

md-menu-content md-menu-item.theme-switcher-menu-item {
  min-height: 44px !important;
}
md-menu-content md-menu-item.theme-switcher-menu-item .md-button {
  width: 100% !important;
  display: flex !important;
  justify-content: space-between !important;
}
md-menu-content md-menu-item.theme-switcher-menu-item .md-button div.theme-toggle-container {
  width: 100%;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}
md-menu-content md-menu-item.theme-switcher-menu-item .theme-label {
  font-size: 14px;
  font-weight: 500;
  color: var(--an-text);
}
md-menu-content md-menu-item.theme-switcher-menu-item .theme-toggle-switch {
  position: relative;
  width: 58px;
  min-width: 58px;
  height: 28px;
  background: #e2e8f0;
  border-radius: 20px;
  transition: background-color 0.3s ease;
  display: flex;
  align-items: center;
  padding: 0 4px;
  box-sizing: border-box;
  flex-shrink: 0;
  box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.06);
  cursor: pointer;
}
md-menu-content md-menu-item.theme-switcher-menu-item .theme-toggle-switch .theme-track-icons {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 8px;
  box-sizing: border-box;
  pointer-events: none;
}
md-menu-content md-menu-item.theme-switcher-menu-item .theme-toggle-switch .theme-track-icons i {
  font-size: 13px !important;
  width: 13px !important;
  height: 13px !important;
  margin: 0 !important;
  color: #94a3b8;
  transition: opacity 0.2s ease;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
}
md-menu-content md-menu-item.theme-switcher-menu-item .theme-toggle-switch .theme-track-icons .sun-track {
  opacity: 1;
  color: #f59e0b;
}
md-menu-content md-menu-item.theme-switcher-menu-item .theme-toggle-switch .theme-track-icons .moon-track {
  opacity: 0.4;
}
md-menu-content md-menu-item.theme-switcher-menu-item .theme-toggle-switch .theme-toggle-thumb {
  position: absolute;
  left: 4px;
  width: 20px;
  height: 20px;
  background: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), background-color 0.3s ease;
  z-index: 2;
}
md-menu-content md-menu-item.theme-switcher-menu-item .theme-toggle-switch .theme-toggle-thumb i {
  font-size: 11px !important;
  width: 11px !important;
  height: 11px !important;
  margin: 0 !important;
  color: #f59e0b;
  transition: transform 0.3s ease, color 0.3s ease;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
}
md-menu-content md-menu-item.theme-switcher-menu-item .theme-toggle-switch.is-dark {
  background: #1e293b;
}
md-menu-content md-menu-item.theme-switcher-menu-item .theme-toggle-switch.is-dark .theme-track-icons .sun-track {
  opacity: 0.4;
  color: #94a3b8;
}
md-menu-content md-menu-item.theme-switcher-menu-item .theme-toggle-switch.is-dark .theme-track-icons .moon-track {
  opacity: 1;
  color: #38bdf8;
}
md-menu-content md-menu-item.theme-switcher-menu-item .theme-toggle-switch.is-dark .theme-toggle-thumb {
  transform: translateX(30px);
  background: #0f172a;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
}
md-menu-content md-menu-item.theme-switcher-menu-item .theme-toggle-switch.is-dark .theme-toggle-thumb i {
  color: #38bdf8;
  transform: rotate(360deg);
}

md-select-menu md-content {
  border-radius: 10px;
}

.toolbar-small-text label {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}

md-dialog md-tabs md-tab-content {
  overflow: hidden;
}
md-dialog md-tabs md-tab-content:not(.md-active) {
  display: none !important;
}

md-tabs,
md-tabs *,
md-tabs-wrapper,
md-tabs-wrapper *,
md-tabs-content-wrapper,
md-tabs-content-wrapper *,
md-tab-content,
md-tab-content * {
  transition: none !important;
  transition-delay: 0s !important;
  transition-duration: 0s !important;
  animation: none !important;
  animation-delay: 0s !important;
  animation-duration: 0s !important;
}

md-tabs-content-wrapper {
  transform: none !important;
}

md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) {
  background: var(--an-surface) !important;
  color: var(--an-text) !important;
  border-bottom: 1px solid var(--an-border);
  box-shadow: none !important;
  height: auto !important;
  min-height: 52px;
  max-height: none;
  flex-shrink: 0;
  font-family: var(--font-sans) !important;
  font-size: 13px !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) h1,
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) h2,
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) h3,
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) span:not(.md-thumb):not(.md-track):not([class*=md-]),
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) label,
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) p {
  color: var(--an-text) !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-container,
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-container *,
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-thumb,
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-track,
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-bar,
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-slider-wrapper {
  color: inherit !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools {
  height: auto;
  min-height: 52px;
  max-height: none;
  font-family: var(--font-sans);
  padding: 0 16px;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-button {
  margin: 0;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools h1,
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools h2 {
  font-family: var(--font-sans) !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  color: var(--an-text) !important;
  letter-spacing: -0.2px;
  margin: 0;
  white-space: nowrap;
  flex-shrink: 0;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools h1 span[translate],
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools h2 span[translate] {
  font-size: 15px !important;
  font-weight: 600 !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools h1 .toolbar-sub-title,
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools h2 .toolbar-sub-title {
  font-weight: 400;
  font-size: 13px;
  color: var(--an-text-muted) !important;
  letter-spacing: 0;
  margin-left: 6px;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools h1 .toolbar-sub-title::before,
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools h2 .toolbar-sub-title::before {
  content: "/";
  margin-right: 6px;
  opacity: 0.4;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-inline-search {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  position: relative;
  background: var(--an-bg) !important;
  border: 1px solid var(--an-border) !important;
  border-radius: var(--an-radius-sm) !important;
  height: 32px;
  min-width: 180px;
  max-width: 280px;
  padding: 0 10px !important;
  overflow: hidden;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  box-sizing: border-box;
  flex-shrink: 0;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-inline-search:focus-within {
  border-color: var(--an-border-hover) !important;
  box-shadow: 0 0 0 2px var(--an-bg-active);
  background: var(--an-surface) !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-inline-search > i.iconoir-search,
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-inline-search > md-icon.iconoir-search {
  color: var(--an-text-muted) !important;
  font-size: 15px;
  width: 15px;
  height: 15px;
  flex-shrink: 0;
  margin-right: 6px;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-inline-search > input[type=text],
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-inline-search > input {
  flex: 1 1 auto;
  border: none !important;
  border-bottom: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  outline: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  font-family: var(--font-sans) !important;
  font-size: 13px !important;
  color: var(--an-text) !important;
  min-width: 0;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-inline-search > input[type=text]::placeholder,
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-inline-search > input::placeholder {
  color: var(--an-placeholder) !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-inline-search .table-search-clear {
  background: transparent;
  border: none;
  padding: 2px;
  margin-left: 4px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  flex-shrink: 0;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-inline-search .table-search-clear i {
  font-size: 13px;
  color: var(--an-text-faint) !important;
  transition: color 0.2s ease;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-inline-search .table-search-clear:hover i {
  color: var(--an-text) !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters {
  display: flex;
  align-items: center;
  gap: 12px 20px;
  flex-wrap: wrap;
  width: 100%;
  flex: 0 0 100%;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid var(--an-border);
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group {
  display: flex;
  align-items: center;
  gap: 8px;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group label,
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group > span {
  font-family: var(--font-sans) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  color: var(--an-text-muted) !important;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin: 0;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group md-select {
  margin: 0 !important;
  padding: 0;
  font-size: 13px !important;
  display: inline-flex;
  align-items: center;
  height: 32px;
  background: var(--an-bg);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  padding: 0 8px !important;
  min-width: 120px;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group md-select .md-select-value {
  display: flex !important;
  align-items: center !important;
  padding: 0 20px 0 0;
  border: none !important;
  border-bottom: none !important;
  background: transparent !important;
  box-shadow: none !important;
  font-weight: 500;
  color: var(--an-text) !important;
  font-size: 13px !important;
  height: 32px !important;
  line-height: normal !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group md-select .md-select-value span,
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group md-select .md-select-value span:first-child,
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group md-select .md-select-value span:not(.md-select-icon) {
  font-size: 13px !important;
  color: var(--an-text) !important;
  line-height: normal !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group md-select .md-select-value span:not(.md-select-icon) {
  display: inline-flex !important;
  align-items: center !important;
  height: 100% !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group md-select .md-select-value .md-text {
  color: var(--an-text) !important;
  font-size: 13px !important;
  line-height: normal !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group md-select .md-select-value .md-select-icon {
  color: var(--an-text-muted) !important;
  width: 18px;
  transform: translate3d(0, -1px, 0);
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group md-select:focus:not([disabled]) .md-select-value {
  border-bottom: none !important;
  color: var(--an-text) !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group md-datepicker {
  margin: 0 !important;
  padding: 0 8px !important;
  font-size: 13px !important;
  display: inline-flex !important;
  align-items: center !important;
  height: 32px !important;
  background: var(--an-bg) !important;
  border: 1px solid var(--an-border) !important;
  border-radius: var(--an-radius-sm) !important;
  box-shadow: none !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group md-datepicker:focus-within {
  border-color: var(--an-text) !important;
  box-shadow: 0 0 0 2px var(--an-surface), 0 0 0 4px var(--an-border-strong) !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group md-datepicker:has(.md-datepicker-invalid) {
  border-color: var(--an-rose) !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group md-datepicker .md-datepicker-input-container {
  height: 100% !important;
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group md-datepicker .md-datepicker-input-container.md-datepicker-focused {
  border: none !important;
  box-shadow: none !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group md-datepicker .md-datepicker-input {
  font-family: var(--font-sans) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: var(--an-text) !important;
  height: 100% !important;
  min-width: 86px !important;
  max-width: var(--an-datepicker-input-max, 100px) !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: none !important;
  line-height: 30px !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group md-datepicker .md-datepicker-input::placeholder {
  color: var(--an-placeholder) !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group md-datepicker .md-datepicker-button {
  height: 20px !important;
  width: 20px !important;
  min-height: 20px !important;
  min-width: 20px !important;
  line-height: 20px !important;
  margin: 0 6px 0 0 !important;
  padding: 0 !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group md-datepicker .md-datepicker-button md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group md-checkbox {
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group md-checkbox .md-container {
  position: relative !important;
  width: 16px !important;
  height: 16px !important;
  min-width: 16px;
  margin-right: 8px !important;
  flex-shrink: 0;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group md-checkbox .md-container .md-icon {
  font-family: "Material Icons", sans-serif !important;
  font-size: 0 !important;
  width: 16px !important;
  height: 16px !important;
  border: 2px solid var(--an-border-hover) !important;
  border-radius: 2px !important;
  box-sizing: border-box;
  background: transparent;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group md-checkbox .md-container .md-icon::after {
  border-color: #fff !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group md-checkbox.md-checked .md-container .md-icon {
  background: var(--an-rose) !important;
  border-color: var(--an-rose) !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group md-checkbox .md-label {
  margin-left: 0 !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group md-checkbox .md-label span {
  font-family: var(--font-sans) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: var(--an-text) !important;
  text-transform: none;
  letter-spacing: 0;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-button:not(.md-raised):not(.md-fab):not(.pm-btn-primary):not(.pm-btn-secondary):not(.pm-btn-danger):not(.pm-btn-icon):not(.layout-pill) {
  color: var(--an-text-muted) !important;
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 500;
  min-height: 32px;
  line-height: 32px;
  padding: 0 12px;
  margin: 2px 4px;
  border-radius: var(--an-radius-sm);
  border: 1px solid var(--an-border) !important;
  background-color: var(--an-surface) !important;
  transition: all var(--duration-fast) var(--ease-default);
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-button:not(.md-raised):not(.md-fab):not(.pm-btn-primary):not(.pm-btn-secondary):not(.pm-btn-danger):not(.pm-btn-icon):not(.layout-pill):hover {
  color: var(--an-text) !important;
  background: var(--an-surface2) !important;
  border-color: var(--an-border-strong) !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-button:not(.md-raised):not(.md-fab):not(.pm-btn-primary):not(.pm-btn-secondary):not(.pm-btn-danger):not(.pm-btn-icon):not(.layout-pill) md-icon:not(.catalog-add-btn md-icon) {
  color: var(--an-text-muted) !important;
  font-size: 16px;
  margin-right: 6px;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-button:not(.md-raised):not(.md-fab):not(.pm-btn-primary):not(.pm-btn-secondary):not(.pm-btn-danger):not(.pm-btn-icon):not(.layout-pill) span[translate],
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-button:not(.md-raised):not(.md-fab):not(.pm-btn-primary):not(.pm-btn-secondary):not(.pm-btn-danger):not(.pm-btn-icon):not(.layout-pill) span:not(.flex) {
  color: inherit !important;
  font-size: 13px;
  font-weight: 500 !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-button.md-raised:not(.md-primary):not(.md-warn) {
  min-height: 32px;
  line-height: 32px;
  font-size: 13px;
  padding: 0 16px;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-icon-button {
  width: 32px;
  height: 32px;
  margin: 0 4px;
  padding: 0;
  border-radius: var(--an-radius-sm);
  display: flex;
  align-items: center;
  justify-content: center;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-icon-button md-icon {
  font-size: 18px;
  margin-right: 0;
  color: var(--an-text-muted) !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-primary:not(.md-raised),
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-warn:not(.md-raised) {
  color: var(--an-rose) !important;
  font-weight: 600;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-primary:not(.md-raised) md-icon,
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-warn:not(.md-raised) md-icon {
  color: var(--an-rose) !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-primary:not(.md-raised) span,
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-primary:not(.md-raised) span[translate],
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-warn:not(.md-raised) span,
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-warn:not(.md-raised) span[translate] {
  color: var(--an-rose) !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-primary:not(.md-raised):hover,
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-warn:not(.md-raised):hover {
  background: var(--an-rose-soft);
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-primary.md-raised {
  color: #fff !important;
  background: linear-gradient(135deg, var(--an-rose) 0%, #E8384F 100%) !important;
  border: none !important;
  box-shadow: 0 4px 10px rgba(244, 63, 94, 0.2) !important;
  padding: 0 16px;
  min-height: 32px;
  line-height: 32px;
  font-weight: 600;
  font-size: 13px;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-primary.md-raised md-icon,
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-primary.md-raised [class^=iconoir-],
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-primary.md-raised [class*=" iconoir-"] {
  color: #fff !important;
  margin-right: 0;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-primary.md-raised span,
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-primary.md-raised span[translate] {
  color: #fff !important;
  font-size: 13px !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-primary.md-raised:hover:not([disabled]) {
  box-shadow: 0 6px 15px rgba(244, 63, 94, 0.3) !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools > md-input-container {
  display: flex !important;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  align-self: center;
  flex: 0 0 auto;
  width: auto;
  height: 34px;
  min-height: 34px;
  margin: 0 4px;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools > md-input-container label {
  position: static !important;
  top: auto !important;
  left: auto !important;
  transform: none !important;
  flex: 0 0 auto;
  width: auto !important;
  max-width: 160px;
  line-height: 1 !important;
  font-size: 11px !important;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-faint) !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools > md-input-container md-select,
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools > md-input-container .md-datepicker-input-container {
  flex: 0 0 auto;
  width: auto !important;
  min-width: 120px;
  margin: 0 !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools > md-input-container md-select .md-select-value,
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools > md-input-container input:not([type=checkbox]):not([type=radio]) {
  height: 34px !important;
  min-height: 34px !important;
  padding: 0 10px !important;
  font-size: 13px !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools > md-input-container .md-errors-spacer {
  display: none !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools input[type=number][max="24"] {
  font-family: var(--font-sans) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: var(--an-text) !important;
  border: 1px solid var(--an-border) !important;
  border-radius: var(--an-radius-sm) !important;
  background: var(--an-surface) !important;
  width: 44px !important;
  max-width: 44px !important;
  min-width: 44px !important;
  padding: 4px 6px !important;
  text-align: center !important;
  -moz-appearance: textfield !important;
  margin: 0 !important;
  outline: none !important;
  transition: all var(--duration-fast) var(--ease-default);
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools input[type=number][max="24"]:focus {
  border-color: var(--an-rose) !important;
  box-shadow: 0 0 0 2px var(--an-rose-soft) !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools input[type=number][max="24"]::-webkit-inner-spin-button, md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools input[type=number][max="24"]::-webkit-outer-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools md-switch {
  margin: 0 8px !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools md-switch .md-label {
  color: var(--an-text) !important;
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 500;
  white-space: nowrap;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .toolbar-small-text label {
  color: var(--an-text-muted) !important;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-weight: 600;
}

md-dialog {
  border-radius: var(--an-radius) !important;
  overflow: hidden;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25) !important;
}
md-dialog md-toolbar {
  background: var(--an-surface) !important;
  color: var(--an-text) !important;
  border-bottom: 1.5px solid var(--an-border);
  box-shadow: none !important;
  min-height: 52px;
  font-family: var(--font-sans);
}
md-dialog md-toolbar .md-toolbar-tools {
  font-family: var(--font-sans);
  min-height: 52px;
}
md-dialog md-toolbar .md-toolbar-tools h1,
md-dialog md-toolbar .md-toolbar-tools h2 {
  font-family: var(--font-sans) !important;
  font-weight: 700 !important;
  font-size: 17px !important;
  color: var(--an-text) !important;
  margin: 0;
}
md-dialog md-toolbar .md-toolbar-tools .md-button {
  color: var(--an-text-muted) !important;
  font-size: 13px;
  min-height: 34px;
  line-height: 34px;
  border-radius: var(--an-radius-sm);
}
md-dialog md-toolbar .md-toolbar-tools .md-button md-icon {
  color: var(--an-text-muted) !important;
  font-size: 18px;
}
md-dialog md-toolbar .md-toolbar-tools .md-button:hover {
  background: rgba(0, 0, 0, 0.04);
  color: var(--an-text) !important;
}
.waitry-dark-theme md-dialog md-toolbar .md-toolbar-tools .md-button:hover {
  background: rgba(255, 255, 255, 0.06);
}
md-dialog md-toolbar .md-toolbar-tools .md-primary:not(.md-raised) {
  color: var(--an-rose) !important;
  font-weight: 600;
}
md-dialog md-toolbar .md-toolbar-tools .md-primary:not(.md-raised) md-icon {
  color: var(--an-rose) !important;
}
md-dialog md-toolbar .md-toolbar-tools .md-primary:not(.md-raised) span {
  color: var(--an-rose) !important;
}
md-dialog md-toolbar .md-toolbar-tools .md-primary.md-raised {
  color: #fff !important;
  background: linear-gradient(135deg, var(--an-rose) 0%, #E8384F 100%) !important;
  border: none !important;
}
md-dialog md-toolbar .md-toolbar-tools .md-primary.md-raised span {
  color: #fff !important;
}
md-dialog md-tabs md-tabs-wrapper {
  border-bottom: 1px solid var(--an-border);
}
md-dialog md-tabs md-tab-item {
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.3px;
  color: var(--an-text-muted);
}
md-dialog md-tabs md-tab-item.md-active {
  color: var(--an-rose);
}
md-dialog md-tabs md-ink-bar {
  background: var(--an-rose) !important;
  height: 3px !important;
}
md-dialog md-dialog-content {
  background: var(--an-surface);
  padding: 16px 24px;
  font-family: var(--font-sans);
}
md-dialog md-dialog-actions {
  border-top: 1px solid var(--an-border);
  padding: 10px 16px;
  background: var(--an-surface);
  gap: 8px;
}
md-dialog md-dialog-actions .md-button:not(.md-primary):not(.md-warn):not([class*=-btn]):not([class*=btn-]) {
  color: var(--an-text-muted) !important;
  font-weight: 500;
}

table.table {
  border: 0;
  margin: 0;
  min-width: 100%;
  border-collapse: collapse;
  font-family: var(--font-sans);
}
table.table thead {
  border-bottom: 2px solid var(--an-border);
}
table.table thead th {
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-faint);
  padding: 8px 12px;
  text-align: left;
  white-space: nowrap;
  border-bottom: none;
  position: sticky;
  top: 0;
  z-index: 2;
  background: var(--an-surface);
}
table.table thead th.sortable {
  cursor: pointer;
  transition: color var(--duration-fast) var(--ease-default);
}
table.table thead th.sortable:hover {
  color: var(--an-text);
}
table.table thead th.sortable.sort-asc, table.table thead th.sortable.sort-desc {
  color: var(--an-rose);
}
table.table tbody td {
  font-size: 13px;
  font-family: var(--font-sans);
  padding: 10px 12px;
  border-bottom: 1px solid var(--an-border);
  color: var(--an-text);
  vertical-align: middle;
}
table.table tbody tr {
  transition: background var(--duration-fast) var(--ease-default);
}
table.table tbody tr:hover td {
  background: rgba(232, 0, 50, 0.025) !important;
}

.table-card-container {
  flex: 1 1 0;
  min-height: 0;
  overflow: auto;
  border-radius: 12px;
  border: 1.5px solid var(--an-border, rgba(0, 0, 0, 0.08));
  background: var(--an-surface, #fff);
  margin: 0 24px 12px;
}
.table-card-container::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
.table-card-container::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.12);
  border-radius: 3px;
}
.waitry-dark-theme .table-card-container::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.12);
}
.table-card-container::-webkit-scrollbar-track {
  background: transparent;
}
.table-card-container table.table {
  min-width: 100%;
  width: 100%;
  border-collapse: collapse;
  table-layout: auto;
}
.table-card-container table.table thead th {
  position: sticky;
  top: 0;
  z-index: 2;
  background: var(--an-surface, #fff);
  border-bottom: 2px solid var(--an-border, rgba(0, 0, 0, 0.08));
  white-space: nowrap;
  padding: 12px;
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-faint, #6b7280);
}
.table-card-container table.table tbody tr {
  transition: background 0.15s ease;
}
.table-card-container table.table tbody tr:hover td {
  background: rgba(232, 0, 50, 0.025) !important;
}
.table-card-container table.table tbody tr td {
  border-bottom: 1px solid var(--an-border, rgba(0, 0, 0, 0.06));
  vertical-align: middle;
  padding: 12px;
  font-size: 13px;
  color: var(--an-text, #1f2937);
  background: transparent;
}
.table-card-container table.table tbody tr:last-child td {
  border-bottom: none;
}
.table-card-container table.table .table-actions {
  display: flex;
  gap: var(--space-xs);
  justify-content: flex-end;
  align-items: center;
}
.table-card-container table.table .table-actions .md-button,
.table-card-container table.table .table-actions .md-icon-button {
  margin: 0 !important;
}
.table-card-container table.table .md-icon-button.menu-button-table {
  width: 32px;
  height: 32px;
  min-height: 32px;
  line-height: 32px;
  padding: 0;
}
.table-card-container table.table .md-icon-button.menu-button-table md-icon {
  min-width: 18px;
  min-height: 18px;
  width: 18px;
  height: 18px;
  font-size: 18px;
}

.table-pagination-footer {
  flex-shrink: 0;
  padding: 0 24px 12px;
  box-sizing: border-box;
}
.table-pagination-footer .table-pager {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 16px;
  background: var(--an-surface, #fff);
  border: 1.5px solid var(--an-border, rgba(0, 0, 0, 0.08));
  border-radius: 10px;
  margin-top: 10px;
  box-sizing: border-box;
  padding-right: 120px !important;
}
@media (max-width: 600px) {
  .table-pagination-footer .table-pager {
    padding-right: 16px !important;
    flex-direction: column;
    gap: 8px;
    align-items: center;
    text-align: center;
  }
}
.table-pagination-footer .table-pager-info {
  font-size: 12px;
  color: var(--an-text-muted, #6b7280);
  font-weight: 500;
}
.table-pagination-footer .table-pager-nav {
  display: flex;
  align-items: center;
  gap: 6px;
}
.table-pagination-footer .table-pager-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  border: 1.5px solid var(--an-border, rgba(0, 0, 0, 0.1));
  background: transparent;
  color: var(--an-text, #374151);
  cursor: pointer;
  font-size: 16px;
  transition: all 0.15s ease;
}
.table-pagination-footer .table-pager-btn i {
  font-size: 16px;
}
.table-pagination-footer .table-pager-btn:hover:not(.table-pager-btn--disabled) {
  background: var(--an-rose, #e80032);
  border-color: var(--an-rose, #e80032);
  color: #fff;
}
.table-pagination-footer .table-pager-btn--disabled {
  opacity: 0.35;
  cursor: not-allowed;
  pointer-events: none;
}

.table-pager-sticky,
.marketing-table-pager-sticky {
  flex-shrink: 0;
  padding: 0 24px 12px;
  box-sizing: border-box;
}
.table-pager-sticky .table-pager,
.marketing-table-pager-sticky .table-pager {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 16px;
  background: var(--an-surface, #fff);
  border: 1.5px solid var(--an-border, rgba(0, 0, 0, 0.08));
  border-radius: 10px;
  margin-top: 10px;
  box-sizing: border-box;
  padding-right: 120px !important;
}
@media (max-width: 600px) {
  .table-pager-sticky .table-pager,
  .marketing-table-pager-sticky .table-pager {
    padding-right: 16px !important;
    flex-direction: column;
    gap: 8px;
    align-items: center;
    text-align: center;
  }
}
.table-pager-sticky .table-pager-info,
.marketing-table-pager-sticky .table-pager-info {
  font-size: 12px;
  color: var(--an-text-muted, #6b7280);
  font-weight: 500;
}
.table-pager-sticky .table-pager-nav,
.marketing-table-pager-sticky .table-pager-nav {
  display: flex;
  align-items: center;
  gap: 6px;
}
.table-pager-sticky .table-pager-btn,
.marketing-table-pager-sticky .table-pager-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  border: 1.5px solid var(--an-border, rgba(0, 0, 0, 0.1));
  background: transparent;
  color: var(--an-text, #374151);
  cursor: pointer;
  font-size: 16px;
  transition: all 0.15s ease;
}
.table-pager-sticky .table-pager-btn i,
.marketing-table-pager-sticky .table-pager-btn i {
  font-size: 16px;
}
.table-pager-sticky .table-pager-btn:hover:not([disabled]),
.marketing-table-pager-sticky .table-pager-btn:hover:not([disabled]) {
  background: var(--an-rose, #e80032);
  border-color: var(--an-rose, #e80032);
  color: #fff;
}
.table-pager-sticky .table-pager-btn[disabled],
.marketing-table-pager-sticky .table-pager-btn[disabled] {
  opacity: 0.35;
  cursor: not-allowed;
  pointer-events: none;
}

.table-card-container table [data-col-empty] {
  display: none !important;
}

@media (min-width: 960px) {
  .table-card-container table td:has(.md-icon-button + .md-icon-button) {
    white-space: nowrap;
  }
  .table-card-container table td > .md-icon-button {
    width: 32px;
    height: 32px;
    min-height: 32px;
    margin: 0;
  }
}
@media (min-width: 960px) and (hover: hover) {
  .table-card-container table tbody tr td:last-child .md-icon-button {
    transition: opacity 0.15s ease;
  }
  .table-card-container table tbody tr:not(:hover):not(:focus-within) td:last-child:has(.md-icon-button + .md-icon-button) .md-icon-button {
    opacity: 0;
  }
}
.table-card-container:has(~ .table-pager-sticky) .ng-table-pager,
.table-card-container:has(~ .clients-table-pager-sticky) .ng-table-pager,
.table-card-container:has(~ .marketing-table-pager-sticky) .ng-table-pager {
  display: none !important;
}

md-content {
  background: var(--an-bg) !important;
}
md-content::-webkit-scrollbar {
  width: 6px;
}
md-content::-webkit-scrollbar-track {
  background: transparent;
}
md-content::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.15);
  border-radius: 3px;
}
md-content::-webkit-scrollbar-thumb:hover {
  background: rgba(0, 0, 0, 0.25);
}
md-content:has(.table-card-container):not(:has(.rpt-layout)) {
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  padding-bottom: 0 !important;
}
md-content > .layout-row:has(> .ng-hide) > :not(.ng-hide),
md-content > [layout=row]:has(> .ng-hide) > :not(.ng-hide) {
  max-width: 100% !important;
  flex-grow: 1 !important;
  flex-shrink: 1 !important;
}

section[layout=row] {
  min-width: 0 !important;
  width: 100% !important;
}

[ng-view] {
  min-width: 0 !important;
  overflow: hidden;
}
[ng-view].ng-enter, [ng-view].ng-enter-active, [ng-view].ng-leave, [ng-view].ng-leave-active {
  transition-duration: 0s !important;
  animation-duration: 0s !important;
}

.ng-hide-add:not(.wt-hash-overlay) {
  display: none !important;
}

.pm-content > div.ng-enter, .pm-content > div.ng-enter-active, .pm-content > div.ng-leave, .pm-content > div.ng-leave-active,
.rpt-content > div.ng-enter,
.rpt-content > div.ng-enter-active,
.rpt-content > div.ng-leave,
.rpt-content > div.ng-leave-active,
.catalog-content > div.ng-enter,
.catalog-content > div.ng-enter-active,
.catalog-content > div.ng-leave,
.catalog-content > div.ng-leave-active,
.dashboard-content > div.ng-enter,
.dashboard-content > div.ng-enter-active,
.dashboard-content > div.ng-leave,
.dashboard-content > div.ng-leave-active,
.ly-content > div.ng-enter,
.ly-content > div.ng-enter-active,
.ly-content > div.ng-leave,
.ly-content > div.ng-leave-active,
.rfl-content > div.ng-enter,
.rfl-content > div.ng-enter-active,
.rfl-content > div.ng-leave,
.rfl-content > div.ng-leave-active,
.pm-content > section.ng-enter,
.pm-content > section.ng-enter-active,
.pm-content > section.ng-leave,
.pm-content > section.ng-leave-active,
.rpt-content > section.ng-enter,
.rpt-content > section.ng-enter-active,
.rpt-content > section.ng-leave,
.rpt-content > section.ng-leave-active,
.catalog-content > section.ng-enter,
.catalog-content > section.ng-enter-active,
.catalog-content > section.ng-leave,
.catalog-content > section.ng-leave-active,
.dashboard-content > section.ng-enter,
.dashboard-content > section.ng-enter-active,
.dashboard-content > section.ng-leave,
.dashboard-content > section.ng-leave-active,
.ly-content > section.ng-enter,
.ly-content > section.ng-enter-active,
.ly-content > section.ng-leave,
.ly-content > section.ng-leave-active,
.rfl-content > section.ng-enter,
.rfl-content > section.ng-enter-active,
.rfl-content > section.ng-leave,
.rfl-content > section.ng-leave-active {
  transition-duration: 0s !important;
  animation-duration: 0s !important;
}
.pm-content > div.ng-leave,
.rpt-content > div.ng-leave,
.catalog-content > div.ng-leave,
.dashboard-content > div.ng-leave,
.ly-content > div.ng-leave,
.rfl-content > div.ng-leave,
.pm-content > section.ng-leave,
.rpt-content > section.ng-leave,
.catalog-content > section.ng-leave,
.dashboard-content > section.ng-leave,
.ly-content > section.ng-leave,
.rfl-content > section.ng-leave {
  display: none !important;
}

md-tabs md-tabs-wrapper {
  background: var(--an-surface);
  transition: none !important;
}
md-tabs md-tab-item {
  font-family: var(--font-sans);
  font-weight: 600;
  letter-spacing: 0.3px;
}
md-tabs md-ink-bar {
  background: var(--an-rose) !important;
  height: 3px !important;
  transition: none !important;
}
md-tabs md-tabs-content-wrapper,
md-tabs md-tab-content {
  transition: none !important;
}

md-sidenav md-toolbar.toolbar-small.md-hue-3 {
  background: var(--an-surface) !important;
  box-shadow: none !important;
  border-bottom: 1px solid var(--an-border);
  min-height: 48px;
}
md-sidenav md-toolbar.toolbar-small.md-hue-3 h1.md-toolbar-tools {
  font-family: var(--font-sans) !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  color: var(--an-text) !important;
  min-height: 48px;
}

md-progress-circular .md-inner .md-gap {
  border-top-color: var(--an-rose) !important;
}
md-progress-circular path {
  stroke: var(--an-rose) !important;
}

md-datepicker[md-mode=month] {
  --an-datepicker-input-max: 140px;
}

md-datepicker {
  display: inline-flex !important;
  align-items: center !important;
  vertical-align: middle !important;
  background: var(--an-surface) !important;
  border: 1.5px solid var(--an-border) !important;
  border-radius: var(--an-radius-sm) !important;
  padding: 0 8px !important;
  box-sizing: border-box !important;
  transition: border-color var(--duration-fast) var(--ease-default), box-shadow var(--duration-fast) var(--ease-default) !important;
}
md-datepicker:focus-within {
  border-color: var(--an-text) !important;
  box-shadow: 0 0 0 2px var(--an-surface), 0 0 0 4px var(--an-border-strong) !important;
}
md-datepicker:has(.md-datepicker-invalid) {
  border-color: var(--an-rose) !important;
}
md-datepicker .md-datepicker-input-container {
  float: none !important;
  border: none !important;
  border-bottom: none !important;
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
  display: inline-flex !important;
  align-items: center !important;
  height: 100% !important;
}
md-datepicker .md-datepicker-input-container.md-datepicker-focused {
  border: none !important;
  box-shadow: none !important;
}
md-datepicker .md-datepicker-input {
  font-family: var(--font-sans) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: var(--an-text) !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  background: transparent !important;
  min-width: 86px !important;
  max-width: var(--an-datepicker-input-max, 100px) !important;
  height: 100% !important;
}
md-datepicker .md-datepicker-input::placeholder {
  color: var(--an-placeholder) !important;
  font-weight: 400 !important;
}
md-datepicker .md-datepicker-triangle-button {
  display: none !important;
}
md-datepicker .md-datepicker-button {
  float: none !important;
  top: auto !important;
  margin-top: 0 !important;
  padding: 0 !important;
  margin: 0 6px 0 0 !important;
  min-height: 24px !important;
  min-width: 24px !important;
  width: 24px !important;
  height: 24px !important;
  line-height: 24px !important;
  transform: none !important;
  overflow: visible !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
md-datepicker .md-datepicker-button:hover {
  background: transparent !important;
  transform: none !important;
  box-shadow: none !important;
}
md-datepicker .md-datepicker-button md-icon {
  color: var(--an-text-muted) !important;
  font-size: 18px !important;
  width: 18px !important;
  height: 18px !important;
}
md-datepicker .md-datepicker-button md-icon svg,
md-datepicker .md-datepicker-button md-icon path,
md-datepicker .md-datepicker-button md-icon rect,
md-datepicker .md-datepicker-button md-icon circle,
md-datepicker .md-datepicker-button md-icon polygon,
md-datepicker .md-datepicker-button md-icon ellipse {
  fill: currentColor !important;
}
md-datepicker .md-datepicker-button:hover md-icon {
  color: var(--an-rose) !important;
}

._md-datepicker-floating-label > md-datepicker {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  height: auto !important;
}
._md-datepicker-floating-label > md-datepicker .md-datepicker-button {
  float: none !important;
  margin-top: 0 !important;
  top: auto !important;
  margin-right: 8px !important;
}
._md-datepicker-floating-label > md-datepicker .md-datepicker-input-container {
  border: 1.5px solid var(--an-border) !important;
  border-radius: var(--an-radius-sm) !important;
  background: var(--an-surface) !important;
  padding: 0 8px !important;
  height: 40px !important;
}
._md-datepicker-floating-label > md-datepicker .md-datepicker-input-container.md-datepicker-focused {
  border-color: var(--an-text) !important;
  box-shadow: 0 0 0 2px var(--an-surface), 0 0 0 4px var(--an-border-strong) !important;
}

.md-datepicker-calendar-pane {
  border: 1px solid var(--an-border) !important;
  border-radius: var(--an-radius) !important;
  background: var(--an-surface) !important;
  box-shadow: var(--an-shadow-lg) !important;
  overflow: hidden !important;
  transform-origin: top left;
}
.md-datepicker-calendar-pane.md-pane-open {
  transform: scale(1) !important;
}

.md-calendar-scroll-container {
  box-shadow: none !important;
  background: var(--an-surface) !important;
}

md-calendar {
  font-family: var(--font-sans) !important;
}
md-calendar .md-calendar-day-header th {
  font-family: var(--font-sans) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.3px !important;
  color: var(--an-text-faint) !important;
}
md-calendar .md-calendar-month-label {
  font-family: var(--font-sans) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: var(--an-text) !important;
  text-transform: capitalize !important;
}
md-calendar .md-calendar-month-label.md-calendar-label-clickable:hover {
  color: var(--an-rose) !important;
}
md-calendar .md-calendar-date-selection-indicator {
  font-family: var(--font-sans) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  width: 36px !important;
  height: 36px !important;
  line-height: 36px !important;
  border-radius: 50% !important;
  transition: background-color 0.15s ease, color 0.15s ease !important;
}
md-calendar .md-calendar-date:not(.md-calendar-date-disabled) .md-calendar-date-selection-indicator:hover {
  background: var(--an-rose-soft) !important;
  color: var(--an-rose) !important;
}
md-calendar .md-calendar-selected-date .md-calendar-date-selection-indicator {
  background: var(--an-rose) !important;
  color: #fff !important;
  font-weight: 600 !important;
}
md-calendar .md-calendar-date-today .md-calendar-date-selection-indicator {
  border: 2px solid var(--an-rose) !important;
  color: var(--an-rose) !important;
  font-weight: 600 !important;
}
md-calendar .md-calendar-date-today.md-calendar-selected-date .md-calendar-date-selection-indicator {
  border-color: var(--an-rose) !important;
  background: var(--an-rose) !important;
  color: #fff !important;
}
md-calendar .md-calendar-date-disabled .md-calendar-date-selection-indicator {
  color: var(--an-text-faint) !important;
  opacity: 0.4 !important;
}
md-calendar tr:last-child td {
  border-bottom-color: var(--an-border) !important;
}

.md-calendar-scroll-mask {
  overflow: hidden !important;
}

input[type=number][max="24"] {
  font-family: var(--font-sans) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: var(--an-text) !important;
  border: 1.5px solid var(--an-border) !important;
  border-radius: var(--an-radius-sm) !important;
  background: var(--an-surface) !important;
  width: 44px !important;
  max-width: 44px !important;
  padding: 5px 6px !important;
  text-align: center !important;
  -moz-appearance: textfield !important;
  outline: none !important;
  transition: border-color var(--duration-fast) var(--ease-default), box-shadow var(--duration-fast) var(--ease-default);
}
input[type=number][max="24"]:focus {
  border-color: var(--an-rose) !important;
  box-shadow: 0 0 0 3px var(--an-rose-soft) !important;
}
input[type=number][max="24"]::-webkit-inner-spin-button, input[type=number][max="24"]::-webkit-outer-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}

md-icon[class*=iconoir-],
i[class*=iconoir-],
span[class*=iconoir-] {
  font-family: "Iconoir" !important;
  font-size: var(--an-icon-size);
  width: var(--an-icon-size);
  height: var(--an-icon-size);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

md-icon[class*=iconoir-],
i[class*=iconoir-],
span[class*=iconoir-],
md-icon.material-icons,
i.material-icons,
span.material-icons,
.md-icon-big {
  min-width: 1em;
  min-height: 1em;
  overflow: visible;
}

.message-card {
  margin-left: auto;
  margin-right: auto;
  background: var(--an-surface) !important;
  border-radius: var(--an-radius) !important;
  border: 1px solid var(--an-border);
  box-shadow: none !important;
  padding: 32px;
  text-align: center;
}
.message-card md-card-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 0 !important;
  gap: 8px;
}
.message-card md-card-content .checkmark {
  margin-bottom: 8px;
}
.message-card .md-headline {
  font-family: var(--font-sans);
  font-weight: 700;
  font-size: 18px;
  color: var(--an-text);
}
.message-card .md-subhead {
  font-family: var(--font-sans);
  color: var(--an-text-muted);
  font-size: 14px;
}

.toolbar-pill-btn.md-button {
  border-radius: 24px !important;
  transition: background-color var(--duration-fast) var(--ease-default) !important;
}
.toolbar-pill-btn.md-button:hover {
  background-color: rgba(255, 255, 255, 0.15) !important;
}

.toolbar-avatar-wrap {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
}

.toolbar-avatar-img {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
  display: block;
}

.toolbar-avatar-fallback {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.toolbar-avatar-fallback md-icon {
  margin: 0 !important;
}

.toolbar-chevron {
  font-size: 20px;
  line-height: 1;
  opacity: 0.7;
  font-weight: 300;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
}

md-toolbar.toolbar-venue-branded .md-toolbar-tools,
md-toolbar.toolbar-venue-branded .md-toolbar-tools > *,
md-toolbar.toolbar-venue-branded .md-toolbar-tools span,
md-toolbar.toolbar-venue-branded .md-toolbar-tools p,
md-toolbar.toolbar-venue-branded .md-toolbar-tools h1,
md-toolbar.toolbar-venue-branded .md-toolbar-tools h2,
md-toolbar.toolbar-venue-branded .md-toolbar-tools h3 {
  color: inherit !important;
}
md-toolbar.toolbar-venue-branded .md-toolbar-tools md-icon,
md-toolbar.toolbar-venue-branded .md-toolbar-tools md-icon[class*=iconoir-],
md-toolbar.toolbar-venue-branded .md-toolbar-tools i[class*=iconoir-],
md-toolbar.toolbar-venue-branded .md-toolbar-tools .md-button md-icon,
md-toolbar.toolbar-venue-branded .md-toolbar-tools .md-icon-button md-icon {
  color: inherit !important;
}
md-toolbar.toolbar-venue-branded .md-toolbar-tools .md-button,
md-toolbar.toolbar-venue-branded .md-toolbar-tools .md-icon-button,
md-toolbar.toolbar-venue-branded .md-toolbar-tools .toolbar-action-btn {
  color: inherit !important;
}
md-toolbar.toolbar-venue-branded .md-toolbar-tools .md-button:hover,
md-toolbar.toolbar-venue-branded .md-toolbar-tools .md-icon-button:hover,
md-toolbar.toolbar-venue-branded .md-toolbar-tools .toolbar-action-btn:hover {
  background-color: rgba(128, 128, 128, 0.15) !important;
}
md-toolbar.toolbar-venue-branded .partner-logo path {
  fill: currentColor !important;
}

md-toolbar.toolbar-light-bg .waitry-logo .wLogoIso path {
  fill: #FF3C25 !important;
}
md-toolbar.toolbar-light-bg .waitry-logo .wLogoName path {
  fill: #3E3E3E !important;
}

md-toolbar.md-whiteframe-glow-z1 {
  position: sticky !important;
  position: -webkit-sticky !important;
  top: 0 !important;
  z-index: 99 !important;
}

.venue-pill-container {
  background: var(--an-surface2) !important;
  transition: background 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
}
.venue-pill-container:hover {
  background: var(--an-surface3) !important;
}
.venue-pill-container md-button:hover {
  background-color: rgba(128, 128, 128, 0.1) !important;
}

md-toolbar.toolbar-venue-branded .venue-pill-container {
  background: rgba(255, 255, 255, 0.15) !important;
}
md-toolbar.toolbar-venue-branded .venue-pill-container span,
md-toolbar.toolbar-venue-branded .venue-pill-container md-icon {
  color: inherit !important;
}
md-toolbar.toolbar-venue-branded .venue-pill-container:hover {
  background: rgba(255, 255, 255, 0.25) !important;
}
md-toolbar.toolbar-venue-branded .venue-pill-container md-button:hover {
  background-color: rgba(255, 255, 255, 0.15) !important;
}

.video-processing-overlay {
  position: absolute;
  inset: 0;
  z-index: 100;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  background: rgba(var(--an-bg-rgb, 255, 255, 255), 0.88);
  backdrop-filter: blur(4px);
  border-radius: var(--an-radius);
}
.video-processing-overlay p {
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 600;
  color: var(--an-text-muted);
  margin: 0;
}

.media-ratio-hint {
  display: flex;
  align-items: center;
  gap: 6px;
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 500;
  color: var(--an-text-faint);
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  padding: 5px 10px;
  margin-bottom: 12px;
  width: fit-content;
}
.media-ratio-hint md-icon {
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  color: var(--an-text-faint) !important;
  flex-shrink: 0;
}

.waitry-dark-theme .md-gray {
  background-color: var(--an-surface2) !important;
}
.waitry-dark-theme .md-white {
  background-color: var(--an-surface) !important;
}
.waitry-dark-theme .default-bk {
  background-color: var(--an-bg) !important;
}
.waitry-dark-theme .whitebg {
  background-color: var(--an-surface) !important;
}
.waitry-dark-theme .whiteCenter {
  background-color: var(--an-surface) !important;
}
.waitry-dark-theme .toast-dialog {
  background-color: var(--an-surface) !important;
  color: var(--an-text) !important;
}
.waitry-dark-theme .ng-table tbody tr:hover td {
  background: rgba(255, 255, 255, 0.02) !important;
}
.waitry-dark-theme .ng-table .md-fab.md-mini:hover,
.waitry-dark-theme table.table .md-fab.md-mini:hover {
  background: rgba(255, 255, 255, 0.04) !important;
}
.waitry-dark-theme .pagination {
  background: rgba(26, 29, 39, 0.92) !important;
}
.waitry-dark-theme .pagination .pager li a {
  background: var(--an-surface) !important;
  border-color: var(--an-border) !important;
  color: var(--an-text-muted) !important;
}
.waitry-dark-theme .pagination .pager li a:hover {
  background: var(--an-surface2) !important;
  color: var(--an-text) !important;
  border-color: var(--an-border-strong) !important;
}
.waitry-dark-theme ul.contextMenu {
  background-color: var(--an-surface) !important;
  border-color: var(--an-border) !important;
  box-shadow: var(--an-shadow-lg) !important;
  color: var(--an-text) !important;
}
.waitry-dark-theme ul.contextMenu li {
  border-bottom: 1px solid var(--an-border) !important;
}
.waitry-dark-theme ul.contextMenu li:hover {
  background-color: var(--an-surface2) !important;
}
.waitry-dark-theme ul.contextMenu li:hover a {
  color: var(--an-text) !important;
}

md-content.flex:not(.home-root):not(#fullscreen-content):not(.hl-content) {
  padding-bottom: 80px;
}

md-dialog md-content.flex:not(.home-root):not(#fullscreen-content):not(.hl-content) {
  padding-bottom: 0;
}

md-content > md-toolbar + *:not(.section-kpi-banner):not(.section-filters-bar):not(.rpt-layout):not(.pm-workspace):not(.vm-page) {
  margin-top: 20px;
}

.md-virtual-repeat-container.md-autocomplete-suggestions-container .md-virtual-repeat-sizer {
  height: auto !important;
}
.md-virtual-repeat-container.md-autocomplete-suggestions-container .md-virtual-repeat-offsetter {
  padding-bottom: 0 !important;
}
.md-virtual-repeat-container.md-autocomplete-suggestions-container ul.md-autocomplete-suggestions {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.w-stack__back {
  display: none !important;
}

md-icon,
.material-icons,
[class^=iconoir-],
[class*=" iconoir-"],
.menu-icon-24,
.md-icon-big {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
  line-height: 1 !important;
  margin: 0;
}

md-icon {
  min-width: 0;
  min-height: 0;
}

md-icon {
  color: inherit;
}

.md-button-wrapper {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  line-height: 1;
  width: 100%;
}

.md-button md-icon,
.md-button [class^=iconoir-],
.md-button [class*=" iconoir-"],
.md-button-wrapper md-icon,
.md-button-wrapper [class^=iconoir-],
.md-button-wrapper [class*=" iconoir-"],
button md-icon,
button [class^=iconoir-],
button [class*=" iconoir-"] {
  margin: 0 !important;
}

.md-button:not(.md-icon-button):not(.md-fab),
button.md-button:not(.md-icon-button):not(.md-fab) {
  column-gap: 6px;
}

md-tabs,
md-tabs *,
md-tabs-wrapper,
md-tabs-wrapper *,
md-tabs-content-wrapper,
md-tabs-content-wrapper *,
md-tab-content,
md-tab-content * {
  transition: none !important;
  transition-delay: 0s !important;
  transition-duration: 0s !important;
  animation: none !important;
  animation-delay: 0s !important;
  animation-duration: 0s !important;
}

.md-button {
  font-family: var(--font-sans);
  font-weight: 600;
  font-size: 14px;
  min-height: 40px;
  line-height: 40px;
  text-transform: none;
  letter-spacing: -0.1px;
  border-radius: var(--an-radius-sm);
  overflow: visible;
  transition: all var(--duration-fast) var(--ease-default);
  position: relative;
  border: 1px solid transparent;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
}
.md-button:not(.md-raised):not(.md-fab):not(.md-icon-button):not(.pm-btn-primary):not(.pm-btn-secondary):not(.pm-btn-danger):not(.pm-btn-icon):not([class*=-btn]):not([class*=btn-]):not(md-menu-item > *) {
  border-color: var(--an-border);
  background-color: var(--an-surface);
  color: var(--an-text);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.02);
}
.md-button:not(.md-raised):not(.md-fab):not(.md-icon-button):not(.pm-btn-primary):not(.pm-btn-secondary):not(.pm-btn-danger):not(.pm-btn-icon):not([class*=-btn]):not([class*=btn-]):not(md-menu-item > *):hover:not([disabled]) {
  background-color: var(--an-surface2);
  border-color: var(--an-border-strong);
  color: var(--an-text);
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}
.md-toolbar-tools .md-button:not(.md-raised):not(.md-primary):not(.toolbar-action-btn) {
  background-color: transparent !important;
  box-shadow: none !important;
}
.md-toolbar-tools .md-button:not(.md-raised):not(.md-primary):not(.toolbar-action-btn):hover:not([disabled]) {
  background-color: rgba(0, 0, 0, 0.05) !important;
}
.md-button:hover:not([disabled]) {
  transform: translateY(-1px);
}
.md-button:active:not([disabled]) {
  transform: translateY(0) scale(0.98);
}
.md-button.md-small {
  min-height: 32px;
  line-height: 32px;
  font-size: 12px;
  font-weight: 600;
  border-radius: var(--an-radius-xs);
  padding: 0 12px;
}
.md-button.md-small md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  line-height: 16px;
}
.md-button.md-raised:not([disabled]) {
  box-shadow: var(--an-shadow);
  border: 1px solid var(--an-border);
  background-color: var(--an-surface);
  color: var(--an-text);
}
.md-button.md-raised:not([disabled]):hover:not([disabled]) {
  box-shadow: var(--an-shadow-md);
  border-color: var(--an-border-strong);
  background-color: var(--an-surface2);
}
.md-button.md-raised:not([disabled]):active:not([disabled]) {
  box-shadow: var(--an-shadow-md);
}
.md-button.md-primary.md-raised {
  background: linear-gradient(135deg, var(--an-rose) 0%, #E8384F 100%) !important;
  color: #fff !important;
  border: none !important;
  box-shadow: 0 4px 14px rgba(244, 63, 94, 0.25);
}
.md-button.md-primary.md-raised .md-button-wrapper,
.md-button.md-primary.md-raised span,
.md-button.md-primary.md-raised md-icon,
.md-button.md-primary.md-raised [class^=iconoir-],
.md-button.md-primary.md-raised [class*=" iconoir-"] {
  color: #fff !important;
}
.md-button.md-primary.md-raised:hover:not([disabled]) {
  box-shadow: 0 8px 25px rgba(244, 63, 94, 0.35);
}
.md-button.md-primary.md-raised[disabled] {
  background: var(--an-surface2, #eef0f3) !important;
  color: var(--an-text-faint, rgba(0, 0, 0, 0.38)) !important;
  box-shadow: none;
  cursor: default;
}
.md-button.md-primary.md-raised[disabled] .md-button-wrapper,
.md-button.md-primary.md-raised[disabled] span,
.md-button.md-primary.md-raised[disabled] md-icon,
.md-button.md-primary.md-raised[disabled] [class^=iconoir-],
.md-button.md-primary.md-raised[disabled] [class*=" iconoir-"] {
  color: var(--an-text-faint, rgba(0, 0, 0, 0.38)) !important;
}
.md-button.md-raised.btn-primary {
  color: #fff !important;
}
.md-button.md-raised.btn-primary span, .md-button.md-raised.btn-primary i, .md-button.md-raised.btn-primary .md-button-wrapper {
  color: #fff !important;
}
.md-button.md-raised.btn-primary[disabled] {
  color: var(--an-text-faint) !important;
}
.md-button.md-raised.btn-primary[disabled] span, .md-button.md-raised.btn-primary[disabled] i {
  color: var(--an-text-faint) !important;
}
.md-button.md-warn.md-raised {
  background: linear-gradient(135deg, var(--an-amber) 0%, var(--an-orange) 100%) !important;
  color: #fff !important;
  border: none !important;
}
.md-button.md-fab {
  border-radius: 14px;
  box-shadow: var(--an-shadow-md);
  border: 1px solid transparent;
  transition: all var(--duration-norm) var(--ease-spring);
}
.md-button.md-fab:hover:not([disabled]) {
  transform: translateY(-2px) scale(1.04);
  box-shadow: var(--an-shadow-lg);
}
.md-button.md-fab.md-mini {
  border-radius: 12px;
  width: 36px;
  height: 36px;
  line-height: 36px;
}
.md-button.md-icon-button {
  border-radius: var(--an-radius-sm);
  width: 40px;
  height: 40px;
  margin: 0 2px;
  border: 1px solid transparent;
  background-color: transparent;
  box-shadow: none;
  line-height: 1 !important;
  padding: 0 !important;
}
.md-button.md-icon-button md-icon,
.md-button.md-icon-button [class^=iconoir-],
.md-button.md-icon-button [class*=" iconoir-"] {
  margin: 0 !important;
  flex-shrink: 0;
}
.md-button.md-icon-button:hover:not([disabled]) {
  background-color: var(--an-bg-subtle, var(--an-surface2));
}

md-toolbar.toolbar-small .md-toolbar-tools > .md-button.md-icon-button:not(#_),
md-toolbar.toolbar-small .md-toolbar-tools > md-menu > .md-button.md-icon-button:not(#_),
md-toolbar.toolbar-small .md-toolbar-tools st-actions > .md-button.md-icon-button:not(#_),
md-toolbar.toolbar-small .md-toolbar-tools st-actions > md-menu > .md-button.md-icon-button:not(#_) {
  background-color: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}
md-toolbar.toolbar-small .md-toolbar-tools > .md-button.md-icon-button:not(#_):hover:not([disabled]),
md-toolbar.toolbar-small .md-toolbar-tools > md-menu > .md-button.md-icon-button:not(#_):hover:not([disabled]),
md-toolbar.toolbar-small .md-toolbar-tools st-actions > .md-button.md-icon-button:not(#_):hover:not([disabled]),
md-toolbar.toolbar-small .md-toolbar-tools st-actions > md-menu > .md-button.md-icon-button:not(#_):hover:not([disabled]) {
  background-color: var(--an-bg-subtle, var(--an-surface2)) !important;
}

md-card {
  border-radius: var(--an-radius) !important;
  border: 1px solid var(--an-border);
  box-shadow: var(--an-shadow) !important;
  overflow: hidden;
  transition: transform var(--duration-norm) var(--ease-default), box-shadow var(--duration-norm) var(--ease-default);
  background: var(--an-surface);
  position: relative;
}
md-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--an-shadow-md) !important;
}
md-card.flat {
  box-shadow: var(--an-shadow-xs) !important;
  border: 1px solid var(--an-border);
}
md-card.flat .md-headline p, md-card.flat .md-headline button {
  margin-top: 0;
  margin-bottom: 10px;
}
md-card md-card-header {
  padding: 16px 20px 12px;
}
md-card md-card-content {
  padding: 0 20px 16px;
}

:where(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]):not(.md-input):not(.md-datepicker-input):not(md-input-container input):not(md-input-container textarea)),
:where(select:not(.md-select)),
:where(textarea:not(.md-input):not(md-input-container textarea)) {
  font-family: var(--font-sans);
  font-size: 14px;
  color: var(--an-text);
  background: var(--an-surface);
  border: 1px solid var(--an-border-strong);
  border-radius: var(--an-radius-sm);
  padding: 0 12px;
  height: 40px;
  box-shadow: var(--an-shadow-xs);
  box-sizing: border-box;
  transition: border-color var(--duration-fast) var(--ease-default), box-shadow var(--duration-fast) var(--ease-default);
  outline: none;
}
:where(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]):not(.md-input):not(.md-datepicker-input):not(md-input-container input):not(md-input-container textarea)):focus,
:where(select:not(.md-select)):focus,
:where(textarea:not(.md-input):not(md-input-container textarea)):focus {
  border-color: var(--an-text);
  box-shadow: 0 0 0 2px var(--an-surface), 0 0 0 4px var(--an-border-strong);
}
:where(input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]):not(.md-input):not(.md-datepicker-input):not(md-input-container input):not(md-input-container textarea))[disabled],
:where(select:not(.md-select))[disabled],
:where(textarea:not(.md-input):not(md-input-container textarea))[disabled] {
  background-color: var(--an-surface2);
  color: var(--an-text-muted);
  cursor: not-allowed;
}

textarea:not(.md-input) {
  height: auto;
  min-height: 80px;
  padding: 10px 12px;
}

md-datepicker .md-datepicker-input,
md-autocomplete-wrap input,
.sm-search-wrap input,
.table-inline-search input,
.table-inline-search > input,
.clients-search-wrapper input,
.clients-toolbar-search input,
.clients-search-premium input,
.catalog-toolbar-search input,
.catalog-toolbar-search .catalog-search-input,
.venue-switcher-search-box input,
.places-utility-bar input,
.search-wrapper input,
.search-box input,
.search-group input,
.input-group input,
.filter-select-wrapper input {
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  height: auto !important;
  outline: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}
md-datepicker .md-datepicker-input:focus,
md-autocomplete-wrap input:focus,
.sm-search-wrap input:focus,
.table-inline-search input:focus,
.table-inline-search > input:focus,
.clients-search-wrapper input:focus,
.clients-toolbar-search input:focus,
.clients-search-premium input:focus,
.catalog-toolbar-search input:focus,
.catalog-toolbar-search .catalog-search-input:focus,
.venue-switcher-search-box input:focus,
.places-utility-bar input:focus,
.search-wrapper input:focus,
.search-box input:focus,
.search-group input:focus,
.input-group input:focus,
.filter-select-wrapper input:focus {
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
}

:where([class*=search], [class*=-wrap], [class*=filter-]) :where(input:not([type=checkbox]):not([type=radio]):not(.md-input):not(md-input-container input)) {
  border: none;
  background: transparent;
  box-shadow: none;
  border-radius: 0;
  padding: 0;
  height: auto;
  outline: none;
  appearance: none;
  -webkit-appearance: none;
}
:where([class*=search], [class*=-wrap], [class*=filter-]) :where(input:not([type=checkbox]):not([type=radio]):not(.md-input):not(md-input-container input)):where(:focus) {
  border: none;
  box-shadow: none;
  outline: none;
}

md-input-container {
  font-family: var(--font-sans);
  --an-field-strip: 22px;
  padding-top: var(--an-field-strip);
  margin: 0 0 20px 0;
  position: relative;
}
md-input-container .md-input-underline {
  display: none !important;
}
md-input-container label {
  position: absolute !important;
  top: 2px !important;
  left: 0 !important;
  bottom: auto !important;
  right: auto !important;
  width: auto !important;
  font-family: var(--font-sans);
  font-weight: 600;
  font-size: 12px;
  line-height: 18px;
  color: var(--an-text-muted) !important;
  letter-spacing: 0.1px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
  transform: none !important;
  transition: color var(--duration-fast) var(--ease-default);
  pointer-events: none;
}
md-input-container input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]):not(.md-datepicker-input),
md-input-container input.md-input:not(.md-datepicker-input),
md-input-container textarea,
md-input-container textarea.md-input {
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 400;
  color: var(--an-text);
  background: var(--an-surface) !important;
  border: 1px solid var(--an-border-strong) !important;
  border-radius: var(--an-radius-sm) !important;
  padding: 0 12px !important;
  height: 40px !important;
  line-height: 1.5;
  box-shadow: var(--an-shadow-xs);
  box-sizing: border-box;
  transition: border-color var(--duration-fast) var(--ease-default), box-shadow var(--duration-fast) var(--ease-default);
  width: 100%;
  margin-top: 0;
  outline: none;
  display: block;
}
md-input-container textarea,
md-input-container textarea.md-input {
  height: auto !important;
  min-height: 88px;
  padding: 10px 12px !important;
  resize: vertical;
}
md-input-container.md-input-focused label {
  color: var(--an-text) !important;
}
md-input-container.md-input-focused input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]):not(.md-datepicker-input),
md-input-container.md-input-focused input.md-input:not(.md-datepicker-input),
md-input-container.md-input-focused textarea,
md-input-container.md-input-focused textarea.md-input {
  border-color: var(--an-text) !important;
  box-shadow: 0 0 0 2px var(--an-surface), 0 0 0 4px var(--an-border-strong) !important;
  outline: none;
}
md-input-container.md-input-focused label, md-input-container.md-input-has-value label, md-input-container.md-input-has-placeholder label {
  transform: none !important;
}
md-input-container.md-input-invalid input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]):not(.md-datepicker-input),
md-input-container.md-input-invalid input.md-input:not(.md-datepicker-input),
md-input-container.md-input-invalid textarea,
md-input-container.md-input-invalid textarea.md-input {
  border-color: var(--an-rose) !important;
}
md-input-container.md-input-invalid.md-input-focused input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]):not(.md-datepicker-input),
md-input-container.md-input-invalid.md-input-focused input.md-input:not(.md-datepicker-input),
md-input-container.md-input-invalid.md-input-focused textarea,
md-input-container.md-input-invalid.md-input-focused textarea.md-input {
  box-shadow: 0 0 0 2px var(--an-surface), 0 0 0 4px var(--an-rose-ring) !important;
}
md-input-container.md-input-invalid label,
md-input-container.md-input-invalid .md-input-message-animation,
md-input-container.md-input-invalid .md-char-counter {
  color: var(--an-rose) !important;
}
md-input-container .md-char-counter {
  font-size: 11px;
  color: var(--an-text-faint);
}
md-input-container.narrow {
  --an-field-strip: 0px;
  padding-top: var(--an-field-strip);
  margin-top: 0;
  margin-bottom: 0;
}
md-input-container.narrow label {
  position: static !important;
}

md-input-container > label.md-placeholder {
  opacity: 1 !important;
  transform: none !important;
}

md-input-container:has(> label.md-placeholder) md-select .md-select-placeholder > span:not(.md-select-icon) {
  visibility: hidden;
}

md-input-container[md-no-float]:not(:has(> label)),
md-input-container.md-no-float:not(:has(> label)) {
  --an-field-strip: 0px;
}

md-input-container > md-icon {
  top: calc(var(--an-field-strip, 22px) + 20px) !important;
  transform: translateY(-50%) !important;
  left: 12px !important;
  right: auto !important;
  bottom: auto !important;
  color: var(--an-text-muted);
  pointer-events: none;
}

md-input-container.md-icon-left,
md-input-container.md-icon-right {
  padding-left: 0;
  padding-right: 0;
}

md-input-container:has(> md-icon) input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]):not(.md-datepicker-input),
md-input-container:has(> md-icon) input.md-input:not(.md-datepicker-input),
md-input-container:has(> md-icon) textarea,
md-input-container:has(> md-icon) textarea.md-input {
  padding-left: 40px !important;
}
md-input-container:has(> md-icon) label {
  left: 0 !important;
}

md-select {
  font-family: var(--font-sans);
  margin: 0;
}
md-select .md-select-value {
  display: flex !important;
  align-items: center !important;
  font-size: 14px;
  color: var(--an-text) !important;
  background: var(--an-surface) !important;
  border: 1px solid var(--an-border-strong) !important;
  border-radius: var(--an-radius-sm) !important;
  padding: 0 12px !important;
  height: 40px !important;
  line-height: normal !important;
  box-shadow: var(--an-shadow-xs);
  box-sizing: border-box;
  transition: border-color var(--duration-fast) var(--ease-default), box-shadow var(--duration-fast) var(--ease-default);
  border-bottom-color: var(--an-border-strong) !important;
}
md-select .md-select-value span,
md-select .md-select-value span:first-child,
md-select .md-select-value span:not(.md-select-icon) {
  font-family: var(--font-sans);
  color: inherit !important;
  line-height: normal !important;
}
md-select .md-select-value span:not(.md-select-icon) {
  display: inline-flex !important;
  align-items: center !important;
  height: 100% !important;
}
md-select .md-select-value .md-text {
  color: var(--an-text) !important;
  font-size: 14px;
  line-height: normal !important;
}
md-select .md-select-value .md-select-icon {
  color: var(--an-text-muted);
  transform: translateY(-2px);
}
md-select:focus .md-select-value {
  border-color: var(--an-text) !important;
  box-shadow: 0 0 0 2px var(--an-surface), 0 0 0 4px var(--an-border-strong) !important;
}
md-select[disabled] .md-select-value {
  background-color: var(--an-surface2) !important;
  color: var(--an-text-muted) !important;
  cursor: not-allowed;
}
md-select[disabled] .md-select-value .md-text {
  color: var(--an-text-muted) !important;
}

.md-select-menu-container.md-leave,
.md-select-menu-container.md-leave *,
.md-open-menu-container.md-leave,
.md-open-menu-container.md-leave * {
  transition-duration: 0s !important;
  animation-duration: 0s !important;
}

.md-select-menu-container.ng-leave,
.md-select-menu-container.ng-leave-active,
.md-select-menu-container *.ng-leave,
.md-select-menu-container *.ng-leave-active,
.md-open-menu-container.ng-leave,
.md-open-menu-container.ng-leave-active,
.md-open-menu-container *.ng-leave,
.md-open-menu-container *.ng-leave-active {
  transition-duration: 0s !important;
  animation-duration: 0s !important;
}

.md-select-menu-container,
.md-open-menu-container {
  transition: none !important;
}

.md-select-menu-container {
  z-index: 2147483103 !important;
}

.md-autocomplete-suggestions-container {
  z-index: 2147483102 !important;
  background-color: var(--an-surface) !important;
  border: 1px solid var(--an-border) !important;
  border-radius: var(--an-radius-sm) !important;
  box-shadow: var(--an-shadow-lg) !important;
}
.md-autocomplete-suggestions-container li {
  color: var(--an-text) !important;
}
.md-autocomplete-suggestions-container li:hover, .md-autocomplete-suggestions-container li.selected {
  background-color: var(--an-surface2) !important;
}

.md-datepicker-calendar-pane {
  z-index: 2147483102 !important;
}

.md-datepicker-is-showing .md-scroll-mask {
  z-index: 2147483101 !important;
}

.pac-container {
  z-index: 2147483102 !important;
}

md-select-menu {
  border-radius: var(--an-radius-sm) !important;
  box-shadow: var(--an-shadow-lg) !important;
  border: 1px solid var(--an-border);
  background: var(--an-surface) !important;
}
md-select-menu md-content {
  padding: 4px !important;
  border-radius: var(--an-radius-sm);
  background: var(--an-surface) !important;
}
md-select-menu md-optgroup label {
  padding: 8px 10px 4px !important;
  font-size: 11.5px !important;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--an-text-muted) !important;
}
md-select-menu md-option {
  font-family: var(--font-sans);
  font-size: 13.5px;
  font-weight: 500;
  height: 36px;
  min-height: 36px;
  padding: 0 10px !important;
  border-radius: var(--an-radius-xs);
  color: var(--an-text) !important;
  background: transparent !important;
}
md-select-menu md-option:hover, md-select-menu md-option:focus, md-select-menu md-option.md-focused {
  background: var(--an-bg-subtle) !important;
  transition: background var(--duration-fast) var(--ease-default);
}
md-select-menu md-option:focus-visible {
  outline: 2px solid var(--an-primary);
  outline-offset: -2px;
}
md-select-menu md-option[selected] {
  color: var(--an-text) !important;
  font-weight: 600;
  background: var(--an-bg-active) !important;
}
md-select-menu md-option[disabled] {
  color: var(--an-text-faint) !important;
}
md-select-menu md-option .md-text {
  color: inherit !important;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
md-select-menu[multiple] md-option.md-checkbox-enabled {
  padding-left: 40px !important;
}
md-select-menu[multiple] md-option.md-checkbox-enabled[selected] {
  font-weight: 500;
  background: transparent !important;
}
md-select-menu[multiple] md-option.md-checkbox-enabled[selected]:hover, md-select-menu[multiple] md-option.md-checkbox-enabled[selected]:focus, md-select-menu[multiple] md-option.md-checkbox-enabled[selected].md-focused {
  background: var(--an-bg-subtle) !important;
}
md-select-menu[multiple] md-option.md-checkbox-enabled .md-container {
  left: 10px !important;
  width: 18px !important;
  height: 18px !important;
  margin: 0 !important;
}
md-select-menu[multiple] md-option.md-checkbox-enabled .md-icon {
  width: 18px !important;
  height: 18px !important;
  border-radius: 5px !important;
  border-width: 2px !important;
  border-color: var(--an-control-border) !important;
  background: transparent !important;
  transition: background-color var(--duration-fast) var(--ease-default), border-color var(--duration-fast) var(--ease-default);
}
md-select-menu[multiple] md-option.md-checkbox-enabled[selected] .md-icon {
  background: var(--an-rose) !important;
  border-color: var(--an-rose) !important;
}
md-select-menu[multiple] md-option.md-checkbox-enabled[selected] .md-icon:after {
  left: 4px !important;
  top: 0 !important;
  width: 5px !important;
  height: 10px !important;
  border-color: #fff !important;
}

md-switch {
  margin: 8px 16px;
  height: 30px;
}
md-switch .md-container {
  width: 36px !important;
  height: 20px !important;
}
md-switch .md-container .md-bar {
  width: 36px !important;
  height: 20px !important;
  top: 0 !important;
  left: 0 !important;
  border-radius: 10px !important;
  background-color: var(--an-border-strong) !important;
  transition: background-color 0.28s ease !important;
}
md-switch .md-container .md-thumb-container {
  width: 20px !important;
  height: 20px !important;
  top: 0 !important;
  left: 0 !important;
  transform: translate3d(0, 0, 0);
}
md-switch .md-container .md-thumb-container .md-thumb {
  width: 16px !important;
  height: 16px !important;
  border-radius: 50% !important;
  top: 2px !important;
  left: 2px !important;
  background-color: #ffffff !important;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2) !important;
  border: none !important;
}
md-switch.md-checked .md-container .md-bar {
  background-color: #EC4E36 !important;
}
md-switch.md-checked .md-container .md-thumb-container {
  transform: translate3d(16px, 0, 0) !important;
}

md-checkbox .md-icon {
  border-radius: 5px;
  border-width: 2px;
  transition: all var(--duration-fast) var(--ease-default);
}
md-checkbox.md-checked .md-icon {
  background-color: var(--an-rose) !important;
  border-color: var(--an-rose) !important;
}
md-checkbox .md-label {
  font-family: var(--font-sans);
  font-size: 14px;
}

md-checkbox:not(.md-checked) .md-icon,
md-radio-button:not(.md-checked) .md-off {
  border-color: var(--an-control-border) !important;
}

input::placeholder,
textarea::placeholder {
  color: var(--an-placeholder);
  opacity: 1;
}

md-input-container .md-input::placeholder,
.md-datepicker-input::placeholder,
md-chips .md-chips .md-chip-input-container input::placeholder {
  color: var(--an-placeholder) !important;
  opacity: 1 !important;
}

md-input-container .md-input::-webkit-input-placeholder,
.md-datepicker-input::-webkit-input-placeholder,
md-chips .md-chips .md-chip-input-container input::-webkit-input-placeholder {
  color: var(--an-placeholder) !important;
  opacity: 1 !important;
}

md-radio-button.md-checked .md-off {
  border-color: var(--an-rose) !important;
}
md-radio-button.md-checked .md-on {
  background-color: var(--an-rose) !important;
}
md-radio-button .md-label {
  font-family: var(--font-sans);
  font-size: 14px;
}

md-tabs {
  background: transparent;
}
md-tabs md-tabs-wrapper {
  border-bottom: 1px solid var(--an-border);
  background: var(--an-surface);
}
md-tabs md-tab-item {
  font-family: var(--font-sans) !important;
  font-weight: 600;
  font-size: 14px;
  text-transform: none;
  letter-spacing: -0.1px;
  color: var(--an-text-muted);
  padding: 0 20px;
  min-width: 0;
  transition: color var(--duration-fast) var(--ease-default);
}
md-tabs md-tab-item.md-active {
  color: var(--an-rose);
}
md-tabs md-tab-item:hover:not(.md-active) {
  color: var(--an-text);
}
md-tabs md-ink-bar {
  height: 3px !important;
  border-radius: 3px 3px 0 0;
  background: var(--an-rose) !important;
  transition: none !important;
}
md-tabs md-tabs-content-wrapper {
  background: var(--an-surface);
  transition: none !important;
}
md-tabs md-tab-content {
  transition: none !important;
}

md-list-item {
  font-family: var(--font-sans);
  transition: background var(--duration-fast) var(--ease-default);
  border-radius: 0;
}
md-list-item:hover {
  background: rgba(0, 0, 0, 0.02);
}
md-list-item.selected {
  background: rgba(244, 63, 94, 0.08) !important;
  color: var(--an-rose) !important;
}
md-list-item.selected p, md-list-item.selected span, md-list-item.selected .md-list-item-text h3, md-list-item.selected .md-list-item-text h4, md-list-item.selected .md-list-item-text p {
  color: var(--an-rose) !important;
}
md-list-item.selected md-icon {
  color: var(--an-rose) !important;
}
md-list-item p, md-list-item .md-list-item-inner > p {
  display: block !important;
  opacity: 1 !important;
  flex: 1;
}
md-list-item .md-list-item-inner {
  width: 100%;
}
md-list-item .md-button.md-no-style {
  width: 100%;
  display: block;
  padding: 0;
  margin: 0;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}
md-list-item .md-button.md-no-style:hover {
  background: rgba(0, 0, 0, 0.04) !important;
  box-shadow: none !important;
}
md-list-item .md-list-item-text h3, md-list-item .md-list-item-text h4, md-list-item .md-list-item-text p {
  font-family: var(--font-sans);
}
md-list-item .md-list-item-text h3 {
  font-weight: 600;
  font-size: 14px;
  color: var(--an-text);
}
md-list-item .md-list-item-text h4, md-list-item .md-list-item-text p {
  font-size: 13px;
  color: var(--an-text-muted);
}

.md-subheader {
  font-family: var(--font-sans);
  font-weight: 600;
  font-size: 12px;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  color: var(--an-text-faint);
  margin: 0;
}

@keyframes wt-bar-shimmer {
  0% {
    background-position: -400px 0;
  }
  100% {
    background-position: 400px 0;
  }
}
md-progress-linear .md-container {
  background-color: var(--an-surface2) !important;
  border-radius: var(--an-radius-pill) !important;
  overflow: hidden !important;
  height: 4px !important;
}
md-progress-linear .md-bar {
  background: linear-gradient(90deg, var(--an-rose) 0%, var(--an-orange) 50%, var(--an-rose) 100%) !important;
  background-size: 400px 100% !important;
  animation: wt-bar-shimmer 1.6s ease-in-out infinite !important;
  border-radius: var(--an-radius-pill) !important;
}

md-progress-circular {
  filter: drop-shadow(0 0 4px rgba(244, 63, 94, 0.25));
}
md-progress-circular path {
  stroke: var(--an-rose) !important;
  stroke-linecap: round !important;
}

md-chips .md-chip {
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 500;
  border-radius: var(--an-radius-pill);
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
}

md-datepicker {
  display: inline-flex !important;
  align-items: center !important;
  font-family: var(--font-sans);
  background: var(--an-surface) !important;
  border: 1px solid var(--an-border-strong) !important;
  border-radius: var(--an-radius-sm) !important;
  padding: 0 12px !important;
  height: 40px !important;
  box-shadow: var(--an-shadow-xs) !important;
  box-sizing: border-box !important;
  transition: border-color var(--duration-fast) var(--ease-default), box-shadow var(--duration-fast) var(--ease-default);
}
md-datepicker:focus-within {
  border-color: var(--an-text) !important;
  box-shadow: 0 0 0 2px var(--an-surface), 0 0 0 4px var(--an-border-strong) !important;
}
md-datepicker:has(.md-datepicker-invalid) {
  border-color: var(--an-rose) !important;
}
md-datepicker .md-datepicker-input-container {
  float: none !important;
  border: none !important;
  border-bottom: none !important;
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
  height: 100% !important;
  box-shadow: none !important;
  display: inline-flex !important;
  align-items: center !important;
}
md-datepicker .md-datepicker-input-container.md-datepicker-focused {
  border: none !important;
  box-shadow: none !important;
}
md-datepicker .md-datepicker-input {
  font-family: var(--font-sans);
  font-size: 14px;
  color: var(--an-text);
  background: transparent !important;
  border: none !important;
  height: 100% !important;
  min-width: 150px;
  padding: 0 !important;
  margin: 0 !important;
}
md-datepicker .md-datepicker-button {
  float: none !important;
  top: auto !important;
  margin-top: 0 !important;
  margin: 0 !important;
  margin-right: 8px !important;
  padding: 0 !important;
  min-height: 24px !important;
  min-width: 24px !important;
  width: 24px !important;
  height: 24px !important;
  line-height: 24px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
md-datepicker .md-datepicker-triangle-button {
  display: none !important;
}

md-input-container > md-datepicker {
  display: flex !important;
  width: 100%;
}
md-input-container > md-datepicker .md-datepicker-input-container {
  flex: 1 1 auto;
  min-width: 0;
}
md-input-container > md-datepicker .md-datepicker-input {
  min-width: 0;
  width: 100%;
}

md-autocomplete {
  font-family: var(--font-sans);
  border-radius: var(--an-radius-sm);
  background: transparent !important;
}
md-autocomplete md-autocomplete-wrap {
  border-radius: var(--an-radius-sm);
  border: 1px solid var(--an-border-strong) !important;
  background: var(--an-surface) !important;
  box-shadow: var(--an-shadow-xs) !important;
  height: 40px;
  transition: border-color var(--duration-fast) var(--ease-default), box-shadow var(--duration-fast) var(--ease-default);
}
md-autocomplete md-autocomplete-wrap.md-whiteframe-z1 {
  box-shadow: var(--an-shadow-xs) !important;
}
md-autocomplete md-autocomplete-wrap.md-menu-showing, md-autocomplete md-autocomplete-wrap.md-menu-showing.md-whiteframe-z1 {
  border-color: var(--an-text) !important;
  box-shadow: 0 0 0 2px var(--an-surface), 0 0 0 4px var(--an-border-strong) !important;
}
md-autocomplete input {
  font-family: var(--font-sans) !important;
  font-size: 14px;
  padding: 0 12px !important;
  height: 38px;
  color: var(--an-text) !important;
}

.md-autocomplete-suggestions li {
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 500;
  height: auto !important;
  min-height: 0 !important;
  line-height: 1.2 !important;
  padding-bottom: 0 !important;
}

.waitry-product-autocomplete-menu {
  max-height: none !important;
  border-radius: 12px !important;
  border: 1px solid var(--an-border, rgba(15, 23, 42, 0.1));
  box-shadow: 0 18px 42px rgba(15, 23, 42, 0.18) !important;
  overflow: hidden !important;
}
.waitry-product-autocomplete-menu .md-autocomplete-suggestions {
  padding: 10px !important;
  margin: 0 !important;
  background: var(--an-surface, #fff);
}
.waitry-product-autocomplete-menu .md-autocomplete-suggestions li {
  height: 58px !important;
  min-height: 58px !important;
  max-height: 58px !important;
  padding: 0 !important;
  border-radius: 10px;
  overflow: hidden;
  box-sizing: border-box;
}
.waitry-product-autocomplete-menu .md-autocomplete-suggestions li:hover, .waitry-product-autocomplete-menu .md-autocomplete-suggestions li.selected {
  background: var(--an-bg-subtle, #f8fafc) !important;
}

.waitry-autocomplete-product-row {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  height: 100%;
  min-width: 0;
  padding: 8px 12px;
  box-sizing: border-box;
}

.waitry-autocomplete-avatar {
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  border-radius: 8px;
  object-fit: cover;
  background: var(--an-bg-subtle, #f1f5f9);
  border: 1px solid var(--an-border, #e2e8f0);
}

.waitry-autocomplete-avatar--flag {
  object-fit: contain;
  padding: 7px 5px;
  background: var(--an-surface, #fff);
}

.waitry-autocomplete-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  border-radius: 8px;
  background: var(--an-bg-subtle, #f1f5f9);
  border: 1px solid var(--an-border, #e2e8f0);
  color: var(--an-text-muted, #6b7280);
  font-size: 17px;
  box-sizing: border-box;
}

.waitry-autocomplete-product-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  flex: 1 1 auto;
  line-height: 1.2;
}

.waitry-autocomplete-product-name {
  color: var(--an-text, #111827);
  font-size: 13px;
  font-weight: 700;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.waitry-autocomplete-product-meta {
  margin-top: 3px;
  color: var(--an-text-muted, #6b7280);
  font-size: 11px;
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.waitry-autocomplete-product-meta--alert {
  color: var(--an-rose, #e11d48);
  font-weight: 600;
}

.waitry-autocomplete-product-price {
  flex: 0 0 auto;
  color: var(--an-text-muted, #6b7280);
  font-size: 12px;
  font-weight: 700;
}

.waitry-autocomplete-product-badge {
  display: inline-block;
  flex: 0 0 auto;
  padding: 2px 8px;
  border-radius: var(--an-radius-pill, 999px);
  background: var(--an-surface2, #f1f5f9);
  border: 1px solid var(--an-border, #e2e8f0);
  color: var(--an-text-muted, #6b7280);
  font-size: 11px;
  font-weight: 600;
}
.waitry-autocomplete-product-badge::first-letter {
  text-transform: uppercase;
}

.waitry-autocomplete-product-row--disabled .waitry-autocomplete-avatar {
  opacity: 0.5;
  filter: grayscale(1);
}
.waitry-autocomplete-product-row--disabled .waitry-autocomplete-product-name {
  color: var(--an-text-muted, #6b7280);
}

.waitry-autocomplete-text-row {
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
  min-width: 0;
  padding: 8px 14px;
  box-sizing: border-box;
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text, #111827);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

product-autocomplete {
  display: block;
  width: 100%;
}

.error {
  color: var(--an-rose);
}

.success {
  color: var(--an-emerald);
}

.pending {
  color: var(--an-amber);
}

.cancelled {
  color: var(--an-text-faint);
}

.overflow-y {
  overflow-y: auto;
}

.md-narrow {
  margin: 0;
  padding: 0;
}

.bold {
  font-weight: 700;
}

.align-right {
  text-align: right;
}

.align-left {
  text-align: left;
}

.align-center {
  text-align: center;
}

.menu-icon-24[md-svg-icon^=waitry] {
  width: 22px;
  height: 22px;
}

.waitry-dark-theme md-dialog {
  background: var(--an-surface) !important;
  color: var(--an-text) !important;
}
.waitry-dark-theme md-dialog .md-title {
  color: var(--an-text) !important;
}
.waitry-dark-theme md-dialog md-dialog-content {
  color: var(--an-text) !important;
}
.waitry-dark-theme md-dialog .md-actions, .waitry-dark-theme md-dialog md-dialog-actions {
  background-color: var(--an-surface2) !important;
  border-top: 1px solid var(--an-border) !important;
}
.waitry-dark-theme .md-select-menu-container {
  z-index: 2147483103 !important;
}
.waitry-dark-theme .md-select-menu-container md-select-menu, .waitry-dark-theme .md-select-menu-container md-content {
  background: var(--an-surface) !important;
}
.waitry-dark-theme md-select .md-select-value {
  background: var(--an-surface) !important;
  border-color: var(--an-border-strong) !important;
  color: var(--an-text) !important;
}
.waitry-dark-theme md-select .md-select-value span,
.waitry-dark-theme md-select .md-select-value span:first-child,
.waitry-dark-theme md-select .md-select-value span:not(.md-select-icon) {
  color: var(--an-text) !important;
}
.waitry-dark-theme md-select .md-select-value .md-text {
  color: var(--an-text) !important;
}
.waitry-dark-theme md-select .md-select-value .md-select-icon {
  color: var(--an-text-muted) !important;
}
.waitry-dark-theme md-select[disabled] .md-select-value {
  background: var(--an-surface2) !important;
  color: var(--an-text-muted) !important;
}
.waitry-dark-theme md-select[disabled] .md-select-value span, .waitry-dark-theme md-select[disabled] .md-select-value .md-text {
  color: var(--an-text-muted) !important;
}
.waitry-dark-theme md-bottom-sheet {
  background: var(--an-surface) !important;
  border-top: 1px solid var(--an-border) !important;
}
.waitry-dark-theme md-bottom-sheet md-list-item {
  color: var(--an-text) !important;
}
.waitry-dark-theme md-backdrop:not(.md-select-backdrop):not(.md-menu-backdrop) {
  opacity: 0 !important;
  background-color: rgba(9, 9, 11, 0.3) !important;
  transition: opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  will-change: opacity;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.waitry-dark-theme md-backdrop:not(.md-select-backdrop):not(.md-menu-backdrop).md-opaque {
  opacity: 1 !important;
}
.waitry-dark-theme md-content {
  background: var(--an-bg) !important;
  color: var(--an-text) !important;
}
.waitry-dark-theme md-toolbar:not(.md-accent):not(.md-warn) {
  background: var(--an-surface) !important;
  color: var(--an-text) !important;
}
.waitry-dark-theme md-toast .md-toast-content {
  background: var(--an-surface3) !important;
  color: var(--an-text) !important;
  box-shadow: var(--an-shadow-md) !important;
}
.waitry-dark-theme md-sidenav {
  background: var(--an-surface) !important;
}
.waitry-dark-theme md-list-item:hover {
  background: rgba(255, 255, 255, 0.03) !important;
}
.waitry-dark-theme md-divider {
  border-top-color: var(--an-border) !important;
  border-bottom-color: var(--an-border) !important;
}
.waitry-dark-theme [md-whiteframe], .waitry-dark-theme .md-whiteframe-z1, .waitry-dark-theme .md-whiteframe-z2, .waitry-dark-theme .md-whiteframe-z3, .waitry-dark-theme .md-whiteframe-z4 {
  background: var(--an-surface) !important;
}
.waitry-dark-theme md-tabs-canvas {
  background: var(--an-surface) !important;
  border-bottom: 1px solid var(--an-border) !important;
}
.waitry-dark-theme md-tab-content {
  background: var(--an-bg) !important;
}
.waitry-dark-theme md-tabs-wrapper {
  background: var(--an-surface) !important;
  border-bottom-color: var(--an-border) !important;
}
.waitry-dark-theme md-tooltip .md-background {
  background-color: rgba(15, 23, 42, 0.95) !important;
}
.waitry-dark-theme md-tooltip .md-content {
  color: #ffffff !important;
}
.waitry-dark-theme md-card {
  background-color: var(--an-surface) !important;
  color: var(--an-text) !important;
}
.waitry-dark-theme md-card span, .waitry-dark-theme md-card p, .waitry-dark-theme md-card h1, .waitry-dark-theme md-card h2, .waitry-dark-theme md-card h3, .waitry-dark-theme md-card h4, .waitry-dark-theme md-card h5, .waitry-dark-theme md-card h6, .waitry-dark-theme md-card .md-headline {
  color: var(--an-text) !important;
}
.waitry-dark-theme md-card md-subheader, .waitry-dark-theme md-card .md-subheader {
  background: transparent !important;
  color: var(--an-text-muted) !important;
}
.waitry-dark-theme md-card md-subheader .md-subheader-inner, .waitry-dark-theme md-card .md-subheader .md-subheader-inner {
  background: transparent !important;
  color: inherit !important;
}
.waitry-dark-theme md-subheader, .waitry-dark-theme .md-subheader {
  background: transparent !important;
  background-color: transparent !important;
  color: var(--an-text-muted) !important;
}
.waitry-dark-theme md-subheader .md-subheader-inner, .waitry-dark-theme .md-subheader .md-subheader-inner {
  background: transparent !important;
  background-color: transparent !important;
  color: inherit !important;
}
.waitry-dark-theme .md-button:not(.md-raised):not(.md-primary):not(.md-warn):not(.md-accent):not([class*=-btn]):not([class*=btn-]):not(md-menu-item > *) {
  color: var(--an-text) !important;
}
.waitry-dark-theme .md-button:not(.md-raised):not(.md-primary):not(.md-warn):not(.md-accent):not([class*=-btn]):not([class*=btn-]):not(md-menu-item > *) md-icon {
  color: inherit !important;
}
.waitry-dark-theme .md-button.md-raised:not(.md-primary):not(.md-warn):not(.md-accent):not(.btn-primary):not([class*=-btn]):not([class*=btn-]) {
  color: var(--an-text) !important;
  background-color: var(--an-surface) !important;
  border-color: var(--an-border) !important;
}
.waitry-dark-theme .md-button.md-raised:not(.md-primary):not(.md-warn):not(.md-accent):not(.btn-primary):not([class*=-btn]):not([class*=btn-]) md-icon {
  color: var(--an-text-muted) !important;
}
.waitry-dark-theme .md-button:not([disabled]):hover::before,
.waitry-dark-theme .md-button:not([disabled]):focus::before {
  background-color: transparent !important;
}
.waitry-dark-theme .md-button:not(.md-raised):not(.md-fab):not(md-menu-item > *):hover:not([disabled]) {
  background-color: rgba(255, 255, 255, 0.06) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}
.waitry-dark-theme .md-button.md-raised:not(.md-primary):not(.md-warn):not(.md-accent):not(.btn-primary):hover:not([disabled]) {
  background-color: var(--an-surface2) !important;
  border-color: var(--an-border-strong) !important;
  color: var(--an-text) !important;
}
.waitry-dark-theme .md-button.md-raised:not(.md-primary):not(.md-warn):not(.md-accent):not(.btn-primary):hover:not([disabled]) md-icon {
  color: var(--an-text) !important;
}
.waitry-dark-theme .md-button.md-icon-button:hover:not([disabled]) {
  background-color: rgba(255, 255, 255, 0.06) !important;
}
.waitry-dark-theme .md-toolbar-tools .md-button:not(.md-raised):not(.toolbar-action-btn):hover:not([disabled]) {
  background-color: rgba(255, 255, 255, 0.08) !important;
}
.waitry-dark-theme md-list-item .md-button.md-no-style:hover:not([disabled]) {
  background: rgba(255, 255, 255, 0.04) !important;
}
.waitry-dark-theme md-switch {
  color: var(--an-text) !important;
}
.waitry-dark-theme md-switch .md-label {
  color: var(--an-text) !important;
}
.waitry-dark-theme md-list-item, .waitry-dark-theme .md-list-item {
  color: var(--an-text) !important;
}
.waitry-dark-theme md-list-item p, .waitry-dark-theme md-list-item span, .waitry-dark-theme md-list-item .md-list-item-text h3, .waitry-dark-theme md-list-item .md-list-item-text h4, .waitry-dark-theme md-list-item .md-list-item-text p, .waitry-dark-theme .md-list-item p, .waitry-dark-theme .md-list-item span, .waitry-dark-theme .md-list-item .md-list-item-text h3, .waitry-dark-theme .md-list-item .md-list-item-text h4, .waitry-dark-theme .md-list-item .md-list-item-text p {
  color: var(--an-text) !important;
}
.waitry-dark-theme md-list-item md-icon, .waitry-dark-theme .md-list-item md-icon {
  color: var(--an-text-muted) !important;
}
.waitry-dark-theme md-list-item md-icon.md-secondary, .waitry-dark-theme .md-list-item md-icon.md-secondary {
  color: var(--an-text-faint) !important;
}
.waitry-dark-theme md-list-item.selected, .waitry-dark-theme .md-list-item.selected {
  background: rgba(244, 63, 94, 0.15) !important;
  color: var(--an-rose) !important;
}
.waitry-dark-theme md-list-item.selected p, .waitry-dark-theme md-list-item.selected span, .waitry-dark-theme md-list-item.selected .md-list-item-text h3, .waitry-dark-theme md-list-item.selected .md-list-item-text h4, .waitry-dark-theme md-list-item.selected .md-list-item-text p, .waitry-dark-theme .md-list-item.selected p, .waitry-dark-theme .md-list-item.selected span, .waitry-dark-theme .md-list-item.selected .md-list-item-text h3, .waitry-dark-theme .md-list-item.selected .md-list-item-text h4, .waitry-dark-theme .md-list-item.selected .md-list-item-text p {
  color: var(--an-rose) !important;
}
.waitry-dark-theme md-list-item.selected md-icon, .waitry-dark-theme .md-list-item.selected md-icon {
  color: var(--an-rose) !important;
}

md-select .md-select-value.md-select-placeholder,
md-select .md-select-value.md-select-placeholder span:not(.md-select-icon),
md-select .md-select-value.md-select-placeholder .md-text {
  color: var(--an-placeholder) !important;
}

md-select.wt-clean-select {
  box-sizing: border-box;
  background: transparent;
}
md-select.wt-clean-select .md-select-value {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  border-bottom: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}
md-select.wt-clean-select .md-select-value::after {
  display: none !important;
  height: 0 !important;
  border: none !important;
}
md-select.wt-clean-select .md-select-value .md-select-icon {
  margin: 0 !important;
  transform: none !important;
  width: 24px;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
}
md-select.wt-clean-select:focus .md-select-value, md-select.wt-clean-select[aria-expanded=true] .md-select-value {
  border: none !important;
  box-shadow: none !important;
}

.filter-select-wrapper .places-filter-select {
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
}
.filter-select-wrapper .places-filter-select .md-select-value {
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 4px 0 0 !important;
  height: 34px !important;
  min-height: 0 !important;
  line-height: 34px !important;
  border-bottom: none !important;
  border-bottom-color: transparent !important;
}
.filter-select-wrapper .places-filter-select .md-select-value::after {
  display: none !important;
  height: 0 !important;
  border: none !important;
}
.filter-select-wrapper .places-filter-select .md-select-value .md-text,
.filter-select-wrapper .places-filter-select .md-select-value > span:not(.md-select-icon) {
  color: var(--an-text) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}
.filter-select-wrapper .places-filter-select .md-select-value .md-select-icon {
  color: var(--an-text-muted) !important;
  width: 14px;
  transform: none;
}
.filter-select-wrapper .places-filter-select:focus .md-select-value, .filter-select-wrapper .places-filter-select[aria-expanded=true] .md-select-value {
  border: none !important;
  box-shadow: none !important;
}

.waitry-toast-container {
  z-index: 2147483647 !important;
  pointer-events: none !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  right: auto !important;
  width: auto !important;
  justify-content: center !important;
  margin-bottom: 32px !important;
}
.waitry-toast-container .waitry-toast-content {
  pointer-events: auto !important;
  border-radius: 14px !important;
  padding: 8px 14px !important;
  min-width: auto !important;
  max-width: 500px;
  width: auto !important;
  display: inline-flex !important;
  align-items: center;
  gap: 12px;
  box-shadow: 0 10px 40px -10px rgba(0, 0, 0, 0.12), 0 4px 12px -4px rgba(0, 0, 0, 0.08) !important;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  margin: auto !important;
  min-height: 38px !important;
  height: auto !important;
}
.waitry-toast-container .waitry-toast-icon {
  font-size: 20px;
  width: 20px;
  height: 20px;
  min-width: 20px;
  min-height: 20px;
  margin: 0;
  flex-shrink: 0;
  color: #FFFFFF !important;
  display: flex;
  align-items: center;
  justify-content: center;
}
.waitry-toast-container .waitry-toast-text {
  font-family: var(--font-sans) !important;
  font-size: 14.5px;
  font-weight: 600;
  line-height: 1.4;
  margin: 0;
  color: #FFFFFF !important;
  padding-top: 1px;
}
.waitry-toast-container .waitry-toast-close {
  cursor: pointer;
  margin: 0 0 0 8px !important;
  padding: 0 !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  font-size: 18px !important;
  flex-shrink: 0;
  color: rgba(255, 255, 255, 0.7) !important;
  transition: color var(--duration-fast, 150ms) var(--ease-default, ease);
  display: flex;
  align-items: center;
  justify-content: center;
}
.waitry-toast-container .waitry-toast-close:hover {
  color: #FFFFFF !important;
}
.waitry-toast-container.waitry-toast-info .waitry-toast-content {
  background-color: rgba(14, 165, 233, 0.85) !important;
}
.waitry-toast-container.waitry-toast-success .waitry-toast-content {
  background-color: rgba(34, 197, 94, 0.85) !important;
}
.waitry-toast-container.waitry-toast-warning .waitry-toast-content {
  background-color: rgba(245, 158, 11, 0.85) !important;
}
.waitry-toast-container.waitry-toast-error .waitry-toast-content {
  background-color: rgba(239, 68, 68, 0.85) !important;
}

.wt-update-notice {
  position: fixed;
  top: 72px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2147483050;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 8px 8px 8px 16px;
  border-radius: 999px;
  background: var(--an-surface);
  color: var(--an-text);
  border: 1px solid var(--an-border-strong);
  box-shadow: var(--an-shadow-lg);
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.3;
  max-width: calc(100vw - 32px);
  animation: wt-update-notice-in 240ms var(--ease-default) both;
}
.wt-update-notice__icon {
  font-size: 18px;
  color: var(--an-primary);
  flex-shrink: 0;
}
.wt-update-notice__text {
  white-space: nowrap;
}
.wt-update-notice .md-button.wt-update-notice__action {
  margin: 0;
  min-height: 30px;
  line-height: 30px;
  padding: 0 14px;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 700;
  text-transform: none;
  letter-spacing: 0;
  color: #FFFFFF !important;
  background: var(--an-primary) !important;
}
.wt-update-notice .md-button.wt-update-notice__action:hover, .wt-update-notice .md-button.wt-update-notice__action:focus {
  filter: brightness(1.08);
}
.wt-update-notice .md-button.wt-update-notice__close {
  margin: 0;
  width: 30px;
  height: 30px;
  min-height: 30px;
  line-height: 30px;
  padding: 0;
  color: var(--an-text-muted) !important;
}
.wt-update-notice .md-button.wt-update-notice__close i {
  font-size: 18px;
}
.wt-update-notice .md-button.wt-update-notice__close:hover, .wt-update-notice .md-button.wt-update-notice__close:focus {
  color: var(--an-text) !important;
}

@keyframes wt-update-notice-in {
  from {
    opacity: 0;
    transform: translate(-50%, -8px);
  }
  to {
    opacity: 1;
    transform: translate(-50%, 0);
  }
}
.sidenav-logo-mise-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 64px;
  width: 100%;
  flex-shrink: 0;
  border-bottom: 1px solid var(--an-border, rgba(0, 0, 0, 0.08));
  margin-bottom: 4px;
  cursor: pointer;
  position: sticky;
  top: 0;
  z-index: 3;
  background: var(--an-surface, #fafafa);
  transition: background 0.3s ease;
  animation: logo-load 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards;
  opacity: 0;
  transform: translateY(-10px);
}
.sidenav-logo-mise-btn:hover {
  background: rgba(236, 78, 54, 0.04);
}

.mise-ai-sparkle-svg {
  width: 28px;
  height: 28px;
  overflow: visible;
  filter: drop-shadow(0 2px 8px rgba(236, 78, 54, 0.35));
  transition: transform 0.6s cubic-bezier(0.34, 1.56, 0.64, 1), filter 0.6s ease;
}

.sidenav-logo-mise-btn:hover .mise-ai-sparkle-svg {
  transform: scale(1.15) rotate(15deg);
  filter: drop-shadow(0 4px 14px rgba(147, 51, 234, 0.6));
}

.sparkle-main {
  transform-origin: 12px 12px;
  animation: pulse-sparkle 3s infinite ease-in-out;
  transition: transform 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.sidenav-logo-mise-btn:hover .sparkle-main {
  transform: scale(1.1);
}

.sparkle-small-1 {
  transform-origin: 6px 6px;
  animation: float-sparkle-1 4s infinite ease-in-out;
}

.sparkle-small-2 {
  transform-origin: 18px 18px;
  animation: float-sparkle-2 4.5s infinite ease-in-out;
}

.mise-glow-ring {
  transform-origin: 12px 12px;
  animation: rotate-ring 12s linear infinite;
  transition: stroke-dasharray 0.4s ease;
}

.sidenav-logo-mise-btn:hover .mise-glow-ring {
  stroke-dasharray: 8 2;
  animation-duration: 4s;
}

@keyframes pulse-sparkle {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.06);
  }
}
@keyframes float-sparkle-1 {
  0%, 100% {
    transform: translate(0, 0) scale(1) rotate(0deg);
    opacity: 0.7;
  }
  50% {
    transform: translate(-1px, -1px) scale(1.2) rotate(45deg);
    opacity: 1;
  }
}
@keyframes float-sparkle-2 {
  0%, 100% {
    transform: translate(0, 0) scale(1) rotate(0deg);
    opacity: 0.7;
  }
  50% {
    transform: translate(1px, 1px) scale(1.2) rotate(-45deg);
    opacity: 1;
  }
}
@keyframes rotate-ring {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@keyframes logo-load {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.sidenav {
  display: flex !important;
  flex-direction: column;
  width: 64px !important;
  min-width: 64px !important;
  max-width: 64px !important;
  height: 100% !important;
  background-color: var(--an-surface, #fafafa) !important;
  border-right: 1px solid var(--an-border, rgba(0, 0, 0, 0.08));
  box-shadow: 1px 0 0 var(--an-border, rgba(0, 0, 0, 0.06));
  color: var(--an-text, #333);
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  z-index: 9999;
  position: relative !important;
  overflow: visible !important;
}
.sidenav > div {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 0;
}
.sidenav md-list {
  padding: 4px 0 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  display: flex;
  flex-direction: column;
  flex: 1;
  scrollbar-width: thin;
  scrollbar-color: var(--an-border, rgba(0, 0, 0, 0.18)) transparent;
}
.sidenav md-list::-webkit-scrollbar {
  width: 4px;
}
.sidenav md-list::-webkit-scrollbar-track {
  background: transparent;
}
.sidenav md-list::-webkit-scrollbar-thumb {
  background: var(--an-border, rgba(0, 0, 0, 0.18));
  border-radius: 4px;
}
.sidenav md-list::-webkit-scrollbar-thumb:hover {
  background: rgba(236, 78, 54, 0.45);
}
.sidenav md-list-item {
  position: relative;
  min-height: 44px;
  min-width: 0 !important;
  margin: 2px 6px;
  padding: 0 !important;
  border-radius: 10px;
  transition: background-color 0.15s ease, color 0.15s ease;
}
.sidenav md-list-item:hover {
  background: var(--an-surface2, rgba(0, 0, 0, 0.04)) !important;
}
.sidenav md-list-item:hover md-icon {
  color: #EC4E36 !important;
}
.sidenav md-list-item.active {
  background-color: rgba(236, 78, 54, 0.09);
  position: relative;
}
.sidenav md-list-item.active::after {
  content: "";
  position: absolute;
  left: -6px;
  top: 8px;
  bottom: 8px;
  width: 3px;
  background: #EC4E36;
  border-radius: 0 3px 3px 0;
  z-index: 10;
}
.sidenav md-list-item.active md-icon {
  color: #EC4E36 !important;
}
.sidenav md-list-item.group-open {
  background-color: var(--an-surface2, rgba(0, 0, 0, 0.06));
  box-shadow: inset 0 0 0 1px var(--an-border, rgba(0, 0, 0, 0.08));
}
.sidenav md-list-item.group-open md-icon {
  color: var(--an-text, #111);
}
.sidenav md-list-item .md-button.md-no-style {
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
  justify-content: center;
  width: 100% !important;
  min-width: 0 !important;
  height: 44px;
  display: flex;
  align-items: center;
  border-radius: 10px;
}
.sidenav md-list-item .md-button.md-no-style:hover, .sidenav md-list-item .md-button.md-no-style:focus, .sidenav md-list-item .md-button.md-no-style:active {
  background: transparent !important;
}
.sidenav md-list-item button.md-button {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 10;
}
.sidenav md-list-item .md-list-item-inner {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  min-width: 0 !important;
  z-index: 1;
}
.sidenav md-list-item p {
  display: none !important;
}
.sidenav md-list-item .chevron-icon {
  display: none !important;
}
@media (min-width: 960px) {
  .sidenav md-list-item {
    width: 48px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}
.sidenav .sidenav-hover-tooltip {
  position: fixed;
  left: 70px;
  transform: translateY(-50%);
  margin: 0;
  width: auto;
  white-space: nowrap;
  text-transform: none;
  font-size: 12.5px;
  font-weight: 500;
  color: #ffffff;
  background: rgba(17, 17, 20, 0.92);
  padding: 5px 12px;
  border-radius: 7px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
  pointer-events: none;
  z-index: 9999;
  backdrop-filter: blur(8px) saturate(1.5);
  letter-spacing: 0.01em;
  line-height: 1.4;
}
.sidenav .sidenav-hover-tooltip::before {
  content: "";
  position: absolute;
  left: -4px;
  top: 50%;
  transform: translateY(-50%);
  border: 4px solid transparent;
  border-left: none;
  border-right-color: rgba(17, 17, 20, 0.92);
}
.sidenav md-icon {
  margin: 0 !important;
  width: 22px;
  height: 22px;
  font-size: 22px;
  color: var(--an-text-muted, #52525B);
  transition: color 0.15s ease;
  pointer-events: none;
}
@media (min-width: 960px) {
  .sidenav md-icon {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
  }
}
.sidenav .mise-nav-item {
  background: linear-gradient(135deg, rgba(236, 78, 54, 0.07), rgba(240, 101, 67, 0.04)) !important;
  border-radius: 10px;
}
.sidenav .mise-nav-item:hover {
  background: linear-gradient(135deg, rgba(236, 78, 54, 0.12), rgba(240, 101, 67, 0.08)) !important;
}
.sidenav .mise-nav-item:hover md-icon {
  color: #ec4e36 !important;
}
.sidenav .mise-nav-item.active {
  background: linear-gradient(135deg, rgba(236, 78, 54, 0.15), rgba(240, 101, 67, 0.1)) !important;
}
.sidenav .mise-nav-item.active::after {
  background: linear-gradient(180deg, #ec4e36, #f06543) !important;
}
.sidenav .mise-nav-item.active md-icon {
  color: #ec4e36 !important;
}
@media (min-width: 960px) {
  .sidenav .mise-nav-item md-icon {
    background: linear-gradient(135deg, #ec4e36 0%, #f06543 50%, #eb8258 100%);
    color: #ffffff !important;
    border-radius: 9px;
    width: 30px !important;
    height: 30px !important;
    font-size: 17px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 3px 10px rgba(236, 78, 54, 0.3);
    transition: box-shadow 0.2s, transform 0.2s;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
  }
  .sidenav .mise-nav-item:hover md-icon {
    box-shadow: 0 5px 18px rgba(236, 78, 54, 0.4) !important;
    transform: translate(-50%, -50%) scale(1.06) !important;
  }
}
.sidenav .mise-nav-item p {
  color: #ec4e36 !important;
  font-weight: 600 !important;
}
.sidenav .sidebar-menu-group {
  position: relative;
}
.sidenav .submenu-container md-list-item:hover p {
  display: block !important;
  position: static !important;
  background: transparent !important;
  padding: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  pointer-events: auto !important;
  backdrop-filter: none !important;
  width: auto !important;
  margin: 0 !important;
  margin-left: 10px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  color: inherit !important;
}
.sidenav .submenu-container md-list-item:hover p::before {
  display: none !important;
}
@media (min-width: 960px) {
  .sidenav {
    transform: none !important;
  }
  .sidenav .submenu-container {
    position: fixed;
    left: 62px;
    top: 0;
    width: 240px;
    z-index: 9000;
    box-sizing: border-box;
    overflow-y: auto;
    background: var(--an-surface, #fff);
    border: 1px solid var(--an-border, rgba(0, 0, 0, 0.08));
    border-radius: 12px;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.03), 0 4px 6px -1px rgba(0, 0, 0, 0.06), 0 12px 28px -4px rgba(0, 0, 0, 0.1);
    padding: 6px 0 8px;
  }
  .sidenav .submenu-container::before {
    content: "";
    position: absolute;
    right: 100%;
    top: 0;
    width: 12px;
    height: 100%;
    background: transparent;
  }
  .sidenav .submenu-container::after {
    content: "";
    position: absolute;
    top: 0;
    left: 12px;
    right: 12px;
    height: 2px;
    background: linear-gradient(90deg, #EC4E36, #f06543);
    border-radius: 0 0 2px 2px;
  }
  .sidenav .submenu-container .submenu-header {
    padding: 10px 16px 7px;
    border-bottom: 1px solid var(--an-border, rgba(0, 0, 0, 0.06));
    margin-bottom: 4px;
  }
  .sidenav .submenu-container .submenu-header span {
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--an-text-muted, #A1A1AA);
  }
  .sidenav .submenu-container .submenu-title {
    padding: 4px 16px 10px;
  }
  .sidenav .submenu-container .submenu-title span {
    font-size: 13px;
    font-weight: 700;
    color: var(--an-text, #18181B);
  }
  .sidenav .submenu-container md-list {
    padding: 0 !important;
    background: transparent !important;
    overflow: visible !important;
  }
  .sidenav .submenu-container md-list-item {
    width: calc(100% - 8px) !important;
    min-width: 0 !important;
    margin: 1px 4px !important;
    border-radius: 8px;
  }
  .sidenav .submenu-container md-list-item:hover {
    background: var(--an-surface2, rgba(0, 0, 0, 0.04)) !important;
  }
  .sidenav .submenu-container md-list-item:hover .md-button {
    background: transparent !important;
  }
  .sidenav .submenu-container md-list-item:hover p {
    color: #EC4E36 !important;
    font-weight: 600 !important;
  }
  .sidenav .submenu-container md-list-item:hover md-icon {
    color: #EC4E36 !important;
  }
  .sidenav .submenu-container md-list-item .md-button {
    justify-content: flex-start !important;
    padding: 0 10px !important;
    min-height: 38px !important;
    height: 38px !important;
    border-radius: 8px;
  }
  .sidenav .submenu-container md-list-item .md-list-item-inner {
    justify-content: flex-start !important;
    padding: 0 !important;
  }
  .sidenav .submenu-container md-list-item p {
    display: block !important;
    margin-left: 10px !important;
    color: var(--an-text, #3F3F46) !important;
    font-weight: 500 !important;
    font-size: 13.5px !important;
    opacity: 1 !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex: 1;
  }
  .sidenav .submenu-container md-list-item md-icon {
    position: static !important;
    transform: none !important;
    margin: 0 !important;
    display: block !important;
    flex-shrink: 0;
    color: var(--an-text-muted, #71717A);
    font-size: 18px !important;
    width: 18px !important;
    height: 18px !important;
  }
  .sidenav .submenu-container md-list-item.active {
    background-color: rgba(236, 78, 54, 0.08) !important;
  }
  .sidenav .submenu-container md-list-item.active md-icon {
    color: #EC4E36 !important;
  }
  .sidenav .submenu-container md-list-item.active p {
    color: #EC4E36 !important;
    font-weight: 600 !important;
  }
  .sidenav .submenu-container md-list-item.active::after {
    display: none !important;
  }
  .sidenav .submenu-container.submenu-mega {
    width: 1000px;
    max-width: calc(100vw - 90px);
    padding: 18px 18px 20px;
    animation: mega-in 0.18s ease-out;
  }
  .sidenav .submenu-container.submenu-mega .submenu-title {
    padding: 0 10px 12px;
    margin-bottom: 4px;
    border-bottom: 1px solid var(--an-border, rgba(0, 0, 0, 0.06));
  }
  .sidenav .submenu-container.submenu-mega .submenu-title span {
    font-size: 15px;
    font-weight: 700;
  }
  .sidenav .submenu-container.submenu-mega .mega-columns {
    display: flex;
    align-items: flex-start;
    gap: 12px;
  }
  .sidenav .submenu-container.submenu-mega .mega-col {
    flex: 1 1 0;
    min-width: 0;
  }
  .sidenav .submenu-container.submenu-mega .mega-group {
    margin-bottom: 14px;
  }
  .sidenav .submenu-container.submenu-mega .mega-group:last-child {
    margin-bottom: 0;
  }
  .sidenav .submenu-container.submenu-mega .submenu-header {
    padding: 4px 10px 7px;
    border-bottom: none;
    margin-bottom: 2px;
  }
  .sidenav .submenu-container.submenu-mega .submenu-header span {
    display: inline-flex;
    align-items: center;
  }
  .sidenav .submenu-container.submenu-mega .submenu-header span::before {
    content: "";
    display: inline-block;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    margin-right: 7px;
    background: linear-gradient(135deg, #EC4E36, #f06543);
  }
  .sidenav .submenu-container.submenu-mega .mega-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 10px;
    margin: 1px 0;
    border-radius: 10px;
    cursor: pointer;
    transition: background 0.12s ease;
  }
  .sidenav .submenu-container.submenu-mega .mega-item .mega-chip {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    flex-shrink: 0;
    border-radius: 9px;
    background: var(--an-surface2, rgba(0, 0, 0, 0.045));
    transition: background 0.12s ease;
  }
  .sidenav .submenu-container.submenu-mega .mega-item .mega-chip md-icon {
    position: static !important;
    transform: none !important;
    margin: 0;
    font-size: 16px;
    width: 16px;
    height: 16px;
    min-width: 16px;
    min-height: 16px;
    line-height: 1;
    color: var(--an-text-muted, #71717A);
  }
  .sidenav .submenu-container.submenu-mega .mega-item .mega-text {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 1px;
  }
  .sidenav .submenu-container.submenu-mega .mega-item .mega-label {
    font-size: 13px;
    font-weight: 600;
    line-height: 1.25;
    color: var(--an-text, #3F3F46);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .sidenav .submenu-container.submenu-mega .mega-item .mega-desc {
    font-size: 11.5px;
    font-weight: 400;
    line-height: 1.3;
    color: var(--an-text-muted, #A1A1AA);
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }
  .submenu-mega--uniform .sidenav .submenu-container.submenu-mega .mega-item .mega-desc {
    -webkit-line-clamp: 1;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  .sidenav .submenu-container.submenu-mega .mega-item:hover {
    background: var(--an-surface2, rgba(0, 0, 0, 0.04));
  }
  .sidenav .submenu-container.submenu-mega .mega-item:hover .mega-label {
    color: #EC4E36;
  }
  .sidenav .submenu-container.submenu-mega .mega-item:hover .mega-chip {
    background: rgba(236, 78, 54, 0.1);
  }
  .sidenav .submenu-container.submenu-mega .mega-item:hover .mega-chip md-icon {
    color: #EC4E36;
  }
  .sidenav .submenu-container.submenu-mega .mega-item.active {
    background: rgba(236, 78, 54, 0.08);
  }
  .sidenav .submenu-container.submenu-mega .mega-item.active .mega-label {
    color: #EC4E36;
  }
  .sidenav .submenu-container.submenu-mega .mega-item.active .mega-chip md-icon {
    color: #EC4E36;
  }
  .sidenav .submenu-container.submenu-mega .mega-item.mega-hero {
    background: linear-gradient(135deg, rgba(236, 78, 54, 0.08), rgba(240, 101, 67, 0.03));
    box-shadow: inset 0 0 0 1px rgba(236, 78, 54, 0.16);
  }
  .sidenav .submenu-container.submenu-mega .mega-item.mega-hero .mega-chip {
    background: linear-gradient(135deg, #EC4E36, #f06543);
  }
  .sidenav .submenu-container.submenu-mega .mega-item.mega-hero .mega-chip md-icon {
    color: #fff;
  }
  .sidenav .submenu-container.submenu-mega .mega-item.mega-hero:hover {
    background: linear-gradient(135deg, rgba(236, 78, 54, 0.13), rgba(240, 101, 67, 0.06));
  }
  .sidenav .submenu-container.submenu-mega .mega-item.mega-hero:hover .mega-chip md-icon {
    color: #fff;
  }
}
@keyframes mega-in {
  from {
    opacity: 0;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.sidenav .mobile-only {
  display: none !important;
}
@media (max-width: 959px) {
  .sidenav .mobile-only {
    display: block !important;
  }
  .sidenav.md-sidenav-left {
    width: 280px !important;
    min-width: 280px !important;
    max-width: 280px !important;
    position: fixed !important;
    height: 100vh !important;
    top: 0 !important;
    z-index: 100 !important;
    box-shadow: 4px 0 20px rgba(0, 0, 0, 0.12);
    overflow-y: auto !important;
  }
  .sidenav.md-sidenav-left .sidenav-logo-mise-btn {
    justify-content: flex-start;
    padding: 0 16px;
    height: 56px;
  }
  .sidenav.md-sidenav-left md-list-item {
    margin: 2px 8px !important;
    width: auto !important;
  }
  .sidenav.md-sidenav-left md-list-item p {
    display: block !important;
    margin-left: 14px !important;
    opacity: 1 !important;
    font-weight: 500;
    color: var(--an-text, #3F3F46);
    font-size: 14.5px !important;
    flex: 1;
  }
  .sidenav.md-sidenav-left md-list-item md-icon {
    position: static !important;
    transform: none !important;
    display: block !important;
  }
  .sidenav.md-sidenav-left md-list-item .md-button {
    justify-content: flex-start !important;
    padding: 0 14px !important;
    width: 100% !important;
  }
  .sidenav.md-sidenav-left md-list-item .md-list-item-inner {
    justify-content: flex-start !important;
  }
  .sidenav.md-sidenav-left md-list-item.active p {
    color: #EC4E36 !important;
  }
  .sidenav.md-sidenav-left md-list-item .chevron-icon {
    display: block !important;
    margin-left: auto !important;
    margin-right: 0 !important;
    color: var(--an-text-muted, #A1A1AA) !important;
    font-size: 18px !important;
    position: static !important;
    transform: none !important;
  }
  .sidenav.md-sidenav-left .submenu-container {
    position: static !important;
    width: auto !important;
    padding-left: 0 !important;
    z-index: auto !important;
  }
  .sidenav.md-sidenav-left .submenu-container .submenu-header, .sidenav.md-sidenav-left .submenu-container .submenu-title {
    display: none !important;
  }
  .sidenav.md-sidenav-left .submenu-container md-list {
    padding: 0 !important;
    background: transparent !important;
  }
  .sidenav.md-sidenav-left .submenu-container md-list-item {
    margin: 1px 0 !important;
    min-height: 40px !important;
    padding-left: 16px !important;
  }
  .sidenav.md-sidenav-left .submenu-container md-list-item p {
    font-size: 13.5px !important;
    margin-left: 10px !important;
    color: var(--an-text-muted, #52525B) !important;
  }
  .sidenav.md-sidenav-left .submenu-container md-list-item md-icon {
    font-size: 17px !important;
    width: 17px !important;
    height: 17px !important;
    color: var(--an-text-muted, #71717A) !important;
  }
  .sidenav.md-sidenav-left .submenu-container md-list-item .md-button {
    height: 40px !important;
    padding: 0 12px !important;
  }
  .sidenav.md-sidenav-left .submenu-container.submenu-mega .mega-columns {
    display: block;
  }
  .sidenav.md-sidenav-left .submenu-container.submenu-mega .mega-col {
    display: block;
  }
  .sidenav.md-sidenav-left .submenu-container.submenu-mega .mega-item {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 40px;
    padding: 0 12px 0 30px;
    cursor: pointer;
  }
  .sidenav.md-sidenav-left .submenu-container.submenu-mega .mega-item .mega-chip {
    background: transparent;
    width: auto;
    height: auto;
  }
  .sidenav.md-sidenav-left .submenu-container.submenu-mega .mega-item .mega-chip md-icon {
    font-size: 17px;
    width: 17px;
    height: 17px;
    min-width: 17px;
    min-height: 17px;
    margin: 0;
    color: var(--an-text-muted, #71717A);
  }
  .sidenav.md-sidenav-left .submenu-container.submenu-mega .mega-item .mega-label {
    font-size: 13.5px;
    font-weight: 500;
    color: var(--an-text-muted, #52525B);
  }
  .sidenav.md-sidenav-left .submenu-container.submenu-mega .mega-item .mega-desc {
    display: none !important;
  }
  .sidenav.md-sidenav-left .submenu-container.submenu-mega .mega-item.active .mega-label {
    color: #EC4E36;
  }
  .sidenav.md-sidenav-left .submenu-container.submenu-mega .mega-item.active .mega-chip md-icon {
    color: #EC4E36;
  }
  .sidenav.md-sidenav-left .submenu-container.submenu-mega .mega-item.mega-hero {
    background: transparent;
    box-shadow: none;
  }
}
@media (min-width: 960px) {
  .sidenav.sidenav-expanded .sidenav-logo-mise-btn {
    justify-content: flex-start;
    padding: 0 16px;
  }
  .sidenav.sidenav-expanded md-list-item {
    margin: 2px 8px !important;
    width: auto !important;
  }
  .sidenav.sidenav-expanded md-list-item p {
    display: block !important;
    position: static !important;
    margin: 0 0 0 14px !important;
    opacity: 1 !important;
    font-weight: 500;
    color: var(--an-text, #3F3F46) !important;
    font-size: 14px !important;
    flex: 1;
    background: transparent !important;
    padding: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    pointer-events: auto !important;
    line-height: normal !important;
  }
  .sidenav.sidenav-expanded md-list-item p::before {
    display: none !important;
  }
  .sidenav.sidenav-expanded md-list-item md-icon {
    position: static !important;
    transform: none !important;
    display: block !important;
  }
  .sidenav.sidenav-expanded md-list-item .md-button.md-no-style {
    justify-content: flex-start !important;
    padding: 0 14px !important;
  }
  .sidenav.sidenav-expanded md-list-item .md-list-item-inner {
    justify-content: flex-start !important;
  }
  .sidenav.sidenav-expanded md-list-item.active p {
    color: #EC4E36 !important;
  }
  .sidenav.sidenav-expanded md-list-item:hover p {
    position: static !important;
    background: transparent !important;
    padding: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    margin-left: 14px !important;
    line-height: normal !important;
    color: #EC4E36 !important;
  }
  .sidenav.sidenav-expanded md-list-item:hover p::before {
    display: none !important;
  }
}

body.is-resizing-sidenav {
  cursor: col-resize !important;
  user-select: none !important;
}
body.is-resizing-sidenav .sidenav {
  transition: none !important;
}

.waitry-dark-theme .sidenav {
  background-color: var(--an-surface) !important;
  border-right: 1px solid var(--an-border);
  box-shadow: 1px 0 0 var(--an-border);
  color: var(--an-text);
}
.waitry-dark-theme .sidenav md-list-item:hover {
  background: rgba(255, 255, 255, 0.04) !important;
}
.waitry-dark-theme .sidenav md-list-item:hover md-icon {
  color: var(--an-rose) !important;
}
.waitry-dark-theme .sidenav md-list-item.active {
  background-color: rgba(240, 101, 80, 0.12);
}
.waitry-dark-theme .sidenav md-list-item.active::after {
  background: var(--an-rose);
}
.waitry-dark-theme .sidenav md-list-item.active md-icon {
  color: var(--an-rose) !important;
}
.waitry-dark-theme .sidenav md-list-item.group-open {
  background-color: var(--an-surface2);
  box-shadow: inset 0 0 0 1px var(--an-border);
}
.waitry-dark-theme .sidenav md-list-item.group-open md-icon {
  color: var(--an-text);
}
.waitry-dark-theme .sidenav md-icon {
  color: var(--an-text-muted);
}
.waitry-dark-theme .sidenav .mise-nav-item {
  background: linear-gradient(135deg, rgba(240, 101, 80, 0.1), rgba(251, 146, 60, 0.05)) !important;
}
.waitry-dark-theme .sidenav .mise-nav-item:hover {
  background: linear-gradient(135deg, rgba(240, 101, 80, 0.16), rgba(251, 146, 60, 0.09)) !important;
}
.waitry-dark-theme .sidenav .mise-nav-item.active {
  background: linear-gradient(135deg, rgba(240, 101, 80, 0.22), rgba(251, 146, 60, 0.14)) !important;
}
@media (min-width: 960px) {
  .waitry-dark-theme .sidenav .submenu-container {
    background: var(--an-surface) !important;
    border: 1px solid var(--an-border) !important;
    box-shadow: var(--an-shadow-lg) !important;
  }
  .waitry-dark-theme .sidenav .submenu-container::after {
    background: linear-gradient(90deg, var(--an-rose), var(--an-orange));
  }
  .waitry-dark-theme .sidenav .submenu-container .submenu-header {
    border-bottom-color: var(--an-border) !important;
  }
  .waitry-dark-theme .sidenav .submenu-container .submenu-header span {
    color: var(--an-text-muted) !important;
  }
  .waitry-dark-theme .sidenav .submenu-container md-list-item:hover {
    background: rgba(255, 255, 255, 0.04) !important;
  }
  .waitry-dark-theme .sidenav .submenu-container md-list-item:hover p {
    color: var(--an-rose) !important;
  }
  .waitry-dark-theme .sidenav .submenu-container md-list-item:hover md-icon {
    color: var(--an-rose) !important;
  }
  .waitry-dark-theme .sidenav .submenu-container md-list-item p {
    color: var(--an-text-muted) !important;
  }
  .waitry-dark-theme .sidenav .submenu-container md-list-item md-icon {
    color: var(--an-text-faint);
  }
  .waitry-dark-theme .sidenav .submenu-container md-list-item.active {
    background-color: rgba(240, 101, 80, 0.12) !important;
  }
  .waitry-dark-theme .sidenav .submenu-container md-list-item.active md-icon {
    color: var(--an-rose) !important;
  }
  .waitry-dark-theme .sidenav .submenu-container md-list-item.active p {
    color: var(--an-rose) !important;
  }
  .waitry-dark-theme .sidenav .submenu-container.submenu-mega .submenu-header span::before {
    background: linear-gradient(135deg, var(--an-rose), var(--an-orange));
  }
  .waitry-dark-theme .sidenav .submenu-container.submenu-mega .mega-item .mega-label {
    color: var(--an-text);
  }
  .waitry-dark-theme .sidenav .submenu-container.submenu-mega .mega-item .mega-desc {
    color: var(--an-text-faint);
  }
  .waitry-dark-theme .sidenav .submenu-container.submenu-mega .mega-item .mega-chip {
    background: var(--an-surface2);
  }
  .waitry-dark-theme .sidenav .submenu-container.submenu-mega .mega-item .mega-chip md-icon {
    color: var(--an-text-faint);
  }
  .waitry-dark-theme .sidenav .submenu-container.submenu-mega .mega-item:hover {
    background: rgba(255, 255, 255, 0.04);
  }
  .waitry-dark-theme .sidenav .submenu-container.submenu-mega .mega-item:hover .mega-label {
    color: var(--an-rose);
  }
  .waitry-dark-theme .sidenav .submenu-container.submenu-mega .mega-item:hover .mega-chip {
    background: rgba(240, 101, 80, 0.14);
  }
  .waitry-dark-theme .sidenav .submenu-container.submenu-mega .mega-item:hover .mega-chip md-icon {
    color: var(--an-rose);
  }
  .waitry-dark-theme .sidenav .submenu-container.submenu-mega .mega-item.active {
    background: rgba(240, 101, 80, 0.12);
  }
  .waitry-dark-theme .sidenav .submenu-container.submenu-mega .mega-item.active .mega-label {
    color: var(--an-rose);
  }
  .waitry-dark-theme .sidenav .submenu-container.submenu-mega .mega-item.active .mega-chip md-icon {
    color: var(--an-rose);
  }
  .waitry-dark-theme .sidenav .submenu-container.submenu-mega .mega-item.mega-hero {
    background: linear-gradient(135deg, rgba(240, 101, 80, 0.14), rgba(251, 146, 60, 0.06));
    box-shadow: inset 0 0 0 1px rgba(240, 101, 80, 0.25);
  }
  .waitry-dark-theme .sidenav .submenu-container.submenu-mega .mega-item.mega-hero .mega-chip {
    background: linear-gradient(135deg, var(--an-rose), var(--an-orange));
  }
  .waitry-dark-theme .sidenav .submenu-container.submenu-mega .mega-item.mega-hero .mega-chip md-icon {
    color: #fff;
  }
  .waitry-dark-theme .sidenav .submenu-container.submenu-mega .mega-item.mega-hero:hover .mega-chip md-icon {
    color: #fff;
  }
}

.sidenav-host {
  display: contents;
}

.mobile-tab-bar {
  display: none;
}

.sidenav-logo-mise-label {
  display: none;
}

.wsch {
  width: 100%;
  max-width: 640px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  background: var(--an-surface);
  box-shadow: var(--an-shadow-xs);
  overflow: hidden;
}

.wsch__row {
  display: grid;
  grid-template-columns: 148px minmax(0, 1fr);
  gap: 4px 12px;
  align-items: start;
  min-height: 52px;
  padding: 12px 14px;
  transition: background 0.15s ease;
}
.wsch__row + .wsch__row {
  border-top: 1px solid var(--an-border-light);
}
.wsch__row.wsch__row--closed {
  background: var(--an-bg-subtle);
}
.wsch__row.wsch__row--conflict {
  background: rgba(239, 68, 68, 0.05);
  box-shadow: inset 3px 0 0 var(--an-danger, #ef4444);
}

.wsch__day {
  display: flex;
  align-items: center;
  min-height: 40px;
}
.wsch__day md-switch.wsch__switch {
  margin: 0;
  height: auto;
}
.wsch__day md-switch.wsch__switch .md-label {
  font-size: 13.5px;
  font-weight: 600;
  color: var(--an-text);
  margin-left: 4px;
}

.wsch__row--closed .wsch__day md-switch.wsch__switch .md-label {
  font-weight: 500;
  color: var(--an-text-muted);
}

.wsch__body {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.wsch__closed {
  display: flex;
  align-items: center;
  min-height: 40px;
  font-size: 13px;
  color: var(--an-text-faint);
}

.wsch__ranges {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 2px 0;
}

.wsch__range {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

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

.wsch__arrow {
  color: var(--an-text-faint);
  font-size: 14px;
  width: 14px;
  height: 14px;
  min-width: 14px;
  flex-shrink: 0;
}

.wsch md-select.wsch__time {
  margin: 0;
  min-width: 84px;
}
.wsch md-select.wsch__time .md-select-value {
  min-height: 34px;
  min-width: 0;
  padding: 0 6px 0 12px;
  border: 1px solid var(--an-border) !important;
  border-radius: var(--an-radius-xs);
  background: var(--an-surface);
  font-size: 13.5px;
  font-variant-numeric: tabular-nums;
  color: var(--an-text);
}
.wsch md-select.wsch__time .md-select-value .md-select-icon {
  width: auto;
  margin: 0 2px 0 4px;
  color: var(--an-text-faint);
  transform: none;
}
.wsch md-select.wsch__time:not([disabled]):focus .md-select-value {
  border-color: var(--an-primary) !important;
  box-shadow: 0 0 0 3px var(--an-primary-soft);
  color: var(--an-text);
}
.wsch md-select.wsch__time:hover .md-select-value {
  border-color: var(--an-border-hover) !important;
}

.wsch__range--conflict md-select.wsch__time .md-select-value {
  border-color: var(--an-danger, #ef4444) !important;
  background: rgba(239, 68, 68, 0.04);
}

.wsch__conflict-msg {
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  font-weight: 500;
  color: var(--an-danger, #ef4444);
  padding-left: 2px;
}
.wsch__conflict-msg md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  min-width: 14px;
  color: var(--an-danger, #ef4444);
}

.wsch .md-button.md-icon-button.wsch__btn {
  width: 32px;
  height: 32px;
  min-height: 32px;
  margin: 0;
  padding: 0;
  line-height: 32px;
  flex-shrink: 0;
}
.wsch .md-button.md-icon-button.wsch__btn md-icon {
  font-size: 17px;
  width: 17px;
  height: 17px;
  min-width: 17px;
  min-height: 17px;
  line-height: 17px;
  color: var(--an-text-muted);
}
.wsch .md-button.md-icon-button.wsch__btn:hover md-icon {
  color: var(--an-text);
}
.wsch .md-button.md-icon-button.wsch__btn.wsch__btn--rm:hover md-icon {
  color: var(--an-danger, #ef4444);
}

.wsch__range-footer {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 2px;
  opacity: 0.75;
  transition: opacity 0.15s ease;
}

.wsch__row:hover .wsch__range-footer {
  opacity: 1;
}

.wsch .md-button.wsch__add-btn,
.wsch .md-button.wsch__copy-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin: 0;
  padding: 0 10px;
  height: 30px;
  min-height: 30px;
  line-height: 30px;
  border-radius: var(--an-radius-pill, 999px);
  font-size: 12px;
  font-weight: 600;
  text-transform: none;
}
.wsch .md-button.wsch__add-btn md-icon,
.wsch .md-button.wsch__copy-btn md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  min-width: 15px;
  margin: 0;
}

.wsch .md-button.wsch__add-btn {
  border: 1px dashed var(--an-border-strong);
  color: var(--an-text-muted);
  background: transparent;
}
.wsch .md-button.wsch__add-btn:hover {
  border-style: solid;
  border-color: var(--an-primary);
  color: var(--an-primary);
  background: var(--an-primary-soft);
}

.wsch .md-button.wsch__copy-btn {
  color: var(--an-text-faint);
  background: transparent;
}
.wsch .md-button.wsch__copy-btn:hover {
  color: var(--an-primary);
  background: var(--an-primary-soft);
}

.wsch__max-hint {
  font-size: 12px;
  color: var(--an-text-faint);
  font-style: italic;
}

.wsch-master {
  margin-bottom: 14px;
}

@media (max-width: 599px) {
  .wsch__row {
    grid-template-columns: 1fr;
  }
  .wsch__range-fields {
    flex-wrap: wrap;
  }
  .wsch__range-footer {
    flex-wrap: wrap;
    row-gap: 6px;
  }
}
venue-lang-field {
  display: block;
  box-sizing: border-box;
  padding: 0 2px;
  margin-bottom: 18px;
}

.vlf {
  display: flex;
  flex-direction: column;
  gap: 5px;
  min-width: 0;
}

.vlf__label {
  font-size: 12px;
  font-weight: 500;
  line-height: 1.2;
  color: var(--an-text-muted);
}

.vlf__value {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 0 12px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-bg-subtle);
  cursor: default;
}

.vlf__icon {
  flex: 0 0 auto;
  min-width: 18px;
  width: 18px;
  height: 18px;
  font-size: 18px;
  line-height: 18px;
  color: var(--an-primary) !important;
}

.vlf__lang {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 14px;
  font-weight: 600;
  color: var(--an-text);
}

.vlf__lang--unset {
  font-weight: 500;
  color: var(--an-text-faint);
}

.vlf__lock {
  flex: 0 0 auto;
  min-width: 15px;
  width: 15px;
  height: 15px;
  font-size: 15px;
  line-height: 15px;
  color: var(--an-text-faint) !important;
}

.vlf__hint {
  margin: 0;
  font-size: 11.5px;
  line-height: 1.45;
  color: var(--an-text-muted);
}

.vlf__link {
  color: var(--an-primary);
  font-weight: 600;
  text-decoration: none;
}
.vlf__link:hover, .vlf__link:focus {
  text-decoration: underline;
}

.tgp {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.tgp, .tgp *, .tgp *::before, .tgp *::after {
  box-sizing: border-box;
}
.tgp__bar {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.tgp__field {
  flex: 1 1 240px;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  height: 38px;
  padding: 0 6px 0 12px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
  transition: border-color var(--duration-fast, 0.15s) ease, box-shadow var(--duration-fast, 0.15s) ease;
}
.tgp__field:focus-within {
  border-color: var(--an-primary);
  box-shadow: 0 0 0 3px var(--an-primary-soft);
}
.tgp__field-icon {
  flex: none;
  font-size: 16px;
  width: 16px;
  height: 16px;
  min-width: 16px;
  min-height: 16px;
  color: var(--an-text-faint);
}
.tgp__field-input {
  flex: 1 1 auto;
  min-width: 0;
  height: 100%;
  margin: 0;
  padding: 0;
  border: none;
  outline: none;
  background: transparent;
  color: var(--an-text);
  font-family: inherit;
  font-size: 13px;
  font-weight: 500;
}
.tgp__field-input::placeholder {
  color: var(--an-placeholder);
  opacity: 1;
}
.tgp__field-input::-webkit-input-placeholder {
  color: var(--an-placeholder);
}
.tgp__icon-btn {
  flex: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  border: none;
  border-radius: var(--an-radius-xs);
  background: transparent;
  color: var(--an-text-muted);
  cursor: pointer;
  transition: background var(--duration-fast, 0.15s) ease, color var(--duration-fast, 0.15s) ease;
}
.tgp__icon-btn md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  min-width: 16px;
  min-height: 16px;
  color: inherit;
}
.tgp__icon-btn:hover {
  background: var(--an-surface2);
  color: var(--an-text);
}
.tgp__icon-btn--active {
  background: var(--an-primary-soft);
  color: var(--an-primary);
}
.tgp__create-btn {
  flex: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  max-width: 100%;
  height: 38px;
  padding: 0 14px;
  border: 1px solid var(--an-primary);
  border-radius: var(--an-radius-sm);
  background: var(--an-primary-soft);
  color: var(--an-primary);
  font-family: inherit;
  font-size: 12.5px;
  font-weight: 700;
  cursor: pointer;
  white-space: nowrap;
  overflow: hidden;
  transition: background var(--duration-fast, 0.15s) ease;
}
.tgp__create-btn span {
  overflow: hidden;
  text-overflow: ellipsis;
}
.tgp__create-btn md-icon {
  flex: none;
  font-size: 16px;
  width: 16px;
  height: 16px;
  min-width: 16px;
  min-height: 16px;
  color: inherit;
}
.tgp__create-btn md-progress-circular {
  flex: none;
}
.tgp__create-btn md-progress-circular path {
  stroke: var(--an-primary);
}
.tgp__create-btn:hover:not([disabled]) {
  background: color-mix(in srgb, var(--an-primary) 16%, transparent);
}
.tgp__create-btn[disabled] {
  border-color: var(--an-border);
  background: var(--an-surface2);
  color: var(--an-text-faint);
  cursor: default;
}
.tgp__meta {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: -2px;
}
.tgp__count {
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text-muted);
}
.tgp__link-btn {
  padding: 0;
  border: none;
  background: none;
  color: var(--an-primary);
  font-family: inherit;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
}
.tgp__link-btn:hover {
  text-decoration: underline;
}
.tgp__emoji {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(34px, 1fr));
  gap: 2px;
  max-height: 132px;
  overflow-y: auto;
  padding: 6px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-bg-subtle);
}
.tgp__emoji-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 30px;
  padding: 0;
  border: none;
  border-radius: var(--an-radius-xs);
  background: transparent;
  font-size: 17px;
  line-height: 1;
  cursor: pointer;
}
.tgp__emoji-btn:hover {
  background: var(--an-surface3);
}
.tgp__grid {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  max-height: 232px;
  overflow-y: auto;
  padding: 2px;
  margin: -2px;
}
.tgp__grid::-webkit-scrollbar {
  width: 6px;
}
.tgp__grid::-webkit-scrollbar-thumb {
  background: var(--an-border-strong);
  border-radius: 3px;
}
.tgp__grid::-webkit-scrollbar-track {
  background: transparent;
}
.tgp__chip {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  height: 30px;
  max-width: 100%;
  padding: 0 12px 0 7px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-pill);
  background: var(--an-surface);
  color: var(--an-text);
  font-family: inherit;
  font-size: 12.5px;
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
  user-select: none;
  transition: border-color var(--duration-fast, 0.15s) ease, background var(--duration-fast, 0.15s) ease, color var(--duration-fast, 0.15s) ease;
}
.tgp__chip:hover {
  border-color: var(--an-border-hover);
  background: var(--an-bg-subtle);
}
.tgp__chip:focus-visible {
  outline: 2px solid var(--an-primary);
  outline-offset: 1px;
}
.tgp__chip-label {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.tgp__chip-mark {
  flex: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  border: 1.5px solid var(--an-control-border);
  border-radius: 50%;
  background: transparent;
  transition: background var(--duration-fast, 0.15s) ease, border-color var(--duration-fast, 0.15s) ease;
}
.tgp__chip-mark md-icon {
  font-size: 10px;
  width: 10px;
  height: 10px;
  min-width: 10px;
  min-height: 10px;
  color: transparent;
}
.tgp__chip--on {
  border-color: var(--an-primary);
  background: var(--an-primary-soft);
  color: var(--an-primary);
}
.tgp__chip--on:hover {
  border-color: var(--an-primary);
  background: color-mix(in srgb, var(--an-primary) 16%, transparent);
}
.tgp__chip--on .tgp__chip-mark {
  border-color: var(--an-primary);
  background: var(--an-primary);
}
.tgp__chip--on .tgp__chip-mark md-icon {
  color: #FFFFFF;
}
.tgp__empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding: 22px 12px;
  border: 1px dashed var(--an-border);
  border-radius: var(--an-radius-sm);
  text-align: center;
}
.tgp__empty md-icon {
  font-size: 22px;
  width: 22px;
  height: 22px;
  min-width: 22px;
  min-height: 22px;
  color: var(--an-text-faint);
}
.tgp__empty p {
  margin: 0;
  font-size: 12.5px;
  color: var(--an-text-muted);
}

.tvs-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--an-text-faint);
  flex: 0 0 auto;
}
.tvs-dot--on {
  background: var(--an-emerald);
}

.tvs-role {
  margin-left: 6px;
  font-size: 12px;
  color: var(--an-text-muted);
}

.tvs-code {
  margin-bottom: 20px;
  padding: 14px 16px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  background: var(--an-surface2);
}
.tvs-code__label {
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--an-text-muted);
}
.tvs-code__row {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-top: 4px;
}
.tvs-code__value {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 30px;
  font-weight: 700;
  letter-spacing: 0.18em;
  color: var(--an-text);
  user-select: all;
}
.tvs-code__regen.md-button {
  margin: 0;
  text-transform: none;
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text-muted);
}
.tvs-code__regen.md-button md-icon, .tvs-code__regen.md-button [class*=iconoir-] {
  color: var(--an-text-muted) !important;
}
.tvs-code__status {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 10px 0 0;
  font-size: 12.5px;
  color: var(--an-text-muted);
}
.tvs-code__locked {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 8px 0 0;
  font-size: 13px;
  line-height: 1.45;
  color: var(--an-text);
}
.tvs-code__locked md-icon {
  flex: 0 0 auto;
  font-size: 16px;
  color: var(--an-amber) !important;
}
.tvs-code--new {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 13px;
  line-height: 1.45;
  color: var(--an-text-muted);
}
.tvs-code--new md-icon {
  flex: 0 0 auto;
  font-size: 16px;
  color: var(--an-sky) !important;
}

.tvs-error {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 4px 0 12px;
  padding: 10px 12px;
  border-radius: var(--an-radius-sm);
  background: var(--an-rose-soft);
  color: var(--an-rose);
  font-size: 13px;
}
.tvs-error md-icon {
  flex: 0 0 auto;
  font-size: 16px;
  color: var(--an-rose) !important;
}

.activityFeedContainer {
  transition: all 0.2s;
}
.activityFeedContainer .ng-hide:not(.ng-hide-animate) {
  display: block !important;
  transform: translateX(100%);
}

.activityFeed .md-subheader-inner {
  padding-top: 0px;
  padding-bottom: 0px;
  padding-right: 0px;
}
.activityFeed .md-subheader-inner .md-button {
  margin-right: 0;
}
.activityFeed md-list {
  overflow-y: scroll;
}

.orderSideView,
.orderSideView.md-locked-open,
.orderSideView.md-closed.md-locked-open-add-active {
  min-width: 95% !important;
}
.orderSideView .md-toolbar-tools div,
.orderSideView.md-locked-open .md-toolbar-tools div,
.orderSideView.md-closed.md-locked-open-add-active .md-toolbar-tools div {
  padding-right: 10px;
}
.orderSideView .ovs-icon-muted,
.orderSideView .ovs-text-muted,
.orderSideView.md-locked-open .ovs-icon-muted,
.orderSideView.md-locked-open .ovs-text-muted,
.orderSideView.md-closed.md-locked-open-add-active .ovs-icon-muted,
.orderSideView.md-closed.md-locked-open-add-active .ovs-text-muted {
  color: var(--an-text-muted) !important;
}
.orderSideView .ovs-icon-faint,
.orderSideView.md-locked-open .ovs-icon-faint,
.orderSideView.md-closed.md-locked-open-add-active .ovs-icon-faint {
  color: var(--an-text-faint) !important;
}
.orderSideView .ovs-icon-success,
.orderSideView .ovs-text-success,
.orderSideView.md-locked-open .ovs-icon-success,
.orderSideView.md-locked-open .ovs-text-success,
.orderSideView.md-closed.md-locked-open-add-active .ovs-icon-success,
.orderSideView.md-closed.md-locked-open-add-active .ovs-text-success {
  color: var(--an-emerald) !important;
}
.orderSideView .ovs-icon-danger,
.orderSideView .ovs-text-danger,
.orderSideView.md-locked-open .ovs-icon-danger,
.orderSideView.md-locked-open .ovs-text-danger,
.orderSideView.md-closed.md-locked-open-add-active .ovs-icon-danger,
.orderSideView.md-closed.md-locked-open-add-active .ovs-text-danger {
  color: var(--an-rose) !important;
}
.orderSideView .ovs-icon-admin,
.orderSideView.md-locked-open .ovs-icon-admin,
.orderSideView.md-closed.md-locked-open-add-active .ovs-icon-admin {
  color: var(--an-amber) !important;
}

.usersList md-list-item {
  width: 245px;
  float: left;
}
.usersList:after {
  content: "";
  clear: both;
  display: table;
}
.usersList .badge {
  position: absolute;
  z-index: 10;
  top: 0px;
  right: 0px;
  background: rgba(0, 0, 0, 0.3);
  padding: 2px;
  border-radius: 0 0 0 5px;
}
.usersList .badge md-icon {
  color: #ffef00;
}

.itemsList td, .itemsList th {
  padding: 5px !important;
}
.itemsList img {
  width: 24px;
  height: auto;
}

.table-item {
  user-select: none;
  cursor: pointer;
  transition: background-color 0.1s, transform 0.1s;
  border: solid 1px #f0f0f0;
  border-radius: 10px;
}
.table-item:hover {
  transform: scale(1.1);
}

.btn-floating {
  cursor: pointer;
  font-size: 16px;
  text-transform: uppercase;
  font-weight: bold;
  color: #ffffff;
  border-radius: 5px;
  letter-spacing: 2px;
  background-color: #e13e2b;
  padding: 18px 30px;
  position: fixed;
  bottom: 40px;
  right: 40px;
  transition: all 300ms ease 0ms;
}
.btn-floating .white {
  color: #ffffff;
}

#printWaiterOrders .page {
  width: 21cm;
  min-height: 29.7cm;
  padding-top: 2.5cm;
  padding-bottom: 2cm;
  padding-left: 1.5cm;
  padding-right: 1.5cm;
  margin: 1cm auto;
  margin-top: 0px;
  border: 1px #D3D3D3 solid;
  border-radius: 5px;
  background: white;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
  page-break-after: always;
}
#printWaiterOrders header {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  background-color: #ccc;
  padding: 3mm;
}
@media print {
  #printWaiterOrders .no-print, #printWaiterOrders .no-print * {
    display: none !important;
    -webkit-print-color-adjust: exact;
  }
  #printWaiterOrders .page {
    margin: 0px;
    border: initial;
    border-radius: initial;
    width: initial;
    min-height: initial;
    box-shadow: initial;
    background: initial;
    page-break-after: always;
  }
  #printWaiterOrders .bgGrey {
    background-color: #f1f0ef !important;
    -webkit-print-color-adjust: exact;
  }
  #printWaiterOrders header {
    background-color: #f1f0ef !important;
    -webkit-print-color-adjust: exact;
  }
}

@page {
  size: A4;
  margin: 0;
  margin-top: 20px;
  margin-bottom: 20px;
}
.md-toolbar-tools .md-label {
  font-size: 12px;
}

md-toolbar.kds-toolbar {
  min-height: 52px !important;
  max-height: 56px !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 10 !important;
}
md-toolbar.kds-toolbar .md-toolbar-tools {
  padding: 0 16px !important;
  gap: 8px;
}

.kds-clock {
  font-family: var(--font-sans);
  font-weight: 800;
  font-size: 15px;
  letter-spacing: -0.3px;
  color: var(--an-text);
  min-width: 44px;
  font-variant-numeric: tabular-nums;
}

.kds-toolbar-left {
  gap: 12px;
  align-items: center;
}
.kds-toolbar-left .md-icon-button {
  width: 32px !important;
  height: 32px !important;
  margin: 0 !important;
}

.kds-status-icons {
  gap: 8px;
}
.kds-status-icons md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  margin: 0 !important;
  transition: color 0.3s ease;
}

.kds-toolbar-center {
  gap: 6px;
}

.kds-toolbar-right {
  gap: 6px;
  align-items: center;
}
.kds-toolbar-right .md-icon-button {
  width: 32px !important;
  height: 32px !important;
  margin: 0 !important;
}

.kds-view-owner {
  color: var(--an-text-muted);
  font-size: 12px;
  font-style: italic;
  margin-left: 6px;
}

.kds-views-selector {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-right: 8px;
}
.kds-views-selector md-icon:not(.md-select-icon) {
  font-size: 18px !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  color: var(--an-text-muted) !important;
  margin: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.kds-views-selector md-select {
  margin: 0 !important;
  padding: 0 8px !important;
  font-size: 13px !important;
  display: inline-flex;
  align-items: center;
  height: 32px;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  min-width: 130px;
  max-width: 160px;
  box-sizing: border-box;
  transition: border-color 0.2s ease, background-color 0.2s ease;
}
.kds-views-selector md-select:hover:not([disabled]) {
  background-color: var(--an-surface);
  border-color: var(--an-border-strong);
}
.kds-views-selector md-select .md-select-value {
  display: flex !important;
  align-items: center !important;
  padding: 0 20px 0 0;
  border: none !important;
  border-bottom: none !important;
  background: transparent !important;
  box-shadow: none !important;
  font-weight: 500;
  color: var(--an-text) !important;
  font-size: 13px !important;
  height: 32px !important;
  line-height: normal !important;
}
.kds-views-selector md-select .md-select-value span,
.kds-views-selector md-select .md-select-value span:first-child,
.kds-views-selector md-select .md-select-value span:not(.md-select-icon) {
  font-size: 13px !important;
  color: var(--an-text) !important;
  line-height: normal !important;
}
.kds-views-selector md-select .md-select-value span:not(.md-select-icon) {
  display: inline-flex !important;
  align-items: center !important;
  height: 100% !important;
}
.kds-views-selector md-select .md-select-value .md-text {
  color: var(--an-text) !important;
  font-size: 13px !important;
  line-height: normal !important;
}
.kds-views-selector md-select .md-select-value .md-select-icon {
  color: var(--an-text-muted) !important;
  width: 18px;
  transform: translate3d(0, -1px, 0);
}
.kds-views-selector md-select:focus:not([disabled]) .md-select-value {
  border-bottom: none !important;
  color: var(--an-text) !important;
}

.order-queued:not(.status-filter) {
  background-color: rgb(230, 183, 30) !important;
  color: #ffffff !important;
}
.order-queued:not(.status-filter) md-icon,
.order-queued:not(.status-filter) i {
  color: #ffffff !important;
}

.order-accepted:not(.status-filter) {
  background-color: #0fa3f8 !important;
  color: #ffffff !important;
}
.order-accepted:not(.status-filter) md-icon,
.order-accepted:not(.status-filter) i {
  color: #ffffff !important;
}

.order-in_progress:not(.status-filter) {
  background-color: #e67f00 !important;
  color: #ffffff !important;
}
.order-in_progress:not(.status-filter) md-icon,
.order-in_progress:not(.status-filter) i {
  color: #ffffff !important;
}

.order-prepaired:not(.status-filter) {
  background-color: #33aa66 !important;
  color: #ffffff !important;
}
.order-prepaired:not(.status-filter) md-icon,
.order-prepaired:not(.status-filter) i {
  color: #ffffff !important;
}

.order-delivered:not(.status-filter) {
  background-color: #b7cabf !important;
  color: #ffffff !important;
}
.order-delivered:not(.status-filter) md-icon,
.order-delivered:not(.status-filter) i {
  color: #ffffff !important;
}

.order-packaging:not(.status-filter) {
  background-color: #b09d7d !important;
  color: #ffffff !important;
}
.order-packaging:not(.status-filter) md-icon,
.order-packaging:not(.status-filter) i {
  color: #ffffff !important;
}

.order-status.queued {
  color: rgb(230, 183, 30);
}
.order-status.accepted {
  color: #0fa3f8;
}
.order-status.in_progress {
  color: #e67f00;
}
.order-status.prepaired {
  color: #33aa66;
}
.order-status.delivered {
  color: #b7cabf;
}
.order-status.packaging {
  color: #b09d7d;
}

.order-min-queued {
  background-color: rgb(255, 229, 145) !important;
}

.order-min-accepted {
  background-color: #81cffc !important;
}

.order-min-in_progress {
  background-color: #f1af60 !important;
}

.order-min-prepaired {
  background-color: #a0d2b6 !important;
}

.order-min-delivered {
  background-color: #dce0de !important;
}

.order-min-packaging {
  background-color: #d4c8b4 !important;
}

div[masonry],
.kds-masonry-container {
  padding: 16px !important;
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)) !important;
  grid-auto-rows: 1px !important;
  column-gap: 16px !important;
  row-gap: 0 !important;
  align-items: start !important;
  width: 100% !important;
  overflow: visible !important;
}
div[masonry] .kitchen-order,
.kds-masonry-container .kitchen-order {
  float: none !important;
  width: 100% !important;
  margin-bottom: 0 !important;
  margin-right: 0 !important;
}

.kds-horizontal-container {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  gap: 16px !important;
  align-items: start !important;
  padding-bottom: 16px !important;
  width: 100% !important;
  overflow-x: auto !important;
}
.kds-horizontal-container .kitchen-order {
  float: none !important;
  flex: 0 0 270px !important;
  width: 270px !important;
  margin-bottom: 0 !important;
  margin-right: 0 !important;
}

@keyframes kds-new-order {
  0%, 100% {
    box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.5);
  }
  50% {
    box-shadow: inset 0 0 0 4px rgba(255, 255, 255, 0.9), 0 0 16px rgba(255, 220, 50, 0.5);
  }
}
.kitchen-order {
  float: left;
  width: 300px;
  transition: opacity 0.3s ease, transform 0.3s ease;
  margin-bottom: 20px;
  margin-right: 12px;
  will-change: transform, opacity;
  backface-visibility: hidden;
  transform: translate3d(0, 0, 0);
}
.kitchen-order.animated.tada {
  animation: kds-new-order 0.6s ease 3 !important;
}
.kitchen-order {
  border-radius: var(--an-radius) var(--an-radius) 0 0 !important;
  overflow: visible !important;
}
.kitchen-order md-card-header {
  border-radius: var(--an-radius) var(--an-radius) 0 0 !important;
  transition: background-color 0.4s ease, filter 0.2s ease;
  font-family: var(--font-sans);
  padding: 12px 14px 10px !important;
}
.kitchen-order md-card-header.clickable-header {
  cursor: pointer;
}
.kitchen-order md-card-header.clickable-header:hover {
  filter: brightness(1.06);
}
.kitchen-order md-card-header.clickable-header:hover .kds-extend-icon {
  color: #ffffff !important;
  transform: scale(1.15);
}
.kitchen-order md-card-header .kds-extend-icon {
  color: rgba(255, 255, 255, 0.7);
  font-size: 15px;
  width: 15px;
  height: 15px;
  min-width: 15px;
  min-height: 15px;
  margin: 0;
  transition: color 0.2s ease, transform 0.2s ease;
}
.kitchen-order md-card-header md-card-header-text {
  margin: 0 !important;
}
.kitchen-order md-card-header .kds-header-row1 {
  margin-bottom: 2px;
}
.kitchen-order md-card-header .kds-station-name {
  font-size: 14px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.3;
}
.kitchen-order md-card-header .kds-order-number {
  font-size: 22px;
  font-weight: 900;
  color: #ffffff;
  line-height: 1.15;
  letter-spacing: -0.5px;
  margin: 2px 0 4px;
}
.kitchen-order md-card-header .kds-header-row3 {
  margin-top: 2px;
}
.kitchen-order md-card-header .kds-customer-name {
  font-size: 12px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.88);
}
.kitchen-order md-card-header .kds-pickup-time {
  font-size: 12px;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.95);
}
.kitchen-order md-card-header .kds-service-charge {
  font-size: 12px;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.95);
  display: inline-flex !important;
  align-items: center;
  gap: 3px;
  width: auto !important;
}
.kitchen-order md-card-header .kds-service-charge md-icon {
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  line-height: 14px !important;
  flex-shrink: 0;
}
.kitchen-order md-card-header .kds-header-row4 {
  margin-top: 3px;
}
.kitchen-order md-card-header .kds-layout-name {
  font-size: 11px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.7);
  letter-spacing: 0.2px;
}
.kitchen-order md-card-header .kds-order-source-name {
  font-size: 11px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.85);
  margin-left: 6px;
  white-space: nowrap;
}
.kitchen-order md-card-header .kds-order-source {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  max-width: 56px;
  height: 22px;
  padding: 0 3px;
  margin-left: 6px;
  border-radius: var(--an-radius-xs);
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.18);
  box-sizing: border-box;
  overflow: hidden;
}
.kitchen-order md-card-header .kds-order-source img {
  height: 18px;
  width: auto;
  max-width: 50px;
  object-fit: contain;
  display: block;
}
.kitchen-order md-card-header .kds-order-source-glyph {
  font-size: 18px;
  width: 18px;
  height: 18px;
  min-width: 0;
  min-height: 0;
  margin-left: 6px;
  color: rgba(255, 255, 255, 0.9);
}
.kitchen-order md-card-header .kds-time-badge {
  flex: 0 0 auto !important;
  font-size: 14px;
  font-weight: 800;
  color: rgba(255, 255, 255, 0.97);
  background: rgba(0, 0, 0, 0.15);
  border-radius: 12px;
  padding: 2px 6px;
  line-height: 1.3;
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  gap: 1px;
}
.kitchen-order md-card-header .kds-time-badge span {
  font-size: 10px;
  font-weight: 600;
  opacity: 0.85;
}
.kitchen-order md-card-header .md-title {
  font-weight: 700;
  font-size: 15px;
  line-height: 1.25;
  color: rgba(255, 255, 255, 0.97);
}
.kitchen-order md-card-header .md-subhead {
  font-size: 12px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.85);
  margin-top: 2px;
}
.kitchen-order md-card-header .text-right {
  text-align: right;
}
.kitchen-order md-card-header .mini-action md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
}
.kitchen-order md-card-content {
  font-family: var(--font-sans);
  padding: 10px 14px 14px !important;
}
.kitchen-order md-card-content > div > div {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px dashed rgba(0, 0, 0, 0.08);
}
.kitchen-order md-card-content > div > div:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
.kitchen-order md-card-content .item-name {
  display: flex;
  align-items: baseline;
  gap: 6px;
  font-size: 16px;
  font-weight: 700;
  color: var(--an-text-strong);
  line-height: 1.45;
  margin-bottom: 3px;
}
.kitchen-order md-card-content .item-name .item-qty {
  font-size: 15px;
  font-weight: 800;
  color: var(--an-text-strong);
  flex-shrink: 0;
  background: rgba(0, 0, 0, 0.06);
  border-radius: 6px;
  padding: 0 6px;
  line-height: 1.6;
  letter-spacing: -0.2px;
}
.kitchen-order md-card-content .item-name .item-qty--sub {
  font-size: 13px;
  font-weight: 700;
  background: rgba(0, 0, 0, 0.04);
  color: var(--an-text-muted);
}
.kitchen-order md-card-content .item-name > span:not(.item-qty):not(.item-qty--sub) {
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text-muted);
  flex-shrink: 0;
  letter-spacing: 0.2px;
}
.kitchen-order md-card-content .item-name md-icon.iconoir-nav-arrow-right,
.kitchen-order md-card-content .item-name md-icon.ticket-more:not(.combo-icon) {
  font-size: 13px !important;
  width: 13px !important;
  height: 13px !important;
  min-width: 13px !important;
  line-height: 13px !important;
  flex-shrink: 0;
  color: var(--an-text-muted);
  opacity: 0.7;
  margin-top: 2px;
}
.kitchen-order md-card-content .item-name md-icon.combo-icon {
  display: none !important;
}
.kitchen-order md-card-content .item-variation {
  display: block;
  margin-left: 18px;
  margin-top: 2px;
  padding-left: 10px;
  border-left: 2px solid rgba(0, 0, 0, 0.1);
}
.kitchen-order md-card-content .item-variation > div {
  display: flex;
  align-items: baseline;
  gap: 5px;
  font-size: 13px;
  font-weight: 400;
  color: var(--an-text-muted);
  line-height: 1.5;
  padding: 1px 0;
}
.kitchen-order md-card-content .item-variation > div .var-qty {
  font-size: 11px;
  font-weight: 700;
  color: var(--an-text-strong);
  flex-shrink: 0;
  background: rgba(0, 0, 0, 0.06);
  border-radius: 4px;
  padding: 0 4px;
  line-height: 1.5;
}
.kitchen-order md-card-content .item-variation > div md-icon {
  display: none !important;
}
.kitchen-order md-card-content .item-variation > div::before {
  content: "–";
  color: var(--an-border-strong);
  font-size: 11px;
  flex-shrink: 0;
  opacity: 0.6;
  line-height: 1.5;
}
.kitchen-order md-card-content .item-variation > div span[style*=font-weight] {
  font-weight: 700;
  color: var(--an-text-strong);
}
.kitchen-order md-card-content .item-note:not(.item-canceled) {
  display: flex;
  align-items: flex-start;
  gap: 5px;
  margin-top: 5px;
  margin-left: 18px;
  padding: 5px 8px;
  background: rgba(220, 140, 0, 0.1);
  border-left: 2px solid rgba(200, 110, 0, 0.35);
  border-radius: 0 5px 5px 0;
  font-size: 12px;
  font-style: italic;
  color: var(--an-text);
  line-height: 1.4;
}
.kitchen-order md-card-content .item-note:not(.item-canceled) md-icon {
  font-size: 12px !important;
  width: 12px !important;
  height: 12px !important;
  min-width: 12px !important;
  flex-shrink: 0;
  margin-top: 1px;
  color: rgba(160, 90, 0, 0.75);
}
.kitchen-order md-card-content .item-note.item-canceled {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-top: 4px;
  font-size: 12px;
  font-weight: 600;
  color: #d30000;
}
.kitchen-order md-card-content .item-note.item-canceled md-icon {
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  min-width: 14px !important;
  color: #d30000;
}
.kitchen-order md-card-content .order-canceled {
  background-color: #d30000;
  color: white;
  text-align: center;
  padding: 6px 8px;
  margin-bottom: 10px;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  border-radius: 5px;
  font-family: var(--font-sans);
}
.kitchen-order .combo-icon {
  display: none !important;
}
.kitchen-order .canceled .item-name {
  text-decoration: line-through;
  opacity: 0.5;
}
.kitchen-order .urgentFlag {
  left: 50%;
  margin-left: -14px;
  top: 0px;
}
.kitchen-order.loading {
  opacity: 0.8;
  transform: scale(0.95);
}
.kitchen-order.loading md-card-actions button md-icon {
  animation: spin 0.5s infinite linear;
}
.kitchen-order.loading .change-item-btn md-icon {
  animation: spin 0.5s infinite linear;
}

.ticket {
  background-color: var(--an-surface);
  box-shadow: var(--an-shadow) !important;
  border-radius: var(--an-radius) var(--an-radius) 0 0 !important;
  border: none !important;
  font-family: var(--font-sans);
  overflow: visible !important;
  will-change: transform;
  backface-visibility: hidden;
  transform: translate3d(0, 0, 0);
}
.ticket md-card-header {
  border-radius: var(--an-radius) var(--an-radius) 0 0 !important;
}
.ticket .ticketItems {
  cursor: zoom-in;
}
.ticket .order-canceled {
  background-color: #d30000;
  color: white;
  text-align: center;
  padding: 5px;
  margin-bottom: 10px;
  font-size: 16px;
  font-weight: 700;
  text-transform: uppercase;
  font-family: var(--font-sans);
}
.ticket .item-canceled {
  color: #d30000;
}
.ticket .minutes {
  border-radius: 12px;
  padding: 2px 6px;
  font-size: 14px;
  font-weight: 800;
  font-family: var(--font-sans);
  display: inline-flex;
  align-items: center;
  gap: 1px;
  line-height: 1.3;
  white-space: nowrap;
}
.ticket .minutes span {
  font-size: 10px;
  font-weight: 600;
  opacity: 0.85;
}
.ticket .font-first {
  color: #d300c2;
}
.ticket .course-header {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 6px 0 2px;
  padding-top: 4px;
  border-top: 1px dashed rgba(0, 0, 0, 0.18);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  opacity: 0.85;
}
.ticket .course-header .course-bar {
  width: 4px;
  height: 12px;
  border-radius: 2px;
  background: #d300c2;
}
.ticket .course-header .course-state {
  margin-left: auto;
  font-size: 10px;
  font-weight: 600;
  text-transform: none;
  opacity: 0.7;
}
.ticket .course-header.course-header--held {
  opacity: 0.55;
}
.ticket .item-held {
  opacity: 0.45;
}
.ticket .fire-course-btn {
  min-height: 26px;
  line-height: 26px;
  font-size: 11px;
  margin: 2px 0;
  text-transform: none;
}
.ticket .ticket-action {
  background-color: var(--an-surface) !important;
  padding: 8px !important;
  margin: 0 !important;
  position: relative;
  border-top: none !important;
}
.ticket .ticket-action:after {
  content: "";
  height: 10px;
  position: absolute;
  left: 0;
  right: 0;
  clip-path: polygon(0% 0%, 5% 100%, 10% 0%, 15% 100%, 20% 0%, 25% 100%, 30% 0%, 35% 100%, 40% 0%, 45% 100%, 50% 0%, 55% 100%, 60% 0%, 65% 100%, 70% 0%, 75% 100%, 80% 0%, 85% 100%, 90% 0%, 95% 100%, 100% 0%);
  -webkit-clip-path: polygon(0% 0%, 5% 100%, 10% 0%, 15% 100%, 20% 0%, 25% 100%, 30% 0%, 35% 100%, 40% 0%, 45% 100%, 50% 0%, 55% 100%, 60% 0%, 65% 100%, 70% 0%, 75% 100%, 80% 0%, 85% 100%, 90% 0%, 95% 100%, 100% 0%);
  background-color: inherit !important;
  bottom: -9px;
}
.ticket .ticket-action .kds-menu-btn {
  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;
  border-radius: var(--an-radius-sm) !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background-color: var(--an-surface) !important;
  border: 1.5px solid var(--an-border) !important;
  box-shadow: var(--an-shadow-xs) !important;
  transition: border-color 0.2s ease, background-color 0.2s ease !important;
}
.ticket .ticket-action .kds-menu-btn:hover {
  border-color: var(--an-border-strong) !important;
  background-color: var(--an-surface2) !important;
}
.ticket .ticket-action .kds-menu-btn md-icon {
  font-size: 22px !important;
  width: 22px !important;
  height: 22px !important;
  color: var(--an-text) !important;
}
.ticket .ticket-action .kds-action-fab {
  border-radius: 50% !important;
  width: 64px !important;
  height: 64px !important;
  min-height: 64px !important;
  min-width: 64px !important;
  padding: 0 !important;
  margin: 0 !important;
  margin-right: 4px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.22) !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease !important;
  flex-shrink: 0 !important;
}
.ticket .ticket-action .kds-action-fab:not([disabled]):hover {
  transform: scale(1.06);
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.28) !important;
}
.ticket .ticket-action .kds-action-fab:not([disabled]):active {
  transform: scale(0.95);
}
.ticket .ticket-action .kds-action-fab md-icon {
  font-size: 30px !important;
  width: 30px !important;
  height: 30px !important;
  line-height: 30px !important;
}
.ticket .ticket-action .md-fab:not(.kds-action-fab) {
  border-radius: 50% !important;
  width: 48px !important;
  height: 48px !important;
  min-height: 48px !important;
  margin: 0 !important;
  padding: 0 !important;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.18) !important;
}

.kds-urgency-warning .kds-time-badge {
  background: rgba(0, 0, 0, 0.25) !important;
}

.kds-urgency-urgent .kds-time-badge {
  background: rgba(180, 50, 0, 0.5) !important;
  animation: urgency-pulse 2s ease infinite;
}

.kds-urgency-critical .kds-time-badge {
  background: rgba(160, 0, 0, 0.7) !important;
  animation: urgency-pulse 1s ease infinite;
  box-shadow: 0 0 8px rgba(200, 0, 0, 0.5);
}

@keyframes urgency-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.75;
  }
}
.status-filter {
  border-radius: var(--an-radius-sm);
  padding: 0;
  margin: 0;
}
.status-filter md-switch {
  margin: 0 !important;
}

.kds-toolbar-center .status-filter > div[layout=row] {
  background: var(--an-surface) !important;
  border: 1.5px solid var(--an-border) !important;
  border-radius: var(--an-radius-pill) !important;
  padding: 3px 14px 3px 10px !important;
  height: 34px !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
  transition: all 0.2s ease;
}
.kds-toolbar-center .status-filter > div[layout=row]:hover {
  border-color: var(--an-border-strong) !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}
.kds-toolbar-center .status-filter md-switch {
  height: 22px !important;
  min-height: 22px !important;
}
.kds-toolbar-center .status-filter md-switch .md-label {
  font-family: var(--font-sans) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.6px !important;
  text-transform: uppercase !important;
  color: var(--an-text-muted) !important;
  margin-left: 6px !important;
}
.kds-toolbar-center .status-filter .status-count {
  font-family: var(--font-sans);
  font-size: 10px;
  font-weight: 700;
  min-width: 20px;
  height: 20px;
  line-height: 20px;
  padding: 0 5px;
  border-radius: var(--an-radius-pill);
  text-align: center;
  margin-left: 6px !important;
  margin-top: 0 !important;
  transition: all 0.2s ease;
}

.order-queued md-switch.md-checked .md-container .md-bar {
  background-color: rgb(230, 183, 30) !important;
}
.order-queued md-switch.md-checked .md-label {
  color: rgb(178.92, 141.5456, 19.88) !important;
}
.order-queued .status-count {
  background: rgba(230, 183, 30, 0.12) !important;
  color: rgb(165.15, 130.652, 18.35) !important;
}

.order-accepted md-switch.md-checked .md-container .md-bar {
  background-color: #0fa3f8 !important;
}
.order-accepted md-switch.md-checked .md-label {
  color: rgb(6.008097166, 133.036437247, 205.991902834) !important;
}
.order-accepted .status-count {
  background: rgba(15, 163, 248, 0.12) !important;
  color: rgb(5.2854251012, 117.0344129555, 181.2145748988) !important;
}

.order-in_progress md-switch.md-checked .md-container .md-bar {
  background-color: #e67f00 !important;
}
.order-in_progress md-switch.md-checked .md-label {
  color: rgb(189.2, 104.4713043478, 0) !important;
}
.order-in_progress .status-count {
  background: rgba(230, 127, 0, 0.12) !important;
  color: rgb(153.5, 84.7586956522, 0) !important;
}

.order-prepaired md-switch.md-checked .md-container .md-bar {
  background-color: #33aa66 !important;
}
.order-prepaired md-switch.md-checked .md-label {
  color: rgb(39.2307692308, 130.7692307692, 78.4615384615) !important;
}
.order-prepaired .status-count {
  background: rgba(51, 170, 102, 0.12) !important;
  color: rgb(29.8153846154, 99.3846153846, 59.6307692308) !important;
}

.order-packaging md-switch.md-checked .md-container .md-bar {
  background-color: #b09d7d !important;
}
.order-packaging md-switch.md-checked .md-label {
  color: rgb(139.6411483254, 119.2320574163, 84.8588516746) !important;
}
.order-packaging .status-count {
  background: rgba(176, 157, 125, 0.12) !important;
  color: rgb(123.7799043062, 105.6889952153, 75.2200956938) !important;
}

.order-delivered md-switch.md-checked .md-container .md-bar {
  background-color: #b7cabf !important;
}
.order-delivered md-switch.md-checked .md-label {
  color: rgb(124.248, 158.752, 138.776) !important;
}
.order-delivered .status-count {
  background: rgba(183, 202, 191, 0.18) !important;
  color: rgb(98.368, 133.632, 113.216) !important;
}

.status-count {
  border-radius: var(--an-radius-pill);
  padding: 0 5px;
  min-width: 20px;
  height: 20px;
  font-size: 11px;
  font-weight: 700;
  background-color: var(--an-surface2);
  color: var(--an-text-muted);
  text-align: center;
  font-family: var(--font-sans);
  line-height: 20px;
}

.min-ago {
  flex: unset;
}
.min-ago span {
  font-size: 10px;
  opacity: 0.6;
}

.input-delete {
  padding-bottom: 25px;
  cursor: pointer;
}

.counters {
  background-color: rgb(241, 240, 239);
}
.counters .counter {
  color: #ffffff;
  background-color: rgb(197, 36, 24);
  border-radius: 8px;
  padding: 4px;
  margin: 4px;
}
.counters .counter .letter {
  margin-right: 3px;
}
.counters .counter .plu-count {
  border-radius: 50%;
  padding: 3px;
  width: 22px;
  height: 22px;
  font-size: 14px;
  background-color: #ffffff;
  text-align: center;
  color: rgba(0, 0, 0, 0.87);
}

.input-search {
  margin: 18px 0px 0px 0px;
}
.input-search input {
  font-size: 26px;
}

.pickup-bg {
  background-color: #2d2c27;
}
.pickup-bg .item-name {
  color: #FFFFFF;
}
.pickup-bg .item-variation {
  color: #cfcfcf;
}
.pickup-bg .ticket-more {
  color: #cfcfcf;
}
.pickup-bg .ticket-note {
  color: #FFFFFF;
}
.pickup-bg .ticket-action {
  background-color: #2d2c27 !important;
}
.pickup-bg .ticket-action:after {
  background-color: #2d2c27 !important;
}

.filter-button {
  margin-top: 22px;
  margin-bottom: -10px;
  height: 16px;
  line-height: 16px;
}

md-dialog.zoomed-ticket-dialog {
  width: 960px !important;
  max-width: 95% !important;
  min-height: 480px !important;
  max-height: 90vh !important;
  border-radius: var(--an-radius) !important;
  box-shadow: 0 24px 48px rgba(0, 0, 0, 0.24) !important;
  overflow: hidden !important;
  background: var(--an-surface) !important;
  display: flex;
  flex-direction: column;
  font-family: var(--font-sans) !important;
}
md-dialog.zoomed-ticket-dialog.loading .zoomed-action-btn md-icon {
  animation: spin 0.5s infinite linear !important;
}
md-dialog.zoomed-ticket-dialog .change-item-btn md-icon {
  animation: spin 0.5s infinite linear !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar {
  padding: 16px 20px !important;
  min-height: 78px !important;
  max-height: 96px !important;
  position: relative;
  display: flex;
  align-items: center;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
md-dialog.zoomed-ticket-dialog md-toolbar.order-queued, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-queued {
  background: rgb(230, 183, 30) !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar.order-accepted, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-accepted {
  background: #0fa3f8 !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar.order-in_progress, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-in_progress {
  background: #e67f00 !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar.order-prepaired, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-prepaired {
  background: #33aa66 !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar.order-delivered, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-delivered {
  background: #b7cabf !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar.order-packaging, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-packaging {
  background: #b09d7d !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar.order-queued, md-dialog.zoomed-ticket-dialog md-toolbar.order-accepted, md-dialog.zoomed-ticket-dialog md-toolbar.order-in_progress, md-dialog.zoomed-ticket-dialog md-toolbar.order-prepaired, md-dialog.zoomed-ticket-dialog md-toolbar.order-delivered, md-dialog.zoomed-ticket-dialog md-toolbar.order-packaging, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-queued, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-accepted, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-in_progress, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-prepaired, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-delivered, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-packaging {
  color: #ffffff !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar.order-queued .zoomed-station-name, md-dialog.zoomed-ticket-dialog md-toolbar.order-accepted .zoomed-station-name, md-dialog.zoomed-ticket-dialog md-toolbar.order-in_progress .zoomed-station-name, md-dialog.zoomed-ticket-dialog md-toolbar.order-prepaired .zoomed-station-name, md-dialog.zoomed-ticket-dialog md-toolbar.order-delivered .zoomed-station-name, md-dialog.zoomed-ticket-dialog md-toolbar.order-packaging .zoomed-station-name, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-queued .zoomed-station-name, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-accepted .zoomed-station-name, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-in_progress .zoomed-station-name, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-prepaired .zoomed-station-name, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-delivered .zoomed-station-name, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-packaging .zoomed-station-name {
  color: rgba(255, 255, 255, 0.85) !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar.order-queued .zoomed-order-number, md-dialog.zoomed-ticket-dialog md-toolbar.order-accepted .zoomed-order-number, md-dialog.zoomed-ticket-dialog md-toolbar.order-in_progress .zoomed-order-number, md-dialog.zoomed-ticket-dialog md-toolbar.order-prepaired .zoomed-order-number, md-dialog.zoomed-ticket-dialog md-toolbar.order-delivered .zoomed-order-number, md-dialog.zoomed-ticket-dialog md-toolbar.order-packaging .zoomed-order-number, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-queued .zoomed-order-number, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-accepted .zoomed-order-number, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-in_progress .zoomed-order-number, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-prepaired .zoomed-order-number, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-delivered .zoomed-order-number, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-packaging .zoomed-order-number {
  color: #ffffff !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar.order-queued .zoomed-layout-name, md-dialog.zoomed-ticket-dialog md-toolbar.order-accepted .zoomed-layout-name, md-dialog.zoomed-ticket-dialog md-toolbar.order-in_progress .zoomed-layout-name, md-dialog.zoomed-ticket-dialog md-toolbar.order-prepaired .zoomed-layout-name, md-dialog.zoomed-ticket-dialog md-toolbar.order-delivered .zoomed-layout-name, md-dialog.zoomed-ticket-dialog md-toolbar.order-packaging .zoomed-layout-name, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-queued .zoomed-layout-name, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-accepted .zoomed-layout-name, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-in_progress .zoomed-layout-name, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-prepaired .zoomed-layout-name, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-delivered .zoomed-layout-name, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-packaging .zoomed-layout-name {
  color: rgba(255, 255, 255, 0.75) !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar.order-queued .zoomed-customer-name, md-dialog.zoomed-ticket-dialog md-toolbar.order-accepted .zoomed-customer-name, md-dialog.zoomed-ticket-dialog md-toolbar.order-in_progress .zoomed-customer-name, md-dialog.zoomed-ticket-dialog md-toolbar.order-prepaired .zoomed-customer-name, md-dialog.zoomed-ticket-dialog md-toolbar.order-delivered .zoomed-customer-name, md-dialog.zoomed-ticket-dialog md-toolbar.order-packaging .zoomed-customer-name, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-queued .zoomed-customer-name, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-accepted .zoomed-customer-name, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-in_progress .zoomed-customer-name, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-prepaired .zoomed-customer-name, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-delivered .zoomed-customer-name, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-packaging .zoomed-customer-name {
  color: #ffffff !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar.order-queued .zoomed-pickup-time, md-dialog.zoomed-ticket-dialog md-toolbar.order-accepted .zoomed-pickup-time, md-dialog.zoomed-ticket-dialog md-toolbar.order-in_progress .zoomed-pickup-time, md-dialog.zoomed-ticket-dialog md-toolbar.order-prepaired .zoomed-pickup-time, md-dialog.zoomed-ticket-dialog md-toolbar.order-delivered .zoomed-pickup-time, md-dialog.zoomed-ticket-dialog md-toolbar.order-packaging .zoomed-pickup-time, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-queued .zoomed-pickup-time, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-accepted .zoomed-pickup-time, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-in_progress .zoomed-pickup-time, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-prepaired .zoomed-pickup-time, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-delivered .zoomed-pickup-time, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-packaging .zoomed-pickup-time {
  color: #ffffff !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar.order-queued .zoomed-time-badge, md-dialog.zoomed-ticket-dialog md-toolbar.order-accepted .zoomed-time-badge, md-dialog.zoomed-ticket-dialog md-toolbar.order-in_progress .zoomed-time-badge, md-dialog.zoomed-ticket-dialog md-toolbar.order-prepaired .zoomed-time-badge, md-dialog.zoomed-ticket-dialog md-toolbar.order-delivered .zoomed-time-badge, md-dialog.zoomed-ticket-dialog md-toolbar.order-packaging .zoomed-time-badge, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-queued .zoomed-time-badge, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-accepted .zoomed-time-badge, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-in_progress .zoomed-time-badge, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-prepaired .zoomed-time-badge, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-delivered .zoomed-time-badge, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-packaging .zoomed-time-badge {
  background: rgba(255, 255, 255, 0.2) !important;
  color: #ffffff !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar.order-queued .zoomed-time-badge span, md-dialog.zoomed-ticket-dialog md-toolbar.order-accepted .zoomed-time-badge span, md-dialog.zoomed-ticket-dialog md-toolbar.order-in_progress .zoomed-time-badge span, md-dialog.zoomed-ticket-dialog md-toolbar.order-prepaired .zoomed-time-badge span, md-dialog.zoomed-ticket-dialog md-toolbar.order-delivered .zoomed-time-badge span, md-dialog.zoomed-ticket-dialog md-toolbar.order-packaging .zoomed-time-badge span, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-queued .zoomed-time-badge span, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-accepted .zoomed-time-badge span, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-in_progress .zoomed-time-badge span, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-prepaired .zoomed-time-badge span, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-delivered .zoomed-time-badge span, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-packaging .zoomed-time-badge span {
  color: #ffffff !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar.order-queued .urgentFlag-zoomed, md-dialog.zoomed-ticket-dialog md-toolbar.order-accepted .urgentFlag-zoomed, md-dialog.zoomed-ticket-dialog md-toolbar.order-in_progress .urgentFlag-zoomed, md-dialog.zoomed-ticket-dialog md-toolbar.order-prepaired .urgentFlag-zoomed, md-dialog.zoomed-ticket-dialog md-toolbar.order-delivered .urgentFlag-zoomed, md-dialog.zoomed-ticket-dialog md-toolbar.order-packaging .urgentFlag-zoomed, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-queued .urgentFlag-zoomed, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-accepted .urgentFlag-zoomed, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-in_progress .urgentFlag-zoomed, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-prepaired .urgentFlag-zoomed, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-delivered .urgentFlag-zoomed, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-packaging .urgentFlag-zoomed {
  color: #ffffff !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar.order-queued .zoomed-close-btn, md-dialog.zoomed-ticket-dialog md-toolbar.order-accepted .zoomed-close-btn, md-dialog.zoomed-ticket-dialog md-toolbar.order-in_progress .zoomed-close-btn, md-dialog.zoomed-ticket-dialog md-toolbar.order-prepaired .zoomed-close-btn, md-dialog.zoomed-ticket-dialog md-toolbar.order-delivered .zoomed-close-btn, md-dialog.zoomed-ticket-dialog md-toolbar.order-packaging .zoomed-close-btn, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-queued .zoomed-close-btn, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-accepted .zoomed-close-btn, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-in_progress .zoomed-close-btn, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-prepaired .zoomed-close-btn, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-delivered .zoomed-close-btn, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-packaging .zoomed-close-btn {
  color: #ffffff !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar.order-queued .zoomed-close-btn md-icon, md-dialog.zoomed-ticket-dialog md-toolbar.order-accepted .zoomed-close-btn md-icon, md-dialog.zoomed-ticket-dialog md-toolbar.order-in_progress .zoomed-close-btn md-icon, md-dialog.zoomed-ticket-dialog md-toolbar.order-prepaired .zoomed-close-btn md-icon, md-dialog.zoomed-ticket-dialog md-toolbar.order-delivered .zoomed-close-btn md-icon, md-dialog.zoomed-ticket-dialog md-toolbar.order-packaging .zoomed-close-btn md-icon, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-queued .zoomed-close-btn md-icon, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-accepted .zoomed-close-btn md-icon, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-in_progress .zoomed-close-btn md-icon, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-prepaired .zoomed-close-btn md-icon, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-delivered .zoomed-close-btn md-icon, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-packaging .zoomed-close-btn md-icon {
  color: #ffffff !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar.order-queued .zoomed-close-btn:hover, md-dialog.zoomed-ticket-dialog md-toolbar.order-accepted .zoomed-close-btn:hover, md-dialog.zoomed-ticket-dialog md-toolbar.order-in_progress .zoomed-close-btn:hover, md-dialog.zoomed-ticket-dialog md-toolbar.order-prepaired .zoomed-close-btn:hover, md-dialog.zoomed-ticket-dialog md-toolbar.order-delivered .zoomed-close-btn:hover, md-dialog.zoomed-ticket-dialog md-toolbar.order-packaging .zoomed-close-btn:hover, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-queued .zoomed-close-btn:hover, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-accepted .zoomed-close-btn:hover, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-in_progress .zoomed-close-btn:hover, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-prepaired .zoomed-close-btn:hover, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-delivered .zoomed-close-btn:hover, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-packaging .zoomed-close-btn:hover {
  background-color: rgba(255, 255, 255, 0.15) !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar.order-queued md-icon, md-dialog.zoomed-ticket-dialog md-toolbar.order-accepted md-icon, md-dialog.zoomed-ticket-dialog md-toolbar.order-in_progress md-icon, md-dialog.zoomed-ticket-dialog md-toolbar.order-prepaired md-icon, md-dialog.zoomed-ticket-dialog md-toolbar.order-delivered md-icon, md-dialog.zoomed-ticket-dialog md-toolbar.order-packaging md-icon, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-queued md-icon, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-accepted md-icon, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-in_progress md-icon, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-prepaired md-icon, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-delivered md-icon, md-dialog.zoomed-ticket-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent).order-packaging md-icon {
  color: #ffffff !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar:not(.order-queued):not(.order-accepted):not(.order-in_progress):not(.order-prepaired):not(.order-delivered):not(.order-packaging) {
  background-color: var(--an-surface2) !important;
  color: var(--an-text) !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar:not(.order-queued):not(.order-accepted):not(.order-in_progress):not(.order-prepaired):not(.order-delivered):not(.order-packaging) .zoomed-station-name {
  color: var(--an-text-muted) !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar:not(.order-queued):not(.order-accepted):not(.order-in_progress):not(.order-prepaired):not(.order-delivered):not(.order-packaging) .zoomed-order-number {
  color: var(--an-text) !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar:not(.order-queued):not(.order-accepted):not(.order-in_progress):not(.order-prepaired):not(.order-delivered):not(.order-packaging) .zoomed-layout-name {
  color: var(--an-text-muted) !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar:not(.order-queued):not(.order-accepted):not(.order-in_progress):not(.order-prepaired):not(.order-delivered):not(.order-packaging) .zoomed-customer-name {
  color: var(--an-text) !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar:not(.order-queued):not(.order-accepted):not(.order-in_progress):not(.order-prepaired):not(.order-delivered):not(.order-packaging) .zoomed-pickup-time {
  color: var(--an-text) !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar:not(.order-queued):not(.order-accepted):not(.order-in_progress):not(.order-prepaired):not(.order-delivered):not(.order-packaging) .zoomed-time-badge {
  background: var(--an-border) !important;
  color: var(--an-text) !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar:not(.order-queued):not(.order-accepted):not(.order-in_progress):not(.order-prepaired):not(.order-delivered):not(.order-packaging) .zoomed-time-badge span {
  color: var(--an-text) !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar:not(.order-queued):not(.order-accepted):not(.order-in_progress):not(.order-prepaired):not(.order-delivered):not(.order-packaging) .urgentFlag-zoomed {
  color: var(--an-text) !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar:not(.order-queued):not(.order-accepted):not(.order-in_progress):not(.order-prepaired):not(.order-delivered):not(.order-packaging) .zoomed-close-btn {
  color: var(--an-text) !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar:not(.order-queued):not(.order-accepted):not(.order-in_progress):not(.order-prepaired):not(.order-delivered):not(.order-packaging) .zoomed-close-btn md-icon {
  color: var(--an-text) !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar:not(.order-queued):not(.order-accepted):not(.order-in_progress):not(.order-prepaired):not(.order-delivered):not(.order-packaging) .zoomed-close-btn:hover {
  background-color: var(--an-bg-hover) !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar:not(.order-queued):not(.order-accepted):not(.order-in_progress):not(.order-prepaired):not(.order-delivered):not(.order-packaging) md-icon {
  color: var(--an-text) !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar .md-toolbar-tools.zoomed-header-tools {
  padding: 0 !important;
  height: auto !important;
  max-height: none !important;
  width: 100%;
}
md-dialog.zoomed-ticket-dialog md-toolbar .zoomed-header-left {
  gap: 2px;
}
md-dialog.zoomed-ticket-dialog md-toolbar .zoomed-station-name {
  font-size: 14px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.85);
  line-height: 1.2;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
md-dialog.zoomed-ticket-dialog md-toolbar .zoomed-order-number {
  font-size: 28px;
  font-weight: 900;
  color: #ffffff;
  line-height: 1.1;
  letter-spacing: -0.5px;
  margin: 2px 0;
}
md-dialog.zoomed-ticket-dialog md-toolbar .zoomed-layout-name {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.75);
  line-height: 1.2;
}
md-dialog.zoomed-ticket-dialog md-toolbar .zoomed-order-source {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 4px;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.9);
}
md-dialog.zoomed-ticket-dialog md-toolbar .zoomed-order-source img {
  height: 20px;
  min-width: 20px;
  max-width: 60px;
  padding: 2px;
  border-radius: var(--an-radius-xs);
  background: rgba(255, 255, 255, 0.92);
  object-fit: contain;
  box-sizing: border-box;
}
md-dialog.zoomed-ticket-dialog md-toolbar .zoomed-order-source .zoomed-order-source-glyph {
  width: 20px;
  height: 20px;
  min-width: 0;
  min-height: 0;
  font-size: 20px;
  color: rgba(255, 255, 255, 0.9);
}
md-dialog.zoomed-ticket-dialog md-toolbar .zoomed-customer-name {
  font-size: 17px;
  color: #ffffff;
  line-height: 1.2;
  text-align: right;
}
md-dialog.zoomed-ticket-dialog md-toolbar .zoomed-time-row {
  margin-top: 4px;
  align-items: center;
  display: flex;
  gap: 8px;
}
md-dialog.zoomed-ticket-dialog md-toolbar .zoomed-pickup-time {
  font-size: 15px;
  color: #ffffff;
}
md-dialog.zoomed-ticket-dialog md-toolbar .zoomed-time-badge {
  background: rgba(255, 255, 255, 0.2);
  color: #ffffff;
  padding: 4px 10px;
  border-radius: 20px;
  font-size: 14px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
}
md-dialog.zoomed-ticket-dialog md-toolbar .zoomed-time-badge span {
  font-size: 11px;
  font-weight: 600;
  margin-left: 2px;
  opacity: 0.8;
}
md-dialog.zoomed-ticket-dialog md-toolbar .urgentFlag-zoomed {
  font-size: 24px !important;
  width: 24px !important;
  height: 24px !important;
  color: #ffffff !important;
  margin: 0 !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar .zoomed-close-btn {
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
  margin-left: 16px !important;
  width: 40px !important;
  height: 40px !important;
  border-radius: 50% !important;
  transition: background-color 0.2s ease !important;
}
md-dialog.zoomed-ticket-dialog md-toolbar .zoomed-close-btn md-icon {
  font-size: 24px !important;
  width: 24px !important;
  height: 24px !important;
}
md-dialog.zoomed-ticket-dialog md-dialog-content.zoomed-dialog-content {
  padding: 24px !important;
  flex: 1;
  overflow-y: auto;
  background-color: var(--an-surface) !important;
}
md-dialog.zoomed-ticket-dialog md-dialog-content.zoomed-dialog-content .zoomed-item-row {
  border-bottom: 1px solid var(--an-border);
  padding: 20px 0;
}
md-dialog.zoomed-ticket-dialog md-dialog-content.zoomed-dialog-content .zoomed-item-row:last-child {
  border-bottom: none;
}
md-dialog.zoomed-ticket-dialog md-dialog-content.zoomed-dialog-content .zoomed-item-row.canceled .item-name {
  text-decoration: line-through;
  opacity: 0.5;
}
md-dialog.zoomed-ticket-dialog md-dialog-content.zoomed-dialog-content .zoomed-item-row.canceled .item-variation {
  opacity: 0.5;
}
md-dialog.zoomed-ticket-dialog md-dialog-content.zoomed-dialog-content .zoomed-item-layout {
  gap: 16px;
}
md-dialog.zoomed-ticket-dialog md-dialog-content.zoomed-dialog-content .zoomed-item-btn {
  width: 44px !important;
  height: 44px !important;
  margin: 0 !important;
  min-height: 44px !important;
  border-radius: 50% !important;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15) !important;
}
md-dialog.zoomed-ticket-dialog md-dialog-content.zoomed-dialog-content .zoomed-item-btn md-icon {
  font-size: 22px !important;
  width: 22px !important;
  height: 22px !important;
  color: #ffffff !important;
}
md-dialog.zoomed-ticket-dialog md-dialog-content.zoomed-dialog-content .zoomed-item-qty-container {
  width: 48px;
  min-width: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: center;
}
md-dialog.zoomed-ticket-dialog md-dialog-content.zoomed-dialog-content .zoomed-item-qty-container .zoomed-item-qty {
  font-size: 24px !important;
  font-weight: 800 !important;
  color: var(--an-text) !important;
}
md-dialog.zoomed-ticket-dialog md-dialog-content.zoomed-dialog-content .zoomed-item-qty-container .zoomed-item-qty.zoomed-item-qty--sub {
  font-size: 20px !important;
  font-weight: 600 !important;
  color: var(--an-text-muted) !important;
}
md-dialog.zoomed-ticket-dialog md-dialog-content.zoomed-dialog-content .zoomed-product-image-container {
  width: 96px;
  height: 96px;
  min-width: 96px;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid var(--an-border);
  background: var(--an-surface2);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}
md-dialog.zoomed-ticket-dialog md-dialog-content.zoomed-dialog-content .zoomed-product-image-container .zoomed-product-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
md-dialog.zoomed-ticket-dialog md-dialog-content.zoomed-dialog-content .zoomed-modifier-image {
  width: 48px;
  height: 48px;
  min-width: 48px;
  border-radius: 6px;
  overflow: hidden;
  border: 1px solid var(--an-border);
  background: var(--an-surface2);
  object-fit: cover;
  display: inline-block;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05);
}
md-dialog.zoomed-ticket-dialog md-dialog-content.zoomed-dialog-content .zoomed-item-details .zoomed-product-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--an-surface2);
  color: var(--an-text);
  border: 1px solid var(--an-border);
  font-weight: 800;
  font-size: 14px;
  padding: 2px 8px;
  border-radius: 6px;
  margin-right: 4px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
  vertical-align: middle;
}
md-dialog.zoomed-ticket-dialog md-dialog-content.zoomed-dialog-content .zoomed-item-details .item-name {
  font-size: 22px !important;
  font-weight: 700 !important;
  color: var(--an-text) !important;
  line-height: 1.3;
}
md-dialog.zoomed-ticket-dialog md-dialog-content.zoomed-dialog-content .zoomed-item-details .item-variation {
  margin-top: 8px;
  padding-left: 8px;
  font-size: 18px !important;
  font-weight: 500 !important;
  color: var(--an-text-muted) !important;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
md-dialog.zoomed-ticket-dialog md-dialog-content.zoomed-dialog-content .zoomed-item-details .item-variation div {
  display: flex;
  align-items: center;
  gap: 6px;
}
md-dialog.zoomed-ticket-dialog md-dialog-content.zoomed-dialog-content .zoomed-item-details .item-variation md-icon {
  font-size: 18px !important;
  width: 18px !important;
  height: 18px !important;
  color: var(--an-text-muted) !important;
  margin: 0 !important;
}
md-dialog.zoomed-ticket-dialog md-dialog-content.zoomed-dialog-content .zoomed-item-details .item-note {
  margin-top: 8px;
  padding: 8px 12px;
  background: var(--an-surface2);
  border-left: 3px solid var(--an-accent);
  border-radius: 0 6px 6px 0;
  font-size: 17px !important;
  font-style: italic;
  color: var(--an-text);
  display: flex;
  align-items: center;
  gap: 8px;
}
md-dialog.zoomed-ticket-dialog md-dialog-content.zoomed-dialog-content .zoomed-item-details .item-note md-icon {
  font-size: 17px !important;
  width: 17px !important;
  height: 17px !important;
  color: var(--an-text-muted) !important;
}
md-dialog.zoomed-ticket-dialog md-dialog-content.zoomed-dialog-content .zoomed-ticket-note {
  margin-top: 24px;
  padding: 14px 18px;
  background: rgba(var(--an-accent-rgb), 0.08);
  border-radius: var(--an-radius-sm);
  font-size: 18px !important;
  color: var(--an-text);
  border: 1px solid var(--an-border);
}
md-dialog.zoomed-ticket-dialog .zoomed-details-loading {
  padding: 16px;
  color: var(--an-text-muted);
  font-size: 15px;
  font-weight: 500;
}
md-dialog.zoomed-ticket-dialog .zoomed-order-info-card {
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  padding: 16px;
  margin-bottom: 24px;
  box-shadow: var(--an-shadow-sm);
}
md-dialog.zoomed-ticket-dialog .zoomed-order-info-card .info-section-title {
  font-size: 14px;
  font-weight: 800;
  color: var(--an-text);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 12px;
  border-bottom: 1px solid var(--an-border);
  padding-bottom: 8px;
}
md-dialog.zoomed-ticket-dialog .zoomed-order-info-card .info-grid {
  margin: 0 -8px;
}
md-dialog.zoomed-ticket-dialog .zoomed-order-info-card .info-item {
  padding: 8px;
  box-sizing: border-box;
}
md-dialog.zoomed-ticket-dialog .zoomed-order-info-card .info-item .info-label {
  font-size: 11px;
  font-weight: 700;
  color: var(--an-text-muted);
  text-transform: uppercase;
  margin-bottom: 4px;
}
md-dialog.zoomed-ticket-dialog .zoomed-order-info-card .info-item .info-value {
  font-size: 14px;
  color: var(--an-text);
  line-height: 1.4;
}
md-dialog.zoomed-ticket-dialog .zoomed-order-info-card .info-item .info-value strong {
  font-weight: 700;
}
md-dialog.zoomed-ticket-dialog .zoomed-order-info-card .info-item .info-value .info-sub-item {
  font-size: 13px;
  color: var(--an-text-muted);
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 2px;
}
md-dialog.zoomed-ticket-dialog .zoomed-order-info-card .info-item .info-value .info-sub-item md-icon {
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  margin: 0 !important;
  color: var(--an-text-muted) !important;
}
md-dialog.zoomed-ticket-dialog .zoomed-order-info-card .info-item .info-value .order-total-amount {
  font-size: 16px;
  font-weight: 800;
  color: var(--an-accent);
}
md-dialog.zoomed-ticket-dialog .zoomed-order-info-card .info-item .info-value .payment-status {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 4px;
}
md-dialog.zoomed-ticket-dialog .zoomed-order-info-card .info-item .info-value .payment-status .badge {
  font-size: 10px;
  font-weight: 700;
  padding: 2px 6px;
  border-radius: 4px;
  text-transform: uppercase;
}
md-dialog.zoomed-ticket-dialog .zoomed-order-info-card .info-item .info-value .payment-status .badge--success {
  background: rgba(51, 170, 102, 0.15);
  color: #33aa66;
}
md-dialog.zoomed-ticket-dialog .zoomed-order-info-card .info-item .info-value .payment-status .badge--warning {
  background: rgba(230, 127, 0, 0.15);
  color: #e67f00;
}
md-dialog.zoomed-ticket-dialog .zoomed-order-info-card .info-item .info-value .payment-status .payment-method-lbl {
  font-size: 12px;
  color: var(--an-text-muted);
}
md-dialog.zoomed-ticket-dialog .zoomed-ticket-actions {
  padding: 12px 16px !important;
  border-top: 1px solid var(--an-border);
  background: var(--an-surface2) !important;
  min-height: 60px;
  flex-wrap: nowrap !important;
}
md-dialog.zoomed-ticket-dialog .zoomed-ticket-actions .zoomed-back-btn {
  background: var(--an-surface) !important;
  color: var(--an-text) !important;
  border: 1px solid var(--an-border) !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  text-transform: none !important;
  padding: 6px 12px !important;
  border-radius: var(--an-radius-sm) !important;
  min-height: 36px;
  margin: 0 !important;
  white-space: nowrap;
}
md-dialog.zoomed-ticket-dialog .zoomed-ticket-actions .zoomed-print-btn,
md-dialog.zoomed-ticket-dialog .zoomed-ticket-actions .zoomed-action-btn {
  font-weight: 700 !important;
  font-size: 13px !important;
  text-transform: none !important;
  padding: 6px 12px !important;
  border-radius: var(--an-radius-sm) !important;
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  white-space: nowrap;
}
md-dialog.zoomed-ticket-dialog .zoomed-ticket-actions .zoomed-print-btn md-icon,
md-dialog.zoomed-ticket-dialog .zoomed-ticket-actions .zoomed-action-btn md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
}
md-dialog.zoomed-ticket-dialog .zoomed-ticket-actions .zoomed-priority-container {
  display: inline-flex;
  align-items: center;
  margin: 0;
}
md-dialog.zoomed-ticket-dialog .zoomed-ticket-actions .zoomed-priority-container .zoomed-priority-label {
  font-size: 12px;
  font-weight: 700;
  color: var(--an-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-left: 4px;
  /* Match standard button margins */
}
md-dialog.zoomed-ticket-dialog .zoomed-ticket-actions .zoomed-priority-stepper {
  display: flex;
  align-items: stretch;
  background: var(--an-surface);
  border-radius: var(--an-radius-sm);
  height: 36px;
  margin: 0 8px;
  /* Match standard button margins */
  box-shadow: 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12);
  /* Match md-raised shadow */
  overflow: hidden;
}
md-dialog.zoomed-ticket-dialog .zoomed-ticket-actions .zoomed-priority-stepper .stepper-btn {
  min-width: 36px !important;
  width: 36px !important;
  height: 36px !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent !important;
  /* Inherit cohesive background */
  box-shadow: none !important;
  border: none !important;
}
md-dialog.zoomed-ticket-dialog .zoomed-ticket-actions .zoomed-priority-stepper .stepper-btn md-icon {
  color: var(--an-text-muted);
  font-size: 16px !important;
  margin: 0 !important;
}
md-dialog.zoomed-ticket-dialog .zoomed-ticket-actions .zoomed-priority-stepper .stepper-btn:hover:not([disabled]) {
  background: var(--an-bg-hover) !important;
}
md-dialog.zoomed-ticket-dialog .zoomed-ticket-actions .zoomed-priority-stepper .stepper-btn:hover:not([disabled]) md-icon {
  color: var(--an-text);
}
md-dialog.zoomed-ticket-dialog .zoomed-ticket-actions .zoomed-priority-stepper .stepper-btn[disabled] {
  opacity: 0.3;
  cursor: not-allowed;
}
md-dialog.zoomed-ticket-dialog .zoomed-ticket-actions .zoomed-priority-stepper .stepper-btn-decrease {
  border-right: 1px solid var(--an-border) !important;
}
md-dialog.zoomed-ticket-dialog .zoomed-ticket-actions .zoomed-priority-stepper .stepper-btn-increase {
  border-left: 1px solid var(--an-border) !important;
}
md-dialog.zoomed-ticket-dialog .zoomed-ticket-actions .zoomed-priority-stepper .stepper-value {
  padding: 0 10px;
  font-weight: 800;
  font-size: 14px;
  color: var(--an-text);
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 30px;
  background: transparent;
}

.wf-segmented-control {
  display: flex;
  background: var(--an-bg-subtle, rgba(0, 0, 0, 0.035));
  border-radius: var(--an-radius-sm, 8px);
  padding: 4px;
  gap: 4px;
  width: 100%;
  box-sizing: border-box;
  margin: 8px 0 16px;
}
.waitry-dark-theme .wf-segmented-control {
  background: rgba(255, 255, 255, 0.05);
}
.wf-segmented-control .wf-segment {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 14px;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text-muted);
  cursor: pointer;
  transition: all 0.2s ease;
  user-select: none;
}
.waitry-dark-theme .wf-segmented-control .wf-segment {
  color: rgba(255, 255, 255, 0.5) !important;
}
.wf-segmented-control .wf-segment md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  color: inherit !important;
  margin: 0 !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
}
.wf-segmented-control .wf-segment:hover {
  background: rgba(0, 0, 0, 0.02);
  color: var(--an-text);
}
.waitry-dark-theme .wf-segmented-control .wf-segment:hover {
  background: rgba(255, 255, 255, 0.03);
  color: rgba(255, 255, 255, 0.85);
}
.wf-segmented-control .wf-segment.active {
  background: var(--an-surface) !important;
  color: var(--an-primary, #ec4e36) !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1), 0 4px 6px rgba(0, 0, 0, 0.05);
}
.waitry-dark-theme .wf-segmented-control .wf-segment.active {
  background: rgba(255, 255, 255, 0.08) !important;
  color: #ff6b57 !important;
  box-shadow: 0 4px 12 rgba(0, 0, 0, 0.25);
}

.wf-status-table {
  width: 100%;
  border-collapse: collapse;
  margin: 16px 0;
  font-family: var(--font-sans);
}
.wf-status-table thead th {
  text-align: left;
  padding: 10px 12px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--an-text-muted);
  border-bottom: 1px solid var(--an-border);
  letter-spacing: 0.5px;
}
.wf-status-table thead th.text-center {
  text-align: center !important;
}
.waitry-dark-theme .wf-status-table thead th {
  color: rgba(255, 255, 255, 0.6) !important;
  border-bottom-color: rgba(255, 255, 255, 0.1) !important;
}
.wf-status-table tbody tr {
  border-bottom: 1px solid rgba(0, 0, 0, 0.04);
  transition: background 0.15s ease;
}
.waitry-dark-theme .wf-status-table tbody tr {
  border-bottom-color: rgba(255, 255, 255, 0.05);
}
.wf-status-table tbody tr:hover {
  background: rgba(0, 0, 0, 0.01);
}
.waitry-dark-theme .wf-status-table tbody tr:hover {
  background: rgba(255, 255, 255, 0.01);
}
.wf-status-table tbody tr td {
  padding: 8px 12px;
  vertical-align: middle;
}
.wf-status-table tbody tr td.text-center {
  text-align: center !important;
}
.wf-status-table tbody tr td.text-center md-checkbox {
  display: inline-flex !important;
  vertical-align: middle !important;
  justify-content: center;
  align-items: center;
  margin: 0 !important;
}
.wf-status-table md-checkbox {
  margin: 0 !important;
}
.wf-status-table .status-cell {
  display: flex;
  align-items: center;
  gap: 10px;
  height: 30px;
}
.wf-status-table .status-cell .status-indicator {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  display: inline-block;
  flex-shrink: 0;
}
.wf-status-table .status-cell .status-indicator.order-queued {
  background: rgb(230, 183, 30);
}
.wf-status-table .status-cell .status-indicator.order-accepted {
  background: #0fa3f8;
}
.wf-status-table .status-cell .status-indicator.order-in_progress {
  background: #e67f00;
}
.wf-status-table .status-cell .status-indicator.order-prepaired {
  background: #33aa66;
}
.wf-status-table .status-cell .status-indicator.order-delivered {
  background: #b7cabf;
}
.wf-status-table .status-cell .status-indicator.order-packaging {
  background: #b09d7d;
}
.wf-status-table md-input-container.no-margin {
  margin: 0 !important;
}
.wf-status-table md-input-container.no-margin .md-errors-spacer {
  display: none !important;
}
.wf-status-table md-input-container.no-margin input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]):not(.md-datepicker-input),
.wf-status-table md-input-container.no-margin input.md-input:not(.md-datepicker-input) {
  padding: 4px 8px !important;
  height: 30px !important;
  border-radius: 4px !important;
  border: 1px solid var(--an-border) !important;
  background: var(--an-surface) !important;
  font-size: 12px !important;
  color: var(--an-text) !important;
  box-sizing: border-box !important;
}
.wf-status-table md-input-container.no-margin input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]):not(.md-datepicker-input):focus,
.wf-status-table md-input-container.no-margin input.md-input:not(.md-datepicker-input):focus {
  border-color: var(--an-primary) !important;
}

.wf-layout-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 16px;
  border-radius: var(--an-radius-sm, 8px);
  border: 1px solid var(--an-border);
  background: var(--an-bg, rgba(0, 0, 0, 0.01));
  margin-bottom: 8px;
  transition: all 0.15s ease;
}
.waitry-dark-theme .wf-layout-card {
  border-color: rgba(255, 255, 255, 0.07);
  background: rgba(255, 255, 255, 0.01);
}
.wf-layout-card:hover {
  border-color: var(--an-border-hover);
  background: var(--an-surface);
}
.wf-layout-card md-checkbox {
  margin: 0 !important;
}
.wf-layout-card .layout-picker-wrapper {
  display: flex;
  gap: 12px;
  align-items: center;
}
.wf-layout-card .layout-picker-wrapper md-color-picker {
  margin: 0 !important;
}
.wf-layout-card .layout-picker-wrapper md-color-picker .md-color-picker-input-container {
  min-height: auto;
  padding: 0;
  border: none;
}
.wf-layout-card .layout-picker-wrapper md-color-picker .md-color-picker-input-container input {
  display: none;
}

.wf-active-item {
  background: var(--an-primary-soft, rgba(236, 78, 54, 0.06)) !important;
  border-left: 4px solid var(--an-primary, #ec4e36) !important;
  font-weight: 700 !important;
}
.wf-active-item p {
  color: var(--an-primary, #ec4e36) !important;
  font-weight: 700 !important;
}

div[masonry].kds-density-compact {
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)) !important;
}
div[masonry].kds-density-medium {
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)) !important;
}
div[masonry].kds-density-large {
  grid-template-columns: repeat(auto-fill, minmax(360px, 1fr)) !important;
}

.kds-horizontal-container.kds-density-compact .kitchen-order {
  flex: 0 0 220px !important;
  width: 220px !important;
}
.kds-horizontal-container.kds-density-medium .kitchen-order {
  flex: 0 0 270px !important;
  width: 270px !important;
}
.kds-horizontal-container.kds-density-large .kitchen-order {
  flex: 0 0 340px !important;
  width: 340px !important;
}

.kitchen-order.kds-density-compact md-card-header {
  padding: 8px 10px 6px !important;
}
.kitchen-order.kds-density-compact md-card-header .kds-station-name {
  font-size: 11px;
}
.kitchen-order.kds-density-compact md-card-header .kds-order-number {
  font-size: 16px;
  margin: 0 0 2px;
}
.kitchen-order.kds-density-compact md-card-header .kds-customer-name,
.kitchen-order.kds-density-compact md-card-header .kds-pickup-time {
  font-size: 10px;
}
.kitchen-order.kds-density-compact md-card-header .kds-layout-name {
  font-size: 9px;
}
.kitchen-order.kds-density-compact md-card-header .kds-order-source {
  min-width: 18px;
  max-width: 46px;
  height: 18px;
  border-radius: var(--an-radius-xs);
}
.kitchen-order.kds-density-compact md-card-header .kds-order-source img {
  height: 14px;
  max-width: 40px;
}
.kitchen-order.kds-density-compact md-card-header .kds-order-source-glyph {
  font-size: 14px;
  width: 14px;
  height: 14px;
}
.kitchen-order.kds-density-compact md-card-header .kds-time-badge {
  font-size: 11px;
  padding: 1px 4px;
}
.kitchen-order.kds-density-compact md-card-header .kds-extend-icon {
  font-size: 12px;
  width: 12px;
  height: 12px;
  min-width: 12px;
  min-height: 12px;
}
.kitchen-order.kds-density-compact md-card-content {
  padding: 6px 10px 10px !important;
}
.kitchen-order.kds-density-compact md-card-content .item-name {
  font-size: 13px;
  line-height: 1.35;
  gap: 4px;
}
.kitchen-order.kds-density-compact md-card-content .item-variation {
  font-size: 11px;
  margin-top: 2px;
}
.kitchen-order.kds-density-compact md-card-content .item-variation div {
  margin-top: 2px !important;
}
.kitchen-order.kds-density-compact md-card-content .item-note {
  font-size: 11px;
  margin-top: 2px;
}
.kitchen-order.kds-density-compact md-card-content .ticket-note {
  font-size: 11px;
  margin-top: 4px;
}
.kitchen-order.kds-density-compact md-card-actions {
  padding: 4px 8px !important;
  min-height: 38px;
}
.kitchen-order.kds-density-compact md-card-actions .kds-action-fab {
  width: 32px !important;
  height: 32px !important;
  min-height: 32px !important;
  margin: 0 !important;
}
.kitchen-order.kds-density-compact md-card-actions .kds-action-fab md-icon {
  font-size: 18px !important;
}
.kitchen-order.kds-density-compact md-card-actions .kds-menu-btn {
  width: 32px !important;
  height: 32px !important;
  margin: 0 !important;
}
.kitchen-order.kds-density-large md-card-header {
  padding: 16px 18px 12px !important;
}
.kitchen-order.kds-density-large md-card-header .kds-station-name {
  font-size: 16px;
}
.kitchen-order.kds-density-large md-card-header .kds-order-number {
  font-size: 26px;
  margin: 4px 0 6px;
}
.kitchen-order.kds-density-large md-card-header .kds-customer-name,
.kitchen-order.kds-density-large md-card-header .kds-pickup-time {
  font-size: 14px;
}
.kitchen-order.kds-density-large md-card-header .kds-layout-name {
  font-size: 13px;
}
.kitchen-order.kds-density-large md-card-header .kds-order-source {
  min-width: 26px;
  max-width: 66px;
  height: 26px;
  border-radius: var(--an-radius-sm);
}
.kitchen-order.kds-density-large md-card-header .kds-order-source img {
  height: 22px;
  max-width: 60px;
}
.kitchen-order.kds-density-large md-card-header .kds-order-source-glyph {
  font-size: 22px;
  width: 22px;
  height: 22px;
}
.kitchen-order.kds-density-large md-card-header .kds-time-badge {
  font-size: 16px;
  padding: 3px 8px;
}
.kitchen-order.kds-density-large md-card-header .kds-extend-icon {
  font-size: 18px;
  width: 18px;
  height: 18px;
  min-width: 18px;
  min-height: 18px;
}
.kitchen-order.kds-density-large md-card-content {
  padding: 14px 18px 18px !important;
}
.kitchen-order.kds-density-large md-card-content .item-name {
  font-size: 18px;
  line-height: 1.5;
  gap: 8px;
}
.kitchen-order.kds-density-large md-card-content .item-variation {
  font-size: 14px;
  margin-top: 6px;
}
.kitchen-order.kds-density-large md-card-content .item-variation div {
  margin-top: 6px !important;
}
.kitchen-order.kds-density-large md-card-content .item-note {
  font-size: 14px;
  margin-top: 6px;
}
.kitchen-order.kds-density-large md-card-content .ticket-note {
  font-size: 14px;
  margin-top: 8px;
}
.kitchen-order.kds-density-large md-card-actions {
  padding: 12px 16px !important;
  min-height: 52px;
}
.kitchen-order.kds-density-large md-card-actions .kds-action-fab {
  width: 44px !important;
  height: 44px !important;
  min-height: 44px !important;
  margin: 0 !important;
}
.kitchen-order.kds-density-large md-card-actions .kds-action-fab md-icon {
  font-size: 24px !important;
}
.kitchen-order.kds-density-large md-card-actions .kds-menu-btn {
  width: 44px !important;
  height: 44px !important;
  margin: 0 !important;
}

.kds-spinning {
  animation: spin 0.8s infinite linear !important;
}

.wf-form-body .no-margin {
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  border-bottom: none !important;
  padding-bottom: 0 !important;
}
.wf-form-body .no-margin::after, .wf-form-body .no-margin::before {
  display: none !important;
}
.wf-form-body .no-margin label {
  position: static !important;
  order: -1;
  font-size: 11px !important;
  font-weight: 700 !important;
  color: var(--an-text-muted) !important;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 6px !important;
  transform: none !important;
  transition: none !important;
  width: auto !important;
  white-space: normal !important;
  line-height: 1.4 !important;
}
.wf-form-body .no-margin .md-errors-spacer {
  display: none !important;
}
.wf-form-body .no-margin .md-input {
  border-bottom: none !important;
}
.wf-form-body .no-margin input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]):not(.md-datepicker-input),
.wf-form-body .no-margin input.md-input:not(.md-datepicker-input) {
  padding: 6px 10px !important;
  height: 36px !important;
  border-radius: var(--an-radius-sm, 6px) !important;
  border: 1px solid var(--an-border) !important;
  background: var(--an-surface) !important;
  font-size: 13px !important;
  color: var(--an-text) !important;
  box-sizing: border-box !important;
  width: 100% !important;
}
.wf-form-body .no-margin input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]):not(.md-datepicker-input):focus,
.wf-form-body .no-margin input.md-input:not(.md-datepicker-input):focus {
  border-color: var(--an-primary) !important;
}
.wf-form-body .no-margin input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]):not(.md-datepicker-input):disabled,
.wf-form-body .no-margin input.md-input:not(.md-datepicker-input):disabled {
  background: rgba(0, 0, 0, 0.025) !important;
  border-color: var(--an-border) !important;
  opacity: 0.6;
}
.wf-form-body .no-margin md-select {
  padding: 4px 10px !important;
  height: 36px !important;
  min-height: 36px !important;
  border-radius: var(--an-radius-sm, 6px) !important;
  border: 1px solid var(--an-border) !important;
  background: var(--an-surface) !important;
  font-size: 13px !important;
  color: var(--an-text) !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  width: 100% !important;
}
.wf-form-body .no-margin md-select .md-select-value {
  border: none !important;
  padding: 0 !important;
  min-width: 0 !important;
  min-height: auto !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  color: var(--an-text) !important;
}
.wf-form-body .no-margin md-select .md-select-value span {
  color: var(--an-text) !important;
}
.wf-form-body .no-margin md-select:focus {
  border-color: var(--an-primary) !important;
}
.wf-form-body .no-margin md-select:disabled {
  background: rgba(0, 0, 0, 0.025) !important;
  border-color: var(--an-border) !important;
  opacity: 0.6;
}
.wf-form-body .wf-form-header md-input-container.no-margin input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]):not(.md-datepicker-input),
.wf-form-body .wf-form-header md-input-container.no-margin input.md-input:not(.md-datepicker-input) {
  height: 40px !important;
  font-size: 14px !important;
}
.wf-form-body .md-icon-button {
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 50% !important;
  margin: 0 !important;
  width: 36px !important;
  height: 36px !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--an-text-muted) !important;
}
.wf-form-body .md-icon-button:hover {
  background-color: var(--an-bg-subtle, rgba(0, 0, 0, 0.05)) !important;
}
.wf-form-body .md-icon-button .iconoir-trash {
  color: var(--an-danger, #ef4444) !important;
}
.waitry-dark-theme .wf-form-body .no-margin label {
  color: rgba(255, 255, 255, 0.65) !important;
}
.waitry-dark-theme .wf-form-body .no-margin input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]):not(.md-datepicker-input),
.waitry-dark-theme .wf-form-body .no-margin input.md-input:not(.md-datepicker-input),
.waitry-dark-theme .wf-form-body .no-margin md-select {
  background: rgba(255, 255, 255, 0.03) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
  color: #ffffff !important;
}
.waitry-dark-theme .wf-form-body .no-margin input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]):not(.md-datepicker-input):focus,
.waitry-dark-theme .wf-form-body .no-margin input.md-input:not(.md-datepicker-input):focus,
.waitry-dark-theme .wf-form-body .no-margin md-select:focus {
  border-color: var(--an-primary, #ec4e36) !important;
}
.waitry-dark-theme .wf-form-body .no-margin input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]):not(.md-datepicker-input):disabled,
.waitry-dark-theme .wf-form-body .no-margin input.md-input:not(.md-datepicker-input):disabled,
.waitry-dark-theme .wf-form-body .no-margin md-select:disabled {
  background: rgba(255, 255, 255, 0.01) !important;
  color: rgba(255, 255, 255, 0.3) !important;
  border-color: rgba(255, 255, 255, 0.05) !important;
}

.zoomed-item-steps-icon {
  font-size: 20px !important;
  width: 20px !important;
  height: 20px !important;
  margin: 0 0 0 8px !important;
  color: var(--an-text-muted) !important;
  vertical-align: middle;
}
.zoomed-item-steps-icon:hover {
  color: var(--an-primary) !important;
}

md-dialog.item-steps-dialog {
  width: 560px !important;
  max-width: 92% !important;
  max-height: 85vh !important;
  border-radius: var(--an-radius) !important;
  box-shadow: 0 24px 48px rgba(0, 0, 0, 0.24) !important;
  overflow: hidden !important;
  background: var(--an-surface) !important;
  display: flex;
  flex-direction: column;
  font-family: var(--font-sans) !important;
}
md-dialog.item-steps-dialog .item-steps-toolbar {
  background: var(--an-surface2) !important;
  border-bottom: 1px solid var(--an-border);
}
md-dialog.item-steps-dialog .item-steps-toolbar h2 {
  font-size: 18px;
  font-weight: 700;
  color: var(--an-text);
  margin: 0;
}
md-dialog.item-steps-dialog .item-steps-content {
  padding: 20px 24px;
  background: var(--an-bg);
}
md-dialog.item-steps-dialog .item-steps-loading {
  display: flex;
  justify-content: center;
  padding: 40px 0;
}
md-dialog.item-steps-dialog .item-steps-empty {
  text-align: center;
  padding: 36px 20px;
  color: var(--an-text-faint);
}
md-dialog.item-steps-dialog .item-steps-empty md-icon {
  font-size: 32px;
}
md-dialog.item-steps-dialog .item-steps-empty p {
  margin-top: 10px;
  font-size: 13px;
}
md-dialog.item-steps-dialog .item-steps-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
md-dialog.item-steps-dialog .item-steps-row {
  display: flex;
  gap: 14px;
}
md-dialog.item-steps-dialog .item-steps-index {
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--an-primary-soft);
  color: var(--an-primary);
  font-size: 15px;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
}
md-dialog.item-steps-dialog .item-steps-body {
  flex: 1;
  min-width: 0;
}
md-dialog.item-steps-dialog .item-steps-text {
  margin: 0;
  font-size: 18px;
  line-height: 1.4;
  color: var(--an-text);
}
md-dialog.item-steps-dialog .item-steps-meta {
  margin-top: 8px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}
md-dialog.item-steps-dialog .item-steps-duration {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text-muted);
  background: var(--an-bg-subtle);
  padding: 4px 10px;
  border-radius: var(--an-radius-pill);
}
md-dialog.item-steps-dialog .item-steps-duration md-icon {
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  margin: 0 !important;
  color: inherit;
}
md-dialog.item-steps-dialog .item-steps-image {
  max-height: 120px;
  width: auto;
  border-radius: var(--an-radius-xs);
  border: 1px solid var(--an-border);
}

#fullscreen-content {
  position: relative;
}

#fullscreen-content.tvo-configuring {
  padding-right: 440px;
  transition: padding-right 0.2s ease;
}
@media (max-width: 900px) {
  #fullscreen-content.tvo-configuring {
    padding-right: 0;
    opacity: 0.25;
    pointer-events: none;
  }
}

#fullscreen-content h1, #fullscreen-content h2, #fullscreen-content h3, #fullscreen-content h4, #fullscreen-content h5, #fullscreen-content h6 {
  color: inherit;
  font-size: inherit;
  letter-spacing: normal;
}
#fullscreen-content .md-caption {
  color: inherit !important;
  opacity: 0.7;
}

.tvo-demo-badge {
  align-self: center;
  margin: 10px 0 -6px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 12px;
  border-radius: var(--an-radius-pill);
  background: rgba(17, 24, 39, 0.82);
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.3px;
  box-shadow: var(--an-shadow-md);
  pointer-events: none;
}
.tvo-demo-badge md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  min-width: 15px;
  min-height: 15px;
  color: #fff !important;
}

md-dialog.tvc-dialog {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: auto;
  width: 440px;
  max-width: 100vw;
  height: 100%;
  max-height: 100%;
  margin: 0;
  border-radius: 0;
  display: flex;
  flex-direction: column;
  background: var(--an-surface);
  box-shadow: -8px 0 40px rgba(0, 0, 0, 0.14), -2px 0 8px rgba(0, 0, 0, 0.06);
}
@media (max-width: 900px) {
  md-dialog.tvc-dialog {
    width: 100%;
  }
}

.tvc-head {
  order: 0;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 18px 20px 14px;
  border-bottom: 1px solid var(--an-border);
  flex: 0 0 auto;
}
.tvc-head__text {
  flex: 1;
  min-width: 0;
}
.tvc-head__title {
  margin: 0;
  font-size: 17px;
  font-weight: 700;
  color: var(--an-text);
  line-height: 1.2;
}
.tvc-head__sub {
  margin: 4px 0 0;
  font-size: 12px;
  line-height: 1.45;
  color: var(--an-text-muted);
}
.tvc-head__close.md-button.md-icon-button {
  margin: -4px -6px 0 0;
  color: var(--an-text-muted);
}
.tvc-head__close.md-button.md-icon-button md-icon {
  color: var(--an-text-muted) !important;
}
.tvc-head__close.md-button.md-icon-button:hover {
  background: var(--an-bg-subtle) !important;
}

md-dialog.tvc-dialog .tvc-body.md-dialog-content {
  order: 1;
  flex: 1 1 auto;
  min-height: 0;
  padding: 4px 20px 20px;
  overflow-y: auto;
  overflow-x: hidden;
}

.tvc-section {
  padding: 18px 0;
  border-bottom: 1px solid var(--an-border-light);
}
.tvc-section--last, .tvc-section:last-child {
  border-bottom: 0;
}
.tvc-section .wf-section-header {
  margin-bottom: 14px;
}

.tvc-presets {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(112px, 1fr));
  gap: 10px;
}

.tvc-preset {
  appearance: none;
  border: 1px solid var(--an-border);
  background: var(--an-surface);
  border-radius: 12px;
  padding: 8px 8px 7px;
  cursor: pointer;
  text-align: left;
  transition: border-color 0.15s, box-shadow 0.15s, transform 0.15s;
}
.tvc-preset:hover {
  border-color: var(--an-border-hover);
  transform: translateY(-1px);
  box-shadow: var(--an-shadow-sm);
}
.tvc-preset--active {
  border-color: var(--an-primary);
  box-shadow: 0 0 0 2px var(--an-primary-soft);
}
.tvc-preset__art {
  display: block;
  height: 44px;
  border-radius: 7px;
  border: 1px solid var(--an-border-light);
  overflow: hidden;
  position: relative;
}
.tvc-preset__bar {
  display: block;
  height: 13px;
  width: 100%;
}
.tvc-preset__chips {
  display: flex;
  gap: 4px;
  padding: 6px;
}
.tvc-preset__chips span {
  display: block;
  flex: 1;
  height: 13px;
  border-radius: 3px;
}
.tvc-preset__name {
  display: block;
  margin-top: 6px;
  font-size: 11px;
  font-weight: 600;
  color: var(--an-text);
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.tvc-colors {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
@media (max-width: 480px) {
  .tvc-colors {
    grid-template-columns: 1fr;
  }
}

.tvc-color {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 10px;
  border: 1px solid var(--an-border);
  border-radius: 10px;
  background: var(--an-bg-subtle);
  min-width: 0;
  transition: border-color 0.15s;
}
.tvc-color:hover {
  border-color: var(--an-border-hover);
}
.tvc-color__swatch {
  position: relative;
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  border-radius: 8px;
  cursor: pointer;
  overflow: hidden;
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.25), 0 0 0 1px var(--an-border-strong);
  transition: transform 0.15s;
}
.tvc-color__swatch:hover {
  transform: scale(1.06);
}
.tvc-color__swatch input[type=color] {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  border: 0;
  padding: 0;
  cursor: pointer;
}
.tvc-color__meta {
  flex: 1;
  min-width: 0;
}
.tvc-color__name {
  display: block;
  font-size: 11px;
  font-weight: 600;
  color: var(--an-text-muted);
  line-height: 1.25;
}
.tvc-color__hex {
  width: 100%;
  border: 0;
  background: transparent;
  padding: 1px 0 0;
  font-family: var(--font-mono, ui-monospace, monospace);
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text);
  text-transform: uppercase;
  outline: none;
}
.tvc-color__hex:focus {
  color: var(--an-primary);
}

.tvc-colbar,
.tvc-msgbar {
  border-radius: 10px;
  padding: 12px 16px;
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 12px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.tvc-msgbar {
  font-size: 14px;
  font-weight: 500;
  text-align: center;
}

.tvc-warn {
  display: flex;
  align-items: flex-start;
  gap: 7px;
  margin-top: 10px;
  padding: 8px 11px;
  border-radius: 9px;
  background: var(--an-amber-soft);
  border: 1px solid rgba(245, 158, 11, 0.28);
  font-size: 11.5px;
  line-height: 1.45;
  color: var(--an-text);
}
.tvc-warn md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  min-width: 15px;
  min-height: 15px;
  color: var(--an-amber) !important;
  margin: 1px 0 0;
}

.tvc-slider {
  margin-top: 14px;
}
.tvc-slider__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
}
.tvc-slider__label {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
}
.tvc-slider__value {
  font-family: var(--font-mono, ui-monospace, monospace);
  font-size: 12px;
  font-weight: 700;
  color: var(--an-primary);
  background: var(--an-primary-soft);
  border-radius: var(--an-radius-pill);
  padding: 2px 9px;
}
.tvc-slider__scale {
  display: flex;
  justify-content: space-between;
  font-size: 10.5px;
  color: var(--an-text-faint);
  margin-top: -6px;
}
.tvc-slider md-slider {
  margin: 2px 0 0;
}

.tvc-subgroup {
  margin-top: 12px;
  padding-left: 12px;
  border-left: 2px solid var(--an-border);
}

.tvc-input.md-input-container {
  margin-bottom: 4px;
  width: 100%;
}

.tvc-foot {
  order: 2;
  display: flex;
  align-items: center;
  gap: 4px;
  flex: 0 0 auto;
  padding: 12px 16px;
  border-top: 1px solid var(--an-border);
  background: var(--an-surface);
}
.tvc-foot__reset.md-button {
  margin: 0;
  text-transform: none;
  font-size: 12.5px;
  font-weight: 600;
  color: var(--an-text-muted);
}
.tvc-foot__reset.md-button md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  min-width: 16px;
  min-height: 16px;
  color: var(--an-text-muted) !important;
}
.tvc-foot__reset.md-button:hover {
  background: var(--an-bg-subtle) !important;
}

.tvc-head__which {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 6px 0 0;
  padding: 3px 10px;
  border-radius: var(--an-radius-pill);
  background: var(--an-bg-active);
  color: var(--an-text);
  font-size: 12.5px;
  font-weight: 600;
}
.tvc-head__which md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  min-width: 14px;
  min-height: 14px;
  color: var(--an-rose) !important;
}

.tvc-foot__delete.md-icon-button,
.tvc-foot__delete.md-button {
  margin: 0;
  min-width: 36px;
  color: var(--an-rose);
}
.tvc-foot__delete.md-icon-button md-icon, .tvc-foot__delete.md-icon-button [class*=iconoir-],
.tvc-foot__delete.md-button md-icon,
.tvc-foot__delete.md-button [class*=iconoir-] {
  color: var(--an-rose) !important;
}

.tvc-foot md-progress-circular {
  display: inline-block;
}

.tvo-toolbar {
  gap: 8px;
}

.tvo-switcher {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  padding: 2px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
}
.tvo-switcher__btn.md-button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  min-height: 34px;
  height: 34px;
  padding: 0 10px;
  max-width: 280px;
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
  text-transform: none;
  font-size: 13.5px;
  font-weight: 600;
  color: var(--an-text);
}
.tvo-switcher__btn.md-button md-icon, .tvo-switcher__btn.md-button [class*=iconoir-] {
  font-size: 16px;
  color: var(--an-text-muted) !important;
}
.tvo-switcher__btn.md-button:hover:not([disabled]) {
  background: var(--an-bg-subtle) !important;
}
.tvo-switcher__btn.md-button[disabled] {
  color: var(--an-text);
  opacity: 1;
}
.tvo-switcher__name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.tvo-switcher__edit.md-icon-button {
  margin: 0;
  width: 34px;
  height: 34px;
  min-height: 34px;
  border-left: 1px solid var(--an-border);
  border-radius: 0 var(--an-radius-xs) var(--an-radius-xs) 0;
}
.tvo-switcher__edit.md-icon-button md-icon, .tvo-switcher__edit.md-icon-button [class*=iconoir-] {
  color: var(--an-text) !important;
}

.tvo-toolbar__fullscreen.md-icon-button {
  margin: 0;
}
.tvo-toolbar__fullscreen.md-icon-button md-icon, .tvo-toolbar__fullscreen.md-icon-button [class*=iconoir-] {
  color: var(--an-text-muted) !important;
}

md-menu-content.tvo-switcher-menu {
  min-width: 240px;
  max-height: 60vh;
}
md-menu-content.tvo-switcher-menu md-menu-item > .md-button {
  display: grid !important;
  grid-template-columns: 1fr auto;
  grid-template-rows: auto auto;
  column-gap: 12px;
  row-gap: 1px;
  padding: 7px 10px;
  line-height: 1.25;
}
md-menu-content.tvo-switcher-menu .tvo-switcher-menu__name {
  grid-column: 1;
  font-size: 13.5px;
  font-weight: 600;
  color: var(--an-text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
md-menu-content.tvo-switcher-menu .tvo-switcher-menu__meta {
  grid-column: 1;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 500;
  color: var(--an-text-muted);
}
md-menu-content.tvo-switcher-menu .tvo-switcher-menu__check {
  grid-column: 2;
  grid-row: 1/span 2;
  align-self: center;
  color: var(--an-rose) !important;
}
md-menu-content.tvo-switcher-menu .tvo-switcher-menu__item--active {
  background: var(--an-bg-active) !important;
}
md-menu-content.tvo-switcher-menu md-menu-item > .md-button.tvo-switcher-menu__new {
  display: flex !important;
  color: var(--an-rose);
  font-weight: 600;
}
md-menu-content.tvo-switcher-menu md-menu-item > .md-button.tvo-switcher-menu__new md-icon, md-menu-content.tvo-switcher-menu md-menu-item > .md-button.tvo-switcher-menu__new [class*=iconoir-] {
  color: var(--an-rose) !important;
}

.tvs-link {
  margin-top: 4px;
  padding: 14px 16px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  background: var(--an-surface2);
}
.tvs-link__create.md-button {
  margin: 8px 0 0;
  text-transform: none;
  font-weight: 600;
}
.tvs-link__row {
  display: flex;
  align-items: center;
  gap: 2px;
  margin-top: 6px;
}
.tvs-link__row .md-icon-button {
  margin: 0;
  flex: 0 0 auto;
}
.tvs-link__url {
  flex: 1 1 auto;
  min-width: 0;
  height: 34px;
  padding: 0 10px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
  color: var(--an-text);
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 12px;
}
.tvs-link md-progress-circular {
  display: inline-block;
}

.tvs-code + .tvs-link {
  margin-top: 12px;
}

md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools .live-layout-pills {
  overflow-x: auto !important;
  overflow-y: hidden !important;
  white-space: nowrap;
  align-items: center;
  align-self: center;
  min-height: 40px;
  padding: 0 4px;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools .live-layout-pills::-webkit-scrollbar {
  display: none;
}
md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools .live-layout-pills button.md-button.layout-pill {
  border-radius: 20px !important;
  text-transform: none !important;
  font-weight: 500 !important;
  font-size: 13px !important;
  margin: 0 3px !important;
  padding: 0 14px 0 10px !important;
  height: 34px !important;
  min-height: 34px !important;
  min-width: auto !important;
  line-height: 34px !important;
  display: inline-flex !important;
  align-items: center !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  background: var(--an-surface2) !important;
  color: var(--an-text) !important;
  border: 1px solid var(--an-border) !important;
  backdrop-filter: blur(4px) !important;
  flex-shrink: 0 !important;
  box-shadow: none !important;
}
md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools .live-layout-pills button.md-button.layout-pill md-icon {
  font-size: 18px !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  color: inherit !important;
  line-height: 18px !important;
}
md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools .live-layout-pills button.md-button.layout-pill span {
  font-size: 13px !important;
  letter-spacing: 0.01em !important;
}
md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools .live-layout-pills button.md-button.layout-pill:hover:not(.layout-pill--active) {
  background: var(--an-surface3) !important;
  color: var(--an-text) !important;
  border-color: var(--an-border-strong) !important;
}
md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools .live-layout-pills button.md-button.layout-pill span.layout-pill__count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  padding: 0 6px;
  border-radius: var(--an-radius-pill);
  background: var(--an-text);
  color: var(--an-bg) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 18px;
  letter-spacing: 0 !important;
  font-variant-numeric: tabular-nums;
}
md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools .live-layout-pills button.md-button.layout-pill.layout-pill--active {
  background: var(--an-text) !important;
  color: var(--an-bg) !important;
  border-color: var(--an-text) !important;
  font-weight: 600 !important;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.1) !important;
}
md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools .live-layout-pills button.md-button.layout-pill.layout-pill--active md-icon {
  color: var(--an-bg) !important;
}
md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools .live-layout-pills button.md-button.layout-pill.layout-pill--active span {
  font-weight: 600 !important;
  color: var(--an-bg) !important;
}
md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools .live-layout-pills button.md-button.layout-pill.layout-pill--active span.layout-pill__count {
  background: var(--an-bg);
  color: var(--an-text) !important;
}

.live-empty-elsewhere {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-top: 16px;
}
.live-empty-elsewhere .md-button.live-empty-elsewhere__btn {
  display: inline-flex;
  align-items: center;
  margin: 0;
  height: 40px;
  min-height: 40px;
  padding: 0 10px 0 14px;
  border-radius: var(--an-radius-pill);
  border: 1px solid var(--an-border);
  background: var(--an-surface);
  color: var(--an-text);
  text-transform: none;
  font-size: 14px;
  font-weight: 600;
  box-shadow: var(--an-shadow-sm);
}
.live-empty-elsewhere .md-button.live-empty-elsewhere__btn:hover {
  border-color: var(--an-border-strong);
  box-shadow: var(--an-shadow-md);
}
.live-empty-elsewhere .md-button.live-empty-elsewhere__btn md-icon {
  color: inherit;
  font-size: 18px;
}
.live-empty-elsewhere .live-empty-elsewhere__count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  height: 22px;
  padding: 0 7px;
  border-radius: var(--an-radius-pill);
  background: var(--an-text);
  color: var(--an-bg);
  font-size: 12px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}

.urgentFlag {
  position: absolute;
  width: 28px;
  height: 24px;
  background: rgb(249, 199, 43);
  z-index: 2;
  border-radius: 0 0 50% 50%;
  line-height: 22px;
  text-align: center;
  padding: 0;
  font-size: 16px;
  --an-icon-size: 16px;
  color: rgb(196, 7, 7);
}

.order-card {
  width: 180px;
  float: left;
  cursor: pointer;
  outline: none;
}
.order-card md-card-avatar {
  margin-left: 0 !important;
}
.order-card md-card-header {
  padding: 16px 16px 5px;
}
.order-card md-card-content {
  padding: 0 0 5px;
}
.order-card md-fab-speed-dial {
  top: 10px;
  left: 8px;
}
.order-card md-fab-speed-dial md-fab-trigger {
  transition: all 0.3s ease-in-out;
  transform: scale(1);
}
.order-card md-fab-speed-dial.ng-hide md-fab-trigger {
  transform: scale(0);
}
.order-card .urgentFlag {
  right: 5px;
  top: 0px;
}
.order-card .guests-count {
  position: absolute;
  right: 0;
  top: 0;
  border-radius: 0 0 0 50%;
  background: #fff;
  padding: 5px;
  font-size: 13px;
  font-weight: bold;
  color: #444;
}
.order-card .external-flag {
  position: absolute;
  left: 0;
  top: 0;
  border-radius: 0 0 50% 0;
  background: rgb(0, 179, 54);
  padding: 5px;
  font-size: 13px;
  font-weight: bold;
  color: #fff;
  height: 16px;
  width: 16px;
  min-height: 16px;
  min-width: 16px;
}
.order-card .paid-alert {
  position: absolute;
  right: 0;
  top: 0;
  border-radius: 0 0 0 50%;
  background: rgb(255, 238, 223);
  padding: 5px;
  font-size: 16px;
  font-weight: bold;
  color: rgb(255, 0, 0);
  height: 16px;
  width: 16px;
  min-height: 16px;
  min-width: 16px;
}

.order-v2-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 16px;
  padding: 16px;
  align-content: start;
  overflow-y: auto;
  height: 100%;
  box-sizing: border-box;
}

.order-card-v2 {
  position: relative;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  box-shadow: var(--an-shadow-sm);
  cursor: pointer;
  overflow: hidden;
  transition: box-shadow var(--duration-norm) var(--ease-default), transform var(--duration-norm) var(--ease-default), border-color var(--duration-norm) var(--ease-default);
  display: flex;
  flex-direction: column;
  outline: none;
  -webkit-tap-highlight-color: transparent;
}
.order-card-v2:hover {
  box-shadow: var(--an-shadow-md);
  transform: translateY(-3px);
  border-color: var(--an-border-strong);
}
.order-card-v2:active {
  transform: translateY(0);
  box-shadow: var(--an-shadow-sm);
}
.order-card-v2__strip {
  height: 4px;
  width: 100%;
  flex-shrink: 0;
  border-radius: var(--an-radius) var(--an-radius) 0 0;
  background: var(--an-border-strong);
  transition: background var(--duration-norm) var(--ease-default);
}
.order-card-v2__body {
  flex: 1;
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 0;
}
.order-card-v2__divider {
  height: 1px;
  background: var(--an-border-light);
  margin: 2px 0;
  flex-shrink: 0;
}
.order-card-v2__header {
  display: flex;
  align-items: center;
  gap: 12px;
}
.order-card-v2__avatar {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--an-surface2);
  border: 1.5px solid var(--an-border);
  overflow: hidden;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.order-card-v2__avatar-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.order-card-v2__avatar-initials {
  font-size: 15px;
  font-weight: 700;
  color: var(--an-text-muted);
  font-family: var(--font-sans);
  line-height: 1;
}
.order-card-v2__identity {
  flex: 1;
  min-width: 0;
}
.order-card-v2__name {
  font-size: 14px;
  font-weight: 600;
  color: var(--an-text);
  font-family: var(--font-sans);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.3;
}
.order-card-v2__ref {
  display: flex;
  align-items: center;
  gap: 5px;
  margin-top: 2px;
}
.order-card-v2__table {
  font-size: 11px;
  font-weight: 700;
  color: var(--an-surface);
  background: var(--an-text-muted);
  border-radius: 4px;
  padding: 1px 5px;
  letter-spacing: 0.04em;
  font-family: var(--font-sans);
  text-transform: uppercase;
}
.order-card-v2__seq {
  font-size: 12px;
  font-weight: 500;
  color: var(--an-text-muted);
  font-family: var(--font-sans);
}
.order-card-v2__meta {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.order-card-v2__status-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  font-weight: 600;
  font-family: var(--font-sans);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  padding: 3px 8px;
  border-radius: var(--an-radius-pill);
  background: var(--an-surface2);
  color: var(--an-text-muted);
  transition: color var(--duration-norm), background var(--duration-norm);
}
.order-card-v2__status-badge md-icon {
  font-size: 13px;
  width: 13px;
  height: 13px;
  min-width: 13px;
  min-height: 13px;
}
.order-card-v2__status-badge--alert {
  animation: oc-badge-pulse 1.2s ease-in-out infinite;
}
.order-card-v2__amount {
  margin-left: auto;
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text);
  font-family: var(--font-sans);
  letter-spacing: -0.3px;
}
.order-card-v2__time {
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  color: var(--an-text-faint);
  font-family: var(--font-sans);
}
.order-card-v2__time md-icon {
  font-size: 13px;
  width: 13px;
  height: 13px;
  min-width: 13px;
  min-height: 13px;
  color: var(--an-text-faint);
}
.order-card-v2__paid-tag {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  margin-left: 6px;
  font-size: 11px;
  font-weight: 600;
  color: #81AE39;
  font-family: var(--font-sans);
}
.order-card-v2__paid-tag md-icon {
  font-size: 12px;
  width: 12px;
  height: 12px;
  min-width: 12px;
  min-height: 12px;
  color: inherit;
}
.order-card-v2__actions {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: auto;
  border-top: 1px solid var(--an-border-light);
  padding-top: 10px;
}
.order-card-v2__btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  border: none;
  border-radius: var(--an-radius-xs);
  cursor: pointer;
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 500;
  transition: background var(--duration-fast), color var(--duration-fast), transform var(--duration-fast);
  outline: none;
  -webkit-tap-highlight-color: transparent;
  background: transparent;
  color: var(--an-text-muted);
  padding: 5px 6px;
}
.order-card-v2__btn md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  min-width: 15px;
  min-height: 15px;
  color: inherit;
}
.order-card-v2__btn:hover {
  background: var(--an-surface2);
  color: var(--an-text);
  transform: scale(1.05);
}
.order-card-v2__btn--icon {
  padding: 5px;
}
.order-card-v2__btn--danger:hover {
  background: rgba(204, 63, 53, 0.1);
  color: #CC3F35;
}
.order-card-v2__btn--primary {
  margin-left: auto;
  background: var(--an-text);
  color: var(--an-bg);
  padding: 5px 10px;
  border-radius: var(--an-radius-xs);
  font-weight: 600;
}
.order-card-v2__btn--primary:hover {
  opacity: 0.88;
  transform: none;
}
.order-card-v2__loading {
  position: absolute;
  inset: 0;
  background: rgba(var(--an-surface-rgb), 0.82);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10;
  border-radius: var(--an-radius);
  backdrop-filter: blur(2px);
}
.order-card-v2__urgent-badge {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 22px;
  height: 22px;
  background: #F59E0B;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 3;
}
.order-card-v2__urgent-badge md-icon {
  font-size: 13px;
  width: 13px;
  height: 13px;
  min-width: 13px;
  min-height: 13px;
  color: #fff;
}
.order-card-v2__ext-badge {
  position: absolute;
  bottom: 48px;
  right: 8px;
  width: 18px;
  height: 18px;
  background: #10B981;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 3;
}
.order-card-v2__ext-badge md-icon {
  font-size: 11px;
  width: 11px;
  height: 11px;
  min-width: 11px;
  min-height: 11px;
  color: #fff;
}
.order-card-v2--alert {
  animation: oc-card-alert 1.4s ease-in-out infinite;
  border-color: rgba(204, 63, 53, 0.5) !important;
}
.order-card-v2--new .order-card-v2__strip {
  background: #CC3F35;
}
.order-card-v2--new .order-card-v2__status-badge {
  color: #CC3F35;
  background: rgba(204, 63, 53, 0.1);
}
.order-card-v2--placed .order-card-v2__strip {
  background: #e6b71e;
}
.order-card-v2--placed .order-card-v2__status-badge {
  color: #e6b71e;
  background: rgba(230, 183, 30, 0.1);
}
.order-card-v2--accepted .order-card-v2__strip {
  background: #0099E6;
}
.order-card-v2--accepted .order-card-v2__status-badge {
  color: #0099E6;
  background: rgba(0, 153, 230, 0.1);
}
.order-card-v2--progress .order-card-v2__strip {
  background: #3385FF;
}
.order-card-v2--progress .order-card-v2__status-badge {
  color: #3385FF;
  background: rgba(51, 133, 255, 0.1);
}
.order-card-v2--ready .order-card-v2__strip {
  background: #241FC0;
}
.order-card-v2--ready .order-card-v2__status-badge {
  color: #241FC0;
  background: rgba(36, 31, 192, 0.1);
}
.order-card-v2--delivered .order-card-v2__strip {
  background: #81AE39;
}
.order-card-v2--delivered .order-card-v2__status-badge {
  color: #81AE39;
  background: rgba(129, 174, 57, 0.1);
}
.order-card-v2--paid .order-card-v2__strip {
  background: #F7941E;
}
.order-card-v2--paid .order-card-v2__status-badge {
  color: #F7941E;
  background: rgba(247, 148, 30, 0.1);
}
.order-card-v2--closed .order-card-v2__strip {
  background: #9CA3AF;
}
.order-card-v2--closed .order-card-v2__status-badge {
  color: #9CA3AF;
  background: rgba(156, 163, 175, 0.1);
}
.order-card-v2--closed {
  opacity: 0.65;
}
.order-card-v2--shipping .order-card-v2__strip {
  background: #b891f5;
}
.order-card-v2--shipping .order-card-v2__status-badge {
  color: #b891f5;
  background: rgba(184, 145, 245, 0.1);
}

@keyframes oc-card-alert {
  0%, 100% {
    box-shadow: var(--an-shadow-sm);
  }
  50% {
    box-shadow: 0 0 0 3px rgba(204, 63, 53, 0.3), var(--an-shadow-md);
  }
}
@keyframes oc-badge-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.55;
  }
}
.order-bar-time {
  min-width: 200px !important;
  border-right: 1px solid rgb(105, 105, 105);
  border-top: 1px solid rgb(105, 105, 105);
  height: 100%;
}

.order-day-count {
  border-radius: 15%;
  padding: 3px;
  width: 22px;
  height: 22px;
  font-size: 14px;
  background-color: #b52b00;
  color: #fff;
  margin-top: 8px;
  text-align: center;
}

.paid-alert-order {
  color: rgb(255, 0, 0) !important;
  fill: rgb(255, 0, 0) !important;
}

.card-members {
  cursor: pointer;
  margin-right: 24px;
}

.min-check {
  padding-right: 7px;
  font-size: 12px;
  padding-top: 5px;
}
.min-check .md-label {
  margin-left: 30px;
  margin-top: 7px;
}

.waitry-dark-theme .order-card .guests-count {
  background: var(--an-surface2) !important;
  color: var(--an-text) !important;
}
.waitry-dark-theme .table-item {
  border-color: var(--an-border) !important;
}
.waitry-dark-theme .table-item:hover {
  background-color: var(--an-surface2) !important;
}
.waitry-dark-theme .order-card-v2__btn--primary {
  background: var(--an-surface3);
  color: var(--an-text);
  border: 1px solid var(--an-border-strong);
}
.waitry-dark-theme .order-card-v2__btn--primary:hover {
  background: var(--an-surface-brighter);
}
.waitry-dark-theme md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools .live-layout-pills button.md-button.layout-pill.layout-pill--active {
  background: var(--an-surface3) !important;
  color: var(--an-text) !important;
  border-color: var(--an-border-strong) !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.4) !important;
}
.waitry-dark-theme md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools .live-layout-pills button.md-button.layout-pill.layout-pill--active md-icon,
.waitry-dark-theme md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools .live-layout-pills button.md-button.layout-pill.layout-pill--active span {
  color: var(--an-text) !important;
}
.waitry-dark-theme md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools .live-layout-pills button.md-button.layout-pill.layout-pill--active span.layout-pill__count {
  background: var(--an-text);
  color: var(--an-bg) !important;
}

.live-viewmode-toggle {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  padding: 3px;
  margin: 0 8px;
}
.live-viewmode-toggle__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border: none;
  border-radius: calc(var(--an-radius-sm) - 2px);
  background: transparent;
  color: var(--an-text-muted);
  cursor: pointer;
  transition: background var(--duration-fast) var(--ease-default), color var(--duration-fast) var(--ease-default), transform var(--duration-fast) var(--ease-default);
  outline: none;
  -webkit-tap-highlight-color: transparent;
}
.live-viewmode-toggle__btn md-icon, .live-viewmode-toggle__btn i {
  font-size: 17px;
  width: 17px;
  height: 17px;
  min-width: 17px;
  min-height: 17px;
  color: inherit;
  line-height: 1;
}
.live-viewmode-toggle__btn:hover:not(.live-viewmode-toggle__btn--active) {
  background: var(--an-surface3);
  color: var(--an-text);
}
.live-viewmode-toggle__btn--active {
  background: var(--an-surface);
  color: var(--an-text);
  box-shadow: var(--an-shadow-xs);
}
.live-viewmode-toggle__btn--active md-icon, .live-viewmode-toggle__btn--active i {
  color: var(--an-text);
}
.live-viewmode-toggle__btn--disabled {
  opacity: 0.35;
  cursor: not-allowed;
  pointer-events: none;
}
.live-viewmode-toggle__btn:active {
  transform: scale(0.94);
}

.live-kanban-wrap {
  height: 100%;
  overflow: hidden;
  display: flex;
  width: 100%;
  flex: 1;
}

.live-kanban {
  display: flex;
  flex-direction: row;
  gap: 16px;
  padding: 16px;
  height: 100%;
  width: 100%;
  flex: 1;
  overflow-x: auto;
  overflow-y: hidden;
  box-sizing: border-box;
  align-items: stretch;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
}
.live-kanban::-webkit-scrollbar {
  height: 6px;
}
.live-kanban::-webkit-scrollbar-track {
  background: transparent;
}
.live-kanban::-webkit-scrollbar-thumb {
  background: var(--an-border-strong);
  border-radius: var(--an-radius-pill);
}

.live-kanban__col {
  flex: 1 1 300px;
  min-width: 290px;
  max-width: 460px;
  background: var(--an-bg-subtle);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  box-shadow: var(--an-shadow-sm);
  transition: border-color var(--duration-norm) var(--ease-default), box-shadow var(--duration-norm) var(--ease-default);
}
.live-kanban__col:hover {
  box-shadow: var(--an-shadow);
}
.live-kanban__col--pending {
  border-top: 4px solid #e6b71e;
}
.live-kanban__col--progress {
  border-top: 4px solid #3385FF;
}
.live-kanban__col--done {
  border-top: 4px solid #81AE39;
}

.live-kanban__col-header {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 14px;
  background: var(--an-bg-subtle);
  border-bottom: 1px solid var(--an-border);
  flex-shrink: 0;
}

.live-kanban__col-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
}

.live-kanban__col-label {
  font-size: 11px;
  font-weight: 700;
  font-family: var(--font-sans);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  flex: 1;
}

.live-kanban__col-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  height: 20px;
  padding: 0 7px;
  border-radius: var(--an-radius-pill);
  border: 1px solid transparent;
  font-size: 11px;
  font-weight: 700;
  font-family: var(--font-sans);
  line-height: 1;
  transition: transform var(--duration-fast) var(--ease-spring);
}

.live-kanban__col-body {
  flex: 1;
  overflow-y: auto;
  padding: 10px 10px 14px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  scrollbar-width: thin;
}
.live-kanban__col-body::-webkit-scrollbar {
  width: 4px;
}
.live-kanban__col-body::-webkit-scrollbar-track {
  background: transparent;
}
.live-kanban__col-body::-webkit-scrollbar-thumb {
  background: var(--an-border);
  border-radius: var(--an-radius-pill);
}

.live-kanban__col-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 32px 16px;
  color: var(--an-text-faint);
  font-size: 12px;
  font-family: var(--font-sans);
  text-align: center;
}

.live-kanban__card {
  position: relative;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  overflow: hidden;
  cursor: pointer;
  display: flex;
  flex-direction: row;
  flex-shrink: 0;
  transition: box-shadow var(--duration-norm) var(--ease-default), transform var(--duration-norm) var(--ease-default), border-color var(--duration-norm) var(--ease-default);
  box-shadow: var(--an-shadow-xs);
  outline: none;
  -webkit-tap-highlight-color: transparent;
}
.live-kanban__card:hover {
  box-shadow: var(--an-shadow-md);
  transform: translateY(-2px);
  border-color: var(--an-border-strong);
  z-index: 2;
}
.live-kanban__card:active {
  transform: translateY(0);
  box-shadow: var(--an-shadow-xs);
}
.live-kanban__card--alert {
  animation: oc-card-alert 1.4s ease-in-out infinite;
  border-color: rgba(204, 63, 53, 0.5) !important;
}
.live-kanban__card--urgent .live-kanban__card-urgent-icon {
  display: inline-flex !important;
}

.live-kanban__card-urgent-icon {
  display: none !important;
  font-size: 12px !important;
  width: 12px !important;
  height: 12px !important;
  min-width: 12px !important;
  min-height: 12px !important;
  color: #F59E0B !important;
}

.live-kanban__card-bar {
  width: 3px;
  flex-shrink: 0;
  background: var(--an-border-strong);
  transition: background var(--duration-norm);
}

.live-kanban__card-body {
  flex: 1;
  padding: 12px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

.live-kanban__card-top {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: nowrap;
}

.live-kanban__card-seq {
  font-size: 13px;
  font-weight: 700;
  font-family: var(--font-sans);
  color: var(--an-text);
  white-space: nowrap;
}

.live-kanban__card-table-badge {
  font-size: 10px;
  font-weight: 700;
  font-family: var(--font-sans);
  color: var(--an-surface);
  background: var(--an-text-muted);
  border-radius: 3px;
  padding: 1px 4px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  flex-shrink: 0;
}

.live-kanban__card-status-badge {
  margin-left: auto;
  font-size: 9px;
  font-weight: 700;
  font-family: var(--font-sans);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 2px 6px;
  border-radius: 4px;
  flex-shrink: 0;
  white-space: nowrap;
}

.live-kanban__card-divider {
  height: 1px;
  background: var(--an-border-light);
  margin: 2px 0;
}

.live-kanban__card-meta {
  display: flex;
  align-items: center;
  gap: 8px;
}

.live-kanban__card-customer {
  display: flex;
  align-items: center;
  gap: 4px;
  flex: 1;
  min-width: 0;
  font-size: 12px;
  font-family: var(--font-sans);
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.live-kanban__card-customer md-icon {
  font-size: 12px;
  width: 12px;
  height: 12px;
  min-width: 12px;
  min-height: 12px;
  color: var(--an-text-muted);
  flex-shrink: 0;
}

.live-kanban__card-time {
  display: flex;
  align-items: center;
  gap: 3px;
  font-size: 11px;
  font-family: var(--font-sans);
  color: var(--an-text-faint);
  flex-shrink: 0;
}
.live-kanban__card-time md-icon {
  font-size: 11px;
  width: 11px;
  height: 11px;
  min-width: 11px;
  min-height: 11px;
  color: var(--an-text-faint);
}

.live-kanban__card-footer {
  display: flex;
  align-items: center;
  gap: 6px;
  border-top: 1px solid var(--an-border-light);
  padding-top: 6px;
}

.live-kanban__card-amount {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 13px;
  font-weight: 700;
  font-family: var(--font-sans);
  color: var(--an-text);
  letter-spacing: -0.3px;
  flex: 1;
}

.live-kanban__card-paid-icon {
  font-size: 13px !important;
  width: 13px !important;
  height: 13px !important;
  min-width: 13px !important;
  min-height: 13px !important;
  color: #81AE39 !important;
}

.live-kanban__card-actions {
  display: flex;
  align-items: center;
  gap: 2px;
}

.live-kanban__card-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border: none;
  border-radius: var(--an-radius-xs);
  background: transparent;
  color: var(--an-text-muted);
  cursor: pointer;
  transition: background var(--duration-fast), color var(--duration-fast), transform var(--duration-fast);
  outline: none;
  -webkit-tap-highlight-color: transparent;
}
.live-kanban__card-btn md-icon {
  font-size: 13px;
  width: 13px;
  height: 13px;
  min-width: 13px;
  min-height: 13px;
  color: inherit;
}
.live-kanban__card-btn:hover {
  background: var(--an-surface2);
  color: var(--an-text);
  transform: scale(1.08);
}
.live-kanban__card-btn--primary {
  background: var(--an-text);
  color: var(--an-bg);
  width: auto;
  padding: 0 8px;
  font-size: 11px;
  font-weight: 600;
  font-family: var(--font-sans);
}
.live-kanban__card-btn--primary md-icon {
  color: var(--an-bg);
}
.live-kanban__card-btn--primary:hover {
  opacity: 0.88;
  transform: none;
  background: var(--an-text);
  color: var(--an-bg);
}
.live-kanban__card-btn--danger:hover {
  background: rgba(204, 63, 53, 0.1);
  color: #CC3F35;
}

.live-list-wrap {
  height: 100%;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.live-list {
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
}

.live-list__header {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  background: var(--an-bg);
  border-bottom: 2px solid var(--an-border);
  padding: 0 16px;
  position: sticky;
  top: 0;
  z-index: 5;
}

.live-list__col {
  display: flex;
  align-items: center;
  padding: 0 12px;
  font-family: var(--font-sans);
  min-width: 0;
  box-sizing: border-box;
}
.live-list__col--status {
  flex: 0 0 160px;
}
.live-list__col--seq {
  flex: 0 0 100px;
}
.live-list__col--customer {
  flex: 2;
  min-width: 180px;
}
.live-list__col--amount {
  flex: 1;
  min-width: 100px;
  justify-content: flex-end;
}
.live-list__col--time {
  flex: 0 0 100px;
  justify-content: center;
}
.live-list__col--actions {
  flex: 0 0 236px;
  justify-content: flex-end;
}

.live-list__header .live-list__col {
  height: 40px;
  font-size: 11px;
  font-weight: 700;
  color: var(--an-text-faint);
  letter-spacing: 0.07em;
  text-transform: uppercase;
  gap: 4px;
}
.live-list__header .live-list__col md-icon {
  font-size: 13px;
  width: 13px;
  height: 13px;
  min-width: 13px;
  min-height: 13px;
  color: var(--an-text-faint);
  transition: color var(--duration-fast);
}
.live-list__header .live-list__col--sortable {
  cursor: pointer;
  user-select: none;
  border-radius: var(--an-radius-xs);
  transition: color var(--duration-fast), background var(--duration-fast);
}
.live-list__header .live-list__col--sortable:hover {
  color: var(--an-text);
  background: var(--an-surface2);
}
.live-list__header .live-list__col--sortable:hover md-icon {
  color: var(--an-text);
}

.live-list__body {
  flex: 1;
  overflow-y: auto;
  padding: 12px 16px 16px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.live-list__row {
  display: flex;
  align-items: center;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  margin: 0;
  min-height: 52px;
  position: relative;
  cursor: pointer;
  transition: background var(--duration-fast), border-color var(--duration-fast), box-shadow var(--duration-fast), transform var(--duration-fast);
  overflow: hidden;
}
.live-list__row:hover {
  background: var(--an-surface2);
  border-color: var(--an-border-strong);
  box-shadow: var(--an-shadow-sm);
  transform: translateX(3px);
}
.live-list__row:hover .live-list__btn--icon {
  opacity: 1;
}
.live-list__row:active {
  transform: translateX(0);
}
.live-list__row--alert {
  animation: oc-card-alert 1.4s ease-in-out infinite;
  border-color: var(--an-rose-ring) !important;
}
.live-list__row--urgent {
  border-left: 3px solid var(--an-amber);
}
.live-list__row--loading::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(var(--an-surface-rgb), 0.6);
  pointer-events: none;
}

.live-list__row-loading {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.08);
  z-index: 5;
  border-radius: var(--an-radius-sm);
}

.live-list__status-badge-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  font-weight: 700;
  font-family: var(--font-sans);
  letter-spacing: 0.05em;
  text-transform: uppercase;
  padding: 4px 10px;
  border-radius: 9999px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
  transition: background-color var(--duration-norm), color var(--duration-norm);
}

.live-list__alert-icon {
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  min-width: 14px !important;
  min-height: 14px !important;
  color: var(--an-rose) !important;
  animation: oc-badge-pulse 1.2s ease-in-out infinite;
}

.live-list__seq-badge {
  font-size: 13px;
  font-weight: 700;
  font-family: var(--font-sans);
  color: var(--an-text);
}

.live-source {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin-left: 8px;
  vertical-align: middle;
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text-muted);
  white-space: nowrap;
}
.live-source img {
  height: 18px;
  width: auto;
  max-width: 80px;
  object-fit: contain;
  display: block;
}
.live-source md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  min-width: 0;
  min-height: 0;
  color: var(--an-text-muted);
}
.live-source--inline {
  margin-left: 12px;
  font-size: 14px;
}
.live-source--inline img {
  height: 22px;
  max-width: 100px;
}
.live-source--inline md-icon {
  font-size: 20px;
  width: 20px;
  height: 20px;
}

html.waitry-dark-theme .live-source--mono img {
  filter: invert(1) brightness(1.2);
}

.live-list__ext-badge {
  display: inline-flex;
  align-items: center;
  width: 16px;
  height: 16px;
  background: var(--an-emerald);
  border-radius: 50%;
  justify-content: center;
  margin-left: 4px;
}
.live-list__ext-badge md-icon {
  font-size: 10px;
  width: 10px;
  height: 10px;
  min-width: 10px;
  min-height: 10px;
  color: #fff;
}

.live-list__customer-name {
  font-size: 13px;
  font-weight: 500;
  font-family: var(--font-sans);
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: calc(100% - 60px);
}

.live-list__table-badge {
  display: inline-block;
  font-size: 10px;
  font-weight: 700;
  font-family: var(--font-sans);
  color: var(--an-surface);
  background: var(--an-text-muted);
  border-radius: 3px;
  padding: 1px 5px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  flex-shrink: 0;
  margin-left: 6px;
}

.live-list__urgent-dot {
  display: inline-block;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--an-amber);
  flex-shrink: 0;
  margin-left: 5px;
}

.live-list__amount {
  font-size: 14px;
  font-weight: 700;
  font-family: var(--font-sans);
  color: var(--an-text);
  letter-spacing: -0.3px;
}

.live-list__paid-tag {
  margin-left: 4px;
}
.live-list__paid-tag md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  min-width: 14px;
  min-height: 14px;
  color: var(--an-emerald);
}

.live-list__col--time span {
  font-size: 12px;
  font-family: var(--font-sans);
  color: var(--an-text-muted);
  font-variant-numeric: tabular-nums;
}

.live-list__actions {
  display: flex;
  align-items: center;
  gap: 4px;
}

.live-list__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  height: 32px;
  border: none;
  border-radius: var(--an-radius-sm);
  background: transparent;
  color: var(--an-text-muted);
  cursor: pointer;
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 600;
  white-space: nowrap;
  padding: 0 12px;
  transition: background var(--duration-fast), color var(--duration-fast), opacity var(--duration-fast);
  outline: none;
  -webkit-tap-highlight-color: transparent;
}
.live-list__btn md-icon {
  margin: 0;
  font-size: 16px;
  width: 16px;
  height: 16px;
  min-width: 16px;
  min-height: 16px;
  color: inherit !important;
}
.live-list__btn:hover {
  background: var(--an-surface3);
  color: var(--an-text);
}
.live-list__btn:focus-visible {
  box-shadow: 0 0 0 2px var(--an-rose-ring);
}
.live-list__btn--icon {
  width: 32px;
  padding: 0;
  opacity: 0;
}
.live-list__btn--danger:hover {
  background: var(--an-rose-soft);
  color: var(--an-rose);
}
.live-list__btn--primary {
  background: linear-gradient(135deg, var(--an-rose) 0%, #E8384F 100%);
  color: #fff;
  box-shadow: 0 2px 8px rgba(244, 63, 94, 0.22);
}
.live-list__btn--primary:hover {
  background: linear-gradient(135deg, var(--an-rose) 0%, #E8384F 100%);
  color: #fff;
  opacity: 0.92;
}

@media (hover: none) {
  .live-list__btn--icon {
    opacity: 1;
  }
}
.waitry-dark-theme .live-kanban__col {
  background: #1A1D27;
  border-color: rgba(255, 255, 255, 0.08);
}
.waitry-dark-theme .live-kanban__col-header {
  background: rgba(255, 255, 255, 0.02);
}
.waitry-dark-theme .live-kanban__card {
  background: #22263A;
  border-color: rgba(255, 255, 255, 0.08);
}
.waitry-dark-theme .live-kanban__card-table-badge {
  background: rgba(255, 255, 255, 0.25);
  color: #0F1117;
}
.waitry-dark-theme .live-list__table-badge {
  background: rgba(255, 255, 255, 0.22);
  color: #0F1117;
}
.waitry-dark-theme .live-viewmode-toggle {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.1);
}
.waitry-dark-theme .live-viewmode-toggle__btn--active {
  background: rgba(255, 255, 255, 0.12);
}

.order-card-footer {
  text-align: center;
  padding: 0px 0px 4px 0px;
}

.interface-logs {
  width: 93%;
  height: 50%;
  overflow: auto;
  background-color: #1e1e1e;
  border: 1px solid #444;
  border-radius: 4px;
  padding: 12px;
  margin: 0 auto;
}

.interface-code {
  background-color: transparent;
  color: #d4d4d4;
  font-family: monospace;
  font-size: 12px;
  white-space: pre-wrap;
  word-break: break-all;
  display: block;
}

.interface-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  width: 93%;
  margin: 20px auto 0;
  padding: 6px 12px;
  box-sizing: content-box;
  background-color: #2b2d34;
  border: 1px solid #444;
  border-bottom: none;
  border-radius: 4px 4px 0 0;
  color: #fff;
  font-size: 12px;
  letter-spacing: 0.02em;
}

.log-copy-btn {
  margin: 0;
}
.log-copy-btn md-icon,
.log-copy-btn [class*=iconoir-] {
  color: #fff !important;
}

md-sidenav.live-settings {
  display: flex;
  flex-direction: column;
  background: var(--an-surface);
  color: var(--an-text);
  padding: 16px 0;
}
md-sidenav.live-settings .live-settings__fields {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 0 16px 8px;
}
md-sidenav.live-settings .live-settings__field {
  margin: 0;
  width: 100%;
}
md-sidenav.live-settings .live-settings__toggles {
  display: flex;
  flex-direction: column;
  padding: 8px 0;
  border-top: 1px solid var(--an-border);
}
md-sidenav.live-settings md-switch.live-settings__switch {
  display: flex;
  align-items: center;
  margin: 0;
  padding: 0 16px;
  min-height: 44px;
  transition: background var(--duration-fast);
}
md-sidenav.live-settings md-switch.live-settings__switch:hover {
  background: var(--an-surface2);
}
md-sidenav.live-settings md-switch.live-settings__switch .md-label {
  flex: 1;
  margin-left: 12px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.3;
  color: var(--an-text);
  white-space: normal;
}
md-sidenav.live-settings .live-settings__group {
  border-top: 1px solid var(--an-border);
  padding-top: 8px;
}
md-sidenav.live-settings .live-settings__row {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-height: 44px;
  padding: 0 16px;
  border: none;
  background: transparent;
  color: var(--an-text);
  font-family: inherit;
  font-size: 14px;
  font-weight: 500;
  text-align: left;
  cursor: pointer;
  transition: background var(--duration-fast);
}
md-sidenav.live-settings .live-settings__row:hover {
  background: var(--an-surface2);
}
md-sidenav.live-settings .live-settings__row md-icon {
  margin: 0;
  font-size: 20px;
  width: 20px;
  height: 20px;
  min-width: 20px;
  min-height: 20px;
  color: var(--an-text-muted);
}
md-sidenav.live-settings .live-settings__row md-progress-circular {
  margin: 0;
}
md-sidenav.live-settings .live-settings__row-label {
  flex: 1;
}
md-sidenav.live-settings .live-settings__group-body {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 8px 16px 8px 48px;
}
md-sidenav.live-settings .live-settings__venue {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
md-sidenav.live-settings .live-settings__venue-name {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--an-text-muted);
  margin-bottom: 4px;
}
md-sidenav.live-settings md-checkbox.live-settings__check {
  margin: 0;
  min-height: 32px;
  display: flex;
  align-items: center;
}
md-sidenav.live-settings md-checkbox.live-settings__check .md-label {
  font-size: 14px;
  color: var(--an-text);
}
md-sidenav.live-settings .md-button.live-settings__apply {
  align-self: flex-start;
  margin: 0;
}

.pos-order-tag-dialog {
  max-width: 420px;
}
.pos-order-tag-dialog h2 {
  margin: 0 0 6px;
}
.pos-order-tag-dialog .wf-hint {
  margin: 0 0 16px;
}
.pos-order-tag-dialog md-radio-group {
  display: block;
}
.pos-order-tag-dialog md-radio-button {
  display: block;
  margin: 0 0 14px;
}
.pos-order-tag-dialog md-dialog-actions {
  padding: 8px 0 0;
  min-height: 0;
}

@media (max-width: 599px) {
  md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools:has(> .live-layout-pills) {
    flex-wrap: wrap;
    row-gap: 6px;
  }
  md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools .live-layout-pills {
    order: 10;
    flex: 1 1 100%;
    max-width: 100%;
  }
}
#moduleReport md-icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
}
#moduleReport .graphContainer .flex.chart md-icon,
#moduleReport .graphContainer .flex.tabledata md-icon {
  font-size: 8rem;
  height: 8rem;
  width: 8rem;
}
#moduleReport .graphContainer .flex.chart,
#moduleReport .graphContainer .flex.tabledata {
  min-height: 250px;
}
#moduleReport .statValue > md-progress-circular {
  margin-top: 21px;
  margin-bottom: 21px;
}
#moduleReport .table-avatar {
  width: 30px;
  height: 30px;
  border-radius: 100%;
  margin-top: -10px;
  margin-bottom: -10px;
  margin-right: 15px;
}

.kpi {
  position: relative;
}
.kpi .metric {
  font-size: 30px;
  margin-top: 10px;
  margin-bottom: 10px;
  position: relative;
  line-height: 30px;
}
.kpi .metric.metric-progress {
  padding-left: 40px;
}
.kpi .metric.metric-progress md-progress-circular {
  position: absolute;
  left: 0;
  top: 0px;
}
.kpi .metric.metric-progress.large {
  padding-left: 60px;
  font-size: 40px;
  line-height: 46px;
}
.kpi .metric md-icon {
  font-size: 30px;
  margin: 0 5px 0 0;
  display: inline-flex;
  vertical-align: middle;
  align-items: center;
  justify-content: center;
}
.kpi .legend {
  font-size: 14px;
  text-transform: uppercase;
  color: rgba(0, 0, 0, 0.5);
}
.waitry-dark-theme .kpi .legend {
  color: var(--an-text-muted);
}
.kpi .description {
  font-size: 12px;
  color: rgba(0, 0, 0, 0.8);
}
.waitry-dark-theme .kpi .description {
  color: var(--an-text-muted);
}
.kpi .chart {
  height: 100%;
  min-height: 180px;
  margin-top: 20px;
}
.kpi md-button, .kpi .md-button {
  margin: 0;
}
.kpi .md-avatar {
  width: 40px;
}
.kpi .rating md-icon {
  color: #e6b43e;
  font-size: 16px;
  width: 16px;
  height: 16px;
  min-width: 16px;
  min-height: 16px;
}
.kpi p {
  font-size: 13px;
  color: #444;
}
.waitry-dark-theme .kpi p {
  color: var(--an-text-muted);
}

.reference {
  position: absolute;
  z-index: 1;
  top: 75px;
  left: 50%;
  width: 40%;
  transform: translateX(-50%);
  background: white;
}
.waitry-dark-theme .reference {
  background: var(--an-surface);
}
.reference {
  padding: 10px 20px;
  height: 40px;
  border-radius: 20px;
  border: solid 1px #eaeaea;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}
.reference .bar {
  background: linear-gradient(to right, green, yellow, red);
  height: 5px;
  border-radius: 2px;
  margin-top: 7px;
  margin-left: 10px;
  margin-right: 10px;
}

.rv-page {
  background: var(--an-bg);
}

.rv-portals {
  flex-shrink: 0;
  margin: 16px 24px 0;
  padding: 14px 16px 12px;
  border: 1.5px solid var(--an-border);
  border-radius: 14px;
  background: var(--an-surface);
}
@media (max-width: 767px) {
  .rv-portals {
    margin: 12px 16px 0;
  }
}

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

.rv-portals__titles {
  min-width: 0;
}

.rv-portals__title {
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
}

.rv-portals__sub {
  font-size: 12px;
  line-height: 1.45;
  color: var(--an-text-muted);
  margin-top: 2px;
}

.rv-portals__all {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 6px 10px;
  border-radius: var(--an-radius-sm);
  border: 1px solid transparent;
  background: transparent;
  font: inherit;
  font-size: 12px;
  font-weight: 600;
  color: var(--an-primary);
  text-decoration: none;
  cursor: pointer;
  white-space: nowrap;
  transition: background 0.15s, border-color 0.15s;
}
.rv-portals__all md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  color: inherit;
}
.rv-portals__all:hover {
  background: var(--an-primary-soft);
  border-color: var(--an-border);
  color: var(--an-primary);
  text-decoration: none;
}

.rv-portals__row {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 8px;
}

.rv-portal {
  --rv-brand: var(--an-text-muted);
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  padding: 8px 10px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface2);
  transition: border-color 0.15s;
}
.rv-portal:hover {
  border-color: var(--an-border-hover);
}
.rv-portal.rv-portal--locked {
  opacity: 0.7;
}

.rv-portal__logo {
  flex-shrink: 0;
  width: 34px;
  height: 34px;
  border-radius: 9px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--an-surface);
  box-shadow: inset 0 0 0 1px var(--an-border);
  color: var(--rv-brand);
}
.rv-portal__logo md-icon {
  font-size: 18px;
  width: 18px;
  height: 18px;
  color: inherit;
}

.rv-portal__body {
  flex: 1;
  min-width: 0;
}

.rv-portal__name {
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.rv-portal__status {
  display: flex;
  align-items: center;
  gap: 5px;
  min-width: 0;
  font-size: 11px;
  font-weight: 600;
  color: var(--an-text-muted);
  white-space: nowrap;
  overflow: hidden;
}
.rv-portal__status > span:not(.rv-portal__dot) {
  overflow: hidden;
  text-overflow: ellipsis;
}
.rv-portal__status .rv-portal__dot {
  flex-shrink: 0;
}

.rv-portal__dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--an-text-faint);
}

.rv-portal--on .rv-portal__dot {
  background: var(--an-emerald);
}

.rv-portal--on .rv-portal__status {
  color: var(--an-emerald);
}

.rv-portal--partial .rv-portal__dot {
  background: var(--an-amber);
}

.rv-portal--partial .rv-portal__status {
  color: var(--an-amber);
}

.rv-portal__count {
  color: var(--an-text-muted);
  font-weight: 500;
}

.rv-portal__cta {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 5px 9px;
  border-radius: 999px;
  border: 1px solid var(--an-border);
  background: var(--an-surface);
  font-size: 11.5px;
  font-weight: 600;
  color: var(--an-text);
  text-decoration: none;
  white-space: nowrap;
  transition: background 0.15s, border-color 0.15s;
}
.rv-portal__cta md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  color: inherit;
}
.rv-portal__cta:hover {
  background: var(--an-border);
  color: var(--an-text);
  text-decoration: none;
}
.rv-portal__cta.rv-portal__cta--primary {
  background: var(--an-primary);
  border-color: var(--an-primary);
  color: #fff;
}
.rv-portal__cta.rv-portal__cta--primary:hover {
  filter: brightness(1.05);
  color: #fff;
}

.rv-segments {
  padding-bottom: 4px;
}
.rv-segments .clients-seg-chip i {
  font-size: 14px;
}

.rv-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 4px 24px 8px;
}
@media (max-width: 767px) {
  .rv-list {
    padding: 4px 16px 8px;
  }
}

.rv-card {
  flex-shrink: 0;
  padding: 16px 18px;
  background: var(--an-surface);
  border: 1.5px solid var(--an-border);
  border-radius: 14px;
  transition: border-color 0.18s, box-shadow 0.18s;
}
.rv-card:hover {
  border-color: var(--an-border-hover);
}
.rv-card.rv-card--replying {
  border-color: var(--an-primary);
  box-shadow: 0 0 0 3px var(--an-primary-soft);
}

.rv-card__head {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 10px;
}

.rv-avatar {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  font-weight: 700;
  color: #fff;
  background: var(--an-text-faint);
}
.rv-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.rv-avatar.rv-avatar--waitry {
  background: var(--an-primary);
}
.rv-avatar.rv-avatar--google {
  background: #4285F4;
}
.rv-avatar.rv-avatar--yelp {
  background: #D32323;
}
.rv-avatar.rv-avatar--tripadvisor {
  background: #00AF87;
}

.rv-card__who {
  flex: 1;
  min-width: 0;
}

.rv-card__name {
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.rv-card__meta {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 2px;
  font-size: 12px;
  color: var(--an-text-muted);
  white-space: nowrap;
}

.rv-card__dot {
  color: var(--an-text-faint);
}

.rv-source {
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  padding: 2px 7px;
  border-radius: 999px;
  color: var(--an-text-muted);
  background: var(--an-surface2);
}
.rv-source.rv-source--waitry {
  color: var(--an-primary);
  background: var(--an-primary-soft);
}
.rv-source.rv-source--google {
  color: #4285F4;
  background: rgba(66, 133, 244, 0.12);
}
.rv-source.rv-source--yelp {
  color: #D32323;
  background: rgba(211, 35, 35, 0.12);
}
.rv-source.rv-source--tripadvisor {
  color: #00AF87;
  background: rgba(0, 175, 135, 0.12);
}

.rv-rating {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 8px;
}

.rv-stars {
  display: inline-flex;
  gap: 1px;
}
.rv-stars md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  min-width: 16px;
  min-height: 16px;
  color: var(--an-border-strong);
}
.rv-stars md-icon.rv-stars__on {
  color: var(--an-amber);
}

.rv-rating__num {
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
}
.rv-rating__num small {
  font-weight: 500;
  color: var(--an-text-muted);
}

.rv-card__text {
  margin: 0;
  font-size: 14px;
  line-height: 1.55;
  color: var(--an-text);
  white-space: pre-line;
  overflow-wrap: anywhere;
}
.rv-card__text.rv-card__text--empty {
  color: var(--an-text-faint);
  font-style: italic;
}

.rv-reply {
  margin-top: 12px;
  padding: 10px 14px;
  border-left: 3px solid var(--an-emerald);
  border-radius: 0 var(--an-radius-sm) var(--an-radius-sm) 0;
  background: var(--an-emerald-soft);
}

.rv-reply__head {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  color: var(--an-emerald);
  margin-bottom: 4px;
}
.rv-reply__head md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  color: inherit;
}
.rv-reply__head .rv-card__dot, .rv-reply__head [am-time-ago] {
  font-weight: 500;
  color: var(--an-text-muted);
}

.rv-reply__body {
  font-size: 13.5px;
  line-height: 1.5;
  color: var(--an-text);
  white-space: pre-line;
}

.rv-card__actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin: 12px 0 0;
  padding: 0;
}

.rv-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 34px;
  padding: 0 14px;
  border-radius: var(--an-radius-sm);
  border: 1.5px solid var(--an-border);
  background: transparent;
  font: inherit;
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text-muted);
  text-decoration: none;
  cursor: pointer;
  transition: background 0.15s, border-color 0.15s, color 0.15s;
}
.rv-btn md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  min-width: 16px;
  min-height: 16px;
  color: inherit;
}
.rv-btn:hover {
  background: var(--an-surface2);
  border-color: var(--an-border-hover);
  color: var(--an-text);
  text-decoration: none;
}
.rv-btn.rv-btn--mise {
  color: var(--an-violet);
  border-color: var(--an-violet-soft);
  background: var(--an-violet-soft);
}
.rv-btn.rv-btn--mise:hover {
  border-color: var(--an-violet);
}

.rv-card__note {
  font-size: 12px;
  color: var(--an-text-muted);
}

.rv-composer {
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px dashed var(--an-border);
}

.rv-composer__drafting {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 0;
  font-size: 13px;
  font-weight: 600;
  color: var(--an-violet);
}
.rv-composer__drafting md-progress-circular {
  width: 18px !important;
  height: 18px !important;
}

.rv-composer__field {
  margin: 0;
}
.rv-composer__field textarea {
  min-height: 88px;
  font-size: 14px;
  line-height: 1.5;
}

.rv-composer__foot {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 4px;
  flex-wrap: wrap;
}
.rv-composer__foot .md-button {
  margin: 0;
}

.rv-composer__hint {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin: 0;
}
.rv-composer__hint md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  min-width: 14px;
  color: inherit;
}

.rv-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 40px 16px;
  text-align: center;
  color: var(--an-text-muted);
}
.rv-empty > md-icon {
  font-size: 40px;
  width: 40px;
  height: 40px;
  opacity: 0.35;
}
.rv-empty h3 {
  margin: 4px 0 0;
  font-size: 16px;
  font-weight: 700;
  color: var(--an-text);
}
.rv-empty p {
  margin: 0;
  max-width: 420px;
  font-size: 13.5px;
  line-height: 1.5;
}
.rv-empty .md-button {
  margin-top: 8px;
}

.rv-empty--hero {
  padding: 56px 16px;
}

.rv-empty__anim {
  width: 160px;
  height: 160px;
}

.rv-filter-select {
  width: 176px;
}

.rv-option-star {
  --an-icon-size: 13px;
  color: var(--an-amber);
  vertical-align: -2px;
}

.rv-filter-panel .rv-option-star {
  color: var(--an-amber);
}

.queue-number {
  margin: 4px 8px 4px 4px;
  padding: 10px;
  font-size: 18px;
  border-radius: 40%;
  background-color: #ddd;
}
.waitry-dark-theme .queue-number {
  background-color: var(--an-surface2);
  color: var(--an-text);
}

.queue-container {
  margin-right: 10px;
  cursor: pointer;
}

.queue-no-wrap {
  white-space: nowrap;
}

.queue-visible {
  background-color: #efefef;
}
.waitry-dark-theme .queue-visible {
  background-color: var(--an-surface2);
}

.queue-number-visible {
  background-color: #303030;
  color: #ffffff;
}

.flex-25 {
  flex: 1 1 25%;
  max-width: 25%;
}

.flex-50 {
  flex: 1 1 50%;
  max-width: 50%;
}

.flex-75 {
  flex: 1 1 75%;
  max-width: 75%;
}

.flex-100 {
  flex: 1 1 100%;
  max-width: 100%;
}

.queue-lost-button {
  background-color: #f44336;
  color: #ffffff;
  padding: 6px 10px;
  border-radius: 8px;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 14px;
}
.queue-lost-button .queue-count {
  margin-left: 4px;
  border-radius: 50%;
  padding: 3px;
  min-width: 22px;
  height: 22px;
  font-size: 14px;
  background-color: #ffffff;
  color: #000000;
  text-align: center;
}

.bggr1 {
  background-color: var(--an-bg-subtle, #F9FAFB);
  padding: 32px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  position: relative;
  overflow-y: auto;
  border-left: 1px solid var(--an-border, #E5E7EB);
}

.removeButton {
  position: absolute;
  top: 5px;
  right: 5px;
  margin: 0;
  z-index: 10;
  border: solid 2px #FFF;
  color: #FFF;
  border-radius: 50%;
  width: 24px !important;
  min-width: 24px;
  height: 24px;
  min-height: 24px;
  padding: 0 !important;
  line-height: 20px;
  font-weight: bold;
  background: rgba(0, 0, 0, 0.3);
}

.item-form-tab-content .wf-qr-block {
  align-items: flex-start;
}
.item-form-tab-content .wf-qr-block__code img {
  background: #fff;
  border: 1px solid var(--an-border);
  padding: 8px;
}
.item-form-tab-content .wf-qr-block__code .md-button {
  margin: 10px 0 0;
}
.item-form-tab-content .wf-qr-block__info .md-button {
  margin: 12px 0 0;
}
.item-form-tab-content .wf-qr-block__url .md-icon-button {
  margin: 0;
  width: 30px;
  min-width: 30px;
  height: 30px;
  line-height: 30px;
}

.sync-status-pending {
  color: #F43F5E;
}

.sync-status-queue {
  color: #F97316;
}

.sync-status-running {
  color: #497fe4;
}

.sync-status-finished {
  color: #10B981;
}

.sync-status-canceled {
  color: #9CA3AF;
}

.sync-status-failed {
  color: #F43F5E;
}

.img-delete-profile {
  position: absolute;
  cursor: pointer;
}

.img-delete {
  position: absolute;
  cursor: pointer;
  top: 30px;
  right: 10px;
  background-color: #FFF;
  border-radius: 15px;
}

.variation_allergen {
  margin: 10px;
}
.variation_allergen .img-high {
  width: 30px !important;
  vertical-align: middle;
  margin-top: -2px;
}

.as-sortable-item :hover {
  outline: none;
}
.as-sortable-item :focus {
  outline: none;
}

.item-form-dialog,
.waitry-right-drawer {
  transition: none !important;
  animation: none !important;
  transition-duration: 0s !important;
  animation-duration: 0s !important;
}

body.md-dialog-is-showing:has(.waitry-right-drawer) .md-dialog-backdrop,
body.md-dialog-is-showing:has(.waitry-right-drawer) .md-dialog-container,
body.md-dialog-is-showing:has(.item-form-dialog) .md-dialog-backdrop,
body.md-dialog-is-showing:has(.item-form-dialog) .md-dialog-container {
  transition: none !important;
  animation: none !important;
  transition-duration: 0s !important;
  animation-duration: 0s !important;
}

.item-form-enrichment-bar {
  position: relative;
  width: 100%;
  height: 2px;
  background: var(--an-border, #E2E8F0);
  overflow: hidden;
  flex-shrink: 0;
}
.item-form-enrichment-bar .item-form-enrichment-progress {
  position: absolute;
  height: 100%;
  width: 40%;
  background: linear-gradient(90deg, transparent, var(--an-primary, #2563EB), transparent);
  animation: enrichment-slide 1.2s ease-in-out infinite;
}
@keyframes enrichment-slide {
  0% {
    left: -40%;
  }
  100% {
    left: 100%;
  }
}

.item-form-dialog {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: auto !important;
  width: 62% !important;
  min-width: 760px !important;
  max-width: 100vw !important;
  height: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  border-radius: 0 !important;
  box-shadow: -15px 0 50px rgba(0, 0, 0, 0.15), -4px 0 15px rgba(0, 0, 0, 0.08) !important;
  transition: none !important;
  background: rgba(255, 255, 255, 0.95) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
}
.item-form-dialog.item-form-dialog--with-preview {
  width: 82% !important;
  min-width: 1180px !important;
}
@media (max-width: 1180px) {
  .item-form-dialog.item-form-dialog--with-preview {
    width: 100% !important;
    min-width: 100% !important;
  }
}
@media (max-width: 600px) {
  .item-form-dialog {
    width: 100% !important;
    min-width: 100% !important;
  }
}
.item-form-dialog form {
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
}
.item-form-dialog md-dialog-content {
  padding: 0 !important;
  flex: 1;
  overflow-y: auto;
}
.item-form-dialog .md-dialog-content {
  padding: 0 !important;
  display: flex;
  flex-direction: column;
}
.item-form-dialog .modern-split-modal {
  flex: 1 0 auto;
}
.item-form-dialog .item-form-main-col {
  display: flex;
  flex-direction: column;
}
.item-form-dialog .item-form-sidenav-shell {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  flex: 1 0 auto;
}
.item-form-dialog .item-form-mobile-nav {
  display: none;
}
.item-form-dialog .item-form-sidenav {
  display: flex;
  flex-direction: column;
  align-content: flex-start;
  flex-shrink: 0;
  width: 208px;
  gap: 2px;
  padding: 12px 8px;
  background: var(--an-surface, #fff) !important;
  border-right: 1px solid var(--an-border, #E5E7EB) !important;
}
.item-form-dialog .item-form-sidenav-btn {
  flex-shrink: 0;
}
.item-form-dialog .item-form-sidenav-btn {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 10px 12px;
  border: none;
  border-radius: 8px;
  background: transparent;
  color: var(--an-text-muted, #6B7280);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: -0.01em;
  text-align: left;
  text-transform: capitalize;
  cursor: pointer;
  transition: color 0.15s ease, background-color 0.15s ease;
}
.item-form-dialog .item-form-sidenav-btn md-icon {
  font-size: 18px;
  width: 18px;
  height: 18px;
  color: inherit;
  flex-shrink: 0;
}
.item-form-dialog .item-form-sidenav-btn:hover:not(.item-form-sidenav-btn--active) {
  color: var(--an-text, #111827);
  background: var(--an-surface-100, #F3F4F6);
}
.item-form-dialog .item-form-sidenav-btn--active {
  color: var(--an-primary, #2563EB);
  background: var(--an-primary-subtle, rgba(37, 99, 235, 0.08));
}
.item-form-dialog .item-form-sections {
  flex: 1;
  min-width: 0;
}
@media (max-width: 880px) {
  .item-form-dialog .item-form-sidenav-shell {
    flex-direction: column;
  }
  .item-form-dialog .item-form-sidenav {
    display: none;
  }
  .item-form-dialog .item-form-mobile-nav {
    display: flex;
    overflow-x: auto;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  .item-form-dialog .item-form-mobile-nav::-webkit-scrollbar {
    display: none;
  }
  .item-form-dialog .item-form-mobile-nav {
    width: 100%;
    background: var(--an-surface, #fff) !important;
    border-bottom: 1px solid var(--an-border, #E5E7EB) !important;
    padding: 0 8px;
  }
  .item-form-dialog .item-form-mobile-nav-btn {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 0 16px;
    height: 48px;
    border: none;
    background: transparent;
    color: var(--an-text-muted, #6B7280);
    font-size: 13px;
    font-weight: 600;
    text-transform: capitalize;
    cursor: pointer;
    border-bottom: 3px solid transparent;
    transition: color 0.15s ease;
  }
  .item-form-dialog .item-form-mobile-nav-btn md-icon {
    font-size: 18px;
    width: 18px;
    height: 18px;
    color: inherit;
  }
  .item-form-dialog .item-form-mobile-nav-btn--active {
    color: var(--an-primary, #2563EB);
    border-bottom-color: var(--an-primary, #2563EB);
  }
}

.item-form-toolbar {
  background: var(--an-surface, #fff) !important;
  color: var(--an-text, #111827) !important;
  border-bottom: 1px solid var(--an-border, #E5E7EB) !important;
  min-height: 64px;
  position: relative;
  box-shadow: none !important;
}
.item-form-toolbar .md-toolbar-tools {
  height: 64px;
  padding: 0 16px 0 24px;
}

.item-form-toolbar-tools {
  display: flex;
  align-items: center;
  gap: 8px;
}

.item-form-header-img {
  width: 42px;
  height: 42px;
  border-radius: 10px;
  overflow: hidden;
  flex-shrink: 0;
  background: var(--an-surface-100, #F3F4F6);
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--an-border, #E5E7EB);
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.05);
}
.item-form-header-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.item-form-header-img--empty md-icon {
  color: var(--an-text-muted, #9CA3AF);
  font-size: 20px;
  width: 20px;
  height: 20px;
}

.item-form-header-title {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  margin: 0 8px;
}

.item-form-title {
  font-size: 16px;
  font-weight: 700;
  color: var(--an-text, #111827);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 320px;
  display: block;
  letter-spacing: -0.02em;
}

.item-form-subtitle {
  font-size: 11px;
  color: var(--an-text-muted, #9CA3AF);
  display: block;
  margin-top: 1px;
  font-weight: 500;
}

.item-form-nav-btn {
  color: var(--an-text-muted, #6B7280) !important;
  border-radius: 8px !important;
  transition: all 0.15s ease !important;
}
.item-form-nav-btn:not([disabled]):hover {
  color: var(--an-text, #111827) !important;
  background: var(--an-surface-100, #F3F4F6) !important;
}
.item-form-nav-btn[disabled] {
  opacity: 0.3 !important;
}
.item-form-nav-btn md-icon {
  color: inherit !important;
}

.item-form-tab-content {
  padding: 16px 0 !important;
  background: var(--an-bg-subtle, #F8FAFC) !important;
}

.item-form-section {
  background: var(--an-surface, #ffffff) !important;
  border: 1px solid var(--an-border, #E2E8F0) !important;
  border-radius: 12px !important;
  padding: 24px !important;
  margin: 0 24px 20px 24px !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02), 0 1px 2px rgba(0, 0, 0, 0.01) !important;
  position: relative;
  transition: box-shadow 0.2s ease !important;
}
.item-form-section:last-child {
  margin-bottom: 4px !important;
}
.item-form-section:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04) !important;
}

.item-form-section-header {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 20px;
  padding-left: 0;
  position: relative;
}
.item-form-section-header::before {
  display: none;
}
.item-form-section-header md-icon:first-child {
  font-size: 18px;
  width: 18px;
  height: 18px;
  color: var(--an-primary, #2563EB);
  flex-shrink: 0;
}
.item-form-section-header span {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--an-text, #1E293B);
  flex: 1;
}
.item-form-section-header--separated {
  margin-top: 24px;
  border-top: 1px solid var(--an-border, #F1F5F9);
  padding-top: 20px;
}

.item-form-hint-text {
  font-size: 13px;
  color: var(--an-text-muted, #475569);
  margin: 0 0 20px 0;
  line-height: 1.5;
  background: var(--an-primary-light, #EFF6FF);
  padding: 12px 16px;
  border-radius: 8px;
  border: 1px solid rgba(37, 99, 235, 0.1);
  border-left: 3px solid var(--an-primary, #2563EB);
}

.item-form-section [layout=row] {
  margin-left: -8px;
  margin-right: -8px;
}
.item-form-section [layout=row] > * {
  padding-left: 8px !important;
  padding-right: 8px !important;
}
.item-form-section md-input-container:not(.chekboxInput) {
  margin: 10px 0 !important;
  position: relative !important;
  padding: 0 !important;
  width: 100% !important;
}
.item-form-section md-input-container:not(.chekboxInput) label:not(.md-no-float) {
  font-size: 12px !important;
  font-weight: 600 !important;
  color: var(--an-text-muted, #64748B) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  position: static !important;
  display: block !important;
  margin-bottom: 6px !important;
  transform: none !important;
  transition: none !important;
}
.item-form-section md-input-container:not(.chekboxInput) > input:not(.md-input), .item-form-section md-input-container:not(.chekboxInput) > textarea, .item-form-section md-input-container:not(.chekboxInput) md-select .md-select-value {
  border: 1px solid var(--an-border, #CBD5E1) !important;
  border-radius: 8px !important;
  padding: 10px 14px !important;
  background: var(--an-surface, #ffffff) !important;
  color: var(--an-text, #1E293B) !important;
  font-size: 14px !important;
  height: 42px !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  width: 100% !important;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.01) !important;
  transition: border-color 0.15s ease, box-shadow 0.15s ease !important;
}
.item-form-section md-input-container:not(.chekboxInput) > input:not(.md-input):focus, .item-form-section md-input-container:not(.chekboxInput) > input:not(.md-input).md-select-value:focus, .item-form-section md-input-container:not(.chekboxInput) > textarea:focus, .item-form-section md-input-container:not(.chekboxInput) > textarea.md-select-value:focus, .item-form-section md-input-container:not(.chekboxInput) md-select .md-select-value:focus, .item-form-section md-input-container:not(.chekboxInput) md-select .md-select-value.md-select-value:focus {
  border-color: var(--an-primary, #2563EB) !important;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12) !important;
  outline: none !important;
}
.item-form-section md-input-container:not(.chekboxInput) textarea {
  height: auto !important;
  min-height: 84px !important;
  resize: vertical !important;
}
.item-form-section md-input-container:not(.chekboxInput) .md-errors-spacer {
  display: none !important;
}
.item-form-section md-autocomplete {
  background: transparent !important;
  box-shadow: none !important;
  margin: 10px 0 !important;
}
.item-form-section md-autocomplete md-autocomplete-wrap {
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.01) !important;
  border: 1px solid var(--an-border, #CBD5E1) !important;
  border-radius: 8px !important;
  height: 42px !important;
  background: var(--an-surface, #ffffff) !important;
  transition: border-color 0.15s ease, box-shadow 0.15s ease !important;
  padding-left: 14px;
}
.item-form-section md-autocomplete md-autocomplete-wrap.md-whiteframe-z1 {
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.01) !important;
}
.item-form-section md-autocomplete md-autocomplete-wrap:focus-within, .item-form-section md-autocomplete md-autocomplete-wrap.md-menu-showing {
  border-color: var(--an-primary, #2563EB) !important;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12) !important;
}
.item-form-section md-autocomplete md-autocomplete-wrap input {
  padding: 0 14px !important;
  height: 40px !important;
  font-size: 14px !important;
  color: var(--an-text, #1E293B) !important;
  box-shadow: none !important;
  border: none !important;
  background: transparent !important;
}
.item-form-section md-autocomplete md-autocomplete-wrap button {
  margin-right: 8px;
}
.item-form-section md-autocomplete md-autocomplete-wrap button md-icon {
  color: var(--an-text-muted, #94A3B8);
  font-size: 18px;
  width: 18px;
  height: 18px;
}
.item-form-section md-input-container:has(md-checkbox), .item-form-section .chekboxInput {
  margin: 10px 0 !important;
  padding: 0 !important;
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
}
.item-form-section md-input-container.md-block:has(input[type=number]), .item-form-section .wf-input-numeric {
  max-width: 100% !important;
}
.item-form-section .item-form-row {
  margin-left: -10px !important;
  margin-right: -10px !important;
}
.item-form-section .item-form-row > [flex], .item-form-section .item-form-row > [flex-gt-sm], .item-form-section .item-form-row > [flex-gt-xs] {
  padding-left: 10px !important;
  padding-right: 10px !important;
  box-sizing: border-box !important;
}
.item-form-section .item-form-row {
  align-items: center !important;
}

.item-form-section md-checkbox {
  margin: 8px 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  vertical-align: middle;
}
.item-form-section md-checkbox .md-icon-right {
  position: absolute !important;
  right: 0 !important;
  top: 30px !important;
}
.item-form-section md-checkbox .md-container {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  transform: none !important;
  margin: 0 8px 0 0 !important;
  flex-shrink: 0;
}
.item-form-section md-checkbox .md-label {
  font-size: 13.5px !important;
  font-weight: 500 !important;
  color: var(--an-text, #334155) !important;
  margin-left: 0 !important;
  line-height: normal !important;
}
.item-form-section md-checkbox .md-icon {
  border-color: var(--an-border, #CBD5E1) !important;
  border-radius: 6px !important;
  width: 18px !important;
  height: 18px !important;
  transition: background 0.15s ease, border-color 0.15s ease !important;
}
.item-form-section md-checkbox .md-icon::after {
  left: 5.5px !important;
  top: 2.5px !important;
  width: 5px !important;
  height: 9px !important;
}
.item-form-section md-checkbox.md-checked .md-icon {
  background-color: var(--an-primary, #2563EB) !important;
  border-color: var(--an-primary, #2563EB) !important;
}

.ai-input-wrapper {
  position: relative !important;
  display: block !important;
}
.ai-input-wrapper .ai-input-actions {
  position: absolute;
  right: 8px;
  bottom: 8px;
  display: flex;
  align-items: center;
  gap: 6px;
  z-index: 10;
}
.ai-input-wrapper .ai-input-actions--textarea {
  bottom: 12px;
}
.ai-input-wrapper input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]):not(.md-datepicker-input),
.ai-input-wrapper input.md-input:not(.md-datepicker-input) {
  padding-right: 80px !important;
}
.ai-input-wrapper textarea,
.ai-input-wrapper textarea.md-input {
  padding-right: 80px !important;
  padding-bottom: 40px !important;
}
.ai-input-wrapper .emoji-magic-btn, .ai-input-wrapper .ai-magic-btn {
  position: static !important;
  width: 28px !important;
  min-width: 28px !important;
  height: 28px !important;
  min-height: 28px !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 6px !important;
  background: transparent !important;
  box-shadow: none !important;
  transition: all 0.2s ease !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
}
.ai-input-wrapper .emoji-magic-btn md-icon, .ai-input-wrapper .ai-magic-btn md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  margin: 0 !important;
  transition: all 0.2s ease !important;
}
.ai-input-wrapper .emoji-magic-btn {
  color: var(--an-text-muted, #64748B) !important;
  border: 1px solid var(--an-border, #CBD5E1) !important;
}
.ai-input-wrapper .emoji-magic-btn:hover {
  background: var(--an-surface-100, #F3F4F6) !important;
  color: var(--an-text, #1E293B) !important;
  border-color: var(--an-text-muted, #94A3B8) !important;
}
.ai-input-wrapper .ai-magic-btn {
  color: var(--an-primary, #2563EB) !important;
  border: 1px solid rgba(37, 99, 235, 0.2) !important;
  background: rgba(37, 99, 235, 0.05) !important;
}
.ai-input-wrapper .ai-magic-btn:hover {
  background: linear-gradient(135deg, #7C3AED 0%, #2563EB 100%) !important;
  color: #fff !important;
  border-color: transparent !important;
  box-shadow: 0 2px 8px rgba(124, 58, 237, 0.25) !important;
}
.ai-input-wrapper .ai-magic-btn:hover md-icon {
  color: #fff !important;
}
.ai-input-wrapper .ai-magic-btn md-icon {
  color: var(--an-primary, #2563EB) !important;
}

.ai-spin {
  animation: ai-sparkle 1s ease-in-out infinite;
}

@keyframes ai-sparkle {
  0%, 100% {
    transform: rotate(0deg) scale(1);
  }
  25% {
    transform: rotate(-10deg) scale(1.08);
  }
  50% {
    transform: rotate(10deg) scale(1);
  }
  75% {
    transform: rotate(-5deg) scale(1.04);
  }
}
.item-form-price-by-service {
  margin-top: 8px;
}

.item-form-toggle-btn {
  font-size: 12.5px !important;
  color: var(--an-primary, #2563EB) !important;
  padding: 0 14px !important;
  margin: 0 !important;
  height: 34px !important;
  line-height: 34px !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  background: var(--an-bg-subtle, #F8FAFC) !important;
  border: 1px solid var(--an-border, #E2E8F0) !important;
  border-radius: 8px !important;
  transition: all 0.15s ease !important;
  font-weight: 600 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.item-form-toggle-btn:hover {
  background: var(--an-surface-100, #EFF6FF) !important;
  border-color: var(--an-primary, #2563EB) !important;
}
.item-form-toggle-btn md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  margin-right: 6px;
  margin-top: -1px;
}

.item-form-service-prices {
  margin-top: 12px;
  padding: 16px;
  background: var(--an-bg-subtle, #F8FAFC);
  border-radius: 10px;
  border: 1px solid var(--an-border, #E2E8F0);
}

.item-form-restrict-panel {
  padding: 16px;
  background: var(--an-bg-subtle, #F8FAFC);
  border-radius: 10px;
  border: 1px solid var(--an-border, #E2E8F0);
}

.item-form-layout-list {
  padding-left: 12px;
  margin-top: 8px;
}

.item-form-translation-list {
  margin-bottom: 16px;
}

.item-form-translation-card {
  border: 1px solid var(--an-border, #E2E8F0) !important;
  border-radius: 12px !important;
  padding: 20px !important;
  margin-bottom: 14px !important;
  background: var(--an-surface, #ffffff) !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.01);
}
.item-form-translation-card md-input-container {
  margin: 12px 0 !important;
}

.item-form-translation-actions {
  margin-top: 16px;
  padding-top: 12px;
  border-top: 1px solid var(--an-border, #F1F5F9);
}

.item-form-empty-translations {
  text-align: center;
  padding: 36px 0;
  color: var(--an-text-muted, #94A3B8);
}
.item-form-empty-translations md-icon {
  font-size: 36px;
  width: 36px;
  height: 36px;
  display: block;
  margin: 0 auto 12px;
  opacity: 0.4;
}
.item-form-empty-translations p {
  font-size: 13px;
  margin: 0;
  line-height: 1.5;
}

.item-form-combo-groups {
  margin-top: 16px;
}
.item-form-combo-groups md-tabs {
  border: 1px solid var(--an-border, #E2E8F0) !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  background: var(--an-surface, #ffffff) !important;
}
.item-form-combo-groups md-tabs md-tabs-wrapper {
  background: var(--an-bg-subtle, #F8FAFC) !important;
  border-bottom: 1px solid var(--an-border, #E2E8F0) !important;
  padding: 0 !important;
}
.item-form-combo-groups md-tabs md-tab-item {
  font-size: 12px !important;
  padding: 0 16px !important;
  height: 40px !important;
  text-transform: capitalize !important;
}

.item-form-combo-items {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
  padding: 16px;
  background: var(--an-bg-subtle, #F8FAFC);
  border-radius: 10px;
  border: 1px solid var(--an-border, #E2E8F0);
}

.item-form-combo-chip {
  display: flex;
  align-items: center;
  gap: 8px;
  background: var(--an-surface, #ffffff) !important;
  border: 1px solid var(--an-border, #E2E8F0) !important;
  border-radius: 20px !important;
  padding: 4px 6px 4px 10px !important;
  font-size: 12.5px !important;
  font-weight: 500 !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.02);
  transition: all 0.15s ease;
}
.item-form-combo-chip:hover {
  border-color: var(--an-primary, #2563EB);
  box-shadow: 0 2px 6px rgba(37, 99, 235, 0.08);
}
.item-form-combo-chip img {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  object-fit: cover;
}
.item-form-combo-chip .item-form-combo-remove {
  width: 22px !important;
  min-width: 22px !important;
  height: 22px !important;
  min-height: 22px !important;
  padding: 0 !important;
  margin: 0 !important;
  line-height: 22px !important;
  border-radius: 50% !important;
  transition: background 0.15s ease;
}
.item-form-combo-chip .item-form-combo-remove:hover {
  background: rgba(239, 68, 68, 0.08) !important;
}
.item-form-combo-chip .item-form-combo-remove md-icon {
  font-size: 12px;
  width: 12px;
  height: 12px;
}

.item-form-recommended-list {
  margin-top: 16px;
}

.item-form-recommended-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  border: 1px solid var(--an-border, #E2E8F0);
  border-radius: 10px;
  margin-bottom: 8px;
  background: var(--an-surface, #ffffff);
  transition: all 0.15s ease;
}
.item-form-recommended-item:hover {
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.04);
  border-color: var(--an-primary, #2563EB);
}
.item-form-recommended-item img {
  width: 44px;
  height: 44px;
  border-radius: 8px;
  object-fit: cover;
  flex-shrink: 0;
  background: var(--an-surface-100, #F3F4F6);
}

.item-form-recommended-info {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.item-form-recommended-name {
  font-size: 13.5px;
  font-weight: 600;
  color: var(--an-text, #1E293B);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.item-form-recommended-price {
  font-size: 11.5px;
  color: var(--an-text-muted, #64748B);
  font-weight: 500;
}

.item-form-empty-recommended {
  text-align: center;
  padding: 36px 0;
  color: var(--an-text-muted, #94A3B8);
}
.item-form-empty-recommended md-icon {
  font-size: 36px;
  width: 36px;
  height: 36px;
  display: block;
  margin: 0 auto 10px;
  opacity: 0.4;
}
.item-form-empty-recommended p {
  font-size: 13px;
  margin: 0;
  line-height: 1.5;
}

.item-form-section md-input-container:not(.chekboxInput) > input:not(.md-input),
.item-form-section md-input-container:not(.chekboxInput) md-select .md-select-value {
  border: 1px solid var(--an-border, #CBD5E1) !important;
  border-radius: 8px !important;
  padding: 0 14px !important;
  background: var(--an-surface, #ffffff) !important;
  height: 42px !important;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.01) !important;
  color: var(--an-text, #1E293B) !important;
  font-size: 14px !important;
  margin: 0 !important;
  transition: border-color 0.15s ease, box-shadow 0.15s ease !important;
}
.item-form-section md-input-container:not(.chekboxInput) > input:not(.md-input):focus, .item-form-section md-input-container:not(.chekboxInput) > input:not(.md-input).md-select-value:focus,
.item-form-section md-input-container:not(.chekboxInput) md-select .md-select-value:focus,
.item-form-section md-input-container:not(.chekboxInput) md-select .md-select-value.md-select-value:focus {
  border-color: var(--an-primary, #2563EB) !important;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12) !important;
}
.item-form-section md-input-container:not(.chekboxInput) md-select {
  padding: 0 !important;
  height: 42px !important;
  min-height: 42px !important;
  border: none !important;
  margin: 0 !important;
}
.item-form-section md-input-container:not(.chekboxInput) md-select .md-select-value {
  border: 1px solid var(--an-border, #CBD5E1) !important;
  border-radius: 8px !important;
  padding: 0 14px !important;
  height: 42px !important;
  min-height: 42px !important;
  display: flex !important;
  align-items: center !important;
  background: var(--an-surface, #ffffff) !important;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.01) !important;
}
.item-form-section md-input-container:not(.chekboxInput) md-select .md-select-value span {
  font-size: 14px !important;
  color: var(--an-text, #1E293B) !important;
}
.item-form-section md-input-container:not(.chekboxInput) md-select:focus .md-select-value {
  border-color: var(--an-primary, #2563EB) !important;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12) !important;
}

.item-form-taxonomy-search {
  width: 100%;
  max-width: 380px;
  margin-bottom: 16px;
}

.item-form-taxonomy-values {
  gap: 8px;
  margin-top: 8px;
}

.item-form-taxonomy-row {
  border: 1px solid var(--an-border, #E2E8F0) !important;
  border-radius: 10px !important;
  padding: 4px 10px !important;
  background: var(--an-surface, #ffffff) !important;
  margin-right: 8px !important;
  margin-bottom: 8px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.01) !important;
}
.item-form-taxonomy-row md-input-container {
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
}
.item-form-taxonomy-row md-input-container label {
  display: none !important;
}
.item-form-taxonomy-row md-input-container input, .item-form-taxonomy-row md-input-container md-select {
  height: 32px !important;
  border: none !important;
  padding: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--an-text, #1E293B) !important;
  font-size: 13px !important;
}
.item-form-taxonomy-row md-input-container input:focus, .item-form-taxonomy-row md-input-container md-select:focus {
  box-shadow: none !important;
}
.item-form-section .item-form-taxonomy-row md-input-container:not(.chekboxInput) {
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
  width: auto !important;
}
.item-form-section .item-form-taxonomy-row md-input-container:not(.chekboxInput) > input:not(.md-input),
.item-form-section .item-form-taxonomy-row md-input-container:not(.chekboxInput) md-select .md-select-value {
  border: none !important;
  border-radius: 0 !important;
  padding: 0 8px !important;
  background: transparent !important;
  height: 28px !important;
  box-shadow: none !important;
  color: var(--an-text, #1E293B) !important;
  font-size: 13px !important;
  margin: 0 !important;
}
.item-form-section .item-form-taxonomy-row md-input-container:not(.chekboxInput) > input:not(.md-input):focus, .item-form-section .item-form-taxonomy-row md-input-container:not(.chekboxInput) > input:not(.md-input).md-select-value:focus,
.item-form-section .item-form-taxonomy-row md-input-container:not(.chekboxInput) md-select .md-select-value:focus,
.item-form-section .item-form-taxonomy-row md-input-container:not(.chekboxInput) md-select .md-select-value.md-select-value:focus {
  border: none !important;
  box-shadow: none !important;
}
.item-form-section .item-form-taxonomy-row md-input-container:not(.chekboxInput) md-select {
  padding: 0 !important;
  height: 28px !important;
  min-height: 28px !important;
  border: none !important;
}
.item-form-section .item-form-taxonomy-row md-input-container:not(.chekboxInput) md-select .md-select-value {
  border-bottom: none !important;
  padding: 0 8px !important;
  height: 28px !important;
  min-height: 28px !important;
}
.item-form-section .item-form-taxonomy-row md-input-container:not(.chekboxInput) md-select .md-select-value span {
  font-size: 13px !important;
  color: var(--an-text, #1E293B) !important;
}
.item-form-taxonomy-row .md-icon-button {
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  padding: 0 !important;
  margin: 0 !important;
}
.item-form-taxonomy-row .md-icon-button md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  color: var(--an-text-muted, #94A3B8);
}

.ctc-header {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
}
.ctc-header md-icon {
  font-size: 20px;
  width: 20px;
  height: 20px;
  color: var(--an-primary, #2563EB);
}
.ctc-header h4 {
  margin: 0;
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text, #1E293B);
}

.ctc-hint {
  background: var(--an-surface2);
  padding: 12px 16px;
  border-radius: 8px;
  border: 1px solid var(--an-border);
  margin: 0 0 20px;
  font-size: 13px;
  line-height: 1.5;
  color: var(--an-text-muted, #64748B);
}
.ctc-hint p {
  margin: 0;
  font-size: 13px;
  line-height: 1.5;
  color: var(--an-text-muted, #64748B);
}

.ctc-mode {
  margin-bottom: 20px;
}
.ctc-mode__toggle {
  margin: 0 0 4px;
}
.ctc-mode__toggle .md-label {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text, #1E293B);
}
.ctc-mode__hint {
  margin: 0 0 14px 32px;
  font-size: 12px;
  line-height: 1.5;
  color: var(--an-text-muted, #64748B);
}
.ctc-mode__switch {
  display: flex;
  border: 1px solid var(--an-border, #E2E8F0);
  border-radius: 10px;
  overflow: hidden;
  width: fit-content;
  max-width: 100%;
}
.ctc-mode__btn {
  margin: 0 !important;
  border-radius: 0 !important;
  min-width: 0 !important;
  height: 34px !important;
  line-height: 34px !important;
  padding: 0 14px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  text-transform: none !important;
  color: var(--an-text-muted, #64748B) !important;
  background: var(--an-surface, #ffffff) !important;
}
.ctc-mode__btn + .ctc-mode__btn {
  border-left: 1px solid var(--an-border, #E2E8F0);
}
.ctc-mode__btn md-icon,
.ctc-mode__btn [class*=iconoir-] {
  font-size: 16px;
  width: 16px;
  height: 16px;
  color: var(--an-text-muted, #64748B) !important;
}
.ctc-mode__btn--on {
  background: var(--an-primary, #2563EB) !important;
  color: #fff !important;
}
.ctc-mode__btn--on md-icon,
.ctc-mode__btn--on [class*=iconoir-] {
  color: #fff !important;
}

.ctc-loading {
  padding: 40px 0;
}

.ctc-empty {
  padding: 32px 16px;
  text-align: center;
  border: 1px dashed var(--an-border, #E2E8F0);
  border-radius: 12px;
}
.ctc-empty md-icon {
  color: var(--an-text-muted, #94A3B8);
  font-size: 32px;
  width: 32px;
  height: 32px;
  display: block;
  margin: 0 auto 12px;
}
.ctc-empty p {
  color: var(--an-text-muted, #64748B);
  font-size: 13px;
  line-height: 1.5;
  margin: 0 auto;
  max-width: 380px;
}

.ctc-search-wrapper {
  position: relative;
  margin-bottom: 14px;
}

.ctc-search-icon {
  position: absolute;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 18px;
  --an-icon-size: 18px;
  width: 18px;
  height: 18px;
  color: var(--an-text-muted, #94A3B8);
  pointer-events: none;
}

.ctc-search-input {
  width: 100%;
  height: 40px;
  box-sizing: border-box;
  padding: 0 12px 0 38px;
  border: 1px solid var(--an-border, #E2E8F0);
  border-radius: 10px;
  background: var(--an-surface, #ffffff);
  color: var(--an-text, #1E293B);
  font-size: 13px;
  outline: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.ctc-search-input::placeholder {
  color: var(--an-placeholder);
}
.ctc-search-input:focus {
  border-color: var(--an-primary, #2563EB);
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
}

.ctc-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 12px;
}

.ctc-card {
  border: 1px solid var(--an-border, #E2E8F0) !important;
  border-radius: 12px !important;
  padding: 12px !important;
  background: var(--an-surface, #ffffff) !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  transition: all 0.2s ease !important;
  user-select: none;
}
.ctc-card:hover {
  border-color: var(--an-primary, #2563EB) !important;
  box-shadow: 0 4px 12px rgba(37, 99, 235, 0.06) !important;
}
.ctc-card.ctc-card--selected {
  border-color: var(--an-primary, #2563EB) !important;
  background: var(--an-primary-soft) !important;
  box-shadow: 0 0 0 1px var(--an-primary, #2563EB) !important;
}
.ctc-card__thumb {
  width: 48px !important;
  height: 48px !important;
  border-radius: 8px !important;
  object-fit: cover !important;
  flex-shrink: 0;
  background: var(--an-surface3);
}
.ctc-card__info {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.ctc-card__name {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text, #1E293B);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ctc-card__price {
  font-size: 12px;
  color: var(--an-primary, #2563EB);
  font-weight: 700;
}
.ctc-card__delta {
  font-size: 11px;
  color: #10B981;
  font-weight: 600;
  margin-left: 4px;
}
.ctc-card__eligible-badge {
  font-size: 11px;
  line-height: 1.35;
  color: var(--an-text-muted, #64748B);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.ctc-card__toggle {
  flex-shrink: 0;
  display: flex;
  align-items: center;
}
.ctc-card__toggle md-icon {
  font-size: 24px;
  width: 24px;
  height: 24px;
}

.ctc-check--on {
  color: var(--an-primary, #2563EB) !important;
}

.ctc-check--off {
  color: var(--an-text-muted, #94A3B8) !important;
}

.item-form-interface-warning {
  color: rgb(196, 7, 7);
}

.item-form-dialog md-dialog-actions {
  background: var(--an-surface, #fff) !important;
  border-top: 1px solid var(--an-border, #E5E7EB) !important;
  padding: 12px 24px !important;
  min-height: 64px;
  box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.02) !important;
}
.item-form-dialog md-dialog-actions .md-button:not(.md-primary) {
  color: var(--an-text-muted, #6B7280) !important;
  font-weight: 600;
  border-radius: 8px !important;
  transition: all 0.15s ease;
  padding: 0 20px !important;
  height: 40px !important;
  line-height: 40px !important;
}
.item-form-dialog md-dialog-actions .md-button:not(.md-primary):hover {
  background: var(--an-surface-100, #F3F4F6) !important;
  color: var(--an-text, #111827) !important;
}
.item-form-dialog md-dialog-actions .md-button.md-primary.md-raised {
  background: linear-gradient(135deg, var(--an-primary, #2563EB) 0%, #1d4ed8 100%) !important;
  color: #fff !important;
  border-radius: 8px !important;
  box-shadow: 0 4px 12px rgba(37, 99, 235, 0.2) !important;
  font-weight: 600;
  padding: 0 24px !important;
  height: 40px !important;
  line-height: 40px !important;
  transition: all 0.15s ease;
}
.item-form-dialog md-dialog-actions .md-button.md-primary.md-raised:hover {
  box-shadow: 0 6px 16px rgba(37, 99, 235, 0.3) !important;
  transform: translateY(-1px);
}
.item-form-dialog md-dialog-actions .md-button.md-primary.md-raised md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  color: #fff !important;
  margin-right: 4px;
}

.modern-split-modal {
  display: flex;
  width: 100%;
  flex-direction: row;
}
@media (max-width: 959px) {
  .modern-split-modal {
    flex-direction: column;
  }
}

.item-form-main-col {
  flex: 1;
  min-width: 0;
  transition: all 0.3s ease;
}

.item-form-preview-col {
  width: 380px;
  flex-shrink: 0;
  padding-top: 32px;
  padding-bottom: 32px;
  background-color: #F8FAFC !important;
}
.waitry-dark-theme .item-form-preview-col {
  background-color: var(--an-surface2) !important;
}
.item-form-preview-col {
  border-left: 1px solid #E2E8F0;
}
@media (max-width: 959px) {
  .item-form-preview-col {
    width: 100%;
    border-left: none;
    border-top: 1px solid #E2E8F0;
  }
}

.item-preview-phone-wrap {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  margin-bottom: 16px;
}

.item-preview-phone {
  width: 240px;
  height: 480px;
  background: #fff;
  border-radius: 36px;
  border: 6px solid #1a1a1a;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.08), inset 0 0 0 2px #000, 0 24px 48px -12px rgba(0, 0, 0, 0.25);
  position: relative;
  overflow: hidden;
  flex-shrink: 0;
  transform: scale(0.92);
  transform-origin: top center;
}

.item-preview-notch {
  position: absolute;
  top: 10px;
  left: 50%;
  transform: translateX(-50%);
  width: 72px;
  height: 20px;
  background: #1a1a1a;
  border-radius: 10px;
  z-index: 20;
}

.item-preview-screen {
  position: absolute;
  inset: 0;
  border-radius: 30px;
  overflow-y: auto;
  overflow-x: hidden;
  background: #f9fafb;
}
.item-preview-screen::-webkit-scrollbar {
  width: 2px;
}
.item-preview-screen::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.12);
  border-radius: 2px;
}

.item-preview-hero {
  position: relative;
  width: 100%;
  height: 160px;
  background: linear-gradient(135deg, #e5e7eb 0%, #d1d5db 100%);
  flex-shrink: 0;
}
.item-preview-hero img.item-preview-hero-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.item-preview-hero .item-preview-hero-gradient {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 50px;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.3), transparent);
}

.item-preview-content {
  background: #fff;
  border-radius: 18px 18px 0 0;
  margin-top: -18px;
  position: relative;
  z-index: 5;
  padding: 16px 14px 20px;
  min-height: 180px;
  box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.04);
}

.item-preview-name-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 6px;
  margin-bottom: 8px;
}

.item-preview-name {
  font-size: 15px;
  font-weight: 700;
  color: #111827;
  line-height: 1.3;
  flex: 1;
}

.item-preview-price {
  font-size: 14px;
  font-weight: 700;
  color: var(--an-primary, #2563EB);
  white-space: nowrap;
  padding: 2px 10px;
  background: var(--an-primary-light, #EFF6FF);
  border-radius: 20px;
  flex-shrink: 0;
}

.item-preview-desc {
  font-size: 11px;
  line-height: 1.6;
  color: #6b7280;
  margin: 0 0 12px;
}
.item-preview-desc--placeholder {
  color: #d1d5db;
  font-style: italic;
}

.item-preview-combo {
  margin-bottom: 12px;
}

.item-preview-combo-group {
  margin-bottom: 8px;
}

.item-preview-combo-name {
  font-size: 10px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #9CA3AF;
  margin-bottom: 4px;
}

.item-preview-combo-items {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}

.item-preview-combo-chip {
  font-size: 10px;
  background: #F3F4F6;
  color: #374151;
  border-radius: 10px;
  padding: 2px 8px;
}

.item-preview-variations {
  margin-bottom: 12px;
}

.item-preview-variation-group {
  margin-bottom: 8px;
}

.item-preview-variation-label {
  font-size: 10px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #9CA3AF;
  margin-bottom: 4px;
}

.item-preview-select {
  margin: 4px 0 !important;
  padding: 0 !important;
}
.item-preview-select md-select {
  height: 30px !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 6px !important;
  background: #F8FAFC !important;
  padding: 0 8px !important;
  font-size: 11px !important;
  margin: 0 !important;
}
.item-preview-select md-select .md-select-value {
  border: none !important;
  border-bottom: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  min-width: 0 !important;
  padding: 0 !important;
  height: 100% !important;
  align-items: center !important;
}
.item-preview-select md-select .md-select-value span {
  color: #374151 !important;
  font-size: 11px !important;
}
.item-preview-select .md-errors-spacer {
  display: none !important;
}

.item-preview-fieldset {
  border: 1px solid #E2E8F0 !important;
  border-radius: 6px !important;
  padding: 8px !important;
  margin: 4px 0 !important;
  background: #F8FAFC !important;
}
.item-preview-fieldset md-checkbox {
  margin: 4px 0 !important;
  display: block !important;
}
.item-preview-fieldset md-checkbox .md-container {
  width: 14px !important;
  height: 14px !important;
}
.item-preview-fieldset md-checkbox .md-container .md-icon {
  width: 14px !important;
  height: 14px !important;
  border-radius: 3px !important;
}
.item-preview-fieldset md-checkbox .md-container .md-icon::after {
  left: 4px !important;
  top: 1.5px !important;
  width: 3.5px !important;
  height: 7px !important;
}
.item-preview-fieldset md-checkbox .md-label {
  font-size: 11px !important;
  line-height: normal !important;
  color: #374151 !important;
  margin-left: 6px !important;
}

.item-preview-cta {
  margin-top: 14px;
}

.item-preview-add-btn {
  width: 100%;
  height: 38px;
  border-radius: 10px;
  background: var(--an-primary, #2563EB);
  color: #fff;
  border: none;
  font-size: 13px;
  font-weight: 600;
  cursor: default;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  opacity: 0.9;
}
.item-preview-add-btn md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  color: #fff;
}

.mobilePreview {
  position: relative;
  height: auto;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 24px;
}

.checkbox-wrapper-item {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  margin: 10px 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}
.checkbox-wrapper-item .checkbox-dummy-label {
  font-size: 12px !important;
  font-weight: 600 !important;
  color: transparent !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  display: block !important;
  margin-bottom: 0px !important;
  height: 24px !important;
  user-select: none !important;
  pointer-events: none !important;
}
.checkbox-wrapper-item .checkbox-container {
  display: flex !important;
  align-items: center !important;
  height: 42px !important;
}
.checkbox-wrapper-item .checkbox-container md-checkbox {
  margin: 0 !important;
}
.checkbox-wrapper-item .checkbox-container md-checkbox .md-label {
  display: flex !important;
  align-items: center !important;
  line-height: 1.4 !important;
  vertical-align: middle !important;
}

.service-price-row {
  border-bottom: 1px solid var(--an-border, #E2E8F0);
  padding: 8px 0;
  margin-bottom: 8px;
}
.service-price-row:last-child {
  border-bottom: none;
  margin-bottom: 0;
}
.service-price-row .service-price-check {
  display: flex;
  align-items: center;
}
.service-price-row .service-price-check md-checkbox {
  margin: 0 !important;
}
.service-price-row .service-price-input {
  margin: 0 !important;
}

.layout-restrict-checkbox {
  margin: 8px 0 !important;
  display: flex !important;
  align-items: center !important;
}
.layout-restrict-checkbox md-checkbox {
  margin: 0 !important;
}

.item-form-combo-tabs-container {
  margin: 24px -24px -24px -24px !important;
}

.combo-custom-tab-bar {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  overflow-x: auto;
  background: var(--an-bg-subtle, #F8FAFC);
  border-top: 1px solid var(--an-border, #E2E8F0);
  border-bottom: 1px solid var(--an-border, #E2E8F0);
  padding: 0 8px;
  gap: 2px;
  min-height: 48px;
}
.combo-custom-tab-bar::-webkit-scrollbar {
  height: 2px;
}
.combo-custom-tab-bar::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.12);
  border-radius: 2px;
}

.combo-custom-tab-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 16px;
  height: 48px;
  border: none;
  background: transparent;
  cursor: pointer;
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text-muted, #64748B);
  border-bottom: 2.5px solid transparent;
  transition: color 0.15s ease, border-color 0.15s ease;
  white-space: nowrap;
  flex-shrink: 0;
  outline: none;
}
.combo-custom-tab-btn md-icon {
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  color: inherit !important;
}
.combo-custom-tab-btn .combo-tab-mandatory-star {
  color: #EF4444;
  font-weight: bold;
  margin-left: 1px;
}
.combo-custom-tab-btn:hover {
  color: var(--an-text, #1E293B);
}
.combo-custom-tab-btn.combo-custom-tab-btn--active {
  color: var(--an-primary, #2563EB);
  border-bottom-color: var(--an-primary, #2563EB);
}

.combo-custom-tab-panel {
  background: var(--an-surface, #ffffff);
  padding: 0;
}
.combo-custom-tab-panel .combo-group-tab-header {
  background: var(--an-bg-subtle, #F8FAFC);
  border-bottom: 1px solid var(--an-border, #E2E8F0);
  padding: 16px 24px;
  margin: 0 !important;
  min-height: 56px;
  box-sizing: border-box;
}
.combo-custom-tab-panel .combo-group-tab-header .combo-group-tab-title-wrapper {
  gap: 8px;
}
.combo-custom-tab-panel .combo-group-tab-header .combo-group-tab-title-wrapper .combo-group-tab-display-name {
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text, #1E293B);
}
.combo-custom-tab-panel .combo-group-tab-header .combo-group-tab-title-wrapper .combo-group-mandatory-badge {
  font-size: 10px;
  font-weight: 700;
  background: var(--an-primary-light, #EFF6FF);
  color: var(--an-primary, #2563EB);
  padding: 2px 8px;
  border-radius: 20px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.combo-custom-tab-panel .combo-group-tab-header .combo-group-delete-btn {
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  min-height: 32px !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 8px !important;
  border: 1px solid rgba(239, 68, 68, 0.15) !important;
  background: transparent !important;
  transition: all 0.15s ease;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.combo-custom-tab-panel .combo-group-tab-header .combo-group-delete-btn md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  color: #EF4444 !important;
  margin: 0 !important;
}
.combo-custom-tab-panel .combo-group-tab-header .combo-group-delete-btn:hover {
  background: #FEF2F2 !important;
}
.waitry-dark-theme .combo-custom-tab-panel .combo-group-tab-header .combo-group-delete-btn:hover {
  background: rgba(239, 68, 68, 0.16) !important;
}
.combo-custom-tab-panel .combo-group-tab-header .combo-group-delete-btn:hover {
  border-color: #EF4444 !important;
}
.combo-custom-tab-panel .combo-group-card-body {
  padding: 24px;
  box-sizing: border-box;
}
.combo-custom-tab-panel .combo-group-card-body .combo-inputs-row, .combo-custom-tab-panel .combo-group-card-body .combo-config-row {
  display: flex;
  flex-direction: row;
  gap: 16px;
  margin-bottom: 8px;
  flex-wrap: nowrap;
}
.combo-custom-tab-panel .combo-group-card-body .combo-inputs-row > *, .combo-custom-tab-panel .combo-group-card-body .combo-config-row > * {
  flex: 1 1 0% !important;
  max-width: 100% !important;
  box-sizing: border-box;
  margin-top: 0 !important;
}
@media (max-width: 599px) {
  .combo-custom-tab-panel .combo-group-card-body .combo-inputs-row, .combo-custom-tab-panel .combo-group-card-body .combo-config-row {
    flex-direction: column;
  }
  .combo-custom-tab-panel .combo-group-card-body .combo-inputs-row > *, .combo-custom-tab-panel .combo-group-card-body .combo-config-row > * {
    flex: 1 1 auto !important;
    width: 100% !important;
  }
}
.combo-custom-tab-panel .combo-group-card-body .checkbox-wrapper-item {
  margin: 10px 0 !important;
}
.combo-custom-tab-panel .combo-group-card-body .checkbox-wrapper-item .checkbox-dummy-label {
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text-muted, #64748B);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  display: block;
  margin-bottom: 6px;
}
.combo-custom-tab-panel .combo-group-card-body .checkbox-wrapper-item .checkbox-container {
  height: 42px;
  display: flex;
  align-items: center;
  background: transparent;
}
.combo-custom-tab-panel .combo-group-card-body .checkbox-wrapper-item .checkbox-container md-checkbox {
  margin: 0 !important;
  padding: 0 !important;
}

.combo-tab-section {
  overflow: visible;
  box-sizing: border-box;
}
.combo-tab-section * {
  box-sizing: border-box;
}
.combo-tab-section .combo-header-controls {
  background: var(--an-bg-subtle, #F8FAFC);
  border: 1px solid var(--an-border, #E2E8F0);
  border-radius: 12px;
  padding: 16px 24px;
  margin: 0 0 24px 0 !important;
  gap: 16px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.01);
}
.combo-tab-section .premium-combo-switch {
  margin: 0 !important;
  padding: 4px 0;
  width: 100%;
}
.combo-tab-section .premium-combo-switch .md-label {
  margin-left: 14px !important;
  white-space: normal !important;
  flex: 1;
  width: 100%;
}
.combo-tab-section .premium-combo-switch .switch-labels {
  display: flex;
  flex-direction: column;
  gap: 2px;
  white-space: normal;
}
.combo-tab-section .premium-combo-switch .switch-labels .switch-title {
  font-size: 13.5px;
  font-weight: 600;
  color: var(--an-text, #1E293B);
  white-space: normal;
}
.combo-tab-section .premium-combo-switch .switch-labels .switch-subtitle {
  font-size: 11px;
  color: var(--an-text-muted, #64748B);
  font-weight: normal;
  white-space: normal;
  line-height: 1.3;
}
.combo-tab-section .premium-add-group-btn {
  height: 38px !important;
  line-height: 38px !important;
  font-size: 12.5px !important;
  padding: 0 18px !important;
  border-radius: 8px !important;
  text-transform: none !important;
  font-weight: 600 !important;
  margin: 0 !important;
  box-shadow: 0 2px 8px rgba(37, 99, 235, 0.12) !important;
  transition: all 0.15s ease !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
}
.combo-tab-section .premium-add-group-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(37, 99, 235, 0.22) !important;
}
.combo-tab-section .premium-add-group-btn md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  margin-right: 0 !important;
}
.combo-tab-section .combo-inline-search-wrapper {
  flex: 1;
  min-width: 0;
  position: relative;
  box-sizing: border-box;
  margin: 10px 0;
}
.combo-tab-section .combo-inline-search-wrapper .combo-inline-search-label {
  display: block;
  font-size: 12px;
  font-weight: 500;
  color: var(--an-text-muted, #64748B);
  text-transform: none;
  letter-spacing: normal;
  margin-bottom: 6px;
  margin-top: 2px;
}
.combo-tab-section .combo-number-input {
  margin: 10px 0 !important;
}
.combo-tab-section .combo-number-input .md-errors-spacer {
  display: none !important;
}
.combo-tab-section .combo-group-options-section {
  margin-top: 24px;
  padding-top: 18px;
  border-top: 1px solid var(--an-border, #F1F5F9);
}
.combo-tab-section .combo-group-options-section .combo-section-title {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--an-text-muted, #64748B);
  margin-bottom: 14px;
  gap: 8px;
  display: flex;
  align-items: center;
}
.combo-tab-section .combo-group-options-section .combo-section-title md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  color: var(--an-text-muted, #64748B);
}
.combo-tab-section .combo-added-items-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.combo-tab-section .combo-added-item-row {
  background: var(--an-bg-subtle, #F8FAFC);
  border: 1px solid var(--an-border, #E2E8F0);
  border-radius: 10px;
  padding: 12px 18px;
  transition: all 0.15s ease;
}
.combo-tab-section .combo-added-item-row:hover {
  background: #ffffff;
}
.waitry-dark-theme .combo-tab-section .combo-added-item-row:hover {
  background: var(--an-surface);
}
.combo-tab-section .combo-added-item-row:hover {
  border-color: var(--an-primary, #2563EB);
  box-shadow: 0 4px 12px rgba(37, 99, 235, 0.04);
}
.combo-tab-section .combo-added-item-row .combo-item-info {
  gap: 14px;
}
.combo-tab-section .combo-added-item-row .combo-item-info .combo-item-thumb-wrapper {
  width: 42px;
  height: 42px;
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
}
.waitry-dark-theme .combo-tab-section .combo-added-item-row .combo-item-info .combo-item-thumb-wrapper {
  background: var(--an-surface3);
}
.combo-tab-section .combo-added-item-row .combo-item-info .combo-item-thumb-wrapper {
  border: 1px solid var(--an-border, #E2E8F0);
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.combo-tab-section .combo-added-item-row .combo-item-info .combo-item-thumb-wrapper img.combo-item-thumb {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.combo-tab-section .combo-added-item-row .combo-item-info .combo-item-meta {
  min-width: 0;
}
.combo-tab-section .combo-added-item-row .combo-item-info .combo-item-meta .combo-item-name {
  font-size: 13.5px;
  font-weight: 600;
  color: var(--an-text, #1E293B);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.combo-tab-section .combo-added-item-row .combo-item-info .combo-item-meta .combo-item-base-price {
  font-size: 11px;
  color: var(--an-text-muted, #64748B);
  margin-top: 3px;
  font-weight: 500;
}
.combo-tab-section .combo-added-item-row .combo-item-pricing-actions {
  gap: 16px;
}
.combo-tab-section .combo-added-item-row .combo-item-pricing-actions .combo-item-extra-price-input {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 3px;
  width: 120px;
}
.combo-tab-section .combo-added-item-row .combo-item-pricing-actions .combo-item-extra-price-input .combo-extra-price-label {
  font-size: 10px;
  font-weight: 600;
  color: var(--an-text-muted, #94A3B8);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  white-space: nowrap;
  line-height: 1;
}
.combo-tab-section .combo-added-item-row .combo-item-pricing-actions .combo-item-extra-price-input .combo-extra-price-field-row {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
}
.combo-tab-section .combo-added-item-row .combo-item-pricing-actions .combo-item-extra-price-input .combo-extra-price-field-row .combo-price-currency-symbol {
  position: absolute;
  left: 10px;
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text-muted, #94A3B8);
  pointer-events: none;
  z-index: 1;
  line-height: 1;
}
.combo-tab-section .combo-added-item-row .combo-item-pricing-actions .combo-item-extra-price-input .combo-extra-price-field-row input {
  width: 100%;
  height: 38px;
  border: 1px solid var(--an-border, #E2E8F0);
  border-radius: 8px;
  padding: 0 10px 0 26px;
  font-size: 13px;
  font-weight: 600;
  color: var(--an-primary, #2563EB);
  background: #ffffff;
}
.waitry-dark-theme .combo-tab-section .combo-added-item-row .combo-item-pricing-actions .combo-item-extra-price-input .combo-extra-price-field-row input {
  background: var(--an-surface2);
}
.combo-tab-section .combo-added-item-row .combo-item-pricing-actions .combo-item-extra-price-input .combo-extra-price-field-row input {
  box-sizing: border-box;
  transition: all 0.15s ease;
}
.combo-tab-section .combo-added-item-row .combo-item-pricing-actions .combo-item-extra-price-input .combo-extra-price-field-row input::-webkit-outer-spin-button, .combo-tab-section .combo-added-item-row .combo-item-pricing-actions .combo-item-extra-price-input .combo-extra-price-field-row input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.combo-tab-section .combo-added-item-row .combo-item-pricing-actions .combo-item-extra-price-input .combo-extra-price-field-row input {
  -moz-appearance: textfield;
}
.combo-tab-section .combo-added-item-row .combo-item-pricing-actions .combo-item-extra-price-input .combo-extra-price-field-row input:focus {
  outline: none;
  border-color: var(--an-primary, #2563EB);
  box-shadow: 0 0 0 1px var(--an-primary, #2563EB);
}
.combo-tab-section .combo-added-item-row .combo-item-pricing-actions .combo-item-remove-btn {
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  min-height: 34px !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 8px !important;
  border: 1px solid rgba(239, 68, 68, 0.15) !important;
  background: transparent !important;
  transition: all 0.15s ease;
}
.combo-tab-section .combo-added-item-row .combo-item-pricing-actions .combo-item-remove-btn md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  color: #EF4444 !important;
}
.combo-tab-section .combo-added-item-row .combo-item-pricing-actions .combo-item-remove-btn:hover {
  background: #FEF2F2 !important;
}
.waitry-dark-theme .combo-tab-section .combo-added-item-row .combo-item-pricing-actions .combo-item-remove-btn:hover {
  background: rgba(239, 68, 68, 0.16) !important;
}
.combo-tab-section .combo-added-item-row .combo-item-pricing-actions .combo-item-remove-btn:hover {
  border-color: #EF4444 !important;
}
.combo-tab-section .combo-added-items-empty {
  padding: 36px 0;
  text-align: center;
  color: var(--an-text-muted, #94A3B8);
  background: var(--an-bg-subtle, #F8FAFC);
  border: 1px dashed var(--an-border, #E2E8F0);
  border-radius: 12px;
}
.combo-tab-section .combo-added-items-empty md-icon {
  font-size: 32px;
  width: 32px;
  height: 32px;
  display: block;
  margin: 0 auto 10px;
  opacity: 0.3;
}
.combo-tab-section .combo-added-items-empty span {
  font-size: 12.5px;
  font-weight: 500;
}

@media (max-width: 599px) {
  .item-form-section {
    margin: 0 12px 12px !important;
    padding: 16px !important;
  }
  .item-form-section .item-form-row > venue-lang-field {
    margin-bottom: 4px;
  }
  .item-form-section .item-form-row > .checkbox-wrapper-item {
    margin: 0 !important;
  }
  .item-form-section .item-form-row > .checkbox-wrapper-item .checkbox-dummy-label {
    display: none !important;
  }
  .item-form-nav-btn {
    width: 34px !important;
    min-width: 34px !important;
    height: 34px !important;
    min-height: 34px !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .combo-tab-section .combo-header-controls {
    flex-direction: column !important;
    align-items: stretch !important;
    padding: 16px !important;
  }
  .combo-tab-section .combo-header-controls .premium-add-group-btn {
    width: 100% !important;
  }
  .combo-tab-section .combo-added-item-row {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 12px;
  }
  .combo-tab-section .combo-added-item-row .combo-item-pricing-actions {
    justify-content: space-between !important;
  }
  .combo-tab-section .combo-added-item-row .combo-item-pricing-actions .combo-item-extra-price-input {
    width: 100% !important;
    flex: 1;
  }
}
md-dialog {
  border-radius: 16px !important;
  overflow: hidden;
}
.waitry-dark-theme md-dialog {
  background: #1a1c24 !important;
}

.wf-toolbar {
  background: var(--an-surface) !important;
  border-bottom: 1px solid var(--an-border);
  box-shadow: none !important;
  min-height: 64px;
}
.waitry-dark-theme .wf-toolbar {
  border-bottom-color: rgba(255, 255, 255, 0.07);
}
.wf-toolbar .md-toolbar-tools {
  height: 64px;
  padding: 0 16px 0 20px;
  gap: 12px;
}
.wf-toolbar .md-toolbar-tools h2 {
  font-size: 16px;
  font-weight: 700;
  color: var(--an-text);
  margin: 0;
  letter-spacing: -0.2px;
}

.wf-toolbar-header {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  flex: 1;
}
.wf-toolbar-header__thumb {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: var(--an-surface2, rgba(0, 0, 0, 0.05));
  border: 1px solid var(--an-border);
  overflow: hidden;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.wf-toolbar-header__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.wf-toolbar-header__thumb md-icon {
  font-size: 20px;
  color: var(--an-text-faint) !important;
}
.wf-toolbar-header__text {
  min-width: 0;
  flex: 1;
}
.wf-toolbar-header__title {
  font-size: 16px;
  font-weight: 700;
  color: var(--an-text);
  margin: 0;
  line-height: 1.3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  letter-spacing: -0.2px;
}
.wf-toolbar-header__subtitle {
  font-size: 11px;
  color: var(--an-text-faint);
  margin: 0;
  line-height: 1.3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.wf-close-btn {
  opacity: 0.55;
  transition: opacity 0.15s, background-color 0.15s;
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
}
.wf-close-btn:hover {
  opacity: 1;
  background-color: var(--an-bg-subtle, rgba(0, 0, 0, 0.05)) !important;
}
.wf-close-btn md-icon {
  font-size: 20px;
}

.wf-form-body {
  padding: 24px 28px;
  display: flex;
  flex-direction: column;
  gap: 0;
}
.wf-form-body--compact {
  padding: 16px 20px;
}
.wf-form-body--no-pad {
  padding: 0;
}

.wf-section {
  margin-bottom: 28px;
}
.wf-section:last-child {
  margin-bottom: 0;
}

.wf-section-header {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--an-border);
}
.waitry-dark-theme .wf-section-header {
  border-bottom-color: rgba(255, 255, 255, 0.07);
}
.wf-section-header__icon {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: var(--an-primary-soft, rgba(236, 78, 54, 0.08));
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.wf-section-header__icon md-icon {
  font-size: 17px;
  color: var(--an-primary);
  margin: 0;
}
.wf-section-header__icon--blue {
  background: rgba(59, 130, 246, 0.08);
}
.wf-section-header__icon--blue md-icon {
  color: #3b82f6;
}
.wf-section-header__icon--green {
  background: rgba(16, 185, 129, 0.08);
}
.wf-section-header__icon--green md-icon {
  color: #10b981;
}
.wf-section-header__icon--amber {
  background: rgba(245, 158, 11, 0.08);
}
.wf-section-header__icon--amber md-icon {
  color: #f59e0b;
}
.wf-section-header__icon--violet {
  background: rgba(139, 92, 246, 0.08);
}
.wf-section-header__icon--violet md-icon {
  color: #8b5cf6;
}
.wf-section-header__icon--rose {
  background: var(--an-rose-soft);
}
.wf-section-header__icon--rose md-icon {
  color: var(--an-rose);
}
.wf-section-header__text {
  flex: 1;
  min-width: 0;
}
.wf-section-header__title {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  color: var(--an-text-muted);
  margin: 0;
  line-height: 1;
}
.wf-section-header__desc {
  font-size: 11px;
  color: var(--an-text-faint);
  margin: 3px 0 0;
  line-height: 1.4;
}

.wf-row {
  display: flex;
  gap: 16px;
  align-items: flex-start;
}
.wf-row > * {
  flex: 1;
  min-width: 0;
}
.wf-row--align-center {
  align-items: center;
}
.wf-row--wrap {
  flex-wrap: wrap;
}

.wf-hint {
  font-size: 11px;
  color: var(--an-text-faint);
  margin: -6px 0 8px;
  line-height: 1.4;
}
.wf-hint--warning {
  color: #f59e0b;
}
.wf-hint--error {
  color: var(--an-danger, #ef4444);
}

.wf-pricelist-calc-hint {
  margin-top: -8px !important;
  margin-bottom: 12px !important;
  font-size: 13px !important;
  color: var(--an-primary) !important;
  font-weight: 600 !important;
}

.wf-check-row {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 10px 14px;
  border-radius: 10px;
  border: 1px solid var(--an-border);
  background: var(--an-bg, rgba(0, 0, 0, 0.02));
  margin-bottom: 8px;
  transition: border-color 0.15s, background 0.15s;
}
.waitry-dark-theme .wf-check-row {
  border-color: rgba(255, 255, 255, 0.07);
  background: rgba(255, 255, 255, 0.02);
}
.wf-check-row:hover {
  border-color: var(--an-border-hover);
  background: var(--an-surface);
}
.wf-check-row:last-child {
  margin-bottom: 0;
}
.wf-check-row md-checkbox {
  margin: 0 !important;
}
.wf-check-row__text {
  flex: 1;
  min-width: 0;
}
.wf-check-row__label {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
  line-height: 1.3;
}
.wf-check-row__desc {
  font-size: 11px;
  color: var(--an-text-faint);
  margin-top: 2px;
  line-height: 1.4;
}

.wf-list-card {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 12px;
  overflow: hidden;
  margin-bottom: 8px;
  transition: box-shadow 0.15s;
}
.waitry-dark-theme .wf-list-card {
  background: #1e2029;
  border-color: rgba(255, 255, 255, 0.07);
}
.wf-list-card:last-child {
  margin-bottom: 0;
}
.wf-list-card:hover {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}
.wf-list-card__body {
  padding: 16px 20px;
}
.wf-list-card__body .wf-row {
  margin-bottom: 0;
}
.wf-list-card__actions {
  padding: 8px 12px;
  border-top: 1px solid var(--an-border);
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
  background: var(--an-bg, rgba(0, 0, 0, 0.01));
}
.waitry-dark-theme .wf-list-card__actions {
  border-top-color: rgba(255, 255, 255, 0.07);
  background: rgba(0, 0, 0, 0.1);
}

.wf-add-btn {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  border-radius: 10px;
  border: 1px dashed var(--an-border);
  background: transparent;
  color: var(--an-text-muted);
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.15s;
  width: 100%;
  margin-top: 8px;
  text-align: left;
}
.waitry-dark-theme .wf-add-btn {
  border-color: rgba(255, 255, 255, 0.12);
}
.wf-add-btn:hover {
  background: var(--an-primary-soft, rgba(236, 78, 54, 0.06));
  border-color: var(--an-primary);
  color: var(--an-primary);
}
.wf-add-btn md-icon {
  font-size: 18px;
  margin: 0;
}

.wf-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 32px 24px;
  text-align: center;
  color: var(--an-text-faint);
  border: 1px dashed var(--an-border);
  border-radius: 12px;
  background: var(--an-bg, rgba(0, 0, 0, 0.01));
  gap: 8px;
}
.waitry-dark-theme .wf-empty {
  border-color: rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.02);
}
.wf-empty md-icon {
  font-size: 32px;
  width: 32px;
  height: 32px;
  min-width: 32px;
  min-height: 32px;
  line-height: 32px;
  opacity: 0.3;
}
.wf-empty__title {
  font-size: 13px;
  font-weight: 600;
  margin: 0;
}
.wf-empty__desc {
  font-size: 12px;
  margin: 0;
  opacity: 0.7;
}

.wf-banner {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 16px;
  border-radius: 10px;
  font-size: 12px;
  line-height: 1.5;
  margin-bottom: 16px;
}
.wf-banner md-icon {
  font-size: 16px;
  flex-shrink: 0;
  margin-top: 1px;
}
.wf-banner--info {
  background: rgba(59, 130, 246, 0.08);
  border: 1px solid rgba(59, 130, 246, 0.18);
  color: #3b82f6;
}
.waitry-dark-theme .wf-banner--info {
  background: rgba(59, 130, 246, 0.12);
}
.wf-banner--warning {
  background: rgba(245, 158, 11, 0.08);
  border: 1px solid rgba(245, 158, 11, 0.2);
  color: #d97706;
}
.wf-banner--success {
  background: rgba(16, 185, 129, 0.08);
  border: 1px solid rgba(16, 185, 129, 0.2);
  color: #10b981;
}
.wf-banner--danger {
  background: rgba(239, 68, 68, 0.08);
  border: 1px solid rgba(239, 68, 68, 0.2);
  color: #ef4444;
}

md-dialog-actions.wf-actions,
.wf-actions {
  padding: 12px 20px !important;
  border-top: 1px solid var(--an-border);
  background: var(--an-surface);
  gap: 8px;
  display: flex;
  align-items: center;
}
.waitry-dark-theme md-dialog-actions.wf-actions,
.waitry-dark-theme .wf-actions {
  border-top-color: rgba(255, 255, 255, 0.07);
  background: #1a1c24;
}
md-dialog-actions.wf-actions .wf-spacer,
.wf-actions .wf-spacer {
  flex: 1;
}
md-dialog-actions.wf-actions .wf-cancel-btn,
.wf-actions .wf-cancel-btn {
  background: transparent !important;
  color: var(--an-text-muted) !important;
  font-weight: 500;
  border-radius: 8px !important;
  font-size: 13px;
}
md-dialog-actions.wf-actions .wf-cancel-btn:hover,
.wf-actions .wf-cancel-btn:hover {
  background: var(--an-bg-subtle, rgba(0, 0, 0, 0.04)) !important;
  color: var(--an-text) !important;
}
md-dialog-actions.wf-actions .wf-save-btn,
.wf-actions .wf-save-btn {
  background: var(--an-rose) !important;
  color: #fff !important;
  border-radius: 8px !important;
  font-weight: 600;
  font-size: 13px;
  padding: 0 20px !important;
  box-shadow: 0 2px 8px rgba(236, 78, 54, 0.25);
  transition: all 0.2s;
  border: none !important;
}
md-dialog-actions.wf-actions .wf-save-btn span,
.wf-actions .wf-save-btn span {
  color: #fff !important;
}
md-dialog-actions.wf-actions .wf-save-btn:hover:not([disabled]),
.wf-actions .wf-save-btn:hover:not([disabled]) {
  opacity: 0.92;
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(236, 78, 54, 0.35);
}
md-dialog-actions.wf-actions .wf-save-btn[disabled],
.wf-actions .wf-save-btn[disabled] {
  opacity: 0.45;
  box-shadow: none;
  transform: none;
}
md-dialog-actions.wf-actions .wf-danger-btn,
.wf-actions .wf-danger-btn {
  background: rgba(239, 68, 68, 0.08) !important;
  color: #ef4444 !important;
  border-radius: 8px !important;
  font-weight: 600;
  font-size: 13px;
}
md-dialog-actions.wf-actions .wf-danger-btn:hover,
.wf-actions .wf-danger-btn:hover {
  background: rgba(239, 68, 68, 0.14) !important;
}

.wf-schedule-grid {
  display: flex;
  flex-direction: column;
  gap: 0;
  border: 1px solid var(--an-border);
  border-radius: 12px;
  overflow: hidden;
}
.waitry-dark-theme .wf-schedule-grid {
  border-color: rgba(255, 255, 255, 0.07);
}

.wf-schedule-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 16px;
  border-bottom: 1px solid var(--an-border);
  transition: background 0.1s;
}
.waitry-dark-theme .wf-schedule-row {
  border-bottom-color: rgba(255, 255, 255, 0.05);
}
.wf-schedule-row:last-child {
  border-bottom: none;
}
.wf-schedule-row:hover {
  background: var(--an-bg, rgba(0, 0, 0, 0.015));
}
.wf-schedule-row--disabled {
  opacity: 0.4;
  pointer-events: none;
}
.wf-schedule-row__day {
  width: 90px;
  flex-shrink: 0;
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
}
.wf-schedule-row__check {
  flex-shrink: 0;
  margin: 0 !important;
}
.wf-schedule-row__times {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1;
}
.wf-schedule-row__times .md-input-container {
  margin: 0 !important;
  padding: 0 !important;
  width: 80px;
}
.wf-schedule-row__times .wf-time-sep {
  font-size: 11px;
  color: var(--an-text-faint);
  flex-shrink: 0;
}
.wf-schedule-row__add-slot {
  flex-shrink: 0;
  opacity: 0.5;
  transition: opacity 0.15s;
}
.wf-schedule-row__add-slot:hover {
  opacity: 1;
}

.wf-file-input {
  display: none;
}

.wf-upload-area {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  padding: 32px 24px;
  border: 2px dashed var(--an-border);
  border-radius: 16px;
  background: var(--an-bg, rgba(0, 0, 0, 0.01));
  text-align: center;
  transition: all 0.2s;
  cursor: pointer;
  position: relative;
  overflow: hidden;
}
.waitry-dark-theme .wf-upload-area {
  border-color: rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.02);
}
.wf-upload-area:hover {
  border-color: var(--an-primary);
  background: var(--an-primary-soft, rgba(236, 78, 54, 0.04));
}
.wf-upload-area__icon {
  font-size: 40px;
  --an-icon-size: 40px;
  color: var(--an-text-faint);
  opacity: 0.5;
}
.wf-upload-area__title {
  font-size: 14px;
  font-weight: 600;
  color: var(--an-text-muted);
  margin: 0;
}
.wf-upload-area__hint {
  font-size: 11px;
  color: var(--an-text-faint);
  margin: -8px 0 0;
}
.wf-upload-area__preview {
  width: 100%;
  border-radius: 12px;
  overflow: hidden;
  position: relative;
}
.wf-upload-area__preview img, .wf-upload-area__preview video {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 12px;
}
.wf-upload-area--avatar .wf-upload-area__preview {
  width: 120px;
  height: 120px;
  border-radius: 50%;
}
.wf-upload-area--avatar .wf-upload-area__preview img, .wf-upload-area--avatar .wf-upload-area__preview video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}

.wf-restrict-panel {
  border: 1px solid var(--an-border);
  border-radius: 12px;
  overflow: hidden;
  margin-top: 8px;
}
.waitry-dark-theme .wf-restrict-panel {
  border-color: rgba(255, 255, 255, 0.07);
}
.wf-restrict-panel__header {
  padding: 10px 16px;
  background: var(--an-bg, rgba(0, 0, 0, 0.02));
  border-bottom: 1px solid var(--an-border);
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-faint);
}
.waitry-dark-theme .wf-restrict-panel__header {
  background: rgba(255, 255, 255, 0.03);
  border-bottom-color: rgba(255, 255, 255, 0.07);
}
.wf-restrict-panel__list {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  max-height: 200px;
  overflow-y: auto;
}
.wf-restrict-panel__item {
  padding: 8px 16px;
  border-bottom: 1px solid var(--an-border);
  width: 100%;
}
.waitry-dark-theme .wf-restrict-panel__item {
  border-bottom-color: rgba(255, 255, 255, 0.05);
}
.wf-restrict-panel__item:last-child {
  border-bottom: none;
}
.wf-restrict-panel__item md-checkbox {
  margin: 0 !important;
  font-size: 13px;
}

.wf-qr-block {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 20px;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 12px;
  margin-top: 8px;
}
.waitry-dark-theme .wf-qr-block {
  background: #1e2029;
  border-color: rgba(255, 255, 255, 0.07);
}
.wf-qr-block__code {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}
.wf-qr-block__code img {
  border-radius: 8px;
}
.wf-qr-block__info {
  flex: 1;
  min-width: 0;
}
.wf-qr-block__label {
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-faint);
  margin: 0 0 6px;
}
.wf-qr-block__url {
  font-size: 13px;
  color: var(--an-primary);
  font-family: monospace;
  word-break: break-all;
  background: var(--an-bg, rgba(0, 0, 0, 0.02));
  padding: 6px 10px;
  border-radius: 6px;
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1px solid var(--an-border);
}

.wf-item-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 16px;
  border: 1px solid var(--an-border);
  border-radius: 10px;
  background: var(--an-surface);
  margin-bottom: 6px;
  transition: box-shadow 0.15s;
}
.waitry-dark-theme .wf-item-row {
  background: #1e2029;
  border-color: rgba(255, 255, 255, 0.07);
}
.wf-item-row:last-child {
  margin-bottom: 0;
}
.wf-item-row:hover {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}
.wf-item-row__select {
  flex: 2;
  margin: 0 !important;
  padding: 0 !important;
}
.wf-item-row__qty {
  flex: 1;
  margin: 0 !important;
  padding: 0 !important;
  min-width: 80px;
}
.wf-item-row__delete {
  flex-shrink: 0;
  opacity: 0.5;
  transition: opacity 0.15s;
}
.wf-item-row__delete:hover {
  opacity: 1;
  color: #ef4444 !important;
}

md-dialog md-input-container.md-block {
  margin-bottom: 16px;
}
md-dialog md-input-container.md-block:last-child {
  margin-bottom: 0;
}

.wf-cancel-btn.md-button {
  margin-right: 0 !important;
}

.wf-progress-inline,
.wf-progress-center {
  display: inline-block;
  margin: 0 auto;
  vertical-align: middle;
}

.wf-action-btn.md-button {
  margin-top: 18px;
  flex-shrink: 0;
}

.wf-schedule-options {
  margin-left: 18px;
}

.wf-schedule-extra {
  margin-left: 20px;
}

.wf-schedule-btn {
  margin-top: 10px;
}

.wf-schedule-row md-input-container.checkboxInput {
  min-width: 62px !important;
}

.wf-restrict-col {
  min-width: 300px;
}

.wf-restrict-list {
  margin-left: 30px;
  min-width: 300px;
}

.wf-checkbox-compact {
  margin-bottom: 2px !important;
}

.wf-checkbox-option {
  margin-left: 30px !important;
  margin-bottom: 16px !important;
}

.wf-radio-option {
  margin-left: 30px !important;
  margin-bottom: 16px !important;
}

.waitry-control-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: stretch;
  min-width: 0;
}

.waitry-check-tile {
  display: flex !important;
  align-items: center !important;
  min-height: 40px;
  margin: 0 !important;
  padding: 0 12px !important;
  border: 1px solid var(--an-border, rgba(0, 0, 0, 0.12));
  border-radius: 8px;
  background: var(--an-surface, #fff);
  color: var(--an-text-muted, #6b7280);
  box-sizing: border-box;
}
.waitry-check-tile .md-container {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  transform: none !important;
  flex: 0 0 18px;
  margin: 0 10px 0 0 !important;
}
.waitry-check-tile .md-label {
  margin: 0 !important;
  line-height: 1.25;
  white-space: nowrap;
}

.wf-error-text {
  color: var(--an-danger, #ef4444);
  font-size: 11px;
  margin: 4px 0 0;
}

.wf-icon-ok {
  color: #10b981 !important;
}

.wf-icon-warn {
  color: #f59e0b !important;
}

.wf-icon-error {
  color: #ef4444 !important;
}

.wf-text-left {
  text-align: left !important;
}

.wf-text-center {
  text-align: center !important;
}

.wf-pt-sm {
  padding-top: 10px !important;
}

.wf-pt-md {
  padding-top: 20px !important;
}

.wf-pt-lg {
  padding-top: 25px !important;
}

.wf-mt-sm {
  margin-top: 8px !important;
}

.wf-mt-md {
  margin-top: 12px !important;
}

.wf-mt-lg {
  margin-top: 20px !important;
}

.wf-mb-sm {
  margin-bottom: 8px !important;
}

.wf-mb-md {
  margin-bottom: 12px !important;
}

.wf-mb-lg {
  margin-bottom: 20px !important;
}

.wf-ml-lg {
  margin-left: 20px !important;
}

.wf-w-full {
  width: 100% !important;
}

.wf-text-center {
  text-align: center !important;
}

.wf-hidden {
  visibility: hidden !important;
}

.wf-label-micro {
  font-size: 11px;
  font-weight: 600;
  color: var(--an-text-faint);
  text-transform: uppercase;
  letter-spacing: 0.04em;
  margin: 0 0 4px;
}

.wf-text-muted {
  color: var(--an-text-muted) !important;
  font-size: 13px;
}

.wf-text-faint {
  color: var(--an-text-faint) !important;
  font-size: 12px;
}

.wf-gap-sm {
  gap: 6px !important;
}

.wf-gap-md {
  gap: 16px !important;
}

.wf-gap-lg {
  gap: 24px !important;
}

.wf-min-w-100 {
  min-width: 100px !important;
}

.wf-min-w-300 {
  min-width: 300px !important;
}

.wf-min-w-350 {
  min-width: 350px !important;
}

.wf-integration-card {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  border-radius: 10px;
  border: 1px solid var(--an-border);
  background: var(--an-surface);
  transition: all 0.15s;
  cursor: pointer;
}
.waitry-dark-theme .wf-integration-card {
  background: #1e2029;
  border-color: rgba(255, 255, 255, 0.07);
}
.wf-integration-card:hover {
  border-color: var(--an-primary);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}
.wf-integration-card__icon {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background: var(--an-bg, rgba(0, 0, 0, 0.03));
}
.wf-integration-card__icon img {
  width: 24px;
  height: 24px;
  object-fit: contain;
}
.wf-integration-card__text {
  flex: 1;
  min-width: 0;
}
.wf-integration-card__name {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
}
.wf-integration-card__desc {
  font-size: 11px;
  color: var(--an-text-faint);
  margin-top: 1px;
}
.wf-integration-card__status {
  flex-shrink: 0;
}
.wf-integration-card__status md-icon {
  font-size: 18px;
}

.wf-interface-section {
  padding: 20px 0;
}
.wf-interface-section:first-child {
  padding-top: 0;
}
.wf-interface-section__header {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-faint);
  margin-bottom: 12px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--an-border);
}

.wf-switch-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 8px 0;
}
.wf-switch-row md-switch {
  margin: 0 !important;
}
.wf-switch-row__text {
  flex: 1;
  min-width: 0;
}
.wf-switch-row__text-label {
  font-size: 13px;
  font-weight: 500;
  color: var(--an-text);
}
.wf-switch-row__text-desc {
  font-size: 11px;
  color: var(--an-text-faint);
  margin-top: 1px;
}

.wf-config-card {
  padding: 16px 20px;
  border: 1px solid var(--an-border);
  border-radius: 12px;
  background: var(--an-surface);
  margin-bottom: 12px;
}
.waitry-dark-theme .wf-config-card {
  background: #1e2029;
  border-color: rgba(255, 255, 255, 0.07);
}
.wf-config-card:last-child {
  margin-bottom: 0;
}
.wf-config-card__title {
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
  margin-bottom: 12px;
}

.wf-color-dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  flex-shrink: 0;
}

.wf-value-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 10px;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 600;
  background: var(--an-primary-soft, rgba(236, 78, 54, 0.08));
  color: var(--an-primary);
}

md-dialog md-input-container {
  margin: 0 0 10px !important;
  width: 100%;
}
md-dialog md-input-container:last-child {
  margin-bottom: 0 !important;
}
md-dialog md-input-container label {
  font-size: 13px !important;
  color: var(--an-text-faint) !important;
}
md-dialog md-input-container input, md-dialog md-input-container textarea, md-dialog md-input-container md-select {
  font-size: 14px !important;
  color: var(--an-text) !important;
}
md-dialog md-input-container textarea {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 100% !important;
  box-sizing: border-box !important;
}
md-dialog md-input-container.checkboxInput, md-dialog md-input-container:has(md-checkbox), md-dialog md-input-container:has(md-switch) {
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
  min-height: 0 !important;
  height: auto !important;
}
md-dialog md-input-container.checkboxInput .md-errors-spacer, md-dialog md-input-container:has(md-checkbox) .md-errors-spacer, md-dialog md-input-container:has(md-switch) .md-errors-spacer {
  display: none !important;
}
md-dialog md-input-container:has(md-datepicker) {
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
}
md-dialog md-input-container:has(md-datepicker) .md-errors-spacer {
  display: none !important;
}
md-dialog md-input-container:has(input[type=number]),
md-dialog .wf-input-numeric {
  max-width: 160px !important;
  width: 100%;
}
md-dialog md-dialog-content div[layout=row],
md-dialog md-dialog-content div[layout-gt-sm=row],
md-dialog md-dialog-content div[layout-gt-xs=row] {
  margin-left: -8px;
  margin-right: -8px;
}
md-dialog md-dialog-content div[layout=row] > [flex], md-dialog md-dialog-content div[layout=row] > [flex-gt-sm], md-dialog md-dialog-content div[layout=row] > [flex-gt-xs], md-dialog md-dialog-content div[layout=row] > md-input-container,
md-dialog md-dialog-content div[layout-gt-sm=row] > [flex],
md-dialog md-dialog-content div[layout-gt-sm=row] > [flex-gt-sm],
md-dialog md-dialog-content div[layout-gt-sm=row] > [flex-gt-xs],
md-dialog md-dialog-content div[layout-gt-sm=row] > md-input-container,
md-dialog md-dialog-content div[layout-gt-xs=row] > [flex],
md-dialog md-dialog-content div[layout-gt-xs=row] > [flex-gt-sm],
md-dialog md-dialog-content div[layout-gt-xs=row] > [flex-gt-xs],
md-dialog md-dialog-content div[layout-gt-xs=row] > md-input-container {
  padding-left: 8px;
  padding-right: 8px;
  box-sizing: border-box;
}
md-dialog fieldset.fieldset {
  border: 1px solid var(--an-border, #CBD5E1) !important;
  border-radius: 12px !important;
  padding: 16px 20px !important;
  margin: 12px 0 !important;
  background: var(--an-bg-subtle, #F8FAFC) !important;
  width: 100%;
  box-sizing: border-box;
}
.waitry-dark-theme md-dialog fieldset.fieldset {
  border-color: rgba(255, 255, 255, 0.08) !important;
  background: rgba(255, 255, 255, 0.02) !important;
}
md-dialog fieldset.fieldset legend {
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  color: var(--an-text-muted, #64748B) !important;
  padding: 0 8px !important;
  background: transparent !important;
}
md-dialog .wf-input-sm {
  max-width: 160px !important;
  width: 100%;
}
md-dialog .wf-input-md {
  max-width: 280px !important;
  width: 100%;
}
md-dialog md-switch {
  margin: 6px 0 !important;
  display: flex !important;
  align-items: center !important;
  height: auto !important;
  min-height: 0 !important;
}
md-dialog md-switch .md-container {
  margin: 0 12px 0 0 !important;
  flex-shrink: 0;
}
md-dialog md-switch .md-label {
  font-size: 13px !important;
  font-weight: 500;
  color: var(--an-text) !important;
  line-height: 1.3 !important;
  margin: 0 !important;
}
md-dialog .wf-switch-list {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin: 4px 0 12px;
}
md-dialog .wf-switch-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 14px;
  border-radius: 10px;
  border: 1px solid var(--an-border, #e5e7eb);
  background: var(--an-surface, #fff);
  transition: border-color 0.15s ease, background 0.15s ease;
  cursor: pointer;
  min-height: 44px;
}
.waitry-dark-theme md-dialog .wf-switch-item {
  background: rgba(255, 255, 255, 0.02);
  border-color: rgba(255, 255, 255, 0.07);
}
md-dialog .wf-switch-item:hover {
  border-color: var(--an-primary, #2563EB);
  background: var(--an-primary-soft, rgba(37, 99, 235, 0.04));
}
md-dialog .wf-switch-item:has(md-switch.md-checked) {
  border-color: var(--an-primary, #2563EB);
  background: var(--an-primary-soft, rgba(37, 99, 235, 0.04));
}
md-dialog .wf-switch-item:has(md-switch.md-checked) .wf-switch-item__label {
  color: var(--an-text) !important;
}
md-dialog .wf-switch-item md-switch {
  margin: 0 !important;
  width: 100%;
}
md-dialog .wf-switch-item md-switch .md-label {
  flex: 1;
}
md-dialog .wf-switch-item__label {
  display: block;
  font-size: 13px;
  font-weight: 500;
  color: var(--an-text-muted);
  line-height: 1.3;
  pointer-events: none;
  user-select: none;
}
md-dialog .wf-switch-item__desc {
  display: block;
  font-size: 11px;
  color: var(--an-text-faint);
  margin-top: 2px;
  line-height: 1.4;
  font-weight: 400;
  white-space: normal;
}
md-dialog .wf-switch-item .md-switch-thumb-container {
  margin-left: auto;
  flex-shrink: 0;
}
md-dialog .wf-switch-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 6px;
  margin: 4px 0 12px;
}
@media (max-width: 600px) {
  md-dialog .wf-switch-grid {
    grid-template-columns: 1fr;
  }
}
md-dialog .wf-switch-inline {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 0;
  min-height: 44px;
}
md-dialog .wf-switch-inline md-switch {
  margin: 0 !important;
}
md-dialog md-tabs md-tab-body {
  padding: 0;
}
md-dialog md-tab-content {
  overflow-y: auto;
}
md-dialog md-tabs md-tabs-wrapper {
  background: var(--an-surface, #fff) !important;
  border-bottom: 1px solid var(--an-border, #E5E7EB) !important;
  padding: 0 12px !important;
}
md-dialog md-tabs md-ink-bar {
  background: var(--an-primary, #2563EB) !important;
  height: 3px !important;
  border-radius: 3px 3px 0 0 !important;
}
md-dialog md-tabs md-tab-item {
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: -0.01em;
  text-transform: capitalize !important;
  color: var(--an-text-muted, #6B7280) !important;
  padding: 0 20px !important;
  min-width: 0 !important;
  transition: color 0.15s ease !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 52px !important;
}
md-dialog md-tabs md-tab-item.md-active {
  color: var(--an-primary, #2563EB) !important;
}
md-dialog md-tabs md-tab-item:hover:not(.md-active) {
  color: var(--an-text, #111827) !important;
}
md-dialog md-dialog-content .md-dialog-content {
  padding: 0;
}
md-dialog .wf-field-row {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 10px;
}
md-dialog .wf-field-row .wf-field-label {
  font-size: 13px;
  color: var(--an-text-muted);
  line-height: 1.4;
  flex-shrink: 0;
}
md-dialog .wf-field-row md-input-container {
  margin-bottom: 0 !important;
}
md-dialog .payment-methods {
  margin: 4px -8px 0;
}
md-dialog .payment-methods [flex="50"] {
  padding: 6px 8px;
}
md-dialog .payment-methods [flex="50"] md-checkbox {
  margin: 0 !important;
  padding: 10px 14px;
  border: 1px solid var(--an-border);
  border-radius: 10px;
  transition: border-color 0.15s, background 0.15s;
  display: flex !important;
  align-items: center !important;
  width: 100%;
}
.waitry-dark-theme md-dialog .payment-methods [flex="50"] md-checkbox {
  border-color: rgba(255, 255, 255, 0.08);
}
md-dialog .payment-methods [flex="50"] md-checkbox:hover, md-dialog .payment-methods [flex="50"] md-checkbox.md-checked {
  border-color: var(--an-primary);
  background: var(--an-primary-soft, rgba(236, 78, 54, 0.06));
}
md-dialog .payment-methods [flex="50"] md-checkbox img {
  height: 24px;
  width: auto;
  margin-right: 8px;
  flex-shrink: 0;
  object-fit: contain;
}
md-dialog .wf-discounts-table {
  width: 100%;
  border-collapse: collapse;
}
md-dialog .wf-discounts-table thead th {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
  padding: 8px 12px;
  border-bottom: 1px solid var(--an-border);
  text-align: left;
}
md-dialog .wf-discounts-table .discounts-table td {
  padding: 6px 12px;
  border-bottom: 1px solid var(--an-border-faint, rgba(0, 0, 0, 0.04));
  font-size: 14px;
  color: var(--an-text);
}
md-dialog .wf-discounts-table .discounts-table td md-input-container {
  margin: 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
}
md-dialog .wf-discounts-table .discounts-table td md-input-container .md-errors-spacer {
  display: none !important;
}
md-dialog .wf-discounts-table .wf-actions-cell {
  display: flex;
  align-items: center;
  gap: 4px;
}
md-dialog .wf-step-message-input {
  flex: 1;
}
md-dialog .wf-step-message-input md-input-container {
  min-height: 0 !important;
}
md-dialog .wf-section-delivery-kds {
  padding: 12px 0 0;
}
md-dialog .wf-section-delivery-kds md-input-container.layout-config {
  margin: 0 0 6px !important;
}

.wf-mise-card {
  padding: 20px 24px;
  margin-bottom: 16px;
}
.wf-mise-card__header {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 4px;
}
.wf-mise-card__icon {
  color: var(--an-primary, #7C4DFF);
  margin-right: 8px;
  font-size: 20px;
}
.wf-mise-card__title {
  margin: 0;
  color: var(--an-text);
  font-weight: 700;
  font-size: 15px;
}
.wf-mise-card__desc {
  color: var(--an-text-faint);
  font-size: 13px;
  margin: 0 0 16px 0;
}
.wf-mise-card__action-btn {
  background-color: var(--an-primary, #7C4DFF) !important;
  color: #fff !important;
  text-transform: none !important;
  border-radius: 8px !important;
  font-weight: 600;
  font-size: 13px;
}
.wf-mise-card__action-btn md-icon {
  color: #fff !important;
  font-size: 18px;
  margin-right: 4px;
}
.wf-mise-card__action-btn md-progress-circular {
  display: inline-block;
  margin-right: 4px;
}
.wf-mise-card__result {
  background: var(--an-primary-soft, rgba(124, 77, 255, 0.08));
  border-radius: 8px;
  padding: 12px 16px;
  margin-top: 8px;
  color: var(--an-primary, #7C4DFF);
  font-weight: 500;
}

.wf-mise-score {
  background: linear-gradient(135deg, rgba(102, 126, 234, 0.27), rgba(118, 75, 162, 0.27));
  border-radius: 12px;
  padding: 20px;
  margin-bottom: 16px;
  text-align: center;
}
.wf-mise-score__number {
  font-size: 48px;
  font-weight: 700;
  color: var(--an-primary, #7C4DFF);
  line-height: 1;
}
.wf-mise-score__label {
  font-size: 13px;
  color: var(--an-text-faint);
}

.wf-mise-category {
  margin-bottom: 12px;
  border: 1px solid var(--an-border);
  border-radius: 8px;
  overflow: hidden;
}
.wf-mise-category__header {
  padding: 12px 16px;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 8px;
}
.wf-mise-category__header:hover {
  background: var(--an-bg, rgba(0, 0, 0, 0.02));
}
.wf-mise-category__status-icon {
  margin-right: 8px;
  font-size: 20px;
}
.wf-mise-category__name {
  font-weight: 500;
  flex: 1;
  color: var(--an-text);
}
.wf-mise-category__body {
  padding: 8px 16px 12px;
  border-top: 1px solid var(--an-border);
}
.wf-mise-category__item {
  padding: 6px 0;
  border-bottom: 1px solid var(--an-border-faint, rgba(0, 0, 0, 0.04));
  display: flex;
  align-items: flex-start;
  gap: 8px;
}
.wf-mise-category__item:last-child {
  border-bottom: none;
}
.wf-mise-category__item-icon {
  font-size: 16px;
  margin-right: 8px;
  margin-top: 2px;
  flex-shrink: 0;
}
.wf-mise-category__item-text {
  flex: 1;
  min-width: 0;
}
.wf-mise-category__item-msg {
  font-size: 13px;
  color: var(--an-text);
}
.wf-mise-category__item-action {
  font-size: 12px;
  color: var(--an-primary, #7C4DFF);
  margin-top: 2px;
}

.wf-kiosk-cover {
  min-height: 190px;
  text-align: center;
}

.wf-kiosk-caption-wrap {
  margin-top: 12px;
  width: 100%;
}

.wf-kiosk-section-title {
  margin: 0;
  font-size: 14px;
  font-weight: 600;
  color: var(--an-text-muted);
}

.wf-kiosk-empty {
  padding: 24px;
  text-align: center;
  border: 2px dashed var(--an-border);
  border-radius: 12px;
  color: var(--an-text-faint);
}
.wf-kiosk-empty md-icon {
  font-size: 32px;
  height: 32px;
  width: 32px;
  margin-bottom: 8px;
  color: var(--an-text-faint);
  opacity: 0.3;
}

.wf-kiosk-section-card {
  border: 1px solid var(--an-border);
  border-radius: 12px;
  padding: 16px;
  margin-bottom: 8px;
  background: var(--an-surface);
}
.waitry-dark-theme .wf-kiosk-section-card {
  background: #1e2029;
  border-color: rgba(255, 255, 255, 0.07);
}

.wf-kiosk-section-label {
  font-size: 12px;
  font-weight: 700;
  color: var(--an-primary);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.wf-kiosk-trash-btn {
  margin: 0 !important;
  width: 32px !important;
  height: 32px !important;
  min-height: 32px !important;
}
.wf-kiosk-trash-btn md-icon {
  font-size: 18px;
}

.wf-kiosk-add-section-btn {
  margin: 8px 0 0 0 !important;
  align-self: flex-start;
  text-transform: none !important;
}

.wf-kiosk-screensaver-timeout {
  max-width: 280px;
  margin-top: 16px;
}

.wf-kiosk-slides-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.wf-kiosk-video-overlay {
  position: absolute;
  bottom: 6px;
  right: 6px;
  z-index: 2;
}

.wf-kiosk-advanced-url {
  max-width: 480px;
}

.wf-kiosk-item-category {
  font-size: 11px;
  opacity: 0.65;
}

.wf-promo-preview {
  width: 280px;
  height: 250px;
  padding: 15px;
}

.wf-promo-schedule-indent {
  padding-top: 15px;
  margin: 10px 2px 0 25px;
}

.wf-promo-tier-dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  margin-right: 6px;
}

.wf-zone-color-dot {
  display: inline-block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  margin-right: 10px;
  margin-top: 10px;
  flex-shrink: 0;
}

.wf-printer-hint {
  font-size: 12px;
  color: var(--an-text-faint);
  margin-bottom: 5px;
}

.wf-printer-logo-preview {
  max-width: 200px;
  max-height: 200px;
  filter: grayscale(100%);
  border: 1px solid var(--an-border);
  border-radius: 8px;
  padding: 8px;
  background: #fff;
  box-sizing: border-box;
}
.wf-printer-logo-preview--new {
  border-color: #10b981 !important;
  border-width: 2px !important;
}

.wf-map-container {
  height: 400px;
  width: 98%;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--an-border);
}

.wf-slug-prefix {
  font-weight: 600;
  color: var(--an-text);
  font-size: 14px;
}

.wf-slug-input {
  margin-bottom: -4px;
  margin-left: 4px;
}

.wf-slug-link {
  margin-left: 20px;
  text-align: center;
}

.wf-flag-inline {
  vertical-align: middle;
}

.wf-saving-spinner {
  display: inline-block;
  vertical-align: middle;
  margin-right: 8px;
}

.wf-error-text {
  font-size: 12px;
  color: var(--an-danger, #ef4444);
  margin: 0 0 8px;
  display: block;
}

.wf-recipe-row {
  margin-bottom: 4px;
  gap: 8px;
}
.wf-recipe-row .wf-recipe-remove-btn {
  flex-shrink: 0;
  width: 36px !important;
  height: 36px !important;
  min-height: 36px !important;
  margin: 0 !important;
  padding: 0 !important;
  align-self: flex-end;
  margin-bottom: 16px !important;
}
.wf-recipe-row .wf-recipe-remove-btn md-icon {
  font-size: 18px;
  color: var(--an-text-faint);
}
.wf-recipe-row .wf-recipe-remove-btn:hover md-icon {
  color: var(--an-danger, #ef4444);
}

.wf-table-action-cell {
  width: 60px;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
}

md-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent) {
  background: var(--an-surface) !important;
  color: var(--an-text) !important;
  border-bottom: 1px solid var(--an-border) !important;
  box-shadow: none !important;
  min-height: 56px !important;
}
.waitry-dark-theme md-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent) {
  background: #1a1c24 !important;
  border-bottom-color: rgba(255, 255, 255, 0.07) !important;
}
md-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent) .md-toolbar-tools {
  min-height: 56px !important;
  padding: 0 12px 0 20px !important;
  gap: 8px !important;
  color: var(--an-text) !important;
}
md-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent) .md-toolbar-tools h1, md-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent) .md-toolbar-tools h2, md-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent) .md-toolbar-tools h3 {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: var(--an-text) !important;
  margin: 0 !important;
  letter-spacing: -0.2px !important;
  font-family: var(--font-sans) !important;
}
md-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent) .md-toolbar-tools .md-icon-button {
  color: var(--an-text-muted) !important;
}
md-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent) .md-toolbar-tools .md-icon-button md-icon {
  color: var(--an-text-muted) !important;
}
md-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent) .md-toolbar-tools .md-icon-button:hover {
  background: rgba(0, 0, 0, 0.05) !important;
  color: var(--an-text) !important;
}
md-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent) .md-toolbar-tools .md-icon-button:hover md-icon {
  color: var(--an-text) !important;
}
md-dialog md-toolbar:not(.wf-toolbar):not(.md-warn):not(.md-accent) .md-toolbar-tools > md-icon:first-child {
  font-size: 18px !important;
  color: var(--an-text-muted) !important;
  margin-right: 4px !important;
}

md-dialog md-subheader.md-sticky-no-effect,
md-dialog md-subheader {
  background: var(--an-surface) !important;
  color: var(--an-text) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  font-family: var(--font-sans) !important;
  letter-spacing: -0.1px !important;
  border-bottom: 1px solid var(--an-border) !important;
  padding: 14px 20px !important;
  min-height: auto !important;
}
.waitry-dark-theme md-dialog md-subheader.md-sticky-no-effect,
.waitry-dark-theme md-dialog md-subheader {
  background: #1a1c24 !important;
  border-bottom-color: rgba(255, 255, 255, 0.07) !important;
}

md-dialog md-dialog-actions:not(.wf-actions) {
  border-top: 1px solid var(--an-border) !important;
  padding: 10px 16px !important;
  background: var(--an-surface) !important;
  gap: 8px !important;
  min-height: 52px !important;
}
.waitry-dark-theme md-dialog md-dialog-actions:not(.wf-actions) {
  background: #1a1c24 !important;
  border-top-color: rgba(255, 255, 255, 0.07) !important;
}
md-dialog md-dialog-actions:not(.wf-actions) .md-button:not(.md-primary):not(.md-warn):not(.wf-save-btn):not(.pm-btn-primary):not(.pm-btn-danger):not([class*="--primary"]):not([class*="--accent"]):not([class*="--danger"]):not([class*="--warn"]) {
  color: var(--an-text-muted) !important;
  font-weight: 500 !important;
  border-radius: 8px !important;
  font-size: 13px !important;
  text-transform: none !important;
}
md-dialog md-dialog-actions:not(.wf-actions) .md-button:not(.md-primary):not(.md-warn):not(.wf-save-btn):not(.pm-btn-primary):not(.pm-btn-danger):not([class*="--primary"]):not([class*="--accent"]):not([class*="--danger"]):not([class*="--warn"]):hover {
  background: rgba(0, 0, 0, 0.04) !important;
  color: var(--an-text) !important;
}

md-dialog .md-button.md-primary.md-raised:not(.wf-save-btn) {
  background: var(--an-rose) !important;
  color: #fff !important;
  border-radius: 8px !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  text-transform: none !important;
  box-shadow: 0 2px 8px rgba(236, 78, 54, 0.25) !important;
  transition: opacity 0.2s, transform 0.2s, box-shadow 0.2s !important;
  border: none !important;
}
md-dialog .md-button.md-primary.md-raised:not(.wf-save-btn) span {
  color: #fff !important;
}
md-dialog .md-button.md-primary.md-raised:not(.wf-save-btn):hover:not([disabled]) {
  opacity: 0.92 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 14px rgba(236, 78, 54, 0.35) !important;
}
md-dialog .md-button.md-primary.md-raised:not(.wf-save-btn)[disabled] {
  opacity: 0.4 !important;
  box-shadow: none !important;
  transform: none !important;
}

md-dialog .md-button.md-primary:not(.md-raised):not(.wf-save-btn):not(.md-icon-button) {
  color: var(--an-primary) !important;
  font-weight: 600 !important;
  text-transform: none !important;
  border-radius: 8px !important;
  font-size: 13px !important;
}

md-dialog md-dialog-content {
  background: var(--an-surface) !important;
  font-family: var(--font-sans) !important;
}
.waitry-dark-theme md-dialog md-dialog-content {
  background: #1a1c24 !important;
  color: var(--an-text) !important;
}

md-dialog md-dialog-content md-subheader {
  position: sticky !important;
  top: 0 !important;
  z-index: 2 !important;
}

md-dialog md-toolbar.md-warn {
  background: #e53935 !important;
  color: #fff !important;
}

md-dialog .feature-not-available-dialog {
  text-align: center;
  padding: 24px;
}
md-dialog .feature-not-available-dialog .feature-icon {
  font-size: 48px;
  color: var(--an-text-faint);
  margin-bottom: 16px;
  opacity: 0.4;
}
md-dialog .feature-not-available-dialog h2 {
  font-size: 18px;
  font-weight: 700;
  color: var(--an-text);
  margin-bottom: 8px;
}
md-dialog .feature-not-available-dialog p {
  font-size: 14px;
  color: var(--an-text-muted);
  line-height: 1.5;
}

.waitry-dark-theme md-dialog {
  background: #1a1c24 !important;
  color: var(--an-text) !important;
}
.waitry-dark-theme md-dialog md-dialog-content {
  background: #1a1c24 !important;
}
.waitry-dark-theme md-dialog md-dialog-actions {
  background: #14161e !important;
}
.waitry-dark-theme md-dialog input, .waitry-dark-theme md-dialog textarea {
  color: var(--an-text) !important;
}
.waitry-dark-theme md-dialog label {
  color: var(--an-text-muted) !important;
}

.wf-table-header {
  font-weight: 600;
  font-size: 11px;
  color: var(--an-text-faint, #a0aec0);
  text-transform: uppercase;
  letter-spacing: 0.8px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--an-border, rgba(0, 0, 0, 0.08));
  display: flex;
  align-items: center;
  box-sizing: border-box;
}
.waitry-dark-theme .wf-table-header {
  border-bottom-color: rgba(255, 255, 255, 0.07);
}

.wf-table-body {
  border-radius: 8px;
  overflow: hidden;
  background: var(--an-surface, #ffffff);
  border: 1px solid var(--an-border, rgba(0, 0, 0, 0.08));
  margin-top: 8px;
}
.waitry-dark-theme .wf-table-body {
  background: #1e2029;
  border-color: rgba(255, 255, 255, 0.07);
}

.wf-table-row {
  border-bottom: 1px solid var(--an-border, rgba(0, 0, 0, 0.08));
  padding: 14px 16px;
  display: flex;
  align-items: center;
  transition: background-color 0.2s;
  min-height: 64px;
  box-sizing: border-box;
}
.wf-table-row:last-child {
  border-bottom: none;
}
.wf-table-row:hover {
  background-color: var(--an-surface-hover, rgba(0, 0, 0, 0.015));
}
.waitry-dark-theme .wf-table-row {
  border-bottom-color: rgba(255, 255, 255, 0.07);
}
.waitry-dark-theme .wf-table-row:hover {
  background-color: rgba(255, 255, 255, 0.02);
}

.wf-table-cell {
  display: flex;
  align-items: center;
  font-size: 14px;
  font-weight: 500;
  color: var(--an-text, #2d3748);
}
.waitry-dark-theme .wf-table-cell {
  color: #e2e8f0;
}
.wf-table-cell--logo img {
  max-height: 28px;
  max-width: 28px;
  object-fit: contain;
  border-radius: 6px;
}
.wf-table-cell md-button {
  margin: 0 !important;
  text-transform: none;
  font-weight: 600;
  border-radius: 8px !important;
}

.wf-import-drop-zone {
  width: 100%;
  max-width: 320px;
  height: 140px;
  border: 2px dashed var(--an-border, rgba(0, 0, 0, 0.15));
  border-radius: 12px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: var(--an-surface-hover, rgba(0, 0, 0, 0.01));
  transition: all 0.2s;
  cursor: pointer;
  margin: 16px auto;
  box-sizing: border-box;
}
.wf-import-drop-zone:hover {
  border-color: var(--brand-primary, #e2583e);
  background: rgba(226, 88, 62, 0.04);
}
.wf-import-drop-zone p {
  font-size: 14px;
  color: var(--an-text-muted);
  font-weight: 500;
  margin: 0;
}

.wf-import-button-container {
  display: flex;
  justify-content: center;
  gap: 12px;
  margin: 16px 0;
  width: 100%;
}

.wf-import-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 16px;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 8px;
  overflow: hidden;
}
.wf-import-table thead {
  background: var(--an-surface-hover, rgba(0, 0, 0, 0.02));
  border-bottom: 2px solid var(--an-border);
  font-weight: 600;
  font-size: 12px;
  text-transform: uppercase;
  color: var(--an-text-faint);
}
.wf-import-table thead td {
  padding: 12px 16px;
}
.wf-import-table tr {
  border-bottom: 1px solid var(--an-border);
}
.wf-import-table tr:last-child {
  border-bottom: none;
}
.wf-import-table td {
  padding: 12px 16px;
  font-size: 14px;
  color: var(--an-text);
  vertical-align: middle;
}

.sync-platform-card-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-top: 16px;
}

.sync-platform-card {
  background: var(--an-surface, #ffffff);
  border: 1px solid var(--an-border, rgba(0, 0, 0, 0.08));
  border-radius: 12px;
  padding: 14px 20px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02);
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}
.sync-platform-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
  border-color: var(--an-primary-light, rgba(197, 36, 24, 0.15));
}
.waitry-dark-theme .sync-platform-card {
  background: #1e2029;
  border-color: rgba(255, 255, 255, 0.07);
  box-shadow: none;
}
.waitry-dark-theme .sync-platform-card:hover {
  background: #252834;
  border-color: rgba(255, 255, 255, 0.12);
}

.sync-platform-logo-container {
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f7fafc;
  border-radius: 10px;
  border: 1px solid rgba(0, 0, 0, 0.04);
  margin-right: 16px;
  overflow: hidden;
}
.waitry-dark-theme .sync-platform-logo-container {
  background: #2d303e;
  border-color: rgba(255, 255, 255, 0.05);
}

.sync-platform-logo {
  max-width: 32px;
  max-height: 32px;
  object-fit: contain;
}

.sync-platform-info {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.sync-platform-name {
  font-size: 15px;
  font-weight: 600;
  color: var(--an-text, #2d3748);
}
.waitry-dark-theme .sync-platform-name {
  color: #f7fafc;
}

.sync-platform-status-badge {
  display: inline-flex;
  align-items: center;
  font-size: 12px;
  color: var(--an-text-muted, #718096);
}
.waitry-dark-theme .sync-platform-status-badge {
  color: #a0aec0;
}

.sync-platform-status-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  margin-right: 6px;
  background-color: #cbd5e0;
}
.sync-platform-status-dot--finished {
  background-color: #48bb78;
}
.sync-platform-status-dot--pending {
  background-color: #ecc94b;
}
.sync-platform-status-dot--error {
  background-color: #f56565;
}

.sync-platform-date {
  font-size: 11px;
  color: var(--an-text-faint, #a0aec0);
  margin-left: 6px;
}

.sync-btn {
  text-transform: none !important;
  font-weight: 600 !important;
  border-radius: 8px !important;
  padding: 6px 18px !important;
  min-height: 36px;
}

.wf-import-cards-container {
  display: flex;
  gap: 16px;
  margin-bottom: 24px;
}

.wf-import-card {
  background: var(--an-surface, #ffffff);
  border: 1px solid var(--an-border, rgba(0, 0, 0, 0.08));
  border-radius: 12px;
  padding: 16px;
  cursor: pointer;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02);
}
.wf-import-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
  border-color: var(--an-primary-light, rgba(197, 36, 24, 0.15));
}
.waitry-dark-theme .wf-import-card {
  background: #1e2029;
  border-color: rgba(255, 255, 255, 0.07);
  box-shadow: none;
}
.waitry-dark-theme .wf-import-card:hover {
  background: #252834;
  border-color: rgba(255, 255, 255, 0.12);
}

.wf-import-card__icon {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(197, 36, 24, 0.08);
  color: var(--an-primary, #c52418);
  border-radius: 8px;
  margin-right: 14px;
}
.wf-import-card__icon md-icon {
  color: var(--an-primary, #c52418) !important;
}

.wf-import-card__content {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.wf-import-card__title {
  font-size: 14px;
  font-weight: 600;
  color: var(--an-text, #2d3748);
}
.waitry-dark-theme .wf-import-card__title {
  color: #f7fafc;
}

.wf-import-card__desc {
  font-size: 11px;
  color: var(--an-text-muted, #718096);
}
.waitry-dark-theme .wf-import-card__desc {
  color: #a0aec0;
}

.wf-import-upload-section {
  width: 100%;
}

.wf-import-drop-zone {
  width: 100%;
  max-width: 100% !important;
  height: 160px;
  border: 2px dashed var(--an-primary-light, rgba(197, 36, 24, 0.25)) !important;
  border-radius: 16px !important;
  background: var(--an-surface-hover, #f7fafc) !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  margin: 0 !important;
}
.wf-import-drop-zone:hover {
  border-color: var(--an-primary, #c52418) !important;
  background: rgba(197, 36, 24, 0.04) !important;
}
.waitry-dark-theme .wf-import-drop-zone {
  background: #1e2029 !important;
  border-color: rgba(255, 255, 255, 0.15) !important;
}
.waitry-dark-theme .wf-import-drop-zone:hover {
  background: rgba(255, 255, 255, 0.02) !important;
  border-color: rgba(255, 255, 255, 0.3) !important;
}

.wf-import-drop-zone__title {
  font-size: 15px !important;
  font-weight: 600 !important;
  color: var(--an-text, #2d3748) !important;
  margin-top: 8px !important;
}
.waitry-dark-theme .wf-import-drop-zone__title {
  color: #f7fafc !important;
}

.wf-import-drop-zone__subtitle {
  font-size: 12px;
  color: var(--an-text-muted, #718096);
  margin: 4px 0 0 0 !important;
}
.waitry-dark-theme .wf-import-drop-zone__subtitle {
  color: #a0aec0;
}

.wf-upload-btn {
  text-transform: none !important;
  font-weight: 600 !important;
  border-radius: 8px !important;
  padding: 8px 24px !important;
}
.wf-upload-btn md-icon {
  margin-right: 6px;
}

.catalog-root {
  background: var(--an-bg);
  min-height: 0;
  overflow: hidden;
}

.catalog-toolbar-tools {
  gap: 6px;
  padding: 0 8px 0 4px !important;
}

.catalog-toolbar-title {
  font-size: 16px !important;
  font-weight: 700;
  letter-spacing: -0.3px;
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 4px 0 0;
  white-space: nowrap;
}

.catalog-count-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--an-primary, #497fe4);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  border-radius: 20px;
  padding: 1px 8px;
  letter-spacing: 0;
  line-height: 18px;
  min-width: 22px;
}

.catalog-sidebar-toggle {
  margin: 0 !important;
  opacity: 0.7;
  transition: opacity 0.15s;
  flex-shrink: 0;
}
.catalog-sidebar-toggle:hover {
  opacity: 1;
}

.catalog-toolbar-search {
  display: flex;
  align-items: center;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: 8px;
  padding: 0 4px 0 10px;
  height: 36px;
  min-width: 220px;
  max-width: 340px;
  flex: 1;
  transition: border-color 0.15s, box-shadow 0.15s;
}
.catalog-toolbar-search:focus-within {
  border-color: var(--an-primary, #497fe4);
  box-shadow: 0 0 0 2px rgba(73, 127, 228, 0.15);
}
.catalog-toolbar-search .catalog-search-icon {
  font-size: 18px !important;
  width: 18px !important;
  height: 18px !important;
  color: var(--an-text-muted);
  flex-shrink: 0;
  margin-right: 6px;
}
.catalog-toolbar-search .catalog-search-input {
  flex: 1;
  border: none;
  background: transparent;
  outline: none;
  font-size: 13.5px;
  color: var(--an-text);
  line-height: 34px;
  font-family: inherit;
}
.catalog-toolbar-search .catalog-search-input::placeholder {
  color: var(--an-placeholder);
}
.catalog-toolbar-search .catalog-search-clear {
  margin: 0 !important;
  min-width: 28px !important;
  width: 28px !important;
  height: 28px !important;
  min-height: 28px !important;
  padding: 0 !important;
  opacity: 0.5;
}
.catalog-toolbar-search .catalog-search-clear:hover {
  opacity: 1;
}
.catalog-toolbar-search .catalog-search-clear md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
}

.catalog-status-chips {
  display: flex;
  gap: 4px;
  flex-shrink: 0;
}

.catalog-chip {
  display: inline-flex;
  align-items: center;
  height: 28px;
  padding: 0 12px;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 500;
  border: 1.5px solid var(--an-border);
  background: transparent;
  color: var(--an-text-muted);
  cursor: pointer;
  transition: all 0.18s cubic-bezier(0.4, 0, 0.2, 1);
  font-family: inherit;
  letter-spacing: 0;
}
.catalog-chip:hover {
  background: var(--an-surface2);
  border-color: var(--an-text-muted);
  color: var(--an-text);
}
.catalog-chip--active {
  background: var(--an-surface2) !important;
  border-color: var(--an-text) !important;
  color: var(--an-text) !important;
  font-weight: 600;
}
.catalog-chip--live.catalog-chip--active {
  background: var(--an-emerald-soft) !important;
  border-color: var(--an-emerald) !important;
  color: var(--an-emerald) !important;
}
.catalog-chip--disabled.catalog-chip--active {
  background: var(--an-rose-soft) !important;
  border-color: var(--an-rose) !important;
  color: var(--an-rose) !important;
}
.catalog-chip--snoozed.catalog-chip--active {
  background: var(--an-orange-soft) !important;
  border-color: var(--an-orange) !important;
  color: var(--an-orange) !important;
}

.catalog-view-toggle {
  display: flex;
  border: 1.5px solid var(--an-border);
  border-radius: 8px;
  overflow: hidden;
  flex-shrink: 0;
}
.catalog-view-toggle .md-icon-button {
  margin: 0 !important;
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  min-height: 34px !important;
  border-radius: 0 !important;
  opacity: 0.5;
  transition: background 0.15s, opacity 0.15s;
  border: none !important;
}
.catalog-view-toggle .md-icon-button md-icon {
  font-size: 18px !important;
  width: 18px !important;
  height: 18px !important;
}
.catalog-view-toggle .md-icon-button.catalog-view-btn--active {
  background: var(--an-surface2);
  opacity: 1;
}
.catalog-view-toggle .md-icon-button:hover {
  opacity: 0.8;
}

.catalog-add-btn {
  height: 36px !important;
  min-height: 36px !important;
  line-height: 36px !important;
  border-radius: 8px !important;
  padding: 0 16px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  flex-shrink: 0;
  display: flex !important;
  align-items: center;
  gap: 6px;
  box-shadow: 0 1px 4px rgba(73, 127, 228, 0.3) !important;
}
.catalog-add-btn md-icon {
  font-size: 18px !important;
  width: 18px !important;
  height: 18px !important;
  line-height: 18px !important;
  color: #fff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-weight: bold !important;
}

.catalog-split-btn {
  display: flex;
  align-items: stretch;
  flex-shrink: 0;
}
.catalog-split-btn .catalog-split-btn__main {
  border-radius: 8px 0 0 8px !important;
  padding: 0 14px !important;
  margin: 0 !important;
  border-right: 1px solid rgba(255, 255, 255, 0.3) !important;
  height: 36px !important;
  min-height: 36px !important;
  line-height: 36px !important;
}
.catalog-split-btn .catalog-split-btn__arrow {
  border-radius: 0 8px 8px 0 !important;
  padding: 0 10px !important;
  margin: 0 !important;
  min-width: 34px !important;
  width: 34px !important;
  height: 36px !important;
  min-height: 36px !important;
  line-height: 36px !important;
}
.catalog-split-btn .catalog-split-btn__arrow md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  color: #fff !important;
}

.catalog-legacy-btn {
  height: 36px !important;
  min-height: 36px !important;
  line-height: 36px !important;
  border-radius: 8px !important;
  padding: 0 16px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  flex-shrink: 0;
  display: flex !important;
  align-items: center;
  gap: 6px;
  background: var(--an-surface2) !important;
  border: 1px solid var(--an-border) !important;
  color: var(--an-text) !important;
  margin-right: 8px !important;
}
.catalog-legacy-btn md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  margin-right: 4px;
  color: var(--an-text-muted) !important;
}
.catalog-legacy-btn:hover {
  background: var(--an-border) !important;
}

.catalog-layout {
  height: 100%;
  overflow: hidden;
  min-height: 0;
}

.catalog-sidebar {
  width: 270px;
  min-width: 270px;
  max-width: 270px;
  border-right: 1px solid var(--an-border);
  background: var(--an-surface);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: width 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  flex-shrink: 0;
  position: relative;
}
.catalog-sidebar--collapsed {
  width: 56px;
  min-width: 56px;
  max-width: 56px;
}
.catalog-sidebar--collapsed .catalog-sidebar-inner {
  overflow: hidden;
}

.catalog-sidebar-inner {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 8px 0 16px;
  display: flex;
  flex-direction: column;
}
.catalog-sidebar-inner::-webkit-scrollbar {
  width: 3px;
}
.catalog-sidebar-inner::-webkit-scrollbar-thumb {
  background: var(--an-border);
  border-radius: 4px;
}

.csb-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
  border-radius: 20px;
  padding: 2px 6px;
  min-width: 18px;
  letter-spacing: 0;
}
.csb-badge--total {
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.12);
  color: var(--an-primary, #497fe4);
}
.csb-badge--menu {
  background: var(--an-surface2);
  color: var(--an-text-muted);
  font-weight: 600;
}
.csb-badge--cat {
  background: transparent;
  color: var(--an-text-muted);
  font-weight: 600;
}

.catalog-sidebar-all-items {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 10px;
  margin: 2px 6px;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.18s cubic-bezier(0.4, 0, 0.2, 1);
  color: var(--an-text-muted);
  font-size: 13px;
  font-weight: 500;
}
.catalog-sidebar-all-items md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0;
  color: inherit;
}
.catalog-sidebar-all-items .csb-all-label {
  flex: 1;
}
.catalog-sidebar-all-items:hover {
  background: var(--an-surface2);
  color: var(--an-text);
}
.catalog-sidebar-all-items--active {
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.08);
  color: var(--an-primary, #497fe4);
  font-weight: 600;
}
.catalog-sidebar-all-items--active md-icon {
  color: var(--an-primary, #497fe4);
}
.catalog-sidebar-all-items--active .csb-badge--total {
  background: var(--an-primary, #497fe4);
  color: #fff;
}

.catalog-sidebar-section-header {
  display: flex;
  align-items: center;
  padding: 14px 10px 4px 10px;
}

.catalog-sidebar-section-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 10px 4px 10px;
  flex-shrink: 0;
}
.catalog-sidebar-section-label > span {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1.2px;
  color: var(--an-text-muted);
}

.catalog-sidebar-avatar {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  overflow: hidden;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  flex-shrink: 0;
}
.catalog-sidebar-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.catalog-sidebar-avatar md-icon {
  font-size: 11px !important;
  width: 11px !important;
  height: 11px !important;
  color: var(--an-border);
}
.catalog-sidebar-avatar--sm {
  width: 16px;
  height: 16px;
}
.catalog-sidebar-avatar--sm md-icon {
  font-size: 9px !important;
  width: 9px !important;
  height: 9px !important;
}

.catalog-sidebar-menu-node {
  margin-bottom: 2px;
  transition: all 0.2s ease;
}
.catalog-sidebar-menu-node--expanded .catalog-sidebar-menu-row {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.catalog-sidebar-menu-row {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 9px 12px;
  margin: 0 12px;
  background: transparent;
  border: 1px solid transparent;
  border-radius: 8px;
  cursor: pointer;
  transition: background 0.15s ease;
  position: relative;
}
.catalog-sidebar-menu-row:hover {
  background: var(--an-bg-subtle, var(--an-surface2));
}
.catalog-sidebar-menu-row:hover .catalog-sidebar-menu-actions {
  opacity: 1;
}
.catalog-sidebar-menu-row--active {
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.08);
  border-color: transparent;
}
.catalog-sidebar-menu-row--active .catalog-sidebar-menu-name {
  color: var(--an-primary, #497fe4);
  font-weight: 700;
}
.catalog-sidebar-menu-row--disabled {
  opacity: 0.5;
}
.catalog-sidebar-menu-row--disabled .catalog-sidebar-menu-name {
  color: var(--an-text-muted);
}
.catalog-sidebar-menu-row .catalog-sidebar-drag-handle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  cursor: grab;
  z-index: 2;
  flex-shrink: 0;
}
.catalog-sidebar-menu-row .catalog-sidebar-drag-handle .catalog-sidebar-drag-icon {
  display: none !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  color: var(--an-primary, #497fe4);
}
.catalog-sidebar-menu-row .catalog-sidebar-drag-handle:hover .catalog-sidebar-avatar {
  display: none;
}
.catalog-sidebar-menu-row .catalog-sidebar-drag-handle:hover .catalog-sidebar-drag-icon {
  display: inline-flex !important;
}
.catalog-sidebar-menu-row .catalog-sidebar-chevron-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  cursor: pointer;
  z-index: 2;
  flex-shrink: 0;
}
.catalog-sidebar-menu-row .catalog-sidebar-chevron-wrap .catalog-sidebar-chevron {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  flex-shrink: 0;
  color: var(--an-text-muted);
  transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.catalog-sidebar-menu-row .catalog-sidebar-chevron-wrap .catalog-sidebar-chevron--open {
  transform: rotate(90deg);
}
.catalog-sidebar-menu-row .catalog-sidebar-menu-name {
  flex: 1;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: none;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
}

.catalog-sidebar-menu-right {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
  margin-left: auto;
}

.catalog-sidebar-disabled-icon {
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  flex-shrink: 0;
  color: var(--an-text-muted);
  opacity: 0.6;
  margin-right: 2px;
}

.catalog-sidebar-avatar--refreshing {
  opacity: 0.45;
  animation: catalogAvatarPulse 1s ease-in-out infinite;
}

@keyframes catalogAvatarPulse {
  0%, 100% {
    opacity: 0.45;
  }
  50% {
    opacity: 0.75;
  }
}
.catalog-sidebar-menu-actions {
  opacity: 0;
  transition: opacity 0.15s;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 4px;
}

.catalog-sidebar-menu-row--active .catalog-sidebar-menu-actions,
.catalog-sidebar-menu-actions:focus-within {
  opacity: 1;
}

@media (hover: none) {
  .catalog-sidebar-menu-actions {
    opacity: 1;
  }
}
.catalog-sidebar-categories {
  margin: 0 12px;
  background: transparent;
  border: 0;
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
  padding: 6px 0;
}

.catalog-sidebar-cat-row {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 12px 6px 12px;
  margin: 2px 8px;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.15s ease;
  font-size: 12.5px;
  font-weight: 400;
  color: var(--an-text-muted);
  min-width: 0;
}
.catalog-sidebar-cat-row .catalog-sidebar-cat-handle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  cursor: grab;
  margin-right: 2px;
  flex-shrink: 0;
}
.catalog-sidebar-cat-row .catalog-sidebar-cat-handle .catalog-sidebar-cat-drag-icon {
  display: none !important;
  font-size: 12px !important;
  width: 12px !important;
  height: 12px !important;
  color: var(--an-primary, #497fe4);
}
.catalog-sidebar-cat-row .catalog-sidebar-cat-handle:hover .catalog-sidebar-avatar {
  display: none;
}
.catalog-sidebar-cat-row .catalog-sidebar-cat-handle:hover .catalog-sidebar-cat-drag-icon {
  display: inline-flex !important;
}
.catalog-sidebar-cat-row:hover {
  background: var(--an-surface2);
  color: var(--an-text);
}
.catalog-sidebar-cat-row:hover .catalog-sidebar-menu-actions {
  opacity: 1;
}
.catalog-sidebar-cat-row:hover .csb-badge--cat {
  background: var(--an-surface2);
}
.catalog-sidebar-cat-row--active {
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.08);
  color: var(--an-primary, #497fe4);
  font-weight: 600;
}
.catalog-sidebar-cat-row--active .csb-badge--cat {
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.12);
  color: var(--an-primary, #497fe4);
}
.catalog-sidebar-cat-row--disabled {
  opacity: 0.45;
  color: var(--an-text-muted);
}
.catalog-sidebar-cat-row--drop-target {
  background: var(--an-primary-soft);
  color: var(--an-primary, #497fe4);
  outline: 2px dashed var(--an-primary, #497fe4);
  outline-offset: -2px;
}

body.catalog-dragging-selection .catalog-sidebar-cat-row:not(.catalog-sidebar-cat-row--disabled) {
  box-shadow: inset 0 0 0 1px var(--an-border);
}

.catalog-sidebar-tree--cat-dragging .catalog-sidebar-cat-list {
  min-height: 30px;
  margin: 0 8px;
  border: 1px dashed var(--an-border-hover);
  border-radius: 6px;
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.02);
}
.catalog-sidebar-tree--cat-dragging .catalog-sidebar-menu-node {
  transition: none;
}
.catalog-sidebar-tree--cat-dragging .catalog-sidebar-menu-row .catalog-sidebar-drag-handle,
.catalog-sidebar-tree--cat-dragging .catalog-sidebar-menu-row .catalog-sidebar-chevron-wrap,
.catalog-sidebar-tree--cat-dragging .catalog-sidebar-menu-row .catalog-sidebar-menu-right {
  pointer-events: none;
}

.catalog-sidebar-menu-row--drop {
  background: var(--an-primary-soft) !important;
  border-color: var(--an-primary, #497fe4) !important;
  box-shadow: 0 0 0 1px var(--an-primary, #497fe4);
}

.catalog-sidebar-menu-row .as-sortable-placeholder {
  display: none !important;
}

.catalog-sidebar-cat-list.as-sortable-drag {
  background: var(--an-surface);
  border: 1px solid var(--an-primary, #497fe4);
  border-radius: 6px;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.18);
  opacity: 0.95;
}
.catalog-sidebar-cat-list.as-sortable-drag .catalog-sidebar-cat-row {
  margin: 0;
}
.catalog-sidebar-cat-list.as-sortable-drag .catalog-sidebar-menu-actions {
  display: none;
}

.catalog-sidebar-cat-name {
  flex: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
}

.csb-badge--warning {
  background: var(--an-orange-soft);
  color: var(--an-orange);
}
.csb-badge--snoozed {
  background: var(--an-surface2);
  color: var(--an-text-muted);
}
.csb-badge--muted {
  background: var(--an-surface2);
  color: var(--an-text-muted);
}

.catalog-sidebar-add-cat {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 6px 12px;
  margin: 4px 8px 6px;
  border-radius: 6px;
  cursor: pointer;
  font-size: 12px;
  font-weight: 500;
  color: var(--an-text-muted);
  background: transparent;
  border: 1px solid var(--an-border);
  width: calc(100% - 16px);
  box-sizing: border-box;
  text-align: center;
  transition: all 0.18s cubic-bezier(0.4, 0, 0.2, 1);
  font-family: inherit;
  opacity: 0;
  height: 0;
  padding-top: 0;
  padding-bottom: 0;
  overflow: hidden;
  pointer-events: none;
}
.catalog-sidebar-add-cat md-icon {
  font-size: 13px !important;
  width: 13px !important;
  height: 13px !important;
  color: inherit !important;
  flex-shrink: 0;
}
.catalog-sidebar-add-cat:hover {
  color: var(--an-primary, #497fe4);
  border-color: var(--an-primary, #497fe4);
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.05);
}

.catalog-sidebar-categories:hover .catalog-sidebar-add-cat {
  opacity: 1;
  height: auto;
  padding: 6px 12px;
  pointer-events: auto;
}

.catalog-sidebar-cat-right {
  display: flex;
  align-items: center;
  gap: 5px;
  flex-shrink: 0;
  margin-left: auto;
}

.catalog-sidebar-cat-dot {
  display: none;
}

.catalog-sidebar-action-btn {
  margin: 0 !important;
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  padding: 0 !important;
  color: var(--an-text-muted) !important;
  border: 0 !important;
  background: transparent !important;
  border-radius: 6px !important;
  box-shadow: none !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  transition: all 0.15s ease;
}
.catalog-sidebar-action-btn:hover:not([disabled]) {
  background: var(--an-surface2) !important;
  color: var(--an-text) !important;
}
.catalog-sidebar-action-btn md-icon {
  font-size: 15px !important;
  width: 15px !important;
  height: 15px !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
}

.catalog-sidebar-menu-row:hover .catalog-sidebar-action-btn,
.catalog-sidebar-cat-row:hover .catalog-sidebar-action-btn {
  opacity: 1;
}

.catalog-sidebar-footer {
  padding: 10px 12px;
  border-top: 1px solid var(--an-border);
  flex-shrink: 0;
}
.waitry-dark-theme .catalog-sidebar-footer {
  border-top-color: rgba(255, 255, 255, 0.07);
}

.catalog-sidebar-footer-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
  padding: 9px 14px;
  border-radius: 6px;
  border: 1.5px dashed var(--an-border);
  background: transparent;
  color: var(--an-text-muted);
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s;
  box-sizing: border-box;
}
.waitry-dark-theme .catalog-sidebar-footer-btn {
  border-color: rgba(255, 255, 255, 0.12);
}
.catalog-sidebar-footer-btn:hover {
  background: var(--an-primary-soft, rgba(236, 78, 54, 0.06));
  border-color: var(--an-primary);
  color: var(--an-primary);
}
.catalog-sidebar-footer-btn md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0;
  margin: 0 !important;
  color: inherit;
}

.catalog-sidebar-filter {
  padding: 4px 12px 8px;
}

.catalog-sidebar-filter-input {
  width: 100% !important;
  padding: 7px 10px 7px 32px !important;
  border-radius: 6px !important;
  border: 1px solid var(--an-border) !important;
  outline: none !important;
  background: var(--an-surface2) !important;
  color: var(--an-text) !important;
  font-size: 12.5px !important;
  font-family: inherit !important;
  transition: border-color 0.15s, box-shadow 0.15s;
  box-sizing: border-box !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23a1a1aa' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: 10px center !important;
}
.catalog-sidebar-filter-input::placeholder {
  color: var(--an-placeholder);
}
.catalog-sidebar-filter-input:focus {
  border-color: var(--an-primary, #497fe4) !important;
  background-color: var(--an-surface) !important;
  box-shadow: 0 0 0 2px rgba(73, 127, 228, 0.12);
  outline: none !important;
}

.catalog-sidebar-expand-icon {
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
}

.catalog-sidebar-filters {
  margin: 8px 6px 4px;
  padding: 10px 4px 6px;
  border-top: 1px solid var(--an-border);
  border-radius: 6px;
}
.catalog-sidebar-filters md-checkbox {
  margin: 4px 10px;
  font-size: 12.5px;
}

.catalog-sk-sidebar-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  margin: 2px 8px;
}

.catalog-sk-sidebar-icon {
  width: 16px;
  height: 16px;
  border-radius: 4px;
  background: var(--an-border);
  flex-shrink: 0;
  animation: catalogSkPulse 1.4s ease-in-out infinite;
}

.catalog-sk-sidebar-text {
  height: 12px;
  border-radius: 6px;
  background: var(--an-border);
  flex: 1;
  animation: catalogSkPulse 1.4s ease-in-out infinite;
  animation-delay: 0.1s;
}

.catalog-sk-sidebar-cat {
  height: 8px;
  border-radius: 4px;
  background: var(--an-border);
  margin: 6px 12px 6px 22px;
  animation: catalogSkPulse 1.4s ease-in-out infinite;
  animation-delay: 0.2s;
}

.catalog-content {
  min-width: 0;
  overflow-y: auto;
  overflow-x: hidden;
  background: var(--an-bg);
}
.catalog-content::-webkit-scrollbar {
  width: 6px;
}
.catalog-content::-webkit-scrollbar-thumb {
  background: var(--an-border);
  border-radius: 4px;
}

.catalog-kpi-row {
  display: flex;
  gap: 12px;
  padding: 16px 20px 0;
  flex-shrink: 0;
  flex-wrap: wrap;
}

.catalog-kpi-card {
  display: flex;
  align-items: center;
  gap: 12px;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 10px;
  padding: 12px 16px;
  flex: 1;
  min-width: 120px;
  box-shadow: var(--an-shadow-sm);
  transition: all 0.18s cubic-bezier(0.4, 0, 0.2, 1);
}
.catalog-kpi-card:hover {
  box-shadow: var(--an-shadow-md);
  transform: translateY(-1px);
}
.catalog-kpi-card .catalog-kpi-icon-wrap {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.catalog-kpi-card .catalog-kpi-icon-wrap md-icon {
  font-size: 20px !important;
  width: 20px !important;
  height: 20px !important;
}
.catalog-kpi-card .catalog-kpi-body {
  flex: 1;
  min-width: 0;
}
.catalog-kpi-card .catalog-kpi-value {
  font-size: 22px;
  font-weight: 800;
  line-height: 1.1;
  color: var(--an-text);
  letter-spacing: -0.5px;
}
.catalog-kpi-card .catalog-kpi-label {
  font-size: 11px;
  color: var(--an-text-muted);
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-top: 2px;
}
.catalog-kpi-card--total .catalog-kpi-icon-wrap {
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.12);
}
.catalog-kpi-card--total .catalog-kpi-icon-wrap md-icon {
  color: var(--an-primary, #497fe4);
}
.catalog-kpi-card--active .catalog-kpi-icon-wrap {
  background: var(--an-emerald-soft);
}
.catalog-kpi-card--active .catalog-kpi-icon-wrap md-icon {
  color: var(--an-emerald);
}
.catalog-kpi-card--snoozed .catalog-kpi-icon-wrap {
  background: var(--an-orange-soft);
}
.catalog-kpi-card--snoozed .catalog-kpi-icon-wrap md-icon {
  color: var(--an-orange);
}
.catalog-kpi-card--disabled .catalog-kpi-icon-wrap {
  background: var(--an-rose-soft);
}
.catalog-kpi-card--disabled .catalog-kpi-icon-wrap md-icon {
  color: var(--an-rose);
}
.catalog-kpi-card--noimage .catalog-kpi-icon-wrap {
  background: var(--an-border-strong);
}
.catalog-kpi-card--noimage .catalog-kpi-icon-wrap md-icon {
  color: var(--an-text-muted);
}

.catalog-bulk-bar {
  margin: 12px 20px 0;
  position: sticky;
  top: 0;
  z-index: 3;
  background: var(--an-surface);
  border: 1.5px solid var(--an-primary, #497fe4);
  border-radius: 10px;
  box-shadow: 0 4px 16px rgba(73, 127, 228, 0.15);
  animation: catalogBulkSlideIn 0.22s cubic-bezier(0.4, 0, 0.2, 1);
  flex-shrink: 0;
}

.catalog-bulk-bar-inner {
  display: flex;
  align-items: stretch;
  height: 50px;
}

.catalog-bulk-bar-left {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 0 12px 0 6px;
  flex-shrink: 0;
}

.catalog-bulk-bar-divider {
  width: 1px;
  background: var(--an-border, rgba(73, 127, 228, 0.2));
  margin: 8px 0;
  flex-shrink: 0;
}

.catalog-bulk-bar-actions {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 0 10px;
  overflow-x: auto;
  overflow-y: hidden;
  flex: 1;
  min-width: 0;
}
.catalog-bulk-bar-actions::-webkit-scrollbar {
  height: 3px;
}
.catalog-bulk-bar-actions::-webkit-scrollbar-track {
  background: transparent;
}
.catalog-bulk-bar-actions::-webkit-scrollbar-thumb {
  background: var(--an-border-strong);
  border-radius: 99px;
}

.catalog-bulk-close {
  margin: 0 !important;
  color: var(--an-text-muted) !important;
  width: 32px !important;
  height: 32px !important;
  min-height: 32px !important;
  flex-shrink: 0;
}

.catalog-bulk-count {
  font-size: 13px;
  color: var(--an-text);
  white-space: nowrap;
}
.catalog-bulk-count strong {
  font-weight: 700;
  color: var(--an-primary, #497fe4);
}

.catalog-bulk-btn {
  min-height: 32px !important;
  height: 32px !important;
  line-height: 1 !important;
  padding: 0 13px !important;
  border-radius: 8px !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  white-space: nowrap !important;
  flex-shrink: 0;
  border: 1.5px solid var(--an-border-strong) !important;
  background: var(--an-surface-raised, #fff) !important;
  color: var(--an-text) !important;
  transition: background 0.15s, border-color 0.15s, color 0.15s;
}
.catalog-bulk-btn md-icon {
  font-size: 15px !important;
  width: 15px !important;
  height: 15px !important;
  line-height: 1 !important;
  flex-shrink: 0;
  color: inherit !important;
}
.catalog-bulk-btn--enable {
  background: var(--an-emerald-soft) !important;
  color: var(--an-emerald) !important;
  border-color: transparent !important;
}
.catalog-bulk-btn--disable {
  background: var(--an-orange-soft) !important;
  color: var(--an-orange) !important;
  border-color: transparent !important;
}
.catalog-bulk-btn--delete {
  background: var(--an-rose-soft) !important;
  color: var(--an-rose) !important;
  border-color: transparent !important;
}
.catalog-bulk-btn--more {
  border: none !important;
  background: transparent !important;
  padding: 0 8px !important;
}
.catalog-bulk-btn--more md-icon {
  color: var(--an-text-muted) !important;
}
.catalog-bulk-btn:hover {
  background: var(--an-surface-hover, #f5f7fa) !important;
  border-color: var(--an-primary, #497fe4) !important;
  color: var(--an-primary, #497fe4) !important;
}
.catalog-bulk-btn:hover.catalog-bulk-btn--enable {
  background: var(--an-emerald-soft) !important;
  border-color: var(--an-emerald) !important;
}
.catalog-bulk-btn:hover.catalog-bulk-btn--disable {
  background: var(--an-orange-soft) !important;
  border-color: var(--an-orange) !important;
}
.catalog-bulk-btn:hover.catalog-bulk-btn--delete {
  background: var(--an-rose-soft) !important;
  border-color: var(--an-rose) !important;
}
.catalog-bulk-btn:hover.catalog-bulk-btn--more {
  background: var(--an-surface-hover, #f5f7fa) !important;
  border-color: transparent !important;
}

.catalog-table-wrap {
  margin-top: 16px;
  padding: 0 20px 24px;
  flex: 1;
  overflow-x: auto;
}

.catalog-table {
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
  border-spacing: 0;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 10px;
  box-shadow: var(--an-shadow-sm);
}
.catalog-table col.col-drag {
  width: 28px;
}
.catalog-table col.col-check {
  width: 40px;
}
.catalog-table col.col-thumb {
  width: 72px;
}
.catalog-table col.col-category {
  width: 140px;
}
.catalog-table col.col-modifiers {
  width: 128px;
}
.catalog-table col.col-avail {
  width: 132px;
}
.catalog-table col.col-price {
  width: 80px;
}
.catalog-table col.col-actions {
  width: 128px;
}

.catalog-table-head {
  position: sticky;
  top: 0;
  z-index: 2;
}
.catalog-table-head th:first-child {
  border-top-left-radius: 10px;
}
.catalog-table-head th:last-child {
  border-top-right-radius: 10px;
}

.catalog-tbody > tr:last-child > td:first-child {
  border-bottom-left-radius: 10px;
}
.catalog-tbody > tr:last-child > td:last-child {
  border-bottom-right-radius: 10px;
}

.catalog-th {
  background: var(--an-surface2);
  padding: 12px 14px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  color: var(--an-text-muted);
  border-bottom: 1px solid var(--an-border);
  white-space: nowrap;
  text-align: left;
  overflow: hidden;
}
.catalog-th--check {
  width: 40px;
  padding: 0 !important;
  text-align: center;
  vertical-align: middle;
}
.catalog-th--thumb {
  width: 72px;
  padding: 10px 12px;
}
.catalog-th--name { /* flex: remaining */ }
.catalog-th--category {
  width: 140px;
}
.catalog-th--avail {
  width: 100px;
  text-align: center;
  padding-left: 6px !important;
  padding-right: 6px !important;
}
.catalog-th--price {
  width: 80px;
  text-align: right;
  white-space: nowrap;
}
.catalog-th--actions {
  width: 128px;
  padding: 10px 8px;
  text-align: right;
}
.catalog-th.catalog-th--sortable {
  cursor: pointer;
  transition: color 0.15s, background 0.15s;
}
.catalog-th.catalog-th--sortable:hover {
  color: var(--an-text);
  background: var(--an-surface2-hover);
}
.catalog-th.catalog-th--sortable:hover md-icon {
  color: var(--an-text) !important;
}

.catalog-th-sort-header {
  display: flex;
  align-items: center;
  gap: 4px;
}

.catalog-th-sort-icon {
  font-size: 14px !important;
  min-height: 14px !important;
  min-width: 14px !important;
  height: 14px !important;
  width: 14px !important;
  color: var(--an-text-muted) !important;
  flex-shrink: 0;
}

.catalog-table-row {
  cursor: pointer;
  transition: background 0.12s;
}
.catalog-table-row.as-sortable-item, .catalog-table-row.as-sortable-placeholder {
  display: table-row;
}
.catalog-table-row:hover {
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.04);
}
.catalog-table-row:hover .catalog-row-action-btn {
  opacity: 1;
}
.catalog-table-row--selected {
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.08) !important;
}
.catalog-table-row--disabled .catalog-item-name {
  color: var(--an-text-muted);
}
.catalog-table-row--disabled .catalog-thumb {
  opacity: 0.55;
  filter: grayscale(0.4);
}
.catalog-table-row + .catalog-table-row .catalog-td {
  border-top: 1px solid var(--an-border);
}

.catalog-table-drag-handle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  margin: 0 auto;
  cursor: grab;
}
.catalog-table-drag-handle .catalog-table-drag-icon {
  font-size: 15px !important;
  width: 15px !important;
  height: 15px !important;
  color: var(--an-text-muted);
  opacity: 0.45;
  transition: opacity 0.15s, color 0.15s;
}
.catalog-table-drag-handle:hover .catalog-table-drag-icon {
  opacity: 1;
  color: var(--an-primary, #497fe4);
}

.catalog-tbody .as-sortable-placeholder, .catalog-grid .as-sortable-placeholder {
  border: 1px dashed var(--an-primary, #497fe4) !important;
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.03) !important;
}

.catalog-td {
  padding: 10px 14px;
  vertical-align: middle;
}
.catalog-td--drag {
  padding: 0 !important;
  width: 28px;
  text-align: center;
  vertical-align: middle !important;
}
.catalog-td--check {
  padding: 0 !important;
  width: 40px;
  text-align: center;
  vertical-align: middle !important;
}
.catalog-td--check > md-checkbox {
  margin: 0 auto !important;
  display: block;
}
.catalog-td--thumb {
  padding: 10px 12px 10px 12px;
}
.catalog-td--name {
  padding-left: 0 !important;
}
.catalog-td--actions {
  padding: 10px 8px;
}

.catalog-thumb-wrap {
  width: 48px;
  height: 48px;
  border-radius: 6px;
  overflow: hidden;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  flex-shrink: 0;
  position: relative;
}

.catalog-thumb {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.catalog-thumb-placeholder {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--an-border);
}
.catalog-thumb-placeholder md-icon {
  font-size: 22px !important;
  width: 22px !important;
  height: 22px !important;
}

.catalog-item-name {
  font-size: 14px;
  font-weight: 600;
  color: var(--an-text);
  margin-bottom: 2px;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.catalog-item-desc {
  font-size: 12px;
  color: var(--an-text-muted);
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 1.4;
}

.catalog-item-snooze {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  color: var(--an-orange, #F97316);
  margin-top: 3px;
}
.catalog-item-snooze md-icon {
  font-size: 12px !important;
  width: 12px !important;
  height: 12px !important;
}

.catalog-category-chip {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  border-radius: 20px;
  font-size: 11px;
  font-weight: 500;
  background: var(--an-surface2);
  color: var(--an-text-muted);
  white-space: nowrap;
  max-width: 130px;
  overflow: hidden;
  text-overflow: ellipsis;
  letter-spacing: 0;
}

.catalog-price {
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text);
  letter-spacing: -0.2px;
}

.catalog-price-variable {
  font-size: 11px;
  color: var(--an-text-muted);
  font-style: italic;
}

.catalog-status-pill {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 3px 10px 3px 7px;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
  white-space: nowrap;
}
.catalog-status-pill .catalog-status-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  flex-shrink: 0;
}
.catalog-status-pill--active {
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
}
.catalog-status-pill--active .catalog-status-dot {
  background: var(--an-emerald);
}
.catalog-status-pill--snoozed {
  background: var(--an-orange-soft);
  color: var(--an-orange);
}
.catalog-status-pill--snoozed .catalog-status-dot {
  background: var(--an-orange);
}
.catalog-status-pill--disabled {
  background: var(--an-border-strong);
  color: var(--an-text-muted);
}
.catalog-status-pill--disabled .catalog-status-dot {
  background: var(--an-text-muted);
}

.catalog-row-quick-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
}
.catalog-row-quick-actions .catalog-row-quick-btn,
.catalog-row-quick-actions .catalog-row-action-btn {
  opacity: 0;
  transition: opacity 0.15s, background 0.15s, border-color 0.15s, box-shadow 0.15s;
}

.catalog-table-row:hover .catalog-row-quick-btn,
.catalog-table-row:hover .catalog-row-action-btn {
  opacity: 1;
}

.catalog-row-quick-btn,
.catalog-row-action-btn {
  margin: 0 !important;
  width: 30px !important;
  height: 30px !important;
  min-width: 30px !important;
  min-height: 30px !important;
  padding: 0 !important;
  border-radius: var(--an-radius-sm) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.catalog-row-quick-btn md-icon,
.catalog-row-action-btn md-icon {
  font-size: 18px !important;
  width: 18px !important;
  height: 18px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  margin: 0 !important;
  color: var(--an-text-muted);
  transition: color 0.15s;
}
.catalog-row-quick-btn:hover md-icon,
.catalog-row-action-btn:hover md-icon {
  color: var(--an-text) !important;
}

.catalog-row-quick-btn--muted md-icon {
  color: var(--an-text-muted);
  opacity: 0.6;
}

.catalog-table-checkbox {
  margin: 0 !important;
  flex-shrink: 0;
  height: 20px !important;
  width: 20px !important;
  min-height: 20px !important;
  position: relative !important;
  display: inline-block !important;
  vertical-align: middle !important;
}
.catalog-table-checkbox .md-container {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 20px !important;
  height: 20px !important;
  margin: 0 !important;
  transform: none !important;
}
.catalog-table-checkbox .md-icon {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 20px !important;
  height: 20px !important;
  margin: 0 !important;
  transform: none !important;
  border: 2px solid var(--an-border-strong) !important;
  border-radius: 4px !important;
  background: transparent !important;
  transition: border-color 0.15s ease, background 0.15s ease !important;
}
.catalog-table-checkbox:hover .md-icon {
  border-color: var(--an-text-muted) !important;
}
.catalog-table-checkbox.md-checked .md-icon {
  background: var(--an-primary, #497fe4) !important;
  border-color: var(--an-primary, #497fe4) !important;
}
.catalog-table-checkbox .md-label {
  display: none !important;
}

.catalog-grid-wrap {
  padding: 16px 20px 24px;
  flex: 1;
}
.catalog-grid-wrap--flush {
  padding: 0;
}

.catalog-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 16px;
}
.catalog-grid--management {
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 16px;
  align-items: start;
}

.catalog-product-card {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 10px;
  overflow: hidden;
  box-shadow: var(--an-shadow-sm);
  transition: box-shadow 0.18s, transform 0.18s;
  display: flex;
  flex-direction: column;
  content-visibility: auto;
  contain-intrinsic-size: auto 280px;
}
.catalog-product-card:hover {
  box-shadow: var(--an-shadow-md);
  transform: translateY(-2px);
}
.catalog-product-card:hover .catalog-card-actions {
  opacity: 1;
}
.catalog-product-card--selected {
  border-color: var(--an-primary, #497fe4);
  box-shadow: 0 0 0 2px rgba(73, 127, 228, 0.2) !important;
}
.catalog-product-card--disabled .catalog-card-img {
  opacity: 0.6;
  filter: grayscale(0.3);
}
.catalog-product-card--management {
  min-height: 0;
}
.catalog-product-card--management .catalog-card-img-wrap {
  aspect-ratio: 16/10;
  cursor: default;
}
.catalog-product-card--management .catalog-card-status-badge {
  top: 10px;
  bottom: auto;
  left: 10px;
  padding: 4px 9px 4px 7px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.12);
}
.catalog-product-card--management .catalog-card-body {
  min-height: 112px;
  padding: 12px 12px 10px;
  cursor: default;
}
.catalog-product-card--management .catalog-card-actions {
  min-height: 42px;
  padding: 5px 8px;
  opacity: 1;
}

.catalog-card-img-wrap {
  position: relative;
  aspect-ratio: 4/3;
  background: var(--an-surface2);
  overflow: hidden;
  cursor: pointer;
}

.catalog-card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.25s;
}
.catalog-product-card:hover .catalog-card-img {
  transform: scale(1.04);
}

.catalog-card-img-placeholder {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--an-border);
}
.catalog-card-img-placeholder md-icon {
  font-size: 36px !important;
  width: 36px !important;
  height: 36px !important;
}

.catalog-card-status-badge {
  position: absolute;
  bottom: 8px;
  left: 8px;
  font-size: 11px;
  padding: 2px 8px 2px 6px;
}

.catalog-card-select {
  position: absolute;
  top: 6px;
  left: 6px;
  background: transparent;
  border-radius: 6px;
  padding: 1px;
  cursor: pointer;
  opacity: 0;
  transition: opacity 0.15s ease;
}
.catalog-card-select md-checkbox {
  margin: 0 !important;
}
.catalog-product-card:hover .catalog-card-select {
  opacity: 1;
}
.catalog-product-card--selected .catalog-card-select {
  opacity: 1;
}

.catalog-card-drag-handle {
  position: absolute;
  top: 6px;
  right: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: 6px;
  background: rgba(0, 0, 0, 0.4);
  cursor: grab;
  z-index: 3;
  opacity: 0;
  transition: opacity 0.15s ease;
}
.catalog-card-drag-handle i {
  color: #fff;
  font-size: 14px;
}
.catalog-product-card:hover .catalog-card-drag-handle {
  opacity: 1;
}

.catalog-card-body {
  padding: 10px 12px 6px;
  cursor: pointer;
  flex: 1;
}

.catalog-card-name {
  font-size: 13.5px;
  font-weight: 600;
  color: var(--an-text);
  margin-bottom: 6px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  line-height: 1.35;
}

.catalog-card-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
}

.catalog-card-price {
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
  letter-spacing: -0.2px;
  white-space: nowrap;
}

.catalog-card-more {
  display: none;
}

@media (hover: none) {
  .catalog-card-actions > .md-icon-button {
    display: none !important;
  }
  .catalog-card-actions > .catalog-card-more {
    display: block;
  }
  .catalog-card-actions .catalog-card-more .md-icon-button {
    width: 40px !important;
    height: 40px !important;
  }
}
.catalog-card-more__danger,
.catalog-card-more__danger md-icon {
  color: var(--an-rose) !important;
}

.catalog-card-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
  padding: 2px 6px 6px;
  border-top: 1px solid var(--an-border);
  opacity: 0;
  transition: opacity 0.18s;
}
.catalog-card-actions .md-icon-button {
  margin: 0 !important;
  width: 30px !important;
  height: 30px !important;
  min-height: 30px !important;
  color: var(--an-text-muted) !important;
}
.catalog-card-actions .md-icon-button md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
}
.catalog-card-actions .md-icon-button:hover {
  color: var(--an-text) !important;
}
.catalog-card-actions .catalog-card-delete-btn:hover {
  color: var(--an-rose, #F43F5E) !important;
}

.catalog-skeleton-wrap {
  padding: 16px 20px;
}

.catalog-sk-kpi-row {
  display: flex;
  gap: 12px;
  margin-bottom: 20px;
}

.catalog-sk-kpi {
  flex: 1;
  height: 70px;
  border-radius: 10px;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  animation: catalogSkPulse 1.4s ease-in-out infinite;
}

.catalog-sk-table-header {
  height: 40px;
  border-radius: 10px 10px 0 0;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-bottom: none;
  animation: catalogSkPulse 1.4s ease-in-out infinite;
  animation-delay: 0.1s;
}

.catalog-sk-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-top: none;
}
.catalog-sk-row:last-child {
  border-radius: 0 0 10px 10px;
}

.catalog-sk-thumb {
  width: 48px;
  height: 48px;
  border-radius: 6px;
  background: var(--an-border);
  flex-shrink: 0;
  animation: catalogSkPulse 1.4s ease-in-out infinite;
}

.catalog-sk-text {
  height: 12px;
  border-radius: 6px;
  background: var(--an-border);
  animation: catalogSkPulse 1.4s ease-in-out infinite;
}
.catalog-sk-text--wide {
  flex: 3;
  animation-delay: 0.05s;
}
.catalog-sk-text--narrow {
  flex: 1;
  animation-delay: 0.1s;
}

.catalog-sk-badge {
  width: 80px;
  height: 22px;
  border-radius: 20px;
  background: var(--an-border);
  flex-shrink: 0;
  animation: catalogSkPulse 1.4s ease-in-out infinite;
  animation-delay: 0.15s;
}

.catalog-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 64px 32px;
  text-align: center;
  flex: 1;
  animation: catalogEmptyFadeIn 0.3s ease;
}
.catalog-empty--search .catalog-empty-icon-wrap {
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.08);
  border-color: rgba(var(--an-primary-rgb, 73, 127, 228), 0.2);
}
.catalog-empty--search .catalog-empty-icon-wrap md-icon {
  color: var(--an-primary, #497fe4);
}
.catalog-empty--filter .catalog-empty-icon-wrap {
  background: var(--an-emerald-soft);
  border-color: rgba(16, 185, 129, 0.2);
}
.catalog-empty--filter .catalog-empty-icon-wrap md-icon {
  color: var(--an-emerald);
}

.catalog-empty-icon-wrap {
  width: 72px;
  height: 72px;
  border-radius: 20px;
  background: var(--an-surface2);
  border: 1.5px solid var(--an-border);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
}
.catalog-empty-icon-wrap md-icon {
  font-size: 36px !important;
  width: 36px !important;
  height: 36px !important;
  color: var(--an-text-muted);
}

.catalog-empty-title {
  font-size: 18px;
  font-weight: 700;
  color: var(--an-text);
  margin: 0 0 8px;
}

.catalog-empty-desc {
  font-size: 14px;
  color: var(--an-text-muted);
  margin: 0 0 24px;
  max-width: 360px;
  line-height: 1.6;
}
.catalog-empty-desc strong {
  color: var(--an-text);
}

@keyframes catalogEmptyFadeIn {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes catalogSkPulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.45;
  }
}
@keyframes catalogBulkSlideIn {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (max-width: 960px) {
  .catalog-sidebar {
    width: 56px;
    min-width: 56px;
  }
  .catalog-kpi-row {
    padding: 12px 12px 0;
    gap: 8px;
  }
  .catalog-kpi-card {
    padding: 10px 12px;
  }
  .catalog-kpi-card .catalog-kpi-value {
    font-size: 18px;
  }
  .catalog-grid-wrap {
    padding: 12px;
  }
  .catalog-table-wrap {
    margin-top: 12px;
    padding: 0 12px 12px;
  }
  .catalog-status-chips {
    display: none;
  }
  .catalog-toolbar-search {
    min-width: 140px;
  }
  .catalog-table col.col-name {
    width: 200px;
  }
}
@media (max-width: 600px) {
  .catalog-grid {
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: 10px;
  }
  .catalog-kpi-row {
    flex-wrap: wrap;
  }
  .catalog-kpi-row .catalog-kpi-card {
    min-width: calc(50% - 6px);
  }
  .catalog-add-btn span {
    display: none;
  }
  .catalog-toolbar-tools {
    padding: 6px 12px 8px !important;
    row-gap: 8px;
    column-gap: 6px;
  }
  .catalog-toolbar-tools > .md-button,
  .catalog-toolbar-tools > md-menu > .md-button,
  .catalog-toolbar-tools > md-menu .catalog-toolbar-btn,
  .catalog-toolbar-tools > md-menu .catalog-saved-views-btn {
    margin: 0 !important;
  }
  .catalog-toolbar-tools > :not(.catalog-sidebar-toggle):not(.catalog-toolbar-title):not(.catalog-toolbar-search) {
    order: 2;
    margin: 0 !important;
  }
  .catalog-toolbar-tools > [flex],
  .catalog-toolbar-tools > .flex {
    display: none;
  }
  .catalog-toolbar-search {
    order: 1;
    flex: 1 1 100%;
    min-width: 0;
    max-width: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
.catalog-toolbar-btn, .catalog-saved-views-btn {
  height: 32px !important;
  min-height: 32px !important;
  line-height: 32px !important;
  padding: 0 10px !important;
  border-radius: 6px !important;
  font-size: 12.5px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  color: var(--an-text-muted) !important;
  display: inline-flex !important;
  align-items: center;
  gap: 5px;
  border: 1px solid var(--an-border) !important;
  background: var(--an-surface) !important;
}
.catalog-toolbar-btn md-icon, .catalog-saved-views-btn md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  line-height: 16px !important;
  color: var(--an-text-muted) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.catalog-toolbar-btn:hover, .catalog-saved-views-btn:hover, .catalog-toolbar-btn.catalog-toolbar-btn--active, .catalog-toolbar-btn--active.catalog-saved-views-btn {
  background: var(--an-surface2) !important;
  color: var(--an-text) !important;
  border-color: var(--an-border-strong) !important;
}
.catalog-toolbar-btn.catalog-toolbar-btn--active, .catalog-toolbar-btn--active.catalog-saved-views-btn {
  color: var(--an-primary) !important;
  border-color: var(--an-primary) !important;
}
.catalog-toolbar-btn.catalog-toolbar-btn--active md-icon, .catalog-toolbar-btn--active.catalog-saved-views-btn md-icon {
  color: var(--an-primary) !important;
}
.catalog-toolbar-btn.wf-ai-generate-btn, .wf-ai-generate-btn.catalog-saved-views-btn {
  height: 32px !important;
  min-height: 32px !important;
  line-height: 32px !important;
  padding: 0 10px !important;
  font-size: 12.5px !important;
  font-weight: 500 !important;
  border-radius: 6px !important;
}
.catalog-toolbar-btn--filtered {
  position: relative;
}
.catalog-toolbar-btn--filtered::after {
  content: "";
  position: absolute;
  top: 4px;
  right: 4px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--an-primary, #497fe4);
  border: 1.5px solid var(--an-surface);
}

.catalog-kpi-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 12px 20px 0;
  flex-shrink: 0;
}

.catalog-kpi-chip md-icon {
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
}
.catalog-kpi-chip--muted {
  opacity: 0.45;
  pointer-events: none;
}
.catalog-kpi-chip--warning md-icon {
  color: var(--an-orange) !important;
}
.catalog-kpi-chip--critical md-icon {
  color: var(--an-rose) !important;
}
.catalog-kpi-chip .catalog-kpi-chip-x {
  margin-left: 2px;
  opacity: 0.6;
  color: currentColor !important;
}
.catalog-kpi-chip:hover .catalog-kpi-chip-x {
  opacity: 1;
}
.catalog-kpi-chip--enabled md-icon {
  color: var(--an-emerald);
}
.catalog-kpi-chip--paused md-icon {
  color: var(--an-rose);
}
.catalog-kpi-chip--snoozed md-icon {
  color: var(--an-orange);
}
.catalog-kpi-chip--stock md-icon {
  color: var(--an-amber);
}
.catalog-kpi-chip--sync md-icon {
  color: var(--an-violet);
}

.catalog-exception-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-top: 4px;
}

.catalog-ex-chip {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  padding: 2px 7px;
  border-radius: 10px;
  font-size: 11px;
  font-weight: 500;
  white-space: nowrap;
  border: 1px solid transparent;
  background: var(--an-surface2);
  color: var(--an-text-muted);
}
.catalog-ex-chip md-icon {
  font-size: 12px !important;
  width: 12px !important;
  height: 12px !important;
  margin-right: 1px;
}
.catalog-ex-chip--snooze, .catalog-ex-chip--paused {
  background: var(--an-orange-soft);
  color: var(--an-orange);
  border-color: rgba(249, 115, 22, 0.2);
}
.catalog-ex-chip--snooze md-icon, .catalog-ex-chip--paused md-icon {
  color: var(--an-orange);
}
.catalog-ex-chip--noimage, .catalog-ex-chip--nodesc, .catalog-ex-chip--noprice {
  background: var(--an-surface2);
  color: var(--an-text-muted);
  border-color: var(--an-border);
}
.catalog-ex-chip--stock {
  background: var(--an-rose-soft);
  color: var(--an-rose);
  border-color: rgba(236, 78, 54, 0.2);
}
.catalog-ex-chip--stock md-icon {
  color: var(--an-rose);
}
.catalog-ex-chip--sync {
  background: var(--an-violet-soft);
  color: var(--an-violet);
  border-color: rgba(108, 99, 255, 0.2);
}
.catalog-ex-chip--sync md-icon {
  color: var(--an-violet);
}
.catalog-ex-chip--tag {
  background: var(--an-primary-soft, rgba(73, 127, 228, 0.08));
  color: var(--an-primary, #497fe4);
  border-color: rgba(var(--an-primary-rgb, 73, 127, 228), 0.2);
}
.catalog-ex-chip--tag-more {
  background: var(--an-border);
  color: var(--an-text-muted);
  padding: 2px 6px;
}

.catalog-channel-dots {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  align-items: center;
}

.catalog-channel-dot-wrap {
  position: relative;
  cursor: pointer;
}

.catalog-channel-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  display: inline-block;
  transition: all 0.18s cubic-bezier(0.4, 0, 0.2, 1);
  border: 1.5px solid transparent;
}
.catalog-channel-dot--active {
  background: var(--an-emerald);
  border-color: rgba(16, 185, 129, 0.3);
}
.catalog-channel-dot--override {
  background: var(--an-sky);
  border-color: rgba(56, 189, 248, 0.3);
}
.catalog-channel-dot--restricted {
  background: var(--an-orange);
  border-color: rgba(249, 115, 22, 0.3);
}
.catalog-channel-dot--disabled {
  background: var(--an-border-strong);
  border-color: var(--an-border);
}

.catalog-channel-dot-price {
  position: absolute;
  top: -3px;
  right: -3px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--an-amber);
  border: 1px solid var(--an-surface);
}

.catalog-channel-popover {
  min-width: 160px;
}

.catalog-td--name {
  overflow: hidden;
}

.catalog-td--category {
  width: 150px;
  color: var(--an-text-muted);
  font-size: 12.5px;
}

.catalog-td--modifiers {
  width: 110px;
  text-align: center;
}

.catalog-th--modifiers {
  text-align: center;
}

.catalog-td--avail {
  width: 120px;
  text-align: center;
  padding-left: 8px !important;
  padding-right: 8px !important;
}

.catalog-td--price {
  width: 75px;
  text-align: right;
  white-space: nowrap;
}

.catalog-td--actions {
  width: 120px;
  text-align: right;
}

.catalog-avail-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  position: relative;
  transition: transform 0.15s ease;
  cursor: default;
}
.catalog-avail-badge::before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  display: block;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.catalog-avail-badge:hover::before {
  transform: scale(1.4);
}
.catalog-avail-badge--on::before {
  background: #22c55e;
  box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.18);
}
.catalog-avail-badge--on:hover::before {
  box-shadow: 0 0 0 5px rgba(34, 197, 94, 0.28);
}
.catalog-avail-badge--snooze::before {
  background: #f59e0b;
  box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.18);
}
.catalog-avail-badge--snooze:hover::before {
  box-shadow: 0 0 0 5px rgba(245, 158, 11, 0.28);
}
.catalog-avail-badge--off::before {
  background: #ef4444;
  box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.18);
}
.catalog-avail-badge--off:hover::before {
  box-shadow: 0 0 0 5px rgba(239, 68, 68, 0.28);
}

.catalog-inline-input--name {
  width: 100%;
  border: none;
  background: transparent;
  outline: none;
  font-size: 13.5px;
  font-weight: 500;
  color: var(--an-text);
  font-family: inherit;
  padding: 0;
}
.catalog-inline-input--name:focus {
  border-bottom: 1px solid var(--an-primary, #497fe4);
  background: var(--an-bg-subtle);
}

.catalog-sidebar-tree {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.catalog-sidebar-tree .as-sortable-placeholder {
  border: 1px dashed var(--an-primary, #497fe4) !important;
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.03) !important;
  border-radius: 8px;
  margin: 6px 12px;
  min-height: 42px !important;
  height: 42px !important;
  box-sizing: border-box;
}
.catalog-sidebar-tree .catalog-sidebar-cat-list .as-sortable-placeholder {
  border: 1px dashed var(--an-primary, #497fe4) !important;
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.03) !important;
  border-radius: 6px;
  margin: 2px 8px;
  min-height: 28px !important;
  height: 28px !important;
  box-sizing: border-box;
}

.catalog-sidebar-skeleton {
  padding: 8px 0;
}

.catalog-sidebar-filter-row {
  display: flex;
  align-items: center;
  padding: 4px 12px;
  font-size: 12.5px;
  color: var(--an-text-muted);
}
.catalog-sidebar-filter-row md-checkbox {
  margin: 0 8px 0 0;
}

.catalog-bulk-more {
  position: relative;
}

.catalog-tip {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2147483647;
  max-width: 320px;
  background: rgba(24, 24, 27, 0.95);
  border-radius: 8px;
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.15), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  font-family: inherit;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.2px;
  line-height: 1.4;
  color: #fff;
  padding: 8px 14px;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  pointer-events: none;
  opacity: 0;
  transform: scale(0.94);
  transition: opacity 0.18s cubic-bezier(0.25, 0.8, 0.25, 1), transform 0.18s cubic-bezier(0.25, 0.8, 0.25, 1);
}
.catalog-tip--visible {
  opacity: 1;
  transform: scale(1);
}

@media (prefers-reduced-motion: reduce) {
  .catalog-tip {
    transition: none;
    transform: none;
  }
  .catalog-tip--visible {
    transform: none;
  }
}
.catalog-infinite-sentinel {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 20px 0 12px;
  min-height: 48px;
  pointer-events: none;
}

.catalog-infinite-dots {
  display: inline-flex;
  gap: 5px;
  align-items: center;
}
.catalog-infinite-sentinel .catalog-infinite-dots::before, .catalog-infinite-sentinel .catalog-infinite-dots::after {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--an-border);
  animation: catalogDotPulse 1.2s ease-in-out infinite;
}
.catalog-infinite-sentinel .catalog-infinite-dots::before {
  animation-delay: 0s;
}
.catalog-infinite-sentinel .catalog-infinite-dots::after {
  animation-delay: 0.4s;
}
.catalog-infinite-sentinel .catalog-infinite-dots {
  display: inline-flex;
  gap: 5px;
}
.catalog-infinite-sentinel .catalog-infinite-dots::before {
  order: 1;
}
.catalog-infinite-sentinel .catalog-infinite-dots::after {
  order: 3;
}
.catalog-infinite-sentinel .catalog-infinite-dots {
  font-size: 0;
}
.catalog-infinite-sentinel .catalog-infinite-dots::before, .catalog-infinite-sentinel .catalog-infinite-dots::after {
  font-size: 0;
}

.catalog-infinite-dots {
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--an-border);
  animation: catalogDotPulse 1.2s ease-in-out 0s infinite;
  position: relative;
  box-shadow: 14px 0 0 0 var(--an-border), 28px 0 0 0 var(--an-border);
}

@keyframes catalogDotPulse {
  0%, 80%, 100% {
    background: var(--an-border);
    box-shadow: 14px 0 0 0 var(--an-border), 28px 0 0 0 var(--an-border);
  }
  40% {
    background: var(--an-primary, #497fe4);
    box-shadow: 14px 0 0 0 var(--an-primary, #497fe4), 28px 0 0 0 var(--an-primary, #497fe4);
  }
}
.catalog-pagination-summary {
  text-align: center;
  font-size: 12px;
  color: var(--an-text-muted);
  padding: 4px 0 16px;
  letter-spacing: 0.01em;
}

.catalog-modifiers-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 3px 8px;
  border-radius: 12px;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  color: var(--an-text-muted);
  font-size: 11.5px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.15s ease-in-out;
  outline: none;
}
.catalog-modifiers-pill md-icon {
  font-size: 13px !important;
  width: 13px !important;
  height: 13px !important;
  color: inherit !important;
  margin: 0 !important;
}
.catalog-modifiers-pill:hover {
  background: var(--an-border);
  color: var(--an-text);
  border-color: var(--an-text-muted);
}
.catalog-modifiers-pill--active {
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.08);
  border-color: rgba(var(--an-primary-rgb, 73, 127, 228), 0.2);
  color: var(--an-primary, #497fe4);
  font-weight: 600;
}
.catalog-modifiers-pill--active:hover {
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.14);
  border-color: var(--an-primary, #497fe4);
}

.catalog-thumb-edit-btn {
  position: absolute;
  margin: 0;
  padding: 0;
  border: none;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  cursor: pointer;
  z-index: 3;
}
.catalog-thumb-edit-btn md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  color: #fff !important;
  margin: 0 !important;
}
.catalog-thumb-edit-btn {
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
  backdrop-filter: blur(1.5px);
  transition: opacity 0.2s ease;
}
.catalog-thumb-wrap:hover .catalog-thumb-edit-btn {
  opacity: 1;
}

.catalog-card-img-edit-btn {
  position: absolute;
  margin: 0;
  padding: 0;
  border: none;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  cursor: pointer;
  z-index: 3;
}
.catalog-card-img-edit-btn md-icon {
  font-size: 18px !important;
  width: 18px !important;
  height: 18px !important;
  color: #fff !important;
  margin: 0 !important;
}
.catalog-card-img-edit-btn {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0.9);
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.9);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.25);
  transition: opacity 0.2s ease, transform 0.2s ease;
}
.catalog-card-img-wrap:hover .catalog-card-img-edit-btn {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}

.catalog-group-header-row {
  background: transparent !important;
}
.catalog-group-header-row:hover {
  background: transparent !important;
}

.catalog-group-header-cell {
  padding: 18px 16px 6px !important;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--an-text-muted);
  border-bottom: 1px solid var(--an-divider, rgba(0, 0, 0, 0.08)) !important;
  user-select: none;
}

.catalog-grid-group-header {
  width: 100%;
  padding: 18px 4px 6px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--an-text-muted);
  border-bottom: 1px solid var(--an-divider, rgba(0, 0, 0, 0.08));
  margin-bottom: 4px;
  user-select: none;
}

.catalog-sort-dir-icon {
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  margin-left: 2px !important;
}

.catalog-sort-item-icon {
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  margin-right: 4px !important;
  flex-shrink: 0;
}

.catalog-menu-subheader {
  background: transparent !important;
  padding: 10px 16px 4px !important;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: var(--an-text-muted);
}

.catalog-menu-check {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  margin-left: auto !important;
  flex-shrink: 0;
  color: var(--an-primary, #497fe4) !important;
}

.catalog-kpi-chip-divider {
  display: inline-block;
  width: 1px;
  height: 18px;
  background: var(--an-border);
  margin: 0 4px;
  flex-shrink: 0;
  align-self: center;
}

.catalog-filter-chip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  height: 26px;
  padding: 0 4px 0 10px;
  border-radius: 14px;
  font-size: 12px;
  font-weight: 500;
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.08);
  color: var(--an-primary, #497fe4);
  border: 1.5px solid rgba(var(--an-primary-rgb, 73, 127, 228), 0.3);
  white-space: nowrap;
}
.catalog-filter-chip md-icon {
  font-size: 13px !important;
  width: 13px !important;
  height: 13px !important;
  color: inherit !important;
}

.catalog-filter-chip--hint {
  padding: 0 10px;
  background: rgba(245, 158, 11, 0.1);
  color: var(--an-amber, #f59e0b);
  border-color: rgba(245, 158, 11, 0.35);
  white-space: normal;
}
.waitry-dark-theme .catalog-filter-chip--hint {
  background: rgba(251, 191, 36, 0.15);
  border-color: rgba(251, 191, 36, 0.4);
}

.catalog-filter-chip-hint-action {
  display: inline-flex;
  align-items: center;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  margin-left: 6px;
  color: inherit;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
  white-space: nowrap;
}
.catalog-filter-chip-hint-action:hover {
  opacity: 0.8;
}

.catalog-filter-chip-remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  margin-left: 2px;
  color: inherit;
  opacity: 0.65;
  border-radius: 50%;
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  transition: opacity 0.15s, background 0.15s;
}
.catalog-filter-chip-remove md-icon {
  font-size: 11px !important;
  width: 11px !important;
  height: 11px !important;
}
.catalog-filter-chip-remove:hover {
  opacity: 1;
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.15);
}

.catalog-filter-chip-clear-all {
  background: none;
  border: none;
  cursor: pointer;
  color: var(--an-text-muted);
  font-size: 12px;
  padding: 4px 6px;
  font-family: inherit;
  text-decoration: underline;
  transition: color 0.15s;
}
.catalog-filter-chip-clear-all:hover {
  color: var(--an-text);
}

/* ── Inline Edit ─────────────────────────────────────────────────────────── */
.catalog-inline-edit-wrap {
  width: 100%;
}

.catalog-inline-input {
  width: 100%;
  border: 1px solid var(--an-border);
  border-radius: 4px;
  padding: 4px 8px;
  font-size: 14px;
  outline: none;
  background: var(--an-surface);
  color: var(--an-text);
  box-shadow: 0 0 0 2px rgba(var(--an-primary-rgb, 51, 170, 102), 0.2);
  transition: box-shadow 0.2s ease;
}
.catalog-inline-input:focus {
  border-color: var(--an-primary, #33aa66);
}

.catalog-inline-input--price {
  max-width: 100px;
}

/* ── Drag Handle ─────────────────────────────────────────────────────────── */
.catalog-th--drag, .catalog-td--drag {
  width: 40px;
  text-align: center;
  cursor: grab;
  color: var(--an-text-muted);
}

.catalog-td--drag:active {
  cursor: grabbing;
}

/* ── Command Palette ─────────────────────────────────────────────────────── */
.catalog-cmd-palette {
  max-width: 600px;
  width: 90%;
  max-height: 80vh;
  border-radius: 12px;
  background: var(--an-surface, #fff);
}
.catalog-cmd-palette .catalog-cmd-header {
  display: flex;
  align-items: center;
  padding: 16px;
  border-bottom: 1px solid var(--an-border);
}
.catalog-cmd-palette .catalog-cmd-header md-icon {
  color: var(--an-text-muted);
  margin-right: 12px;
}
.catalog-cmd-palette .catalog-cmd-header input {
  flex: 1;
  border: none;
  outline: none;
  font-size: 18px;
  background: transparent;
  color: var(--an-text);
}
.catalog-cmd-palette .catalog-cmd-header input::placeholder {
  color: var(--an-placeholder);
}
.catalog-cmd-palette .catalog-cmd-header .catalog-cmd-hint {
  font-size: 12px;
  color: var(--an-text-muted);
  background: var(--an-bg-subtle);
  padding: 4px 8px;
  border-radius: 4px;
  border: 1px solid var(--an-border);
}
.catalog-cmd-palette .catalog-cmd-content {
  padding: 0;
}
.catalog-cmd-palette .catalog-cmd-list {
  padding: 0;
}
.catalog-cmd-palette .catalog-cmd-item {
  cursor: pointer;
  transition: background 0.2s ease;
  padding: 12px 16px;
  border-bottom: 1px solid var(--an-border-light);
}
.catalog-cmd-palette .catalog-cmd-item:hover, .catalog-cmd-palette .catalog-cmd-item--selected {
  background: var(--an-bg-subtle, #f5f5f5);
}
.catalog-cmd-palette .catalog-cmd-item .catalog-cmd-item-thumb, .catalog-cmd-palette .catalog-cmd-item .catalog-cmd-item-thumb-placeholder {
  width: 40px;
  height: 40px;
  border-radius: 6px;
  margin-right: 16px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--an-bg-subtle);
}
.catalog-cmd-palette .catalog-cmd-item .catalog-cmd-item-thumb img, .catalog-cmd-palette .catalog-cmd-item .catalog-cmd-item-thumb-placeholder img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.catalog-cmd-palette .catalog-cmd-item .catalog-cmd-item-name {
  font-weight: 500;
  color: var(--an-text);
  margin-bottom: 4px;
}
.catalog-cmd-palette .catalog-cmd-item .catalog-cmd-item-cat {
  font-size: 12px;
  color: var(--an-text-muted);
}
.catalog-cmd-palette .catalog-cmd-item .catalog-cmd-item-price {
  font-weight: 600;
  color: var(--an-text);
}
.catalog-cmd-palette .catalog-cmd-empty {
  padding: 32px;
  text-align: center;
  color: var(--an-text-muted);
  font-style: italic;
}

/* ── Drawer ──────────────────────────────────────────────────────────────── */
.waitry-right-drawer {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: auto;
  width: 50%;
  min-width: 600px;
  max-width: 100vw;
  height: 100%;
  margin: 0;
  border-radius: 0;
  box-shadow: -8px 0 40px rgba(0, 0, 0, 0.12), -2px 0 8px rgba(0, 0, 0, 0.06);
  transform: translateX(100%);
  transition: transform 0.35s cubic-bezier(0.22, 0.61, 0.36, 1), width 0.3s cubic-bezier(0.25, 0.8, 0.25, 1), min-width 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}
.waitry-right-drawer:has(.item-form-dialog--with-preview) {
  width: 75%;
  min-width: 900px;
}
@media (max-width: 900px) {
  .waitry-right-drawer:has(.item-form-dialog--with-preview) {
    width: 100%;
    min-width: 100%;
  }
}
@media (max-width: 600px) {
  .waitry-right-drawer {
    width: 100%;
    min-width: 100%;
  }
}
.waitry-right-drawer.md-transition-in {
  transform: translateX(0);
}
.waitry-right-drawer.md-transition-out {
  transform: translateX(100%);
}

/* ── Saved Views Dropdown ────────────────────────────────────────────────── */
.catalog-saved-view-item {
  position: relative;
}
.catalog-saved-view-item .catalog-saved-view-delete {
  position: absolute;
  right: 4px;
  top: 50%;
  transform: translateY(-50%);
  min-width: 28px;
  width: 28px;
  height: 28px;
  padding: 0;
  margin: 0;
  border-radius: 6px;
  opacity: 0;
  transition: opacity 0.15s;
  color: var(--an-text-muted);
}
.catalog-saved-view-item .catalog-saved-view-delete md-icon {
  font-size: 16px;
  margin: 0;
}
.catalog-saved-view-item .catalog-saved-view-delete:hover {
  color: #e53935;
}
.catalog-saved-view-item:hover .catalog-saved-view-delete {
  opacity: 1;
}

.catalog-saved-views {
  margin-right: 8px;
}
.catalog-saved-views .catalog-saved-views-btn {
  margin: 0;
  padding: 0 12px;
  height: 40px;
  text-transform: none;
  color: var(--an-text);
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 8px;
  font-weight: 500;
  transition: all 0.2s ease;
}
.catalog-saved-views .catalog-saved-views-btn md-icon {
  font-size: 18px;
  color: var(--an-text-muted);
}
.catalog-saved-views .catalog-saved-views-btn span {
  margin: 0;
}
.catalog-saved-views .catalog-saved-views-btn:hover {
  background: var(--an-bg-subtle);
}
.catalog-saved-views .catalog-saved-views-btn--active {
  background: rgba(var(--an-primary-rgb, 99, 102, 241), 0.1);
  border-color: var(--an-primary, #6366f1);
  color: var(--an-primary, #6366f1);
  font-weight: 600;
}
.catalog-saved-views .catalog-saved-views-btn--active md-icon {
  color: var(--an-primary, #6366f1);
}
.catalog-saved-views .catalog-saved-views-btn--active:hover {
  background: rgba(var(--an-primary-rgb, 99, 102, 241), 0.18);
}

.catalog-saved-view-active {
  font-weight: 600;
  color: var(--an-primary, #6366f1) !important;
}
.catalog-saved-view-active md-icon {
  color: var(--an-primary, #6366f1) !important;
}

.catalog-item-drop-target {
  position: relative;
  box-shadow: inset 0 0 0 2px var(--an-primary, #6366f1) !important;
  background: rgba(var(--an-primary-rgb, 99, 102, 241), 0.08) !important;
}
.catalog-item-drop-target.catalog-product-card {
  border-color: var(--an-primary, #6366f1);
}
.catalog-item-drop-target td {
  background: transparent !important;
}

.catalog-sidebar.catalog-page-drop-active .catalog-sidebar-inner {
  background: rgba(var(--an-primary-rgb, 99, 102, 241), 0.05);
  box-shadow: inset 0 0 0 2px rgba(var(--an-primary-rgb, 99, 102, 241), 0.35);
  border-radius: 10px;
}

.cqi-dialog.cqi-dialog {
  width: 720px;
  max-width: 94vw;
  height: auto;
  min-height: 0;
}

.cqi-content {
  padding: 20px 24px 8px;
}

.cqi-explain {
  margin: 0 0 16px;
  font-size: 13px;
  line-height: 1.5;
  color: var(--an-text-secondary, #6b7280);
}

.cqi-dest-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
@media (max-width: 600px) {
  .cqi-dest-grid {
    grid-template-columns: 1fr;
  }
}

.cqi-dest {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 10px;
  padding: 12px;
  border: 2px solid var(--an-border, #e5e7eb);
  border-radius: 12px;
  background: var(--an-bg-subtle, #f9fafb);
  cursor: pointer;
  text-align: left;
  transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
  font: inherit;
}
.cqi-dest:hover {
  border-color: var(--an-primary, #6366f1);
}
.cqi-dest--on {
  border-color: var(--an-primary, #6366f1);
  background: rgba(var(--an-primary-rgb, 99, 102, 241), 0.06);
  box-shadow: 0 0 0 3px rgba(var(--an-primary-rgb, 99, 102, 241), 0.12);
}
.cqi-dest--on .cqi-dest__check {
  opacity: 1;
  transform: scale(1);
}
.cqi-dest[disabled] {
  cursor: default;
  opacity: 0.7;
}
.cqi-dest__preview {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 8px;
  background: var(--an-surface-100, #f3f4f6);
}
.cqi-dest__preview img, .cqi-dest__preview video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.cqi-dest__preview--avatar {
  width: 96px;
  height: 96px;
  margin: 0 auto;
  border-radius: 50%;
}
.cqi-dest__preview--banner {
  width: 100%;
  aspect-ratio: 16/9;
}
.cqi-dest__label {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.cqi-dest__label strong {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text, #111827);
}
.cqi-dest__label span {
  font-size: 11.5px;
  line-height: 1.4;
  color: var(--an-text-secondary, #6b7280);
}
.cqi-dest__check {
  position: absolute;
  top: 10px;
  right: 10px;
  color: var(--an-primary, #6366f1) !important;
  opacity: 0;
  transform: scale(0.6);
  transition: opacity 0.15s ease, transform 0.15s ease;
}
.waitry-dark-theme .cqi-dest {
  border-color: var(--an-border, #374151);
  background: var(--an-surface-100, #1f2937);
}
.waitry-dark-theme .cqi-dest:hover, .waitry-dark-theme .cqi-dest.cqi-dest--on {
  border-color: var(--an-primary, #818cf8);
}
.waitry-dark-theme .cqi-dest.cqi-dest--on {
  background: rgba(var(--an-primary-rgb, 129, 140, 248), 0.12);
}
.waitry-dark-theme .cqi-dest__preview {
  background: rgba(255, 255, 255, 0.05);
}
.waitry-dark-theme .cqi-dest__label strong {
  color: var(--an-text, #f9fafb);
}

.cqi-note,
.cqi-processing {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 14px;
  font-size: 12px;
  color: var(--an-text-secondary, #6b7280);
}
.cqi-note md-icon,
.cqi-processing md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  min-width: 16px;
  color: var(--an-text-secondary, #6b7280);
}

.cqi-processing {
  color: var(--an-primary, #6366f1);
}

.cqi-error {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 28px 12px;
  text-align: center;
}
.cqi-error md-icon {
  font-size: 34px;
  width: 34px;
  height: 34px;
  color: var(--an-danger, #ef4444);
}
.cqi-error p {
  margin: 0;
  font-size: 13.5px;
  color: var(--an-text-secondary, #6b7280);
}

.cqi-actions {
  padding: 8px 16px 12px;
}
.cqi-actions .cqi-adjust-btn md-icon {
  margin-right: 6px;
  font-size: 17px;
  width: 17px;
  height: 17px;
}

.catalog-page-drop-overlay {
  display: none;
  position: absolute;
  inset: 0;
  z-index: 60;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  background: rgba(var(--an-primary-rgb, 99, 102, 241), 0.06);
}
.catalog-page-drop-overlay__box {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 16px 26px;
  border: 2px dashed var(--an-primary, #6366f1);
  border-radius: 14px;
  background: var(--an-surface, #ffffff);
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.14);
  font-size: 14px;
  font-weight: 600;
  color: var(--an-text, #111827);
}
.catalog-page-drop-overlay__box md-icon {
  color: var(--an-primary, #6366f1) !important;
}
.waitry-dark-theme .catalog-page-drop-overlay__box {
  background: var(--an-surface-100, #1f2937);
  color: var(--an-text, #f9fafb);
}

.catalog-content {
  position: relative;
}
.catalog-content.catalog-page-drop-active .catalog-page-drop-overlay {
  display: flex;
}

.cmi-dialog.cmi-dialog {
  width: 860px;
  max-width: 96vw;
  height: auto;
  min-height: 0;
  max-height: 90vh;
}

.cmi-content {
  padding: 18px 24px 8px;
}

.cmi-explain {
  margin: 0 0 14px;
  font-size: 13px;
  line-height: 1.5;
  color: var(--an-text-secondary, #6b7280);
}

.cmi-balance {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-right: 4px;
  font-size: 12.5px;
  font-weight: 600;
  opacity: 0.9;
}
.cmi-balance md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  min-width: 16px;
}

.cmi-drop {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 56px 24px;
  margin: 4px 0 8px;
  border: 2px dashed var(--an-border, #d1d5db);
  border-radius: 16px;
  background: var(--an-bg-subtle, #f9fafb);
  cursor: pointer;
  text-align: center;
  transition: border-color 0.15s ease, background 0.15s ease;
}
.cmi-drop md-icon {
  font-size: 40px;
  width: 40px;
  height: 40px;
  color: var(--an-primary, #6366f1);
}
.cmi-drop strong {
  font-size: 15px;
  font-weight: 600;
  color: var(--an-text, #111827);
}
.cmi-drop span {
  font-size: 13px;
  color: var(--an-text-secondary, #6b7280);
}
.cmi-drop small {
  font-size: 11.5px;
  color: var(--an-text-secondary, #9ca3af);
  margin-top: 4px;
}
.cmi-drop:hover, .cmi-drop.cmi-drop--over {
  border-color: var(--an-primary, #6366f1);
  background: rgba(var(--an-primary-rgb, 99, 102, 241), 0.06);
}
.waitry-dark-theme .cmi-drop {
  border-color: var(--an-border, #374151);
  background: var(--an-surface-100, #1f2937);
}
.waitry-dark-theme .cmi-drop strong {
  color: var(--an-text, #f9fafb);
}
.waitry-dark-theme .cmi-drop:hover, .waitry-dark-theme .cmi-drop.cmi-drop--over {
  border-color: var(--an-primary, #818cf8);
  background: rgba(var(--an-primary-rgb, 129, 140, 248), 0.1);
}

.cmi-thumb-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.cmi-thumb {
  position: relative;
  width: 84px;
  height: 84px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 10px;
  border: 1px solid var(--an-border, #e5e7eb);
  background: var(--an-surface-100, #f3f4f6);
}
.cmi-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.cmi-thumb--bad {
  border-color: var(--an-danger, #ef4444);
}
.cmi-thumb--bad md-icon {
  color: var(--an-danger, #ef4444);
}
.cmi-thumb__remove {
  position: absolute;
  top: 4px;
  right: 4px;
  width: 22px;
  height: 22px;
  border: none;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.55);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  opacity: 0;
  transition: opacity 0.15s ease, background 0.15s ease;
}
.cmi-thumb__remove md-icon {
  font-size: 13px;
  width: 13px;
  height: 13px;
  min-width: 13px;
  color: #fff !important;
}
.cmi-thumb__remove:hover {
  background: var(--an-danger, #ef4444);
}
.cmi-thumb:hover .cmi-thumb__remove {
  opacity: 1;
}
.cmi-thumb--add {
  flex-direction: column;
  gap: 4px;
  border-style: dashed;
  border-width: 2px;
  background: transparent;
  cursor: pointer;
  font: inherit;
  font-size: 10.5px;
  font-weight: 600;
  color: var(--an-text-secondary, #6b7280);
  transition: border-color 0.15s ease, color 0.15s ease;
}
.cmi-thumb--add md-icon {
  font-size: 20px;
  width: 20px;
  height: 20px;
  color: var(--an-text-secondary, #6b7280);
}
.cmi-thumb--add:hover {
  border-color: var(--an-primary, #6366f1);
  color: var(--an-primary, #6366f1);
}
.cmi-thumb--add:hover md-icon {
  color: var(--an-primary, #6366f1);
}
.waitry-dark-theme .cmi-thumb {
  border-color: var(--an-border, #374151);
  background: rgba(255, 255, 255, 0.05);
}
.waitry-dark-theme .cmi-thumb.cmi-thumb--add {
  background: transparent;
}

.cmi-warn {
  display: block;
  margin: 12px 0 0;
  font-size: 12.5px;
  color: var(--an-warning, #d97706);
}

.cmi-zoom {
  position: fixed;
  z-index: 120;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px;
  border-radius: 16px;
  border: 1px solid var(--an-border, #e5e7eb);
  background: var(--an-surface, #ffffff);
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.3);
  opacity: 0;
  transform: scale(0.97);
  transition: opacity 0.12s ease, transform 0.12s ease;
  pointer-events: none;
  visibility: hidden;
}
.cmi-zoom img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  border-radius: 10px;
  display: block;
}
.cmi-zoom--on {
  opacity: 1;
  transform: scale(1);
  visibility: visible;
}
.waitry-dark-theme .cmi-zoom {
  border-color: var(--an-border, #374151);
  background: var(--an-surface-100, #1f2937);
}

.cmi-thumb:not(.cmi-thumb--add) {
  cursor: zoom-in;
}

.cmi-scan-status {
  margin: 0 0 12px;
  font-size: 13px;
  font-weight: 600;
  color: var(--an-primary, #6366f1);
}

.cmi-row {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px 10px;
  border: 1px solid var(--an-border, #e5e7eb);
  border-radius: 12px;
  background: var(--an-bg-subtle, #f9fafb);
  margin-bottom: 10px;
  transition: opacity 0.15s ease, border-color 0.15s ease;
}
.cmi-row--off .cmi-row__accept,
.cmi-row--off .cmi-row__main,
.cmi-row--off .cmi-row__dest {
  opacity: 0.55;
}
.cmi-row--saving {
  border-color: var(--an-primary, #6366f1);
}
.cmi-row__accept {
  margin: 4px 0 0 !important;
}
.cmi-row__thumb {
  flex: 0 0 96px;
  width: 96px;
  height: 96px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 10px;
  background: var(--an-surface-100, #f3f4f6);
  cursor: zoom-in;
  transition: box-shadow 0.15s ease;
}
.cmi-row__thumb:hover {
  box-shadow: 0 0 0 2px var(--an-primary, #6366f1);
}
.cmi-row__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.cmi-row__thumb md-icon {
  color: var(--an-danger, #ef4444);
}
.cmi-row__main {
  flex: 1 1 auto;
  min-width: 0;
}
.cmi-row__desc {
  margin: 3px 0 0;
  font-size: 12px;
  line-height: 1.45;
  color: var(--an-text-secondary, #6b7280);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.cmi-row__match {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}
.cmi-row__match strong {
  font-size: 13.5px;
  font-weight: 600;
  color: var(--an-text, #111827);
}
.cmi-row__status {
  font-size: 12.5px;
  color: var(--an-text-secondary, #6b7280);
}
.cmi-row__status-err {
  color: var(--an-danger, #ef4444);
}
.cmi-row__dest {
  display: flex;
  flex-direction: column;
  gap: 6px;
  flex: 0 0 auto;
}
.cmi-row__apply-state {
  flex: 0 0 24px;
  display: flex;
  align-items: center;
  padding-top: 4px;
}
.cmi-row__apply-state .cmi-ok {
  color: var(--an-success, #10b981) !important;
}
.cmi-row__apply-state .cmi-err {
  color: var(--an-danger, #ef4444) !important;
}
.waitry-dark-theme .cmi-row {
  border-color: var(--an-border, #374151);
  background: var(--an-surface-100, #1f2937);
}
.waitry-dark-theme .cmi-row__thumb {
  background: rgba(255, 255, 255, 0.05);
}
.waitry-dark-theme .cmi-row__match strong {
  color: var(--an-text, #f9fafb);
}

.cmi-conf {
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 10.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}
.cmi-conf--high {
  background: rgba(16, 185, 129, 0.14);
  color: #059669;
}
.cmi-conf--medium {
  background: rgba(217, 119, 6, 0.14);
  color: #d97706;
}
.cmi-conf--low {
  background: rgba(239, 68, 68, 0.12);
  color: #ef4444;
}
.cmi-conf--manual {
  background: rgba(var(--an-primary-rgb, 99, 102, 241), 0.12);
  color: var(--an-primary, #6366f1);
}
.waitry-dark-theme .cmi-conf--high {
  color: #34d399;
}
.waitry-dark-theme .cmi-conf--medium {
  color: #fbbf24;
}
.waitry-dark-theme .cmi-conf--low {
  color: #f87171;
}

.cmi-dup {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 11.5px;
  font-weight: 600;
  color: var(--an-warning, #d97706);
}
.cmi-dup md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  min-width: 15px;
  color: var(--an-warning, #d97706) !important;
}

.cmi-alts {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 6px;
}

.cmi-alt {
  padding: 3px 10px;
  border: 1px solid var(--an-border, #e5e7eb);
  border-radius: 999px;
  background: transparent;
  font: inherit;
  font-size: 12px;
  color: var(--an-text-secondary, #6b7280);
  cursor: pointer;
  transition: border-color 0.15s ease, color 0.15s ease;
}
.cmi-alt:hover {
  border-color: var(--an-primary, #6366f1);
  color: var(--an-primary, #6366f1);
}
.waitry-dark-theme .cmi-alt {
  border-color: var(--an-border, #374151);
}

.cmi-picker {
  margin-top: 8px;
}
.cmi-picker md-autocomplete-wrap {
  box-shadow: none;
  border: 1px solid var(--an-border, #e5e7eb);
  border-radius: 8px;
  height: 34px;
  background: var(--an-surface, #ffffff);
}
.cmi-picker input {
  font-size: 12.5px;
  height: 32px;
  line-height: 32px;
}
.waitry-dark-theme .cmi-picker md-autocomplete-wrap {
  border-color: var(--an-border, #374151);
  background: var(--an-surface-100, #1f2937);
}

.cmi-dest-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  border: 1.5px solid var(--an-border, #e5e7eb);
  border-radius: 999px;
  background: transparent;
  font: inherit;
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text-secondary, #6b7280);
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}
.cmi-dest-chip md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  min-width: 15px;
}
.cmi-dest-chip:hover {
  border-color: var(--an-primary, #6366f1);
}
.cmi-dest-chip--on {
  border-color: var(--an-primary, #6366f1);
  background: rgba(var(--an-primary-rgb, 99, 102, 241), 0.1);
  color: var(--an-primary, #6366f1);
}
.cmi-dest-chip--on md-icon {
  color: var(--an-primary, #6366f1) !important;
}
.cmi-dest-chip[disabled] {
  cursor: default;
  opacity: 0.7;
}
.waitry-dark-theme .cmi-dest-chip {
  border-color: var(--an-border, #374151);
}

.cmi-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 34px 16px;
  text-align: center;
}
.cmi-empty md-icon {
  font-size: 34px;
  width: 34px;
  height: 34px;
  color: var(--an-text-secondary, #9ca3af);
}
.cmi-empty p {
  margin: 0;
  max-width: 420px;
  font-size: 13.5px;
  line-height: 1.5;
  color: var(--an-text-secondary, #6b7280);
}

.cmi-actions {
  padding: 8px 16px 12px;
  align-items: center;
}
.cmi-actions .cmi-spent {
  font-size: 12px;
  color: var(--an-text-secondary, #6b7280);
  padding-left: 8px;
}

.cri-dialog.cri-dialog {
  width: 720px;
  max-width: 96vw;
  height: auto;
  min-height: 0;
  max-height: 90vh;
}

.cri-content {
  padding: 16px 24px 8px;
}

.cri-explain {
  margin: 0 0 14px;
  font-size: 13px;
  line-height: 1.5;
  color: var(--an-text-secondary, #6b7280);
}

.cri-scan-status {
  margin: 12px 0 0;
  font-size: 13px;
  font-weight: 600;
  color: var(--an-primary, #6366f1);
}

.cri-done-summary {
  margin: 12px 0 0;
  font-size: 13.5px;
  font-weight: 600;
  color: var(--an-success, #10b981);
}

.cri-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px;
  border: 1px solid var(--an-border, #e5e7eb);
  border-radius: 12px;
  background: var(--an-bg-subtle, #f9fafb);
  margin-bottom: 8px;
  transition: border-color 0.15s ease;
}
.cri-row--saving {
  border-color: var(--an-primary, #6366f1);
}
.cri-row--error {
  border-color: var(--an-danger, #ef4444);
}
.cri-row__thumb {
  flex: 0 0 56px;
  width: 56px;
  height: 56px;
  border-radius: 8px;
  overflow: hidden;
  background: var(--an-surface-100, #f3f4f6);
}
.cri-row__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.cri-row__thumb img.cri-row__thumb-broken {
  object-fit: none;
  opacity: 0.3;
}
.cri-row__main {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.cri-row__title-line {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}
.cri-row__title-line strong {
  font-size: 13.5px;
  font-weight: 600;
  color: var(--an-text, #111827);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 260px;
}
.cri-row__host {
  font-size: 11.5px;
  color: var(--an-text-secondary, #9ca3af);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cri-row__err {
  font-size: 12px;
  font-weight: 500;
  color: var(--an-danger, #ef4444);
}
.cri-row__status {
  flex: 0 0 36px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.cri-row__status .cri-ok {
  color: var(--an-success, #10b981) !important;
}
.waitry-dark-theme .cri-row {
  border-color: var(--an-border, #374151);
  background: var(--an-surface-100, #1f2937);
}
.waitry-dark-theme .cri-row__thumb {
  background: rgba(255, 255, 255, 0.05);
}
.waitry-dark-theme .cri-row__title-line strong {
  color: var(--an-text, #f9fafb);
}

.cri-badge {
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 10.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  background: rgba(var(--an-primary-rgb, 99, 102, 241), 0.1);
  color: var(--an-primary, #6366f1);
  white-space: nowrap;
}

.cri-slot-chip {
  padding: 2px 8px;
  border: 1px solid var(--an-border, #e5e7eb);
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  color: var(--an-text-secondary, #6b7280);
  white-space: nowrap;
}
.waitry-dark-theme .cri-slot-chip {
  border-color: var(--an-border, #374151);
}

.cri-retry-btn md-icon {
  color: var(--an-danger, #ef4444) !important;
}

.cri-actions {
  padding: 8px 16px 12px;
  align-items: center;
}

.cqi-save-btn {
  min-width: 128px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.cqi-save-btn md-progress-circular {
  display: inline-block;
  vertical-align: middle;
  margin-right: 8px;
}
.cqi-save-btn md-progress-circular svg path {
  stroke: #fff !important;
  stroke-linecap: round;
}

.catalog-thumb-refreshing {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.45);
  backdrop-filter: blur(3px) saturate(1.15);
  -webkit-backdrop-filter: blur(3px) saturate(1.15);
  animation: catalog-thumb-veil-in 0.2s ease both;
}
.catalog-thumb-refreshing::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(105deg, transparent 32%, rgba(255, 255, 255, 0.55) 50%, transparent 68%);
  background-size: 220% 100%;
  animation: catalog-thumb-shimmer 1.4s ease-in-out infinite;
}
.catalog-thumb-refreshing md-progress-circular {
  position: relative;
  z-index: 1;
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.18));
}
.catalog-thumb-refreshing md-progress-circular svg path {
  stroke: var(--an-primary, #6366f1) !important;
  stroke-linecap: round;
}
.waitry-dark-theme .catalog-thumb-refreshing {
  background: rgba(17, 24, 39, 0.5);
}
.waitry-dark-theme .catalog-thumb-refreshing::before {
  background: linear-gradient(105deg, transparent 32%, rgba(255, 255, 255, 0.14) 50%, transparent 68%);
  background-size: 220% 100%;
}
.waitry-dark-theme .catalog-thumb-refreshing md-progress-circular svg path {
  stroke: var(--an-primary, #818cf8) !important;
}

@keyframes catalog-thumb-veil-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes catalog-thumb-shimmer {
  0% {
    background-position: 130% 0;
  }
  100% {
    background-position: -130% 0;
  }
}
.us-page {
  background: var(--an-bg);
  min-height: 0;
}

.us-main-scroll .us-kpi-band {
  padding: 0;
  margin-bottom: 18px;
}
.us-main-scroll .us-kpi-band .section-kpi-row--4 {
  grid-template-columns: repeat(4, 1fr);
}
@media (max-width: 1360px) {
  .us-main-scroll .us-kpi-band .section-kpi-row--4 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 520px) {
  .us-main-scroll .us-kpi-band .section-kpi-row--4 {
    grid-template-columns: 1fr;
  }
}

.us-studio {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 360px;
  flex: 1;
  min-height: 0;
  overflow: hidden;
}
@media (max-width: 1180px) {
  .us-studio {
    grid-template-columns: minmax(0, 1fr) 320px;
  }
}
@media (max-width: 900px) {
  .us-studio {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto;
    overflow: auto;
  }
}

.us-main {
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
}
@media (max-width: 900px) {
  .us-main {
    min-height: auto;
    overflow: visible;
  }
}

.us-main-scroll {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  padding: 18px 20px 48px;
}
@media (max-width: 900px) {
  .us-main-scroll {
    flex: none;
    overflow: visible;
  }
}
@media (max-width: 767px) {
  .us-main-scroll {
    padding: 14px 12px 32px;
  }
}

.us-add-card {
  display: block;
  margin-bottom: 18px;
  padding: 16px 18px 18px;
  border: 1.5px solid var(--an-border);
  border-radius: var(--an-radius);
  background: var(--an-surface);
  box-shadow: var(--an-shadow-sm);
}

.us-add-card--pulse {
  animation: usAddCardPulse 900ms ease-out;
}

@keyframes usAddCardPulse {
  0% {
    border-color: #EC4E36;
    box-shadow: 0 0 0 0 rgba(236, 78, 54, 0.45);
  }
  70% {
    box-shadow: 0 0 0 10px rgba(236, 78, 54, 0);
  }
  100% {
    border-color: var(--an-border);
    box-shadow: 0 0 0 0 rgba(236, 78, 54, 0);
  }
}
.us-add-card__head {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 14px;
}

.us-add-card__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  border-radius: 10px;
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
}
.us-add-card__icon i {
  font-size: 19px;
}

.us-add-card__copy {
  min-width: 0;
}
.us-add-card__copy h3 {
  margin: 0 0 3px;
  color: var(--an-text);
  font-size: 14px;
  font-weight: 800;
  line-height: 1.2;
}
.us-add-card__copy p {
  margin: 0;
  color: var(--an-text-muted);
  font-size: 12px;
  line-height: 1.45;
}

.us-add-card__row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: end;
}
@media (max-width: 1100px) {
  .us-add-card__row {
    grid-template-columns: 1fr;
    align-items: stretch;
  }
}

.us-add-picker {
  display: block;
  min-width: 0;
}
.us-add-picker md-autocomplete,
.us-add-picker md-autocomplete-wrap {
  min-width: 0;
  width: 100%;
}
.us-add-picker md-autocomplete-wrap {
  height: 44px;
  box-shadow: none;
  border: 1.5px solid var(--an-border);
  border-radius: 10px;
  background: var(--an-surface2);
  padding: 0 14px;
  display: flex;
  align-items: center;
  transition: border-color var(--duration-fast) var(--ease-default), background var(--duration-fast) var(--ease-default);
}
.us-add-picker md-autocomplete-wrap:focus-within {
  border-color: rgba(var(--an-primary-rgb), 0.45);
  background: var(--an-surface);
}
.us-add-picker input {
  height: 42px !important;
  line-height: 42px !important;
  padding: 0 !important;
  margin: 0;
  background: transparent !important;
  color: var(--an-text);
  font-size: 13px;
}

.us-horizon {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

.us-horizon__label {
  color: var(--an-text-muted);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.us-horizon__chips {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

.us-horizon__chip {
  padding: 0 12px;
  height: 32px;
  border: 1.5px solid var(--an-border);
  border-radius: var(--an-radius-pill);
  background: var(--an-surface);
  color: var(--an-text-muted);
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
  cursor: pointer;
  transition: all var(--duration-fast) var(--ease-default);
}
.us-horizon__chip:hover {
  border-color: var(--an-primary);
  color: var(--an-primary);
}
.us-horizon__chip--active {
  border-color: var(--an-primary);
  background: var(--an-primary);
  color: #fff;
  box-shadow: 0 3px 10px rgba(var(--an-primary-rgb), 0.28);
}
.us-horizon__chip--permanent {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}
.us-horizon__chip--permanent i {
  font-size: 14px;
}
.us-horizon__chip--permanent:hover {
  border-color: var(--an-violet);
  color: var(--an-violet);
}
.us-horizon__chip--permanent.us-horizon__chip--active {
  border-color: var(--an-violet);
  background: var(--an-violet);
  color: #fff;
  box-shadow: 0 3px 10px var(--an-violet-soft);
}

.us-preview {
  margin-bottom: 18px;
  padding: 16px 18px 18px;
  border: 1.5px solid var(--an-border);
  border-radius: var(--an-radius);
  background: linear-gradient(180deg, var(--an-violet-soft) 0%, transparent 55%), var(--an-surface);
  box-shadow: var(--an-shadow-sm);
}

.us-preview__head {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 14px;
}
.us-preview__head > i {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  border-radius: 10px;
  background: var(--an-violet-soft);
  color: var(--an-violet);
  font-size: 19px;
}
.us-preview__head h3 {
  margin: 0 0 3px;
  color: var(--an-text);
  font-size: 14px;
  font-weight: 800;
  line-height: 1.2;
}
.us-preview__head p {
  margin: 0;
  color: var(--an-text-muted);
  font-size: 12px;
  line-height: 1.45;
}

.us-preview__sheet {
  padding: 14px;
  border: 1px dashed var(--an-border-strong);
  border-radius: 12px;
  background: var(--an-bg-subtle);
}

.us-preview__sheet-title {
  margin-bottom: 12px;
  color: var(--an-text);
  font-size: 13px;
  font-weight: 800;
}

.us-preview__strip {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
  gap: 10px;
  max-height: 320px;
  overflow-y: auto;
  padding-right: 2px;
}

.us-preview__tile {
  position: relative;
  padding: 8px;
  border: 1px solid var(--an-border);
  border-radius: 10px;
  background: var(--an-surface);
  box-shadow: var(--an-shadow-xs);
}

.us-preview__img {
  display: block;
  width: 100%;
  height: 62px;
  margin-bottom: 8px;
  border-radius: 7px;
  object-fit: cover;
  background: var(--an-surface3);
}

.us-preview__name {
  color: var(--an-text);
  font-size: 11.5px;
  font-weight: 700;
  line-height: 1.3;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.us-preview__price {
  margin-top: 3px;
  color: var(--an-emerald);
  font-size: 11.5px;
  font-weight: 800;
}

.us-preview__add {
  position: absolute;
  top: 12px;
  right: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: var(--an-rose);
  color: #fff;
  font-size: 14px;
  font-weight: 800;
  line-height: 1;
}

.us-preview__more {
  margin-top: 10px;
  color: var(--an-text-muted);
  font-size: 11.5px;
  font-weight: 600;
  text-align: center;
}

.us-filters {
  padding-left: 0;
  padding-right: 0;
}

.us-shelf {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 16px;
  align-items: start;
}

.us-card {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1.5px solid var(--an-border);
  border-radius: var(--an-radius);
  background: var(--an-surface);
  box-shadow: var(--an-shadow-sm);
  transition: transform var(--duration-fast) var(--ease-default), box-shadow var(--duration-fast) var(--ease-default), border-color var(--duration-fast) var(--ease-default);
}
.us-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--an-shadow-md);
  border-color: var(--an-border-hover);
}
.us-card--expired {
  opacity: 0.72;
}
.us-card--expired .us-card__img {
  filter: grayscale(0.65);
}
.us-card--editing {
  border-color: var(--an-primary);
  box-shadow: 0 0 0 3px rgba(var(--an-primary-rgb), 0.14), var(--an-shadow-md);
}
.us-card--editing:hover {
  transform: none;
}

.us-card__media {
  position: relative;
  flex-shrink: 0;
}

.us-card__img {
  display: block;
  width: 100%;
  height: 132px;
  object-fit: cover;
  background: var(--an-surface3);
}

.us-card__price {
  position: absolute;
  right: 10px;
  bottom: 10px;
  padding: 4px 9px;
  border-radius: var(--an-radius-pill);
  background: rgba(17, 24, 39, 0.82);
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: -0.01em;
  backdrop-filter: blur(4px);
}

.us-status-pill {
  position: absolute;
  top: 10px;
  left: 10px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 9px;
  border-radius: var(--an-radius-pill);
  background: var(--an-surface);
  color: var(--an-text-muted);
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  box-shadow: var(--an-shadow-xs);
}
.us-status-pill .us-status-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
  flex-shrink: 0;
}
.us-status-pill--active {
  color: var(--an-emerald);
}
.us-status-pill--upcoming {
  color: var(--an-amber);
}
.us-status-pill--expired {
  color: var(--an-text-faint);
}

.us-card__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 10px;
  padding: 14px 14px 12px;
  min-width: 0;
}

.us-card__title-row {
  display: flex;
  align-items: baseline;
  gap: 8px;
  min-width: 0;
}

.us-card__name {
  flex: 1;
  margin: 0;
  min-width: 0;
  color: var(--an-text);
  font-size: 14px;
  font-weight: 800;
  line-height: 1.3;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.us-card__category {
  flex-shrink: 0;
  max-width: 42%;
  color: var(--an-text-faint);
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.us-health {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.us-health__flag {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 8px;
  border-radius: var(--an-radius-pill);
  font-size: 10.5px;
  font-weight: 700;
}
.us-health__flag i {
  font-size: 12px;
}
.us-health__flag--warn {
  background: var(--an-amber-soft);
  color: var(--an-amber);
}
.us-health__flag--error {
  background: var(--an-rose-soft);
  color: var(--an-rose);
}

.us-schedule {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
}

.us-schedule__chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 9px;
  border: 1px solid var(--an-border);
  border-radius: 8px;
  background: var(--an-surface2);
  color: var(--an-text);
  font-size: 11.5px;
  font-weight: 700;
  white-space: nowrap;
}
.us-schedule__chip i {
  color: var(--an-text-muted);
  font-size: 13px;
}
.us-schedule__chip--forever {
  border-color: transparent;
  background: var(--an-violet-soft);
  color: var(--an-violet);
}
.us-schedule__chip--forever i {
  color: var(--an-violet);
}

.us-schedule__arrow {
  color: var(--an-text-faint);
  font-size: 14px;
  --an-icon-size: 14px;
}

.us-schedule__left {
  padding: 4px 9px;
  border-radius: var(--an-radius-pill);
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
  font-size: 10.5px;
  font-weight: 800;
  white-space: nowrap;
}

.us-schedule-edit {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.us-schedule-edit md-input-container {
  margin: 0;
  padding: 0;
  width: 100%;
}
.us-schedule-edit .md-datepicker-input-container {
  width: 100%;
  margin-left: 0;
}
.us-schedule-edit .md-datepicker-input {
  max-width: 100%;
  min-width: 0;
}

.us-schedule-edit__fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  align-items: end;
}
@media (max-width: 767px) {
  .us-schedule-edit__fields {
    grid-template-columns: 1fr;
  }
}

.us-schedule-edit__forever {
  display: flex;
  align-items: center;
  gap: 6px;
  height: 40px;
  padding: 0 10px;
  border: 1px dashed var(--an-violet);
  border-radius: 8px;
  background: var(--an-violet-soft);
  color: var(--an-violet);
  font-size: 11.5px;
  font-weight: 700;
}
.us-schedule-edit__forever i {
  font-size: 14px;
  flex-shrink: 0;
}

.us-forever-toggle {
  display: inline-flex;
  align-self: flex-start;
  align-items: center;
  gap: 5px;
  padding: 0 10px;
  height: 28px;
  border: 1.5px solid var(--an-border);
  border-radius: var(--an-radius-pill);
  background: transparent;
  color: var(--an-text-muted);
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
  transition: all var(--duration-fast) var(--ease-default);
}
.us-forever-toggle i {
  font-size: 13px;
}
.us-forever-toggle:hover {
  border-color: var(--an-violet);
  color: var(--an-violet);
}
.us-forever-toggle--on {
  border-color: var(--an-violet);
  background: var(--an-violet);
  color: #fff;
}

.us-stats {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 4px 8px;
  margin-top: auto;
  padding-top: 10px;
  border-top: 1px solid var(--an-border-light);
  font-size: 11.5px;
  line-height: 1.4;
}

.us-stats__shelf {
  display: inline-flex;
  align-items: baseline;
  gap: 5px;
  color: var(--an-text);
  font-weight: 600;
}
.us-stats__shelf i {
  align-self: center;
  color: var(--an-emerald);
  font-size: 13px;
}
.us-stats__shelf strong {
  font-size: 14px;
  font-weight: 800;
  letter-spacing: -0.02em;
}
.us-stats__shelf--zero i {
  color: var(--an-text-faint);
}

.us-stats__rev {
  color: var(--an-emerald);
  font-weight: 800;
}

.us-stats__total {
  color: var(--an-text-faint);
  font-weight: 600;
}

.us-hint {
  display: flex;
  align-items: flex-start;
  gap: 7px;
  padding: 8px 10px;
  border-radius: 9px;
  background: var(--an-amber-soft);
  color: var(--an-amber);
  font-size: 11.5px;
  font-weight: 600;
  line-height: 1.4;
}
.us-hint i {
  flex-shrink: 0;
  font-size: 14px;
  margin-top: 1px;
}

.us-card__actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  padding: 0 12px 12px;
}
.us-card__actions .md-button {
  margin: 0 !important;
  min-width: 0;
}
.us-card__actions .md-icon-button {
  width: 34px;
  height: 34px;
  min-height: 34px;
  padding: 0;
  line-height: 34px;
}
.us-card__actions md-icon {
  font-size: 18px;
  color: var(--an-text-muted);
}
.us-card__actions .us-btn-danger-icon:hover md-icon {
  color: var(--an-rose);
}
.us-card__actions .pm-btn-primary md-icon,
.us-card__actions .pm-btn-primary [class*=iconoir-] {
  color: #fff !important;
  margin-right: 6px;
  font-size: 16px;
}
.us-card__actions .pm-btn-primary md-progress-circular {
  margin-right: 6px;
}

.us-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-top: 8px;
  padding: 56px 24px;
  border: 1.5px dashed var(--an-border-strong);
  border-radius: var(--an-radius);
  background: var(--an-surface);
  text-align: center;
}
.us-empty > i {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: var(--an-rose-soft);
  color: var(--an-rose);
  font-size: 28px;
}
.us-empty h3 {
  margin: 0;
  color: var(--an-text);
  font-size: 16px;
  font-weight: 800;
}
.us-empty p {
  margin: 0;
  max-width: 420px;
  color: var(--an-text-muted);
  font-size: 13px;
  line-height: 1.55;
}
.us-empty .md-button {
  margin: 4px 0 0;
}
.us-empty .pm-btn-primary md-icon,
.us-empty .pm-btn-primary [class*=iconoir-] {
  color: #fff !important;
  margin-right: 6px;
  font-size: 16px;
}
.us-empty--compact {
  padding: 36px 24px;
}
.us-empty--compact > i {
  width: 52px;
  height: 52px;
  background: var(--an-surface2);
  color: var(--an-text-faint);
  font-size: 22px;
}

.us-skeleton {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 16px;
}

.us-sk-card {
  overflow: hidden;
  border: 1.5px solid var(--an-border);
  border-radius: var(--an-radius);
  background: var(--an-surface);
}

.us-sk-img,
.us-sk-line {
  background: linear-gradient(90deg, var(--an-surface2) 0%, var(--an-surface3) 50%, var(--an-surface2) 100%);
  background-size: 200% 100%;
  animation: usShimmer 1.3s ease-in-out infinite;
}

.us-sk-img {
  height: 132px;
}

.us-sk-lines {
  display: flex;
  flex-direction: column;
  gap: 9px;
  padding: 14px;
}

.us-sk-line {
  height: 11px;
  border-radius: 6px;
}
.us-sk-line--wide {
  width: 78%;
}
.us-sk-line--narrow {
  width: 46%;
}
.us-sk-line--chip {
  width: 62%;
  height: 22px;
  border-radius: 8px;
}

@keyframes usShimmer {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
.us-side {
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow-y: auto;
  padding: 18px 18px 40px;
  border-left: 1px solid var(--an-border);
  background: var(--an-surface);
}
@media (max-width: 900px) {
  .us-side {
    min-height: auto;
    border-left: none;
    border-top: 1px solid var(--an-border);
    overflow: visible;
  }
}

.us-side__head {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 4px;
  flex-shrink: 0;
}
.us-side__head h4 {
  margin: 0;
  color: var(--an-text);
  font-size: 14px;
  font-weight: 800;
}
.us-side__head .md-icon-button {
  margin: 0;
  width: 32px;
  height: 32px;
  min-height: 32px;
  line-height: 32px;
}
.us-side__head md-icon {
  font-size: 17px;
  color: var(--an-text-muted);
}

.us-side__icon {
  color: var(--an-violet);
  font-size: 18px;
  --an-icon-size: 18px;
  flex-shrink: 0;
}

.us-side__explain {
  margin: 0 0 14px;
  color: var(--an-text-muted);
  font-size: 11.5px;
  line-height: 1.5;
  flex-shrink: 0;
}

.us-side__loading {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding: 40px 12px;
}
.us-side__loading p {
  margin: 0;
  color: var(--an-text-muted);
  font-size: 12px;
  font-weight: 600;
  text-align: center;
}

.us-side__state {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 36px 16px;
  border: 1.5px dashed var(--an-border);
  border-radius: 12px;
  text-align: center;
}
.us-side__state > i {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  background: var(--an-surface2);
  color: var(--an-text-faint);
  font-size: 21px;
}
.us-side__state p {
  margin: 0;
  color: var(--an-text-muted);
  font-size: 12px;
  line-height: 1.5;
}

.us-quote {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding: 28px 16px;
  border: 1.5px dashed var(--an-violet);
  border-radius: 12px;
  background: var(--an-violet-soft);
  text-align: center;
}
.us-quote .us-quote__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  background: var(--an-surface);
  color: var(--an-violet);
  font-size: 21px;
  margin-bottom: 4px;
}
.us-quote .us-quote__text {
  margin: 0;
  color: var(--an-text);
  font-size: 12px;
  line-height: 1.5;
}
.us-quote .us-quote__balance {
  margin: 0;
  color: var(--an-text-muted);
  font-size: 11.5px;
}
.us-quote .us-quote__btn {
  margin: 8px 0 0 !important;
}
.us-quote .us-quote__btn md-icon, .us-quote .us-quote__btn [class*=iconoir-] {
  color: #fff !important;
  margin-right: 6px;
}
.us-quote .us-quote__short {
  margin: 8px 0 0;
  color: var(--an-danger, #d9534f);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.5;
}

.us-strategy {
  margin-bottom: 16px;
  border: 1.5px solid var(--an-border);
  border-radius: 12px;
  background: var(--an-bg-subtle);
  transition: border-color var(--duration-fast) var(--ease-default);
  flex-shrink: 0;
}
.us-strategy--editing {
  border-color: var(--an-violet);
  background: var(--an-surface);
  box-shadow: 0 0 0 3px var(--an-violet-soft);
}

.us-strategy__head {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px;
  cursor: pointer;
}
.us-strategy--editing .us-strategy__head {
  cursor: default;
}

.us-strategy__icon {
  flex-shrink: 0;
  color: var(--an-violet);
  font-size: 18px;
  --an-icon-size: 18px;
  margin-top: 1px;
}

.us-strategy__copy {
  flex: 1;
  min-width: 0;
}

.us-strategy__title {
  color: var(--an-text);
  font-size: 12.5px;
  font-weight: 800;
}

.us-strategy__summary {
  margin-top: 3px;
  color: var(--an-text-muted);
  font-size: 11.5px;
  line-height: 1.45;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.us-strategy__summary--empty {
  font-style: italic;
  opacity: 0.8;
}

.us-strategy__edit {
  margin: 0 !important;
  width: 30px;
  height: 30px;
  min-height: 30px;
  line-height: 30px;
  flex-shrink: 0;
}
.us-strategy__edit md-icon {
  font-size: 16px;
  color: var(--an-text-muted);
}

.us-strategy__body {
  padding: 0 12px 12px;
}

.us-strategy__explain {
  margin: 0 0 8px;
  color: var(--an-text-muted);
  font-size: 11px;
  line-height: 1.5;
}

.us-strategy__textarea {
  width: 100%;
  box-sizing: border-box;
  padding: 10px 12px;
  border: 1.5px solid var(--an-border);
  border-radius: 9px;
  background: var(--an-surface);
  color: var(--an-text);
  font-family: var(--font-sans);
  font-size: 12.5px;
  line-height: 1.5;
  resize: vertical;
}
.us-strategy__textarea:focus {
  outline: none;
  border-color: var(--an-violet);
}
.us-strategy__textarea::placeholder {
  color: var(--an-placeholder);
}

.us-strategy__actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 10px;
}
.us-strategy__actions .md-button {
  margin: 0 !important;
}
.us-strategy__actions .pm-btn-primary md-progress-circular {
  margin-right: 6px;
}

.us-bulk {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 12px;
  padding: 10px 12px;
  border: 1.5px solid var(--an-primary);
  border-radius: 11px;
  background: var(--an-primary-soft);
  flex-shrink: 0;
}
.us-bulk .md-button {
  margin: 0 !important;
  min-width: 0;
}
.us-bulk .pm-btn-primary md-icon,
.us-bulk .pm-btn-primary [class*=iconoir-] {
  color: #fff !important;
  margin-right: 5px;
  font-size: 15px;
}
.us-bulk .pm-btn-primary md-progress-circular {
  margin-right: 5px;
}

.us-bulk__count {
  color: var(--an-text);
  font-size: 12px;
  font-weight: 800;
}

.us-sug-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.us-sug {
  padding: 10px 11px 9px;
  border: 1.5px solid var(--an-border);
  border-radius: 12px;
  background: var(--an-surface);
  box-shadow: var(--an-shadow-xs);
  transition: border-color var(--duration-fast) var(--ease-default), box-shadow var(--duration-fast) var(--ease-default);
}
.us-sug:hover {
  border-color: var(--an-border-hover);
  box-shadow: var(--an-shadow-sm);
}
.us-sug--selected {
  border-color: var(--an-primary);
  background: var(--an-primary-soft);
}

.us-sug__top {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  cursor: pointer;
}

.us-sug__check {
  margin: 0 !important;
  flex-shrink: 0;
  width: 20px;
  min-height: 20px;
}

.us-sug__img {
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  border-radius: 9px;
  object-fit: cover;
  background: var(--an-surface3);
}

.us-sug__copy {
  flex: 1;
  min-width: 0;
}

.us-sug__name {
  color: var(--an-text);
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.3;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.us-sug__meta {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin-top: 2px;
  min-width: 0;
}

.us-sug__cat {
  flex: 1;
  min-width: 0;
  color: var(--an-text-faint);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.us-sug__price {
  flex-shrink: 0;
  color: var(--an-emerald);
  font-size: 11.5px;
  font-weight: 800;
  letter-spacing: -0.01em;
}

.us-sug__verdict {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 9px;
}

.us-fit {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 3px 9px;
  border-radius: var(--an-radius-pill);
  font-size: 10.5px;
  font-weight: 800;
  white-space: nowrap;
}
.us-fit--high {
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
}
.us-fit--med {
  background: var(--an-amber-soft);
  color: var(--an-amber);
}
.us-fit--low, .us-fit--none {
  background: var(--an-surface2);
  color: var(--an-text-muted);
}

.us-fit__meter {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  flex-shrink: 0;
}

.us-fit__dot {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: currentColor;
  opacity: 0.22;
}
.us-fit__dot--on {
  opacity: 1;
}

.us-sug__label {
  min-width: 0;
  color: var(--an-text-muted);
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.us-sug__reason {
  margin: 7px 0 0;
  color: var(--an-text-muted);
  font-size: 11.5px;
  font-style: italic;
  line-height: 1.4;
}

.us-sug__foot {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 9px;
}

.us-sug__foot-spacer {
  flex: 1 1 auto;
}

.us-sug__stat {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 8px;
  border-radius: var(--an-radius-pill);
  background: var(--an-surface2);
  color: var(--an-text-muted);
  font-size: 10.5px;
  font-weight: 700;
  white-space: nowrap;
}
.us-sug__stat i {
  font-size: 12px;
}
.us-sug__stat--clash {
  background: var(--an-amber-soft);
  color: var(--an-amber);
  cursor: help;
}

.us-sug__add {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 0 11px;
  height: 28px;
  flex-shrink: 0;
  border: 1.5px solid var(--an-primary);
  border-radius: var(--an-radius-pill);
  background: transparent;
  color: var(--an-primary);
  font-family: var(--font-sans);
  font-size: 11.5px;
  font-weight: 800;
  white-space: nowrap;
  cursor: pointer;
  transition: all var(--duration-fast) var(--ease-default);
}
.us-sug__add i {
  font-size: 14px;
}
.us-sug__add:hover {
  background: var(--an-primary);
  color: #fff;
}

.us-view-toggle {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  padding: 2px;
  gap: 2px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface2);
}

.us-view-toggle__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  padding: 0;
  border: 0;
  border-radius: calc(var(--an-radius-sm) - 2px);
  background: transparent;
  color: var(--an-text-muted);
  cursor: pointer;
  transition: background var(--duration-fast) var(--ease-default), color var(--duration-fast) var(--ease-default);
}
.us-view-toggle__btn i {
  font-size: 17px;
  line-height: 1;
}
.us-view-toggle__btn:hover {
  background: var(--an-bg-active, rgba(0, 0, 0, 0.05));
  color: var(--an-text);
}
.us-view-toggle__btn--active, .us-view-toggle__btn--active:hover {
  background: var(--an-primary);
  color: #fff;
  box-shadow: 0 1px 3px rgba(var(--an-primary-rgb), 0.35);
}
.us-view-toggle__btn:focus-visible {
  outline: 2px solid var(--an-primary);
  outline-offset: 1px;
}

.us-slot {
  position: absolute;
  top: 10px;
  right: 10px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-width: 24px;
  height: 24px;
  padding: 0 8px;
  border-radius: var(--an-radius-pill);
  background: rgba(17, 24, 39, 0.82);
  color: #fff;
  font-size: 11.5px;
  font-weight: 800;
  letter-spacing: -0.01em;
  backdrop-filter: blur(4px);
  cursor: default;
}
.us-slot i {
  font-size: 13px;
  opacity: 0.85;
}
.us-slot--grab {
  cursor: grab;
  background: var(--an-primary);
  box-shadow: 0 2px 8px rgba(var(--an-primary-rgb), 0.35);
}
.us-slot--grab:active {
  cursor: grabbing;
}

.us-slot__num {
  line-height: 1;
}
.us-slot__num--none {
  opacity: 0.65;
}

.us-card--draggable .us-slot--grab {
  opacity: 1;
}

.us-shelf .as-sortable-placeholder {
  border: 2px dashed var(--an-primary);
  border-radius: var(--an-radius);
  background: rgba(var(--an-primary-rgb), 0.05);
  min-height: 120px;
}
.us-shelf .as-sortable-drag {
  opacity: 0.9;
  box-shadow: var(--an-shadow-lg, 0 18px 40px rgba(0, 0, 0, 0.22));
}

.us-reorder-note {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 14px;
  padding: 9px 12px;
  border: 1px solid var(--an-border);
  border-radius: 10px;
  background: var(--an-bg-subtle);
  color: var(--an-text-muted);
  font-size: 12px;
  line-height: 1.4;
}
.us-reorder-note > i {
  flex-shrink: 0;
  font-size: 15px;
  color: var(--an-text-faint);
}

.us-reorder-note__fix {
  padding: 0;
  border: 0;
  background: none;
  color: var(--an-primary);
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 700;
  text-decoration: underline;
  cursor: pointer;
}
.us-reorder-note__fix:hover {
  opacity: 0.8;
}

.us-table {
  margin-top: 0;
  padding: 0 0 8px;
}
.us-table table {
  min-width: 940px;
}
.us-table .us-col-slot {
  width: 56px;
}
.us-table .us-col-thumb {
  width: 60px;
}
.us-table .us-col-name {
  width: 240px;
}
.us-table .us-col-status {
  width: 104px;
}
.us-table .us-col-schedule {
  width: 216px;
}
.us-table .us-col-perf {
  width: 180px;
}
.us-table .us-col-price {
  width: 88px;
}
.us-table .us-col-actions {
  width: 80px;
}
.us-table .us-th--right,
.us-table .us-td--right {
  text-align: right;
}
.us-table .us-th--sorted {
  color: var(--an-text);
}
.us-table .us-th--sorted .catalog-th-sort-icon {
  color: var(--an-primary);
}
.us-table .us-th--right .catalog-th-sort-header {
  justify-content: flex-end;
}
.us-table .us-row--expired {
  opacity: 0.68;
}
.us-table .us-table__price {
  color: var(--an-text);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: -0.01em;
  white-space: nowrap;
}
.us-table .us-stats__none {
  color: var(--an-text-faint);
  font-size: 12px;
}
.us-table .us-stats--inline,
.us-table .us-schedule--compact {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
  flex-wrap: nowrap;
}
.us-table .us-schedule--compact .us-schedule__chip {
  padding: 3px 7px;
  font-size: 11px;
}
.us-table .us-health--inline {
  margin-top: 4px;
}

.us-slot-cell {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 3px 7px;
  border-radius: 8px;
  color: var(--an-text-muted);
  font-size: 12px;
  font-weight: 800;
  cursor: default;
}
.us-slot-cell i {
  font-size: 14px;
}
.us-slot-cell--grab {
  cursor: grab;
  color: var(--an-primary);
  background: rgba(var(--an-primary-rgb), 0.08);
}
.us-slot-cell--grab:active {
  cursor: grabbing;
}
.us-slot-cell .us-slot__num--none {
  color: var(--an-text-faint);
}

.us-status-pill--static {
  position: static;
  top: auto;
  left: auto;
  box-shadow: none;
  background: var(--an-surface2);
}

.us-order-card {
  margin-bottom: 16px;
  padding: 12px;
  border: 1.5px solid var(--an-border);
  border-radius: 12px;
  background: var(--an-bg-subtle);
  flex-shrink: 0;
}

.us-order-card__head {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 10px;
}

.us-order-card__icon {
  flex-shrink: 0;
  margin-top: 1px;
  color: var(--an-violet);
  font-size: 18px;
  --an-icon-size: 18px;
}

.us-order-card__copy {
  min-width: 0;
}

.us-order-card__title {
  color: var(--an-text);
  font-size: 12.5px;
  font-weight: 800;
}

.us-order-card__explain {
  margin-top: 3px;
  color: var(--an-text-muted);
  font-size: 11.5px;
  line-height: 1.45;
}

.us-order-card__cta {
  width: 100%;
  margin: 0 !important;
}
.us-order-card__cta md-icon,
.us-order-card__cta [class*=iconoir-] {
  color: #fff !important;
  margin-right: 6px;
  font-size: 16px;
}

.us-order-card__note {
  display: flex;
  align-items: flex-start;
  gap: 6px;
  margin-top: 8px;
  color: var(--an-text-faint);
  font-size: 11px;
  line-height: 1.4;
}
.us-order-card__note i {
  flex-shrink: 0;
  margin-top: 1px;
  font-size: 13px;
}

.uso-dialog {
  max-width: 720px;
  width: 92vw;
}
@media (max-width: 767px) {
  .uso-dialog {
    width: 100vw;
    max-width: 100vw;
  }
}

.uso-dialog__bar {
  background: var(--an-surface) !important;
  border-bottom: 1px solid var(--an-border);
  min-height: 56px;
}
.uso-dialog__bar .md-toolbar-tools {
  height: 56px;
  max-height: 56px;
  padding: 0 8px 0 20px;
}
.uso-dialog__bar md-icon {
  color: var(--an-text-muted);
}

.uso-dialog__bar-icon {
  margin-right: 10px;
  color: var(--an-violet);
  font-size: 20px;
  --an-icon-size: 20px;
}

.uso-dialog__bar-title {
  margin: 0;
  color: var(--an-text) !important;
  font-size: 15px;
  font-weight: 800;
}

.uso-content {
  padding: 18px 20px;
  background: var(--an-bg);
}

.uso-intro {
  margin: 0 0 14px;
  color: var(--an-text-muted);
  font-size: 13px;
  line-height: 1.55;
}

.uso-factors {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px 14px;
  margin: 0 0 16px;
  padding: 0;
  list-style: none;
}
@media (max-width: 767px) {
  .uso-factors {
    grid-template-columns: 1fr;
  }
}
.uso-factors li {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  color: var(--an-text);
  font-size: 12.5px;
  line-height: 1.45;
}
.uso-factors i {
  flex-shrink: 0;
  margin-top: 1px;
  color: var(--an-violet);
  font-size: 15px;
}

.uso-quote {
  padding: 12px 14px;
  border: 1.5px solid var(--an-border);
  border-radius: 11px;
  background: var(--an-surface);
}

.uso-quote__row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}
.uso-quote__row--muted {
  margin-top: 4px;
}
.uso-quote__row--muted .uso-quote__label,
.uso-quote__row--muted .uso-quote__val {
  color: var(--an-text-muted);
  font-size: 12px;
  font-weight: 600;
}

.uso-quote__label {
  color: var(--an-text);
  font-size: 12.5px;
  font-weight: 700;
}

.uso-quote__val {
  color: var(--an-text);
  font-size: 15px;
  font-weight: 800;
  letter-spacing: -0.01em;
}

.uso-quote__hint {
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid var(--an-border-light);
  color: var(--an-text-muted);
  font-size: 11.5px;
  line-height: 1.45;
}

.uso-alert {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-top: 12px;
  padding: 10px 12px;
  border-radius: 10px;
  font-size: 12.5px;
  font-weight: 600;
  line-height: 1.45;
}
.uso-alert i {
  flex-shrink: 0;
  margin-top: 1px;
  font-size: 15px;
}
.uso-alert--warn {
  background: var(--an-amber-soft);
  color: var(--an-amber);
}
.uso-alert--error {
  background: var(--an-rose-soft);
  color: var(--an-rose);
}
.uso-alert--info {
  margin-top: 0;
  margin-bottom: 12px;
  background: var(--an-surface2);
  color: var(--an-text-muted);
}

.uso-loading {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding: 24px 12px;
}
.uso-loading p {
  margin: 0;
  color: var(--an-text-muted);
  font-size: 12.5px;
  font-weight: 600;
  text-align: center;
}
.uso-loading--tall {
  padding: 56px 12px;
}

.uso-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 40px 20px;
  text-align: center;
}
.uso-state > i {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: var(--an-surface2);
  color: var(--an-text-faint);
  font-size: 24px;
}
.uso-state h3 {
  margin: 0;
  color: var(--an-text);
  font-size: 15px;
  font-weight: 800;
}
.uso-state p {
  margin: 0;
  max-width: 380px;
  color: var(--an-text-muted);
  font-size: 12.5px;
  line-height: 1.55;
}

.uso-rationale {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-bottom: 12px;
  padding: 10px 12px;
  border-radius: 10px;
  background: var(--an-violet-soft);
  color: var(--an-violet);
  font-size: 12.5px;
  font-style: italic;
  line-height: 1.45;
}
.uso-rationale i {
  flex-shrink: 0;
  margin-top: 1px;
  font-size: 15px;
}

.uso-summary {
  margin-bottom: 10px;
}

.uso-summary__strong {
  color: var(--an-text);
  font-size: 12.5px;
  font-weight: 800;
}

.uso-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.uso-row {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 10px;
  border: 1.5px solid var(--an-border);
  border-radius: 11px;
  background: var(--an-surface);
}
.uso-row--dead {
  opacity: 0.78;
  border-style: dashed;
}

.uso-row__slot {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  flex-shrink: 0;
  border-radius: 50%;
  background: var(--an-primary);
  color: #fff;
  font-size: 12px;
  font-weight: 800;
}

.uso-row__img {
  width: 44px;
  height: 44px;
  flex-shrink: 0;
  border-radius: 9px;
  object-fit: cover;
  background: var(--an-surface3);
}

.uso-row__body {
  flex: 1;
  min-width: 0;
}

.uso-row__name {
  color: var(--an-text);
  font-size: 13px;
  font-weight: 800;
  line-height: 1.3;
}

.uso-row__meta {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin-top: 2px;
  min-width: 0;
}

.uso-row__cat {
  min-width: 0;
  color: var(--an-text-faint);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.uso-row__price {
  flex-shrink: 0;
  color: var(--an-emerald);
  font-size: 11.5px;
  font-weight: 800;
}

.uso-row__reason {
  margin-top: 4px;
  color: var(--an-text-muted);
  font-size: 11.5px;
  font-style: italic;
  line-height: 1.4;
}

.uso-row__flags {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 6px;
}

.uso-flag {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 2px 7px;
  border-radius: var(--an-radius-pill);
  font-size: 10px;
  font-weight: 700;
}
.uso-flag i {
  font-size: 11px;
}
.uso-flag--warn {
  background: var(--an-amber-soft);
  color: var(--an-amber);
}
.uso-flag--error {
  background: var(--an-rose-soft);
  color: var(--an-rose);
}

.uso-move {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  flex-shrink: 0;
  align-self: center;
  min-width: 38px;
  justify-content: center;
  padding: 3px 8px;
  border-radius: var(--an-radius-pill);
  font-size: 11px;
  font-weight: 800;
  white-space: nowrap;
}
.uso-move i {
  font-size: 13px;
}
.uso-move--up {
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
}
.uso-move--down {
  background: var(--an-amber-soft);
  color: var(--an-amber);
}
.uso-move--same {
  background: var(--an-surface2);
  color: var(--an-text-faint);
}
.uso-move--new {
  background: var(--an-violet-soft);
  color: var(--an-violet);
  text-transform: uppercase;
  letter-spacing: 0.03em;
  font-size: 10px;
}

.uso-actions {
  padding: 12px 20px;
  border-top: 1px solid var(--an-border);
  background: var(--an-surface);
  gap: 8px;
}
.uso-actions .md-button {
  margin: 0 !important;
}
.uso-actions .pm-btn-primary md-icon,
.uso-actions .pm-btn-primary [class*=iconoir-] {
  color: #fff !important;
  margin-right: 6px;
  font-size: 16px;
}
.uso-actions .pm-btn-primary md-progress-circular {
  margin-right: 6px;
}

.cs-toolbar-icon {
  font-size: 18px;
  --an-icon-size: 18px;
  color: var(--an-primary);
  margin-left: 12px;
  margin-right: 8px;
  flex-shrink: 0;
}

.cs-batch-open-btn {
  flex-shrink: 0;
  margin-right: 8px;
}

.crossselling-studio {
  display: grid;
  grid-template-columns: 280px 1fr 300px;
  grid-template-rows: 1fr;
  gap: 0;
  flex: 1;
  overflow: hidden;
  min-height: 0;
}
@media (max-width: 959px) {
  .crossselling-studio {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: minmax(0, 1fr);
  }
  .crossselling-studio.w-stack--detail {
    grid-template-rows: none;
    overflow-y: auto;
  }
  .crossselling-studio.w-stack--detail > .cs-main-panel,
  .crossselling-studio.w-stack--detail > .cs-right-panel {
    overflow: visible;
  }
  .crossselling-studio.w-stack--detail .cs-main-scroll {
    flex: none;
    overflow: visible;
    padding: 16px var(--an-gutter, 16px);
  }
}

.cs-search-inline {
  min-width: 0 !important;
  max-width: none !important;
  flex: 1;
  border-radius: 8px;
  background: var(--an-surface2, #f1f3f7);
  border: 1.5px solid transparent;
  transition: border-color 0.18s ease;
}
.cs-search-inline:focus-within {
  border-color: rgba(var(--an-primary-rgb), 0.4);
  background: var(--an-surface, #fff);
}

.cs-left-panel {
  border-right: 1px solid var(--an-border);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: var(--an-surface);
}

.cs-left-search {
  padding: 12px 12px 8px;
  border-bottom: 1px solid var(--an-border);
  flex-shrink: 0;
}
.cs-left-search .cs-search-box {
  position: relative;
  display: flex;
  align-items: center;
  background: var(--an-surface2);
  border-radius: 8px;
  padding: 0 10px;
  gap: 6px;
}
.cs-left-search .cs-search-box i {
  color: var(--an-text-muted);
  font-size: 16px;
}
.cs-left-search .cs-search-box input {
  border: none;
  background: transparent;
  outline: none;
  font-size: 13px;
  flex: 1;
  padding: 8px 0;
  color: var(--an-text);
}
.cs-left-search .cs-search-box input::placeholder {
  color: var(--an-placeholder);
}
.cs-left-search .cs-search-box .cs-search-clear {
  background: none;
  border: none;
  cursor: pointer;
  color: var(--an-text-faint);
  padding: 2px;
  display: flex;
  align-items: center;
}
.cs-left-search .cs-search-box .cs-search-clear:hover {
  color: var(--an-text-muted);
}

.cs-trigger-list {
  flex: 1;
  overflow-y: auto;
  padding: 4px 0;
}

.cs-trigger-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  cursor: pointer;
  border-bottom: 1px solid var(--an-border-light);
  transition: background 0.15s ease;
  position: relative;
}
.cs-trigger-item:hover {
  background: var(--an-surface2);
}
.cs-trigger-item.cs-trigger-item--active {
  background: linear-gradient(135deg, rgba(var(--an-primary-rgb), 0.08), rgba(var(--an-primary-rgb), 0.05));
  border-left: 3px solid var(--an-primary);
}
.cs-trigger-item.cs-trigger-item--active .cs-trigger-name {
  color: var(--an-primary);
  font-weight: 600;
}

.cs-trigger-thumb {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
  background: var(--an-surface2);
}

.cs-trigger-info {
  flex: 1;
  min-width: 0;
}

.cs-trigger-name {
  font-size: 13px;
  font-weight: 500;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.cs-trigger-meta {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-top: 2px;
  flex-wrap: wrap;
}

.cs-trigger-count {
  font-size: 11px;
  font-weight: 600;
  color: var(--an-primary);
  background: var(--an-primary-soft);
  padding: 1px 6px;
  border-radius: 10px;
}

.cs-trigger-count--empty {
  color: var(--an-text-muted);
  background: var(--an-border-light);
}

.cs-health-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  flex-shrink: 0;
}
.cs-health-dot--warn {
  background: var(--an-amber);
}
.cs-health-dot--error {
  background: var(--an-rose);
}

.cs-main-panel {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: var(--an-bg);
}

.cs-main-scroll {
  flex: 1;
  overflow-y: auto;
  padding: 20px 24px;
}

.cs-empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  min-height: 300px;
  text-align: center;
  color: var(--an-text-muted);
  gap: 12px;
}
.cs-empty-state md-icon {
  font-size: 48px;
  color: var(--an-text-faint);
}
.cs-empty-state h3 {
  font-size: 16px;
  font-weight: 600;
  color: var(--an-text-muted);
  margin: 0;
}
.cs-empty-state p {
  font-size: 13px;
  max-width: 280px;
  line-height: 1.5;
  margin: 0;
}

.cs-selected-hero {
  display: flex;
  align-items: center;
  gap: 16px;
  background: var(--an-surface);
  border-radius: 14px;
  padding: 16px 20px;
  margin-bottom: 20px;
  box-shadow: var(--an-shadow-xs);
  border: 1px solid var(--an-border);
}

.cs-hero-img {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
  background: var(--an-surface2);
}

.cs-hero-info {
  flex: 1;
  min-width: 0;
}

.cs-hero-name {
  font-size: 17px;
  font-weight: 700;
  color: var(--an-text);
  margin: 0 0 4px;
}

.cs-hero-meta {
  font-size: 13px;
  color: var(--an-text-muted);
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
}

.cs-hero-cat {
  background: var(--an-surface2);
  padding: 2px 8px;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 500;
}

.cs-hero-health {
  display: flex;
  gap: 6px;
  align-items: center;
}

.cs-health-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  padding: 2px 8px;
  border-radius: 8px;
  font-weight: 500;
}
.cs-health-badge--warn {
  color: var(--an-amber);
  background: var(--an-amber-soft);
}
.cs-health-badge--error {
  color: var(--an-rose);
  background: var(--an-rose-soft);
}

.cs-section-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 12px;
}
.cs-section-header h4 {
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
  margin: 0;
}

.cs-limit-badge {
  font-size: 12px;
  font-weight: 600;
  padding: 2px 10px;
  border-radius: 10px;
  background: var(--an-primary-soft);
  color: var(--an-primary);
}
.cs-limit-badge.cs-limit-badge--full {
  background: var(--an-rose-soft);
  color: var(--an-rose);
}

.cs-addons-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  gap: 14px;
  margin-bottom: 20px;
}

.cs-addon-card {
  background: var(--an-surface);
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--an-border-light);
  transition: transform 0.15s ease, box-shadow 0.15s ease;
  position: relative;
}
.cs-addon-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--an-shadow-md);
}
.cs-addon-card.cs-addon-card--disabled {
  opacity: 0.65;
}

.cs-addon-img {
  width: 100%;
  height: 110px;
  border-radius: 0;
  object-fit: cover;
  background: var(--an-surface2);
  display: block;
}

.cs-addon-body {
  padding: 8px 10px;
}

.cs-addon-name {
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.cs-addon-price {
  font-size: 11px;
  color: var(--an-text-muted);
  margin-top: 2px;
}

.cs-addon-remove {
  position: absolute;
  top: 6px;
  right: 6px;
  background: var(--an-rose);
  border: none;
  border-radius: 50%;
  width: 22px;
  height: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  opacity: 0;
  transition: opacity 0.15s ease;
  color: #fff;
  padding: 0;
}
.cs-addon-remove i {
  font-size: 12px;
}
.cs-addon-card:hover .cs-addon-remove {
  opacity: 1;
}

.cs-addon-health-flag {
  position: absolute;
  top: 6px;
  left: 6px;
  font-size: 10px;
  padding: 2px 6px;
  border-radius: 6px;
  font-weight: 600;
  backdrop-filter: blur(4px);
}
.cs-addon-health-flag--warn {
  background: var(--an-amber);
  color: #fff;
}
.cs-addon-health-flag--error {
  background: var(--an-rose);
  color: #fff;
}

.cs-addon-loading {
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.7);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
}
.waitry-dark-theme .cs-addon-loading {
  background: rgba(26, 29, 39, 0.7);
}

.cs-add-row {
  background: var(--an-surface);
  border-radius: 12px;
  padding: 14px 16px;
  border: 1px dashed var(--an-primary);
  margin-bottom: 24px;
  display: flex;
  gap: 12px;
  align-items: flex-start;
}
.cs-add-row .cs-add-icon {
  color: var(--an-primary);
  font-size: 20px;
  margin-top: 6px;
}
.cs-add-row .cs-add-content {
  flex: 1;
}
.cs-add-row .cs-add-label {
  font-size: 12px;
  font-weight: 700;
  color: var(--an-primary);
  text-transform: uppercase;
  letter-spacing: 0.4px;
  margin-bottom: 6px;
}

.cs-preview-strip {
  background: linear-gradient(135deg, #1e293b, #0f172a);
  border-radius: 14px;
  padding: 16px 18px;
  margin-top: 8px;
}

.cs-preview-label {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: rgba(255, 255, 255, 0.5);
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  gap: 6px;
}
.cs-preview-label i {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.35);
}

.cs-preview-items {
  display: flex;
  gap: 10px;
  overflow-x: auto;
  padding-bottom: 4px;
}
.cs-preview-items::-webkit-scrollbar {
  height: 3px;
}
.cs-preview-items::-webkit-scrollbar-track {
  background: transparent;
}
.cs-preview-items::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.15);
  border-radius: 3px;
}

.cs-preview-card {
  flex-shrink: 0;
  width: 80px;
  text-align: center;
}

.cs-preview-img {
  width: 72px;
  height: 72px;
  border-radius: 10px;
  object-fit: cover;
  display: block;
  background: rgba(255, 255, 255, 0.1);
  margin: 0 auto 6px;
}

.cs-preview-name {
  font-size: 10px;
  color: rgba(255, 255, 255, 0.75);
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.cs-preview-price {
  font-size: 10px;
  color: rgba(255, 255, 255, 0.45);
  margin-top: 2px;
}

.cs-preview-empty {
  color: rgba(255, 255, 255, 0.4);
  font-size: 13px;
  font-style: italic;
  padding: 8px 0;
}

.cs-right-panel {
  border-left: 1px solid var(--an-border);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: var(--an-surface);
}

.cs-strategy-card {
  border-bottom: 1px solid var(--an-border);
  flex-shrink: 0;
  background: var(--an-surface2, #f8f9fb);
}
.cs-strategy-card.cs-strategy-card--editing {
  background: var(--an-surface);
}

.cs-strategy-header {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 14px;
  cursor: pointer;
}
.cs-strategy-card--editing .cs-strategy-header {
  cursor: default;
  padding-bottom: 4px;
}

.cs-strategy-icon {
  font-size: 16px;
  --an-icon-size: 16px;
  color: var(--an-primary);
  flex-shrink: 0;
  margin-top: 2px;
}

.cs-strategy-header-copy {
  flex: 1;
  min-width: 0;
}

.cs-strategy-title {
  font-size: 12px;
  font-weight: 700;
  color: var(--an-text);
  text-transform: uppercase;
  letter-spacing: 0.4px;
}

.cs-strategy-summary {
  font-size: 12px;
  color: var(--an-text-muted);
  margin-top: 3px;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.cs-strategy-summary.cs-strategy-summary--empty {
  color: var(--an-text-faint);
  font-style: italic;
}

.cs-strategy-edit-btn {
  flex-shrink: 0;
  margin: -6px -6px 0 0;
}
.cs-strategy-edit-btn md-icon, .cs-strategy-edit-btn i {
  font-size: 16px;
  color: var(--an-text-muted);
}

.cs-strategy-body {
  padding: 0 14px 14px;
}

.cs-strategy-explain {
  font-size: 12px;
  color: var(--an-text-muted);
  line-height: 1.5;
  margin: 0 0 8px;
}

.cs-strategy-textarea {
  width: 100%;
  resize: vertical;
  min-height: 72px;
  border-radius: 8px;
  border: 1.5px solid var(--an-border);
  background: var(--an-surface2, #f1f3f7);
  color: var(--an-text);
  font-size: 13px;
  font-family: inherit;
  padding: 8px 10px;
  line-height: 1.5;
}
.cs-strategy-textarea:focus {
  outline: none;
  border-color: var(--an-primary);
  background: var(--an-surface);
}
.cs-strategy-textarea::placeholder {
  color: var(--an-placeholder);
}

.cs-strategy-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 10px;
}

.cs-right-header {
  padding: 14px 14px 10px;
  border-bottom: 1px solid var(--an-border);
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 8px;
}
.cs-right-header h4 {
  margin: 0;
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
}

.cs-header-spacer {
  flex: 1;
  min-width: 0;
}

.cs-mise-icon {
  font-size: 18px;
  --an-icon-size: 18px;
  color: var(--an-primary);
  flex-shrink: 0;
}

.cs-suggestions-list {
  flex: 1;
  overflow-y: auto;
  padding: 8px 0;
}

.cs-suggestion-card {
  padding: 12px 14px;
  border-bottom: 1px solid var(--an-border-light);
  transition: background 0.1s ease;
}
.cs-suggestion-card:hover {
  background: var(--an-surface2);
}

.cs-suggestion-products {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 8px;
}

.cs-sug-thumb {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  object-fit: cover;
  background: var(--an-surface2);
  flex-shrink: 0;
}

.cs-sug-names {
  flex: 1;
  min-width: 0;
}

.cs-sug-name {
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.cs-sug-arrow {
  font-size: 14px;
  color: var(--an-text-faint);
  flex-shrink: 0;
}

.cs-suggestion-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.cs-sug-stats {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

.cs-suggestion-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid var(--an-border-light);
}

.cs-sug-stat {
  font-size: 10px;
  padding: 2px 7px;
  border-radius: 8px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.cs-sug-stat--count {
  background: var(--an-primary-soft);
  color: var(--an-primary);
}
.cs-sug-stat--confidence {
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
}
.cs-sug-stat--mise {
  background: rgba(var(--an-primary-rgb), 0.06);
  color: var(--an-primary);
  border: 1px solid rgba(var(--an-primary-rgb), 0.15);
  cursor: help;
}
.cs-sug-stat--mise i {
  font-size: 10px;
}

.cs-sug-category {
  font-size: 10px;
  color: var(--an-text-faint);
  margin-top: 1px;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.3px;
}

.cs-sug-add-btn {
  flex-shrink: 0;
  font-size: 12px;
  font-weight: 600;
  padding: 4px 12px;
  border-radius: 8px;
  background: linear-gradient(135deg, var(--an-primary), var(--an-primary));
  color: #fff;
  border: none;
  cursor: pointer;
  transition: opacity 0.15s ease, transform 0.1s ease;
}
.cs-sug-add-btn:hover {
  opacity: 0.9;
  transform: translateY(-1px);
}
.cs-sug-add-btn:disabled {
  opacity: 0.4;
  cursor: not-allowed;
  transform: none;
}

.cs-suggestions-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 40px 20px;
  text-align: center;
  color: var(--an-text-muted);
  gap: 8px;
}
.cs-suggestions-empty md-icon {
  font-size: 36px;
  color: var(--an-text-faint);
}
.cs-suggestions-empty p {
  font-size: 12px;
  line-height: 1.5;
  margin: 0;
}

.cs-suggestions-loading {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 32px;
}

.cs-img-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--an-surface2);
}
.cs-img-placeholder--dark {
  background: rgba(255, 255, 255, 0.1);
}
.cs-img-placeholder--light {
  border-radius: 8px;
}

.cs-img-placeholder-icon {
  color: var(--an-text-faint);
}
.cs-img-placeholder-icon--xs {
  --an-icon-size: 14px;
  font-size: 14px;
}
.cs-img-placeholder-icon--sm {
  --an-icon-size: 18px;
  font-size: 18px;
}
.cs-img-placeholder-icon--md {
  --an-icon-size: 24px;
  font-size: 24px;
}
.cs-img-placeholder-icon--lg {
  --an-icon-size: 28px;
  font-size: 28px;
}
.cs-img-placeholder-icon--dark {
  color: rgba(255, 255, 255, 0.3);
}

.cs-empty-state--compact {
  min-height: 100px !important;
  height: auto !important;
  padding: 24px 16px;
}

.cs-empty-state-icon {
  font-size: 32px;
  color: var(--an-text-faint);
}

.cs-saving-spinner {
  flex-shrink: 0;
  margin-left: auto;
}

.cs-add-row--limit {
  border-color: rgba(239, 68, 68, 0.25) !important;
  background: rgba(239, 68, 68, 0.02) !important;
}

.cs-add-icon--warn {
  color: var(--an-rose) !important;
}

.cs-limit-text {
  font-size: 13px;
  color: var(--an-text-muted);
}

.cs-empty-state-icon-i {
  display: block;
  font-size: 48px;
  --an-icon-size: 48px;
  color: var(--an-text-faint);
  margin: 0 auto 12px;
}
.cs-empty-state-icon-i--sm {
  font-size: 32px;
  --an-icon-size: 32px;
}

.cs-suggestions-empty-icon {
  display: block;
  font-size: 36px;
  --an-icon-size: 36px;
  color: var(--an-text-faint);
  margin: 0 auto 10px;
}

.cs-skeleton-list {
  padding: 8px 12px;
}

.cs-sk-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 0;
  border-bottom: 1px solid var(--an-border-light);
}

.cs-sk-thumb {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: linear-gradient(90deg, var(--an-surface2) 25%, var(--an-surface3) 50%, var(--an-surface2) 75%);
  background-size: 200% 100%;
  animation: catalog-sk-shimmer 1.4s infinite;
  flex-shrink: 0;
}

.cs-sk-line {
  height: 12px;
  border-radius: 6px;
  background: linear-gradient(90deg, var(--an-surface2) 25%, var(--an-surface3) 50%, var(--an-surface2) 75%);
  background-size: 200% 100%;
  animation: catalog-sk-shimmer 1.4s infinite;
}
.cs-sk-line--wide {
  width: 120px;
}
.cs-sk-line--narrow {
  width: 60px;
  margin-top: 6px;
}

.cs-sug-fit-badge {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-size: 10px;
  font-weight: 700;
  padding: 2px 7px;
  border-radius: 8px;
  margin-top: 3px;
  line-height: 1.4;
  letter-spacing: 0.2px;
  transition: opacity 0.2s ease;
}
.cs-sug-fit-badge i {
  font-size: 10px;
  flex-shrink: 0;
}
.cs-sug-fit-badge--high {
  background: var(--an-emerald-soft, rgba(16, 185, 129, 0.12));
  color: var(--an-emerald, #10b981);
  border: 1px solid rgba(16, 185, 129, 0.2);
}
.cs-sug-fit-badge--med {
  background: var(--an-amber-soft, rgba(245, 158, 11, 0.12));
  color: var(--an-amber, #f59e0b);
  border: 1px solid rgba(245, 158, 11, 0.2);
}
.cs-sug-fit-badge--low {
  background: var(--an-rose-soft, rgba(244, 63, 94, 0.1));
  color: var(--an-rose, #f43f5e);
  border: 1px solid rgba(244, 63, 94, 0.18);
  opacity: 0.85;
}
.cs-sug-fit-badge--skeleton {
  width: 72px;
  height: 18px;
  border-radius: 8px;
  background: linear-gradient(90deg, var(--an-surface2) 25%, var(--an-surface3) 50%, var(--an-surface2) 75%);
  background-size: 200% 100%;
  animation: catalog-sk-shimmer 1.4s infinite;
  border: none;
  padding: 0;
}

.cs-scoring-chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 10px;
  font-weight: 600;
  color: var(--an-primary);
  background: var(--an-primary-soft);
  padding: 2px 8px 2px 5px;
  border-radius: 10px;
  white-space: nowrap;
  flex-shrink: 0;
  animation: cs-scoring-fade 0.3s ease;
}

.cs-scoring-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--an-primary);
  animation: cs-scoring-pulse 1.2s ease-in-out infinite;
  flex-shrink: 0;
}

@keyframes cs-scoring-pulse {
  0%, 100% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0.4;
    transform: scale(0.7);
  }
}
@keyframes cs-scoring-fade {
  from {
    opacity: 0;
    transform: translateX(4px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.csb-dialog {
  width: min(720px, 96vw);
  max-width: 96vw;
  max-height: 88vh;
  display: flex;
  flex-direction: column;
}

.csb-content-wrap {
  flex: 1;
  overflow-y: auto;
  min-height: 0;
  padding: 20px 24px;
  background: var(--an-bg);
}

.csb-step {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.csb-setup-content {
  display: flex;
  flex-direction: column;
  gap: 28px;
}

.csb-scan-loading {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 60px 0;
}

.csb-stats-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}
@media (max-width: 600px) {
  .csb-stats-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

.csb-stat-card {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 12px;
  padding: 16px 12px;
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.csb-stat-card--good {
  background: var(--an-emerald-soft, rgba(16, 185, 129, 0.08));
  border-color: rgba(16, 185, 129, 0.35);
}
.csb-stat-card--good .csb-stat-value {
  color: var(--an-emerald, #10b981);
}
.csb-stat-card--warn {
  background: var(--an-amber-soft, rgba(245, 158, 11, 0.08));
  border-color: rgba(245, 158, 11, 0.35);
}
.csb-stat-card--warn .csb-stat-value {
  color: var(--an-amber, #f59e0b);
}
.csb-stat-card--empty {
  background: var(--an-rose-soft, rgba(244, 63, 94, 0.08));
  border-color: rgba(244, 63, 94, 0.35);
}
.csb-stat-card--empty .csb-stat-value {
  color: var(--an-rose, #f43f5e);
}

.csb-stat-value {
  font-size: 22px;
  font-weight: 700;
  color: var(--an-text);
}

.csb-stat-label {
  font-size: 10px;
  font-weight: 600;
  color: var(--an-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.3px;
  line-height: 1.3;
}

.csb-cold-start {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  background: var(--an-primary-soft);
  border: 1px solid rgba(var(--an-primary-rgb), 0.2);
  border-radius: 10px;
  padding: 14px 16px;
}
.csb-cold-start i {
  color: var(--an-primary);
  font-size: 18px;
  flex-shrink: 0;
  margin-top: 1px;
}
.csb-cold-start p {
  margin: 0;
  font-size: 13px;
  color: var(--an-text);
  line-height: 1.5;
}

.csb-block {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.csb-block-label {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
}
.csb-block-label i {
  color: var(--an-primary);
  font-size: 15px;
}

.csb-block-hint {
  font-size: 12px;
  color: var(--an-text-muted);
  margin: 0;
  line-height: 1.5;
}

.csb-strategy-textarea {
  width: 100%;
  resize: vertical;
  min-height: 72px;
  border-radius: 10px;
  border: 1.5px solid var(--an-border);
  background: var(--an-surface2, #f1f3f7);
  color: var(--an-text);
  font-size: 13px;
  font-family: inherit;
  padding: 12px 14px;
  line-height: 1.6;
}
.csb-strategy-textarea:focus {
  outline: none;
  border-color: var(--an-primary);
  background: var(--an-surface);
}

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

.csb-mode {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  border-radius: 9px;
  border: 1.5px solid var(--an-border);
  background: var(--an-surface);
  color: var(--an-text-muted);
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
}
.csb-mode i {
  font-size: 15px;
}
.csb-mode:hover {
  border-color: var(--an-border-strong);
}
.csb-mode--active {
  border-color: var(--an-primary);
  background: var(--an-primary-soft);
  color: var(--an-primary);
}
.csb-mode--sm {
  padding: 8px 16px;
  min-width: 44px;
  justify-content: center;
}

.csb-mode-warning {
  display: flex;
  align-items: flex-start;
  gap: 6px;
  font-size: 12px;
  color: var(--an-amber);
  margin: 4px 0 0;
  line-height: 1.5;
}
.csb-mode-warning i {
  font-size: 14px;
  margin-top: 1px;
  flex-shrink: 0;
}

.csb-progress-wrap {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding-bottom: 6px;
}

.csb-progress-label {
  font-size: 12px;
  color: var(--an-text-muted);
  margin: 0;
  text-align: center;
}

.csb-error-banner {
  display: flex;
  align-items: center;
  gap: 10px;
  background: var(--an-rose-soft);
  border: 1px solid rgba(244, 63, 94, 0.2);
  border-radius: 10px;
  padding: 10px 14px;
  font-size: 13px;
  color: var(--an-text);
}
.csb-error-banner i {
  color: var(--an-rose);
  font-size: 16px;
  flex-shrink: 0;
}
.csb-error-banner span {
  flex: 1;
}

.csb-credits-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 12px;
  margin-right: 8px;
  border-radius: 999px;
  background: var(--an-primary-soft);
  color: var(--an-primary);
  font-weight: 700;
  font-size: 14px;
}
.csb-credits-chip i[class^=iconoir] {
  color: var(--an-primary);
  font-size: 17px;
  line-height: 1;
}
.csb-credits-chip small {
  color: var(--an-text-muted);
  font-weight: 600;
  text-transform: lowercase;
}

.csb-credits {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.csb-credits-estimate {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: var(--an-text-muted);
}
.csb-credits-estimate i {
  color: var(--an-primary);
  font-size: 16px;
  flex-shrink: 0;
}

.csb-credits-warning {
  display: flex;
  align-items: flex-start;
  gap: 6px;
  font-size: 12px;
  color: var(--an-rose);
  margin: 0;
  line-height: 1.5;
}
.csb-credits-warning i {
  font-size: 14px;
  margin-top: 1px;
  flex-shrink: 0;
}
.csb-credits-warning--soft {
  color: var(--an-amber);
}

.csb-credits-exhausted {
  display: flex;
  align-items: center;
  gap: 10px;
  background: var(--an-amber-soft, rgba(245, 158, 11, 0.08));
  border: 1px solid rgba(245, 158, 11, 0.3);
  border-radius: 10px;
  padding: 10px 14px;
  font-size: 13px;
  color: var(--an-text);
}
.csb-credits-exhausted i {
  color: var(--an-amber);
  font-size: 16px;
  flex-shrink: 0;
}
.csb-credits-exhausted span {
  flex: 1;
}

.csb-cooking-anim {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 14px;
  padding: 6px 0 2px;
}

.csb-cooking-icon {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--an-primary-soft);
  color: var(--an-primary);
  font-size: 18px;
  animation: csb-cooking-bounce 1.6s ease-in-out infinite;
}
.csb-cooking-icon:nth-child(1) {
  animation-delay: 0s;
}
.csb-cooking-icon:nth-child(2) {
  animation-delay: 0.16s;
}
.csb-cooking-icon:nth-child(3) {
  animation-delay: 0.32s;
}
.csb-cooking-icon:nth-child(4) {
  animation-delay: 0.48s;
}
.csb-cooking-icon:nth-child(5) {
  animation-delay: 0.64s;
}

@keyframes csb-cooking-bounce {
  0%, 100% {
    transform: translateY(0) scale(1);
    opacity: 0.5;
    box-shadow: 0 0 0 rgba(var(--an-primary-rgb, 73, 127, 228), 0);
  }
  50% {
    transform: translateY(-9px) scale(1.15);
    opacity: 1;
    box-shadow: 0 8px 18px -4px rgba(var(--an-primary-rgb, 73, 127, 228), 0.45);
  }
}
@media (prefers-reduced-motion: reduce) {
  .csb-cooking-icon {
    animation: none;
    opacity: 0.85;
  }
}
.csb-review-toolbar {
  display: flex;
  align-items: center;
  gap: 8px;
  position: sticky;
  top: 0;
  background: var(--an-bg);
  padding-bottom: 4px;
  z-index: 1;
}

.csb-review-summary {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
}

.csb-bulk-btn {
  font-size: 12px;
  padding: 0 12px !important;
}

.csb-review-groups {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.csb-review-group {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 12px;
  padding: 12px;
}

.csb-group-header {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
}

.csb-group-thumb {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  object-fit: cover;
  background: var(--an-surface2);
  flex-shrink: 0;
}

.csb-group-info {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.csb-group-name {
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.csb-group-cat {
  font-size: 11px;
  color: var(--an-text-faint);
  text-transform: uppercase;
  letter-spacing: 0.3px;
}

.csb-picks-empty {
  font-size: 12px;
  color: var(--an-text-faint);
  font-style: italic;
  padding: 4px 2px 8px;
}

.csb-pick-row {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 6px 4px;
  border-radius: 8px;
  transition: opacity 0.15s ease;
}
.csb-pick-row--rejected {
  opacity: 0.45;
}
.csb-pick-row md-checkbox.csb-pick-check {
  margin: 0;
  flex-shrink: 0;
}

.csb-pick-thumb {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  object-fit: cover;
  background: var(--an-surface2);
  flex-shrink: 0;
}

.csb-pick-info {
  flex: 1;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.csb-pick-name {
  font-size: 12.5px;
  font-weight: 600;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 180px;
}

.csb-pick-price {
  font-size: 11px;
  color: var(--an-text-muted);
  flex-shrink: 0;
}

.csb-pick-badge {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-size: 10px;
  font-weight: 700;
  padding: 2px 7px;
  border-radius: 8px;
  background: var(--an-rose-soft, rgba(244, 63, 94, 0.1));
  color: var(--an-rose, #f43f5e);
  flex-shrink: 0;
}
.csb-pick-badge i {
  font-size: 10px;
}
.csb-pick-badge--high {
  background: var(--an-emerald-soft, rgba(16, 185, 129, 0.12));
  color: var(--an-emerald, #10b981);
}
.csb-pick-badge--med {
  background: var(--an-amber-soft, rgba(245, 158, 11, 0.12));
  color: var(--an-amber, #f59e0b);
}

.csb-pick-source {
  font-size: 10px;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: 8px;
  background: var(--an-surface2);
  color: var(--an-text-muted);
  flex-shrink: 0;
  white-space: nowrap;
}
.csb-pick-source--data {
  background: var(--an-primary-soft);
  color: var(--an-primary);
}
.csb-pick-source--manual {
  background: var(--an-emerald-soft, rgba(16, 185, 129, 0.12));
  color: var(--an-emerald, #10b981);
}

.csb-pick-remove {
  background: none;
  border: none;
  cursor: pointer;
  color: var(--an-text-faint);
  padding: 4px;
  display: flex;
  align-items: center;
  flex-shrink: 0;
}
.csb-pick-remove:hover {
  color: var(--an-rose);
}
.csb-pick-remove i {
  font-size: 13px;
}

.csb-manual-add {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 6px;
  padding-top: 8px;
  border-top: 1px dashed var(--an-border);
}
.csb-manual-add i {
  color: var(--an-primary);
  font-size: 14px;
  flex-shrink: 0;
}

.csb-manual-autocomplete {
  flex: 1;
  min-width: 0;
}

.csb-step--applying {
  align-items: center;
  padding: 50px 0;
}
.csb-step--applying p {
  margin: 12px 0 0;
  font-size: 13px;
  color: var(--an-text-muted);
}

.csb-step--done {
  align-items: center;
  text-align: center;
  padding: 30px 0;
}

.csb-done-icon {
  font-size: 44px;
  color: var(--an-emerald, #10b981);
}

.csb-done-summary {
  font-size: 14px;
  color: var(--an-text);
  margin: 0;
}

.csb-undo-btn {
  margin-top: 4px;
}

.csb-undo-state {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  color: var(--an-text-muted);
  margin-top: 4px;
}
.csb-undo-state--done {
  color: var(--an-emerald, #10b981);
}
.csb-undo-state--done i {
  font-size: 15px;
}

.hl-page {
  background: var(--an-bg);
}

.hl-content {
  background: var(--an-bg);
  min-height: 0;
}

.hl-scroll {
  overflow-y: auto;
  min-height: 0;
  padding: 16px 20px 80px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.hl-scroll > * {
  flex-shrink: 0;
}

.hl-ai-btn {
  flex-shrink: 0;
}
.hl-ai-btn md-icon, .hl-ai-btn [class*=iconoir-] {
  color: #fff !important;
  margin-right: 6px;
}
.hl-ai-btn md-progress-circular {
  margin-right: 6px;
}

.hl-undo-banner {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 12px 10px 16px;
  border-radius: var(--an-radius-sm);
  background: var(--an-emerald-soft);
  border: 1px solid rgba(16, 185, 129, 0.28);
}
.hl-undo-banner md-icon, .hl-undo-banner [class*=iconoir-] {
  color: var(--an-emerald);
  flex-shrink: 0;
}
.hl-undo-banner .hl-undo-text {
  flex: 1;
  min-width: 0;
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
}
.hl-undo-banner .hl-undo-btn {
  margin: 0 !important;
  flex-shrink: 0;
}
.hl-undo-banner .hl-undo-dismiss {
  margin: 0 !important;
  flex-shrink: 0;
}

.hl-window-note {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  border-radius: var(--an-radius-sm);
  background: var(--an-sky-soft);
  border: 1px solid rgba(56, 189, 248, 0.28);
  font-size: 12.5px;
  line-height: 1.45;
  color: var(--an-text);
}
.hl-window-note i {
  font-size: 16px;
  color: var(--an-sky);
  flex-shrink: 0;
}
.hl-window-note > span {
  flex: 1;
  min-width: 0;
}
.hl-window-note__btn {
  margin: 0 !important;
  flex-shrink: 0;
}
.hl-window-note--widened {
  background: var(--an-amber-soft);
  border-color: rgba(245, 158, 11, 0.32);
}
.hl-window-note--widened i {
  color: var(--an-amber);
}

.hl-kpi-banner {
  padding: 0 !important;
}
@media (max-width: 1300px) and (min-width: 1101px) {
  .hl-kpi-banner .section-kpi-row--4 {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (max-width: 1100px) and (min-width: 901px) {
  .hl-kpi-banner .section-kpi-row--4 {
    grid-template-columns: repeat(2, 1fr);
  }
}

.hl-chip-bar {
  padding: 0 !important;
}

.hl-kpi-of {
  font-size: 15px;
  font-weight: 700;
  color: var(--an-text-muted);
  margin-left: 1px;
}

.hl-table-controls {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px 20px;
  flex-wrap: wrap;
  margin-bottom: 12px;
}
.hl-table-controls .hl-chip-bar {
  flex: 1 1 auto;
  min-width: 0;
}

.hl-table-selects {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-shrink: 0;
}
.hl-table-selects .table-filter-group > label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--an-text-muted);
  white-space: nowrap;
}

.hl-kpi-of--btn {
  background: none;
  border: none;
  padding: 0 0 0 1px;
  cursor: pointer;
  font: inherit;
  color: var(--an-text-muted);
  display: inline-flex;
  align-items: baseline;
  gap: 3px;
  border-radius: var(--an-radius-xs);
}
.hl-kpi-of--btn i {
  font-size: 12px;
  opacity: 0;
  transition: opacity 0.15s ease;
}
.hl-kpi-of--btn:hover, .hl-kpi-of--btn:focus-visible {
  color: var(--an-primary);
}
.hl-kpi-of--btn:hover i, .hl-kpi-of--btn:focus-visible i {
  opacity: 1;
}

.hl-target-edit {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 4px;
}
.hl-target-edit__input {
  width: 58px;
  padding: 4px 8px;
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-xs);
  outline: none;
}
.hl-target-edit__input:focus {
  border-color: rgba(var(--an-primary-rgb), 0.55);
  background: var(--an-surface);
}
.hl-target-edit__hint {
  font-size: 10px;
  color: var(--an-text-muted);
  white-space: nowrap;
}
.hl-target-edit .md-button {
  margin: 0 !important;
  width: 26px !important;
  min-width: 26px !important;
  height: 26px !important;
  line-height: 26px !important;
  padding: 0 !important;
}
.hl-target-edit__ok md-icon {
  color: var(--an-emerald) !important;
}

.hl-section-head {
  margin-bottom: 12px;
}
.hl-section-head__title {
  margin: 0;
  font-size: 15px;
  font-weight: 700;
  color: var(--an-text);
}
.hl-section-head__explain {
  margin: 3px 0 0;
  font-size: 12px;
  line-height: 1.45;
  color: var(--an-text-muted);
}

.hl-img-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--an-surface3);
  color: var(--an-text-faint);
}
.hl-img-placeholder i {
  font-size: 18px;
}

.hl-metric {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text-muted);
  white-space: nowrap;
}
.hl-metric i {
  font-size: 13px;
  opacity: 0.75;
}

.hl-quadrant {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  border-radius: var(--an-radius-pill);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  white-space: nowrap;
}
.hl-quadrant--star {
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
}
.hl-quadrant--plow {
  background: var(--an-sky-soft);
  color: var(--an-sky);
}
.hl-quadrant--puzzle {
  background: var(--an-amber-soft);
  color: var(--an-amber);
}
.hl-quadrant--dog {
  background: var(--an-surface3);
  color: var(--an-text-muted);
}
.hl-quadrant--top_seller {
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
}
.hl-quadrant--steady {
  background: var(--an-sky-soft);
  color: var(--an-sky);
}
.hl-quadrant--no_sales {
  background: transparent;
  color: var(--an-text-muted);
  border: 1px dashed var(--an-border-strong);
}

.hl-metric--unknown,
.hl-table__num--unknown {
  color: var(--an-text-faint);
}

.hl-flag {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 2px 7px;
  border-radius: var(--an-radius-pill);
  font-size: 10px;
  font-weight: 700;
  white-space: nowrap;
}
.hl-flag i {
  font-size: 11px;
}
.hl-flag--warn {
  background: var(--an-amber-soft);
  color: var(--an-amber);
}
.hl-flag--danger {
  background: var(--an-rose-soft);
  color: var(--an-rose);
}

.hl-lineup-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 12px;
}

.hl-lineup-card {
  display: flex;
  align-items: stretch;
  gap: 10px;
  padding: 10px;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-left: 3px solid var(--an-emerald);
  border-radius: var(--an-radius-sm);
  box-shadow: var(--an-shadow-xs);
  min-width: 0;
}
.hl-lineup-card--warn {
  border-left-color: var(--an-amber);
}
.hl-lineup-card__img {
  width: 56px;
  height: 56px;
  flex-shrink: 0;
  border-radius: var(--an-radius-xs);
  object-fit: cover;
}
.hl-lineup-card__body {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.hl-lineup-card__name {
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.hl-lineup-card__cat {
  font-size: 11px;
  color: var(--an-text-muted);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.hl-lineup-card__metrics {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 2px;
}
.hl-lineup-card__flags {
  display: flex;
  align-items: center;
  gap: 5px;
  flex-wrap: wrap;
  margin-top: 3px;
}
.hl-lineup-card__actions {
  display: flex;
  flex-direction: column;
  gap: 2px;
  flex-shrink: 0;
}
.hl-lineup-card__actions .md-button {
  margin: 0 !important;
  width: 32px !important;
  min-width: 32px !important;
  height: 32px !important;
  line-height: 32px !important;
  padding: 0 !important;
}
.hl-lineup-card__remove md-icon, .hl-lineup-card__remove [class*=iconoir-] {
  color: var(--an-rose) !important;
}

.hl-lineup-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 8px;
  padding: 32px 20px;
  background: var(--an-surface);
  border: 1px dashed var(--an-border-strong);
  border-radius: var(--an-radius-sm);
}
.hl-lineup-empty__icon {
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--an-radius-pill);
  background: var(--an-amber-soft);
}
.hl-lineup-empty__icon i {
  font-size: 24px;
  color: var(--an-amber);
}
.hl-lineup-empty h4 {
  margin: 4px 0 0;
  font-size: 15px;
  font-weight: 700;
  color: var(--an-text);
}
.hl-lineup-empty p {
  margin: 0;
  max-width: 460px;
  font-size: 13px;
  line-height: 1.5;
  color: var(--an-text-muted);
}
.hl-lineup-empty .md-button {
  margin-top: 6px !important;
}

.hl-lineup-skeleton {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 12px;
}

.hl-lineup-sk {
  height: 78px;
  border-radius: var(--an-radius-sm);
  background: linear-gradient(90deg, var(--an-surface2) 25%, var(--an-surface3) 37%, var(--an-surface2) 63%);
  background-size: 400% 100%;
  animation: hl-shimmer 1.4s ease-in-out infinite;
}

@keyframes hl-shimmer {
  0% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0 50%;
  }
}
.hl-bulk-bar {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 10px 8px 6px;
  margin-bottom: 10px;
  border-radius: var(--an-radius-sm);
  background: var(--an-primary-soft);
  border: 1px solid rgba(var(--an-primary-rgb), 0.32);
}
.hl-bulk-bar__close {
  margin: 0 !important;
  flex-shrink: 0;
}
.hl-bulk-bar__count {
  font-size: 13px;
  color: var(--an-text);
  white-space: nowrap;
}
.hl-bulk-bar__count strong {
  font-size: 15px;
  font-weight: 800;
  margin-right: 3px;
}

.hl-bulk-btn {
  margin: 0 !important;
  flex-shrink: 0;
}

.hl-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
}
.hl-table th {
  position: sticky;
  top: -16px;
  z-index: 2;
  padding: 10px 12px;
  text-align: left;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--an-text-muted);
  background: var(--an-surface2);
  border-bottom: 1px solid var(--an-border);
  white-space: nowrap;
  box-shadow: inset 0 -1px 0 var(--an-border);
}
.hl-table thead tr:first-child th:first-child {
  border-top-left-radius: var(--an-radius-sm);
}
.hl-table thead tr:first-child th:last-child {
  border-top-right-radius: var(--an-radius-sm);
}
.hl-table tbody tr:last-child td:first-child {
  border-bottom-left-radius: var(--an-radius-sm);
}
.hl-table tbody tr:last-child td:last-child {
  border-bottom-right-radius: var(--an-radius-sm);
}
.hl-table td {
  padding: 8px 12px;
  font-size: 13px;
  color: var(--an-text);
  border-bottom: 1px solid var(--an-border-light);
  vertical-align: middle;
}
.hl-table tbody tr:last-child td {
  border-bottom: none;
}
.hl-table tbody tr:hover {
  background: var(--an-bg-subtle);
}
.hl-table__check {
  width: 40px;
}
.hl-table__num {
  text-align: right;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.hl-table__quadrant {
  width: 96px;
}
.hl-table__star {
  width: 64px;
  text-align: center;
}
.hl-table__row--on {
  background: rgba(16, 185, 129, 0.05);
}
.hl-table__row--selected {
  background: var(--an-primary-soft) !important;
}
.hl-table__row--disabled .hl-product-cell__name {
  color: var(--an-text-muted);
}
.hl-table__row--disabled .hl-product-cell__img {
  opacity: 0.55;
}
.hl-table md-checkbox {
  margin: 0 !important;
}
@media (max-width: 900px) {
  .hl-table th:nth-child(5), .hl-table td:nth-child(5),
  .hl-table th:nth-child(7), .hl-table td:nth-child(7) {
    display: none;
  }
}

.hl-product-cell {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}
.hl-product-cell__img {
  width: 36px;
  height: 36px;
  flex-shrink: 0;
  border-radius: var(--an-radius-xs);
  object-fit: cover;
}
.hl-product-cell__copy {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
}
.hl-product-cell__name {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.hl-product-cell__meta {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  color: var(--an-text-muted);
  min-width: 0;
}

.hl-inline-flag {
  padding: 1px 6px;
  border-radius: var(--an-radius-pill);
  background: var(--an-amber-soft);
  color: var(--an-amber);
  font-size: 10px;
  font-weight: 700;
  white-space: nowrap;
}

.hl-th-sort {
  cursor: pointer;
  user-select: none;
  transition: background var(--duration-fast) var(--ease-default), color var(--duration-fast) var(--ease-default);
}
.hl-th-sort:hover {
  background: var(--an-surface3);
  color: var(--an-text);
}
.hl-th-sort:hover .hl-th-arrow {
  opacity: 0.75;
}
.hl-th-sort--on {
  color: var(--an-text);
}
.hl-th-sort--on .hl-th-arrow {
  opacity: 1;
  color: var(--an-primary);
}

.hl-th-btn {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  width: 100%;
  padding: 0;
  border: 0;
  background: none;
  color: inherit;
  font: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
  cursor: pointer;
}
.hl-table__num .hl-th-btn {
  justify-content: flex-end;
}
.hl-th-btn--center {
  justify-content: center;
}
.hl-th-btn:focus-visible {
  outline: 2px solid var(--an-primary);
  outline-offset: 2px;
  border-radius: var(--an-radius-xs);
}

.hl-th-arrow {
  font-size: 13px;
  flex-shrink: 0;
  opacity: 0.3;
  transition: opacity var(--duration-fast) var(--ease-default);
}

.hl-giveaway {
  display: inline-flex;
  align-items: center;
  margin-left: 5px;
  color: var(--an-violet);
  cursor: help;
  vertical-align: middle;
}
.hl-giveaway i {
  font-size: 13px;
}

.hl-star-btn {
  margin: 0 !important;
}
.hl-star-btn md-icon, .hl-star-btn [class*=iconoir-] {
  color: var(--an-text-muted) !important;
}
.hl-star-btn:hover md-icon, .hl-star-btn:hover [class*=iconoir-] {
  color: var(--an-amber) !important;
}
.hl-star-btn.hl-star-btn--on md-icon, .hl-star-btn.hl-star-btn--on [class*=iconoir-] {
  color: var(--an-amber) !important;
}

.hl-table-skeleton {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.hl-sk-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  background: var(--an-surface);
  border: 1px solid var(--an-border-light);
  border-radius: var(--an-radius-xs);
}

.hl-sk-thumb,
.hl-sk-text {
  border-radius: 4px;
  background: linear-gradient(90deg, var(--an-surface2) 25%, var(--an-surface3) 37%, var(--an-surface2) 63%);
  background-size: 400% 100%;
  animation: hl-shimmer 1.4s ease-in-out infinite;
}

.hl-sk-thumb {
  width: 36px;
  height: 36px;
  border-radius: var(--an-radius-xs);
  flex-shrink: 0;
}

.hl-sk-text {
  height: 12px;
}

.hl-sk-text--wide {
  flex: 1;
}

.hl-sk-text--narrow {
  width: 70px;
}

.hl-load-more {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 16px 0 4px;
}
.hl-load-more .md-button {
  margin: 0 !important;
}
.hl-load-more__count {
  font-size: 12px;
  color: var(--an-text-muted);
  font-variant-numeric: tabular-nums;
}

.hls-dialog {
  width: min(860px, 96vw);
  max-width: 96vw;
  max-height: 90vh;
  display: flex;
  flex-direction: column;
}

.hls-content {
  flex: 1;
  overflow-y: auto;
  min-height: 0;
  padding: 20px 24px;
  background: var(--an-bg);
}

.hls-actions .md-button {
  margin: 0 !important;
}

.hls-step {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.hls-loading {
  display: flex;
  justify-content: center;
  padding: 48px 0;
}

.hls-error-banner {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border-radius: var(--an-radius-sm);
  background: var(--an-rose-soft);
  border: 1px solid rgba(236, 78, 54, 0.28);
  font-size: 13px;
  color: var(--an-text);
}
.hls-error-banner i {
  color: var(--an-rose);
  font-size: 18px;
  flex-shrink: 0;
}
.hls-error-banner span {
  flex: 1;
  min-width: 0;
}
.hls-error-banner .md-button {
  margin: 0 !important;
  flex-shrink: 0;
}

.hls-setup {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.hls-stats-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: 10px;
}

.hls-stat {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 12px 14px;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
}
.hls-stat__value {
  font-size: 22px;
  font-weight: 800;
  line-height: 1.1;
  color: var(--an-text);
}
.hls-stat__label {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--an-text-muted);
}
.hls-stat--good {
  border-color: rgba(16, 185, 129, 0.32);
}
.hls-stat--good .hls-stat__value {
  color: var(--an-emerald);
}
.hls-stat--warn {
  border-color: rgba(245, 158, 11, 0.32);
}
.hls-stat--warn .hls-stat__value {
  color: var(--an-amber);
}

.hls-cold-start {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 14px;
  border-radius: var(--an-radius-sm);
  background: var(--an-amber-soft);
  border: 1px solid rgba(245, 158, 11, 0.28);
}
.hls-cold-start i {
  color: var(--an-amber);
  font-size: 18px;
  flex-shrink: 0;
  margin-top: 1px;
}
.hls-cold-start p {
  margin: 0;
  font-size: 13px;
  line-height: 1.5;
  color: var(--an-text);
}

.hls-block {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.hls-block__label {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--an-text-muted);
}
.hls-block__label i {
  font-size: 14px;
  color: var(--an-primary);
}
.hls-block__hint {
  margin: 0;
  font-size: 12px;
  line-height: 1.5;
  color: var(--an-text-muted);
}

.hls-modes {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 8px;
}

.hls-mode {
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding: 11px 13px;
  text-align: left;
  cursor: pointer;
  background: var(--an-surface);
  border: 1.5px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  transition: border-color 0.16s ease, background 0.16s ease;
}
.hls-mode:hover {
  border-color: var(--an-border-hover);
}
.hls-mode__title {
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
}
.hls-mode__desc {
  font-size: 11px;
  line-height: 1.4;
  color: var(--an-text-muted);
}
.hls-mode--active {
  border-color: rgba(var(--an-primary-rgb), 0.6);
  background: var(--an-primary-soft);
}
.hls-mode--active .hls-mode__title {
  color: var(--an-primary);
}

.hls-inline-fields {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

.hls-field {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.hls-field label {
  font-size: 11px;
  font-weight: 700;
  color: var(--an-text-muted);
}

.hls-number-input,
.hls-select {
  padding: 8px 10px;
  font-family: inherit;
  font-size: 14px;
  font-weight: 600;
  color: var(--an-text);
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-xs);
  outline: none;
}
.hls-number-input:focus,
.hls-select:focus {
  border-color: rgba(var(--an-primary-rgb), 0.55);
  background: var(--an-surface);
}

.hls-number-input {
  width: 92px;
}

.hls-select {
  min-width: 160px;
}

.hls-textarea {
  width: 100%;
  padding: 10px 12px;
  font-family: inherit;
  font-size: 13px;
  line-height: 1.5;
  color: var(--an-text);
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-xs);
  resize: vertical;
  outline: none;
}
.hls-textarea:focus {
  border-color: rgba(var(--an-primary-rgb), 0.55);
  background: var(--an-surface);
}

.hls-step--generating {
  align-items: center;
  text-align: center;
  padding: 44px 20px;
  gap: 12px;
}

.hls-cooking {
  display: flex;
  gap: 14px;
}
.hls-cooking__icon {
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--an-radius-pill);
  background: var(--an-primary-soft);
  animation: hls-bounce 1.2s ease-in-out infinite;
}
.hls-cooking__icon i {
  font-size: 20px;
  color: var(--an-primary);
}
.hls-cooking__icon:nth-child(2) {
  animation-delay: 0.15s;
}
.hls-cooking__icon:nth-child(3) {
  animation-delay: 0.3s;
}

@keyframes hls-bounce {
  0%, 100% {
    transform: translateY(0);
    opacity: 0.7;
  }
  50% {
    transform: translateY(-7px);
    opacity: 1;
  }
}
.hls-generating__title {
  margin: 0;
  font-size: 16px;
  font-weight: 700;
  color: var(--an-text);
}
.hls-generating__desc {
  margin: 0;
  max-width: 440px;
  font-size: 13px;
  line-height: 1.5;
  color: var(--an-text-muted);
}
.hls-generating__bar {
  width: min(340px, 80%);
  margin-top: 6px;
}

.hls-source-note {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 10px 13px;
  border-radius: var(--an-radius-sm);
  font-size: 12px;
  line-height: 1.45;
  color: var(--an-text);
}
.hls-source-note i {
  font-size: 16px;
  flex-shrink: 0;
}
.hls-source-note--data {
  background: var(--an-sky-soft);
  border: 1px solid rgba(56, 189, 248, 0.3);
}
.hls-source-note--data i {
  color: var(--an-sky);
}
.hls-source-note--charged {
  background: var(--an-violet-soft);
  border: 1px solid rgba(108, 99, 255, 0.28);
}
.hls-source-note--charged i {
  color: var(--an-violet);
}

.hls-cost {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 12px 14px;
  border-radius: var(--an-radius-sm);
  background: var(--an-violet-soft);
  border: 1px solid rgba(108, 99, 255, 0.28);
}
.hls-cost--short {
  background: var(--an-amber-soft);
  border-color: rgba(245, 158, 11, 0.38);
}
.hls-cost--short .hls-cost__value, .hls-cost--short .hls-cost__figure i {
  color: var(--an-amber);
}
.hls-cost__figure {
  display: flex;
  align-items: baseline;
  gap: 6px;
  flex-shrink: 0;
}
.hls-cost__figure i {
  font-size: 16px;
  color: var(--an-violet);
  align-self: center;
}
.hls-cost__value {
  font-size: 22px;
  font-weight: 800;
  line-height: 1;
  color: var(--an-violet);
  font-variant-numeric: tabular-nums;
}
.hls-cost__unit {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--an-text-muted);
}
.hls-cost__copy {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.hls-cost__balance {
  font-size: 12px;
  font-weight: 700;
  color: var(--an-text);
}
.hls-cost__note {
  font-size: 11px;
  line-height: 1.45;
  color: var(--an-text-muted);
}
.hls-cost__note--short {
  color: var(--an-amber);
  font-weight: 600;
}

.hls-error-banner--muted {
  background: var(--an-surface2);
  border-color: var(--an-border);
}
.hls-error-banner--muted i {
  color: var(--an-text-muted);
}

.hls-outcome {
  display: flex;
  align-items: center;
  gap: 18px;
  flex-wrap: wrap;
  padding: 14px 16px;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
}
.hls-outcome__figure {
  display: flex;
  flex-direction: column;
  line-height: 1.1;
}
.hls-outcome__value {
  font-size: 30px;
  font-weight: 800;
  color: var(--an-primary);
  letter-spacing: -0.02em;
}
.hls-outcome__label {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--an-text-muted);
}
.hls-outcome__detail {
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.hls-outcome__row {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text-muted);
}
.hls-outcome__row i {
  font-size: 13px;
}
.hls-outcome__row--add {
  color: var(--an-emerald);
}
.hls-outcome__row--remove {
  color: var(--an-rose);
}
.hls-outcome__target {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-left: auto;
  font-size: 12px;
  color: var(--an-text-muted);
}
.hls-outcome__delta {
  padding: 2px 8px;
  border-radius: var(--an-radius-pill);
  font-size: 11px;
  font-weight: 800;
}
.hls-outcome__delta--over {
  background: var(--an-amber-soft);
  color: var(--an-amber);
}
.hls-outcome__delta--under {
  background: var(--an-sky-soft);
  color: var(--an-sky);
}
.hls-outcome__delta--ok {
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
}

.hls-group {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.hls-group__head {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}
.hls-group__title {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text);
}
.hls-group__title i {
  font-size: 16px;
  color: var(--an-primary);
}
.hls-group__count {
  padding: 1px 8px;
  border-radius: var(--an-radius-pill);
  background: var(--an-surface3);
  font-size: 11px;
  font-weight: 800;
  color: var(--an-text-muted);
  font-variant-numeric: tabular-nums;
}
.hls-group__actions {
  display: flex;
  gap: 6px;
  margin-left: auto;
}
.hls-group__explain {
  margin: 0;
  font-size: 12px;
  line-height: 1.45;
  color: var(--an-text-muted);
}

.hls-mini-btn {
  margin: 0 !important;
  min-height: 28px !important;
  line-height: 28px !important;
  padding: 0 10px !important;
  font-size: 11px !important;
  text-transform: none !important;
  border: 1px solid var(--an-border) !important;
  border-radius: var(--an-radius-xs) !important;
}

.hls-cards {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.hls-card {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 10px;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-left: 3px solid var(--an-emerald);
  border-radius: var(--an-radius-sm);
  transition: opacity 0.16s ease;
}
.hls-card--remove {
  border-left-color: var(--an-rose);
}
.hls-card--off {
  opacity: 0.5;
  border-left-color: var(--an-border-strong);
}
.hls-card__check {
  margin: 2px 0 0 !important;
  flex-shrink: 0;
}
.hls-card__img {
  width: 52px;
  height: 52px;
  flex-shrink: 0;
  border-radius: var(--an-radius-xs);
  object-fit: cover;
}
.hls-card__body {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.hls-card__top {
  display: flex;
  align-items: baseline;
  gap: 10px;
}
.hls-card__name {
  flex: 1;
  min-width: 0;
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.hls-card__price {
  font-size: 12px;
  font-weight: 700;
  color: var(--an-text-muted);
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.hls-card__cat {
  font-size: 11px;
  color: var(--an-text-muted);
}
.hls-card__evidence {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 3px;
}
.hls-card__why {
  display: flex;
  align-items: baseline;
  gap: 7px;
  flex-wrap: wrap;
  margin-top: 4px;
  padding-top: 6px;
  border-top: 1px dashed var(--an-border);
}
.hls-card__why--data {
  border-top-style: dotted;
}
.hls-card__label {
  padding: 2px 8px;
  border-radius: var(--an-radius-pill);
  background: var(--an-violet-soft);
  color: var(--an-violet);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  white-space: nowrap;
}
.hls-card__reason {
  flex: 1;
  min-width: 0;
  font-size: 12px;
  line-height: 1.45;
  color: var(--an-text-muted);
}

.hls-keeps {
  display: flex;
  flex-direction: column;
  gap: 7px;
  padding: 12px 14px;
  background: var(--an-bg-subtle);
  border: 1px solid var(--an-border-light);
  border-radius: var(--an-radius-sm);
}
.hls-keeps__head {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 12px;
  font-weight: 700;
  color: var(--an-text-muted);
}
.hls-keeps__head i {
  font-size: 15px;
  color: var(--an-emerald);
}
.hls-keeps__chips {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

.hls-keep-chip {
  padding: 3px 9px;
  border-radius: var(--an-radius-pill);
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  font-size: 11px;
  font-weight: 600;
  color: var(--an-text-muted);
}

.hls-step--done {
  align-items: center;
  text-align: center;
  padding: 40px 20px;
  gap: 10px;
}

.hls-done__icon {
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--an-radius-pill);
  background: var(--an-emerald-soft);
}
.hls-done__icon i {
  font-size: 30px;
  color: var(--an-emerald);
}
.hls-done__icon--undone {
  background: var(--an-surface3);
}
.hls-done__icon--undone i {
  color: var(--an-text-muted);
}
.hls-done__title {
  margin: 6px 0 0;
  font-size: 17px;
  font-weight: 700;
  color: var(--an-text);
}
.hls-done__desc {
  margin: 0;
  max-width: 440px;
  font-size: 13px;
  line-height: 1.5;
  color: var(--an-text-muted);
}
.hls-done__actions {
  display: flex;
  gap: 8px;
  margin-top: 10px;
}
.hls-done__actions .md-button {
  margin: 0 !important;
}

body.login-bk [ng-view],
body.login-bk + [ng-view],
body.signup-bk [ng-view],
body.signup-bk + [ng-view] {
  overflow-y: auto !important;
}
body.login-bk,
body.signup-bk {
  --glass-bg: rgba(20, 20, 25, 0.65);
  --glass-border: rgba(255, 255, 255, 0.08);
  --glass-shadow: 0 30px 60px -10px rgba(0, 0, 0, 0.8);
  --text-primary: #ffffff;
  --text-secondary: rgba(255, 255, 255, 0.6);
  --input-bg: rgba(255, 255, 255, 0.04);
  --input-border: rgba(255, 255, 255, 0.08);
  --input-shadow: none;
  --input-focus-border: rgba(255, 255, 255, 0.4);
  --input-focus-ring: rgba(255, 255, 255, 0.05);
  --input-text: #ffffff;
  --input-placeholder: rgba(255, 255, 255, 0.35);
  --logo-text: rgba(255, 255, 255, 0.9);
  --video-overlay-vertical: linear-gradient(to bottom, rgba(0,0,0,0.30) 0%, rgba(0,0,0,0.92) 90%);
  --video-overlay-radial: radial-gradient(circle at 20% 50%, rgba(0,0,0,0.0) 0%, rgba(0,0,0,0.45) 100%);
  --btn-disabled-bg: rgba(255, 255, 255, 0.05);
  --btn-disabled-border: 1px solid rgba(255, 255, 255, 0.08);
  --btn-disabled-text: rgba(255, 255, 255, 0.45);
}

html:not(.waitry-dark-theme) body.login-bk,
html:not(.waitry-dark-theme) body.signup-bk,
html.light body.login-bk,
html.light body.signup-bk,
body.light-mode.login-bk,
body.light-mode.signup-bk {
  --glass-bg: rgba(255, 255, 255, 0.88);
  --glass-border: rgba(0, 0, 0, 0.06);
  --glass-shadow: 0 20px 40px -10px rgba(0, 0, 0, 0.1);
  --text-primary: #111216;
  --text-secondary: rgba(0, 0, 0, 0.6);
  --input-bg: rgba(255, 255, 255, 0.7);
  --input-border: rgba(0, 0, 0, 0.1);
  --input-shadow: none;
  --input-focus-border: #EC4E36;
  --input-focus-ring: rgba(236, 78, 54, 0.12);
  --input-text: #111216;
  --input-placeholder: rgba(0, 0, 0, 0.4);
  --logo-text: #111216;
  --video-overlay-vertical: linear-gradient(to bottom, rgba(255,255,255,0.5) 0%, rgba(255,255,255,0.95) 90%);
  --video-overlay-radial: radial-gradient(circle at 30% 50%, rgba(255,255,255,0.0) 0%, rgba(255,255,255,0.7) 100%);
  --btn-disabled-bg: rgba(0, 0, 0, 0.04);
  --btn-disabled-border: 1px solid rgba(0, 0, 0, 0.06);
  --btn-disabled-text: rgba(0, 0, 0, 0.4);
}

.login-bk {
  background-size: cover;
}

hgroup {
  text-align: center;
  margin-top: 4em;
  margin-bottom: 2em;
}

.loginLogo {
  width: 240px;
  height: auto;
}

.loginLogoMini {
  width: 120px !important;
}

.bk-white {
  background-color: rgb(255, 255, 255);
  border-radius: 15px;
  box-shadow: 0 6px 6px rgba(0, 0, 0, 0.08);
}
.waitry-dark-theme .bk-white {
  background-color: var(--an-surface);
}

footer {
  margin: 0;
  padding: 20px 20px 80px;
}
@media (min-width: 768px) {
  footer {
    padding: 20px;
  }
}
footer {
  text-align: center;
}
footer p {
  color: #444;
  font-size: 13px;
  letter-spacing: 0.4px;
}
.waitry-dark-theme footer p {
  color: var(--an-text-muted, rgba(255, 255, 255, 0.6));
}
footer a {
  color: #497fe4;
  text-decoration: none;
  transition: all 0.2s ease;
}
.waitry-dark-theme footer a {
  color: var(--an-primary, #6B9FF8);
}
footer a:hover {
  color: rgb(117.4114832536, 158.2344497608, 234.5885167464);
  text-decoration: none;
}

.logo-subdomain {
  width: 160px !important;
  height: 160px !important;
  margin-bottom: 20px;
}

.login-carousel-inner {
  width: 100%;
}
.login-carousel-inner .login-carousel-item {
  height: 100vh;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.jk-carousel-login .slides-container .slide div {
  width: 100%;
}

.login-header {
  margin-top: 50px;
  margin-bottom: 36px;
}

/* ══════════════════════════════════════════════════════════════
   GLOBAL THEMING VARIABLES & CONTEXT
   ══════════════════════════════════════════════════════════════ */
.wt-login-layout {
  position: relative;
  z-index: 10;
  min-height: 100vh;
}

/* Theme Toggle Button */
.wt-theme-toggle {
  position: absolute;
  top: 32px;
  right: 32px;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: var(--glass-bg);
  border: 1px solid var(--glass-border);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 50;
  color: var(--text-primary);
  font-size: 20px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
}
.wt-theme-toggle:hover {
  transform: scale(1.1);
}

/* ══════════════════════════════════════════════════════════════
   BACKGROUND VIDEO & OVERLAYS
   ══════════════════════════════════════════════════════════════ */
.wt-login-background {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 0; /* Changed from -1 so it sits above body background */
  background-color: #050505;
}

.wt-login-static-bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-size: cover;
  background-position: center;
  z-index: 0;
}

.wt-login-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.9;
  z-index: 1;
}

.wt-login-overlay-vertical {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: var(--video-overlay-vertical);
  z-index: 2;
  transition: background 0.4s ease;
}

.wt-login-overlay-radial {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: var(--video-overlay-radial);
  z-index: 2;
  transition: background 0.4s ease;
}

/* ══════════════════════════════════════════════════════════════
   LOGIN CARD
   ══════════════════════════════════════════════════════════════ */
.wt-login-card-container {
  padding: 40px;
  z-index: 1;
}

/* Glassmorphism Outer Card */
.wt-glass-card {
  position: relative;
  border-radius: 38px;
  box-shadow: var(--glass-shadow);
  overflow: hidden;
  backdrop-filter: blur(40px);
  -webkit-backdrop-filter: blur(40px);
  background-color: var(--glass-bg);
  border: 1px solid var(--glass-border);
  padding: 48px;
  width: 100%;
  max-width: 520px;
  transition: background-color 0.4s ease, border 0.4s ease, box-shadow 0.4s ease;
  /* Subtle Waitry Branding Line */
}
.wt-glass-card .wt-glass-brand-line {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1.5px;
  background: linear-gradient(90deg, rgba(226, 62, 43, 0) 0%, rgba(226, 62, 43, 0.9) 50%, rgba(226, 62, 43, 0) 100%);
  z-index: 2;
  box-shadow: 0 1px 15px rgba(226, 62, 43, 0.5);
}

/* Inner card body */
.wt-glass-inner {
  position: relative;
  z-index: 1;
  box-sizing: border-box;
  /* Dynamic Waitry Logo */
}
.wt-glass-inner .waitry-dynamic-logo {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 32px;
}
.wt-glass-inner .waitry-dynamic-logo .waitry-inline-logo {
  height: 52px;
  filter: drop-shadow(0 4px 10px rgba(0, 0, 0, 0.15));
  transition: all 0.4s ease;
}
.wt-glass-inner .waitry-dynamic-logo .waitry-inline-logo .wLogoName path {
  fill: var(--logo-text) !important;
  transition: fill 0.4s ease;
}
.wt-glass-inner h1 {
  color: var(--text-primary);
  font-family: "Inter", sans-serif, sans-serif;
  font-size: 28px;
  margin-bottom: 36px;
  letter-spacing: -0.2px;
  transition: color 0.4s ease;
}
.wt-glass-inner p, .wt-glass-inner span {
  color: var(--text-primary);
  transition: color 0.4s ease;
}
.wt-glass-inner {
  /* Clean inputs */
}
.wt-glass-inner .wt-form-group {
  margin: 0 0 24px 0;
  padding: 0;
  width: 100%;
  display: block;
}
.wt-glass-inner .wt-form-group label {
  position: static;
  transform: none;
  color: var(--text-secondary);
  font-family: "Inter", sans-serif, sans-serif;
  font-size: 13px;
  letter-spacing: 0.5px;
  margin-bottom: 10px;
  display: block;
  text-align: left;
  pointer-events: auto;
  transition: color 0.4s ease;
}
.wt-glass-inner .wt-form-group .signUpInput {
  background-color: var(--input-bg) !important;
  border-radius: 12px !important;
  color: var(--input-text) !important;
  border: 1px solid var(--input-border) !important;
  box-shadow: var(--input-shadow) !important;
  padding: 0 16px !important;
  height: 52px !important;
  line-height: 52px !important;
  width: 100% !important;
  box-sizing: border-box;
  font-size: 15px !important;
  transition: all 0.3s cubic-bezier(0.2, 0.8, 0.2, 1);
}
.wt-glass-inner .wt-form-group .signUpInput:focus {
  border-color: var(--input-focus-border) !important;
  background-color: var(--glass-bg) !important;
  box-shadow: 0 0 0 4px var(--input-focus-ring) !important;
  outline: none;
}
.wt-glass-inner .wt-form-group .signUpInput::placeholder {
  color: var(--input-placeholder) !important;
  transition: color 0.4s ease;
}
.wt-glass-inner {
  /* Language selector dropdown override */
}
.wt-glass-inner .wt-clean-select {
  background-color: var(--input-bg) !important;
  border-radius: 12px !important;
  border: 1px solid var(--input-border) !important;
  height: 52px !important;
  box-sizing: border-box !important;
  display: block !important;
  margin: 0 0 24px 0 !important;
  padding: 0 16px !important;
  transition: all 0.3s ease;
  box-shadow: none !important;
}
.wt-glass-inner .wt-clean-select:focus, .wt-glass-inner .wt-clean-select:focus-within {
  border-color: var(--input-focus-border) !important;
  box-shadow: 0 0 0 4px var(--input-focus-ring) !important;
  background-color: var(--glass-bg) !important;
  outline: none;
}
.wt-glass-inner .wt-clean-select .md-select-value {
  min-width: 0;
}
.wt-glass-inner .wt-clean-select .md-select-value span:not(.md-select-icon) {
  color: var(--text-primary) !important;
  font-size: 15px;
  display: flex;
  align-items: center;
}
.wt-glass-inner .wt-clean-select .md-select-value span:not(.md-select-icon) .md-text {
  color: var(--text-primary) !important;
}
.wt-glass-inner .wt-clean-select .md-select-value .md-select-icon {
  color: var(--text-secondary) !important;
  text-align: right;
}
.wt-glass-inner .button-primary {
  width: 100%;
  border-radius: 12px;
  height: 52px;
  line-height: 52px;
  font-family: "Inter", sans-serif, sans-serif;
  font-size: 16px;
  letter-spacing: 0.5px;
  background: linear-gradient(180deg, #E23E2B 0%, #D96356 100%);
  border: none;
  color: white;
  margin-top: 24px; /* More breathing room */
  transition: transform 0.2s cubic-bezier(0.2, 0.8, 0.2, 1), filter 0.2s, box-shadow 0.2s, background 0.4s, color 0.4s;
  box-shadow: 0 8px 20px rgba(226, 62, 43, 0.3);
}
.wt-glass-inner .button-primary:hover:not(:disabled) {
  filter: brightness(1.15);
  transform: translateY(-2px);
  box-shadow: 0 12px 25px rgba(226, 62, 43, 0.4);
}
.wt-glass-inner .button-primary:active:not(:disabled) {
  transform: translateY(0);
  box-shadow: 0 4px 10px rgba(226, 62, 43, 0.3);
}
.wt-glass-inner .button-primary:disabled {
  background: var(--btn-disabled-bg) !important;
  border: var(--btn-disabled-border) !important;
  color: var(--btn-disabled-text) !important;
  box-shadow: none !important;
  cursor: not-allowed;
  transform: none !important;
  opacity: 1 !important; /* Bypass global opacity: 0.5 */
}
.wt-glass-inner .signUpFooter {
  margin-top: 32px;
}
.wt-glass-inner .signUpFooter p {
  color: var(--text-secondary);
  font-size: 13px;
  margin-bottom: 12px;
  transition: color 0.4s ease;
}
.wt-glass-inner .signUpFooter .link {
  color: #E23E2B !important;
  font-weight: bold;
  text-decoration: none;
  transition: color 0.2s;
}
.wt-glass-inner .signUpFooter .link:hover {
  color: #ff5a47 !important;
  text-decoration: underline;
}

/* ══════════════════════════════════════════════════════════════
   CAROUSEL OVERLAY
   ══════════════════════════════════════════════════════════════ */
.signUpLeftSideContainer.wt-carousel-container {
  background: transparent !important;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 40px;
}
.signUpLeftSideContainer.wt-carousel-container .carousel {
  width: 100%;
  height: 100%;
}
.signUpLeftSideContainer.wt-carousel-container .wt-marketing-slide {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding-bottom: 10px;
}
.signUpLeftSideContainer.wt-carousel-container {
  /* Unified Glass Card Wrapper for both image and content text */
}
.signUpLeftSideContainer.wt-carousel-container .wt-marketing-card-wrapper {
  max-width: 540px;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  transition: transform 0.4s ease;
}
.signUpLeftSideContainer.wt-carousel-container .wt-marketing-card-wrapper:hover .wt-marketing-img {
  transform: scale(1.02) translateY(-6px);
}
.signUpLeftSideContainer.wt-carousel-container .wt-marketing-image-container {
  width: 100%;
  height: 280px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--glass-bg);
  border: 1px solid var(--glass-border);
  border-bottom: none; /* Joined seamlessly to the text card below */
  backdrop-filter: blur(40px);
  -webkit-backdrop-filter: blur(40px);
  border-top-left-radius: 32px;
  border-top-right-radius: 32px;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  box-shadow: var(--glass-shadow);
  padding: 24px;
  box-sizing: border-box;
  margin-bottom: 0;
  position: relative;
  z-index: 2; /* Sits above text card slightly */
}
.signUpLeftSideContainer.wt-carousel-container .wt-marketing-image-container .wt-marketing-img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  filter: drop-shadow(0 20px 40px rgba(0, 0, 0, 0.4));
  transform: scale(0.95);
  transition: transform 0.8s cubic-bezier(0.2, 0.8, 0.2, 1);
}
.signUpLeftSideContainer.wt-carousel-container .wt-marketing-text-card {
  background-color: var(--glass-bg);
  border: 1px solid var(--glass-border);
  border-top: 1px solid var(--glass-border); /* Separator line */
  backdrop-filter: blur(40px);
  -webkit-backdrop-filter: blur(40px);
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-bottom-left-radius: 32px;
  border-bottom-right-radius: 32px;
  box-shadow: var(--glass-shadow);
  padding: 28px 40px 36px 40px; /* Improved padding, spacious and balanced */
  text-align: center;
  width: 100%;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.signUpLeftSideContainer.wt-carousel-container .wt-marketing-text-card .wt-marketing-title {
  font-family: "Inter", sans-serif, sans-serif;
  font-size: 28px;
  color: var(--text-primary);
  margin-bottom: 12px;
  letter-spacing: -0.5px;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
  transition: color 0.4s ease;
}
.signUpLeftSideContainer.wt-carousel-container .wt-marketing-text-card .wt-marketing-desc {
  font-family: "Roboto", sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: var(--text-secondary);
  margin: 0;
  transition: color 0.4s ease;
}
.signUpLeftSideContainer.wt-carousel-container {
  /* Gorgeous Pill Indicators for jk-carousel */
}
.signUpLeftSideContainer.wt-carousel-container md-radio-group {
  display: flex !important;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  margin-top: 20px;
  gap: 8px;
  outline: none;
}
.signUpLeftSideContainer.wt-carousel-container md-radio-group md-radio-button {
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
}
.signUpLeftSideContainer.wt-carousel-container md-radio-group md-radio-button .md-container {
  width: 8px !important;
  height: 8px !important;
  border-radius: 4px !important;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
  background-color: var(--glass-border) !important;
  border: none !important;
  overflow: hidden;
  top: auto;
  left: auto;
  position: relative;
}
.signUpLeftSideContainer.wt-carousel-container md-radio-group md-radio-button .md-container::before, .signUpLeftSideContainer.wt-carousel-container md-radio-group md-radio-button .md-container::after, .signUpLeftSideContainer.wt-carousel-container md-radio-group md-radio-button .md-container .md-off, .signUpLeftSideContainer.wt-carousel-container md-radio-group md-radio-button .md-container .md-on, .signUpLeftSideContainer.wt-carousel-container md-radio-group md-radio-button .md-container .md-ripple-container {
  display: none !important;
}
.signUpLeftSideContainer.wt-carousel-container md-radio-group md-radio-button.md-checked .md-container {
  width: 32px !important; /* Expanding Pill */
  background-color: #E23E2B !important;
  box-shadow: 0 2px 8px rgba(226, 62, 43, 0.5);
}
.signUpLeftSideContainer.wt-carousel-container {
  /* Loader styles inside left carousel container */
}
.signUpLeftSideContainer.wt-carousel-container .wt-carousel-loader {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  min-height: 400px;
}
.signUpLeftSideContainer.wt-carousel-container .wt-carousel-loader .wt-glass-spinner {
  position: relative;
  width: 80px;
  height: 80px;
}
.signUpLeftSideContainer.wt-carousel-container .wt-carousel-loader .wt-glass-spinner svg {
  width: 80px;
  height: 80px;
  animation: wt-venue-spin 1.1s linear infinite;
  transform-origin: center;
}
.signUpLeftSideContainer.wt-carousel-container .wt-carousel-loader .wt-glass-spinner .wt-glass-track {
  stroke: var(--glass-border) !important;
  stroke-width: 5px;
}
.signUpLeftSideContainer.wt-carousel-container .wt-carousel-loader .wt-glass-spinner .wt-glass-arc {
  stroke: #E23E2B !important; /* Premium Waitry Red */
  stroke-width: 5px;
  stroke-dasharray: 55 160;
  stroke-linecap: round;
}
.signUpLeftSideContainer.wt-carousel-container .wt-carousel-loader .wt-glass-logo {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.signUpLeftSideContainer.wt-carousel-container .wt-carousel-loader .wt-glass-logo img {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  object-fit: contain;
  background-color: var(--glass-bg);
  border: 1px solid var(--glass-border);
  padding: 6px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

/* Premium Glassmorphic Dropdown for Language Selector (outside wt-login-layout because it is appended to body) */
.wt-glass-dropdown,
body.login-bk .md-select-menu-container {
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.3) !important;
  border: 1px solid var(--input-border) !important;
  margin-top: 4px;
  background: var(--glass-bg) !important;
  backdrop-filter: blur(24px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(24px) saturate(180%) !important;
}
.wt-glass-dropdown md-select-menu,
body.login-bk .md-select-menu-container md-select-menu {
  background: transparent !important;
  padding: 8px 0;
}
.wt-glass-dropdown md-select-menu md-content,
body.login-bk .md-select-menu-container md-select-menu md-content {
  background: transparent !important;
  padding: 0 !important;
}
.wt-glass-dropdown md-select-menu md-option,
body.login-bk .md-select-menu-container md-select-menu md-option {
  color: var(--text-primary) !important;
  font-size: 15px;
  height: 48px;
  transition: background 0.2s ease;
}
.wt-glass-dropdown md-select-menu md-option .md-text,
body.login-bk .md-select-menu-container md-select-menu md-option .md-text {
  color: var(--text-primary) !important;
}
.wt-glass-dropdown md-select-menu md-option:hover, .wt-glass-dropdown md-select-menu md-option:focus, .wt-glass-dropdown md-select-menu md-option.md-focused,
body.login-bk .md-select-menu-container md-select-menu md-option:hover,
body.login-bk .md-select-menu-container md-select-menu md-option:focus,
body.login-bk .md-select-menu-container md-select-menu md-option.md-focused {
  background: var(--input-bg) !important;
  color: var(--text-primary) !important;
}
.wt-glass-dropdown md-select-menu md-option:hover .md-text, .wt-glass-dropdown md-select-menu md-option:focus .md-text, .wt-glass-dropdown md-select-menu md-option.md-focused .md-text,
body.login-bk .md-select-menu-container md-select-menu md-option:hover .md-text,
body.login-bk .md-select-menu-container md-select-menu md-option:focus .md-text,
body.login-bk .md-select-menu-container md-select-menu md-option.md-focused .md-text {
  color: var(--text-primary) !important;
}
.wt-glass-dropdown md-select-menu md-option[selected],
body.login-bk .md-select-menu-container md-select-menu md-option[selected] {
  color: #E23E2B !important; /* Accent Red */
  background: transparent !important;
  font-weight: 600;
}
.wt-glass-dropdown md-select-menu md-option[selected] .md-text,
body.login-bk .md-select-menu-container md-select-menu md-option[selected] .md-text {
  color: #E23E2B !important;
}

/* ══════════════════════════════════════════════════════════════
   HASH LOGIN — Premium Unlock Screen
   ══════════════════════════════════════════════════════════════ */
@keyframes wt-hash-overlay-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes wt-hash-overlay-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes wt-hash-glow-idle {
  0%, 100% {
    opacity: 0.35;
    transform: translate(-50%, -50%) scale(1);
  }
  50% {
    opacity: 0.55;
    transform: translate(-50%, -50%) scale(1.14);
  }
}
@keyframes wt-hash-glow-success {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.7);
  }
  60% {
    opacity: 0.7;
    transform: translate(-50%, -50%) scale(1.2);
  }
  100% {
    opacity: 0.45;
    transform: translate(-50%, -50%) scale(1);
  }
}
@keyframes wt-hash-icon-in {
  0% {
    opacity: 0;
    transform: scale(0.35);
  }
  60% {
    transform: scale(1.12);
  }
  80% {
    transform: scale(0.95);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes wt-hash-icon-shake {
  0%, 100% {
    transform: translateX(0);
  }
  15% {
    transform: translateX(-10px) rotate(-3deg);
  }
  30% {
    transform: translateX(9px) rotate(3deg);
  }
  45% {
    transform: translateX(-7px) rotate(-2deg);
  }
  60% {
    transform: translateX(6px) rotate(2deg);
  }
  75% {
    transform: translateX(-3px);
  }
}
@keyframes wt-hash-dot-pulse {
  0%, 80%, 100% {
    transform: scale(0.55);
    opacity: 0.25;
  }
  40% {
    transform: scale(1);
    opacity: 1;
  }
}
@keyframes wt-hash-status-in {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes wt-hash-lottie-in {
  from {
    opacity: 0;
    transform: scale(0.88);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
.wt-hash-overlay {
  position: fixed;
  inset: 0;
  z-index: 10000;
  background: rgba(4, 4, 8, 0.97);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  animation: wt-hash-overlay-in 0.38s cubic-bezier(0.2, 0.8, 0.2, 1) both;
}
.wt-hash-overlay::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 60% 50% at 50% 42%, rgba(226, 62, 43, 0.07) 0%, transparent 70%);
  pointer-events: none;
  transition: background 0.5s ease;
}
.wt-hash-overlay.ng-hide-add {
  animation: wt-hash-overlay-out 0.28s ease both;
}
.wt-hash-overlay.ng-hide-remove {
  animation: wt-hash-overlay-in 0.38s ease both;
}
.wt-hash-overlay.wt-hash-overlay--success::before {
  background: radial-gradient(ellipse 60% 50% at 50% 42%, rgba(16, 185, 129, 0.12) 0%, transparent 70%);
}
.wt-hash-overlay.wt-hash-overlay--error::before {
  background: radial-gradient(ellipse 60% 50% at 50% 42%, rgba(226, 62, 43, 0.18) 0%, transparent 70%);
}
.wt-hash-overlay.wt-hash-overlay--success .wt-hash-lottie-wrap,
.wt-hash-overlay.wt-hash-overlay--success .wt-hash-dots,
.wt-hash-overlay.wt-hash-overlay--success .wt-hash-status:not(.wt-hash-status--success):not(.wt-hash-status--error), .wt-hash-overlay.wt-hash-overlay--error .wt-hash-lottie-wrap,
.wt-hash-overlay.wt-hash-overlay--error .wt-hash-dots,
.wt-hash-overlay.wt-hash-overlay--error .wt-hash-status:not(.wt-hash-status--success):not(.wt-hash-status--error) {
  display: none !important;
}
.wt-hash-overlay:not(.wt-hash-overlay--success) .wt-hash-icon--success,
.wt-hash-overlay:not(.wt-hash-overlay--success) .wt-hash-status--success {
  display: none !important;
}
.wt-hash-overlay:not(.wt-hash-overlay--error) .wt-hash-icon--error,
.wt-hash-overlay:not(.wt-hash-overlay--error) .wt-hash-status--error {
  display: none !important;
}

.wt-hash-glow {
  position: absolute;
  width: 380px;
  height: 380px;
  border-radius: 50%;
  pointer-events: none;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: radial-gradient(circle, rgba(226, 62, 43, 0.18) 0%, rgba(226, 62, 43, 0.06) 45%, transparent 70%);
  animation: wt-hash-glow-idle 3s ease-in-out infinite;
  transition: background 0.6s ease;
}
.wt-hash-overlay--success .wt-hash-glow {
  background: radial-gradient(circle, rgba(16, 185, 129, 0.22) 0%, rgba(16, 185, 129, 0.07) 45%, transparent 70%);
  animation: wt-hash-glow-success 0.7s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
}
.wt-hash-overlay--error .wt-hash-glow {
  background: radial-gradient(circle, rgba(226, 62, 43, 0.28) 0%, rgba(226, 62, 43, 0.08) 45%, transparent 70%);
  animation: none;
}

.wt-hash-inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 40px;
  gap: 0;
}

.wt-hash-lottie-wrap {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 12px;
  animation: wt-hash-lottie-in 0.5s cubic-bezier(0.2, 0.8, 0.2, 1) both;
  animation-delay: 0.1s;
}

.wt-hash-lottie {
  width: 200px;
  height: 200px;
}

.wt-hash-ring-fallback {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.wt-hash-lottie:not(:empty) + .wt-hash-ring-fallback {
  display: none;
}
.wt-hash-ring-fallback svg {
  width: 80px;
  height: 80px;
  animation: wt-venue-spin 1.1s linear infinite;
  transform-origin: center;
}
.wt-hash-ring-fallback .wt-glass-track {
  stroke: rgba(255, 255, 255, 0.08);
}
.wt-hash-ring-fallback .wt-glass-arc {
  stroke: #E23E2B;
  stroke-dasharray: 55 160;
  stroke-linecap: round;
}

.wt-hash-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 96px;
  height: 96px;
  border-radius: 50%;
  margin-bottom: 8px;
  animation: wt-hash-icon-in 0.55s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}
.wt-hash-icon i.material-icons {
  font-size: 48px;
  line-height: 1;
}
.wt-hash-icon.wt-hash-icon--success {
  background: rgba(16, 185, 129, 0.12);
  border: 1.5px solid rgba(16, 185, 129, 0.35);
  box-shadow: 0 0 0 12px rgba(16, 185, 129, 0.06), 0 0 40px rgba(16, 185, 129, 0.25), 0 0 80px rgba(16, 185, 129, 0.1);
}
.wt-hash-icon.wt-hash-icon--success i {
  color: #10b981;
}
.wt-hash-icon.wt-hash-icon--error {
  background: rgba(226, 62, 43, 0.12);
  border: 1.5px solid rgba(226, 62, 43, 0.35);
  box-shadow: 0 0 0 12px rgba(226, 62, 43, 0.06), 0 0 40px rgba(226, 62, 43, 0.25), 0 0 80px rgba(226, 62, 43, 0.1);
  animation: wt-hash-icon-shake 0.65s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
}
.wt-hash-icon.wt-hash-icon--error i {
  color: #E23E2B;
}

.wt-hash-status {
  font-family: "Inter", "Open Sans", -apple-system, sans-serif;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.5px;
  color: rgba(255, 255, 255, 0.5);
  margin: 20px 0 0;
  padding: 0;
  text-align: center;
  animation: wt-hash-status-in 0.45s ease both;
  animation-delay: 0.25s;
}
.wt-hash-status.wt-hash-status--success {
  color: rgba(16, 185, 129, 0.85);
  font-weight: 500;
  animation-delay: 0s;
}
.wt-hash-status.wt-hash-status--error {
  color: rgba(226, 62, 43, 0.85);
  animation-delay: 0s;
}

.wt-hash-substatus {
  font-family: "Inter", "Open Sans", -apple-system, sans-serif;
  font-size: 12.5px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.2px;
  color: rgba(255, 255, 255, 0.34);
  margin: 6px 0 0;
  padding: 0 24px;
  max-width: 320px;
  text-align: center;
  animation: wt-hash-status-in 0.45s ease both;
  animation-delay: 0.35s;
}

.wt-hash-dots {
  display: flex;
  align-items: center;
  gap: 7px;
  margin-top: 16px;
}
.wt-hash-dots span {
  display: block;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: rgba(226, 62, 43, 0.75);
  animation: wt-hash-dot-pulse 1.5s ease-in-out infinite;
}
.wt-hash-dots span:nth-child(1) {
  animation-delay: 0s;
}
.wt-hash-dots span:nth-child(2) {
  animation-delay: 0.22s;
}
.wt-hash-dots span:nth-child(3) {
  animation-delay: 0.44s;
}

/* ══════════════════════════════════════════════════════════════
   GOOGLE SIGN-IN — shared between login & signup
   ══════════════════════════════════════════════════════════════
   Renders Google's own Sign In With Google button (via
   google.accounts.id.renderButton) directly and visibly. A prior
   version hid the real button and overlaid a custom-styled one on
   top for brand consistency, but that made the actual click target
   a deliberately invisible, clipped, negative-margined cross-origin
   iframe — which turned out to silently break click delivery inside
   Google's own code in some environments, with zero way to debug it
   from outside. Showing the real button is what every other working
   integration does; not worth the reliability risk for brand polish. */
.ext-auth-wrap {
  width: 100%;
  min-height: 40px;
  margin-bottom: 16px;
  display: flex;
  justify-content: center;
}
.ext-auth-wrap.is-loading {
  pointer-events: none;
  opacity: 0.6;
}

.ext-auth-real {
  border-radius: 999px;
  overflow: hidden;
  transition: box-shadow 0.2s ease;
}
.ext-auth-real:hover {
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.12);
}

.su-divider {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 20px;
  color: var(--text-secondary);
  font-size: 11px;
  font-weight: 600;
  font-family: "Inter", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.7px;
}
.su-divider::before, .su-divider::after {
  content: "";
  flex: 1;
  height: 1px;
  background: var(--glass-border);
}

.su-layout {
  position: relative;
  z-index: 10;
  min-height: 100vh;
  display: flex;
  flex-direction: row;
  align-items: stretch;
}

.su-card-container {
  position: relative;
  z-index: 1;
  padding: 24px;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  overflow-y: auto;
  max-height: 100vh;
  flex: 0 0 50%;
  width: 50%;
}
@media (max-width: 767px) {
  .su-card-container {
    flex: 0 0 100%;
    width: 100%;
    padding: 16px;
  }
}
@media (min-width: 768px) {
  .su-card-container {
    flex: 0 0 100%;
    width: 100%;
    padding: 20px;
  }
}

.su-glass-card {
  position: relative;
  border-radius: 32px;
  box-shadow: var(--glass-shadow);
  overflow: hidden;
  backdrop-filter: blur(40px);
  -webkit-backdrop-filter: blur(40px);
  background-color: var(--glass-bg);
  border: 1px solid var(--glass-border);
  padding: 40px 44px 32px;
  width: 100%;
  max-width: 600px;
  margin: 24px 0;
  transition: background-color 0.4s ease, border 0.4s ease, box-shadow 0.4s ease;
}
.su-glass-card .wt-glass-brand-line {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1.5px;
  background: linear-gradient(90deg, rgba(226, 62, 43, 0) 0%, rgba(226, 62, 43, 0.9) 50%, rgba(226, 62, 43, 0) 100%);
  z-index: 2;
  box-shadow: 0 1px 15px rgba(226, 62, 43, 0.5);
}
@media (max-width: 767px) {
  .su-glass-card {
    padding: 28px 20px 24px;
    border-radius: 20px;
  }
}
@media (min-width: 768px) {
  .su-glass-card {
    padding: 32px 28px 24px;
  }
}

.su-card-header {
  text-align: center;
  margin-bottom: 24px;
}
.su-card-header .su-logo {
  height: 52px;
  width: auto;
  margin-bottom: 20px;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.su-card-header h1 {
  color: var(--text-primary);
  font-size: 24px;
  font-weight: 800;
  letter-spacing: -0.4px;
  margin: 0 0 6px 0;
  font-family: var(--font-sans) !important;
  transition: color 0.4s ease;
}
.su-card-header p {
  color: var(--text-secondary);
  font-size: 14px;
  margin: 0;
  transition: color 0.4s ease;
}

.su-stepper {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 0 28px;
  gap: 0;
}

.su-step-pill {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  border-radius: var(--an-radius-pill);
  border: 1px solid transparent;
  font-size: 13px;
  font-weight: 600;
  font-family: var(--font-sans);
  cursor: default;
  transition: all var(--duration-norm) var(--ease-default);
  white-space: nowrap;
}
.su-step-pill i {
  font-size: 16px;
  line-height: 1;
}
.su-step-pill.su-step-active {
  background: var(--an-rose);
  border-color: var(--an-rose);
  color: #ffffff;
  box-shadow: 0 0 0 4px rgba(236, 78, 54, 0.15);
}
.su-step-pill.su-step-done {
  background: var(--an-emerald-soft);
  border-color: var(--an-emerald);
  color: var(--an-emerald);
}
.su-step-pill.su-step-upcoming {
  background: transparent;
  border-color: var(--an-border);
  color: var(--an-text-faint);
}
.su-step-pill.su-step-clickable {
  cursor: pointer;
}
.su-step-pill.su-step-clickable:hover {
  border-color: var(--an-emerald);
  box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.12);
}
@media (max-width: 767px) {
  .su-step-pill {
    padding: 8px;
  }
  .su-step-pill span {
    display: none;
  }
  .su-step-pill.su-step-active span {
    display: inline;
  }
}

.su-step-connector {
  width: 32px;
  height: 1px;
  background: var(--an-border);
  flex-shrink: 0;
  margin: 0 4px;
}
.su-step-connector.su-step-connector-done {
  background: var(--an-emerald);
}

.su-step {
  animation: suFadeIn var(--duration-slow) var(--ease-spring) both;
}

@keyframes suFadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.su-divider {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 20px;
  color: var(--text-secondary);
  font-size: 12px;
  font-weight: 500;
  font-family: var(--font-sans);
  text-transform: uppercase;
  letter-spacing: 0.6px;
}
.su-divider::before, .su-divider::after {
  content: "";
  flex: 1;
  height: 1px;
  background: var(--glass-border);
}

.su-glass-card .wt-form-group {
  margin: 0 0 20px 0;
  padding: 0;
  width: 100%;
  display: block;
}
.su-glass-card .wt-form-group label {
  position: static;
  transform: none;
  color: var(--text-secondary);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.4px;
  margin-bottom: 8px;
  display: block;
  text-align: left;
  pointer-events: auto;
  transition: color 0.4s ease;
  font-family: var(--font-sans);
  text-transform: uppercase;
}
.su-glass-card .wt-form-group .signUpInput {
  background-color: var(--input-bg) !important;
  border-radius: 12px !important;
  color: var(--input-text) !important;
  border: 1px solid var(--input-border) !important;
  box-shadow: var(--input-shadow) !important;
  padding: 0 16px !important;
  height: 48px !important;
  line-height: 48px !important;
  width: 100% !important;
  box-sizing: border-box;
  font-size: 14px !important;
  font-family: var(--font-sans) !important;
  transition: all 0.25s cubic-bezier(0.2, 0.8, 0.2, 1);
}
.su-glass-card .wt-form-group .signUpInput:focus {
  border-color: var(--input-focus-border) !important;
  background-color: rgba(255, 255, 255, 0.06) !important;
  box-shadow: 0 0 0 3px var(--input-focus-ring) !important;
  outline: none;
}
.su-glass-card .wt-form-group .signUpInput::placeholder {
  color: var(--input-placeholder) !important;
  transition: color 0.4s ease;
}
.su-glass-card .wt-form-group .md-input-message-animation {
  font-size: 11px;
  color: var(--an-rose);
  margin-top: 4px;
}
.su-glass-card .su-form-row {
  display: flex;
  gap: 12px;
}
.su-glass-card .su-form-row .wt-form-group {
  flex: 1;
  min-width: 0;
}
@media (max-width: 767px) {
  .su-glass-card .su-form-row {
    flex-direction: column;
    gap: 0;
  }
}
.su-glass-card .su-referral-toggle {
  margin: 0 0 20px 0;
}

.su-country-input {
  display: flex;
  align-items: center;
  height: 48px;
  border-radius: 12px;
  border: 1px solid var(--input-border);
  background: var(--input-bg);
  overflow: hidden;
  transition: border-color 0.25s ease, box-shadow 0.25s ease;
  box-sizing: border-box;
}
.su-country-input:focus-within {
  border-color: var(--input-focus-border);
  box-shadow: 0 0 0 3px var(--input-focus-ring);
}
.su-country-input .su-country-flag {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 10px 0 12px;
  flex-shrink: 0;
  height: 100%;
}
.su-country-input .su-country-flag .flag {
  width: 22px;
  height: 15px;
  border-radius: 2px;
  object-fit: cover;
  display: block;
}
.su-country-input md-autocomplete {
  flex: 1;
  min-width: 0;
  height: 46px !important;
  background: transparent !important;
}
.su-country-input md-autocomplete md-autocomplete-wrap,
.su-country-input md-autocomplete md-autocomplete-wrap.md-whiteframe-z1,
.su-country-input md-autocomplete md-autocomplete-wrap.md-menu-showing,
.su-country-input md-autocomplete md-autocomplete-wrap.md-menu-showing.md-whiteframe-z1 {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  height: 46px !important;
  min-height: 46px !important;
}
.su-country-input md-autocomplete md-autocomplete-wrap input,
.su-country-input md-autocomplete md-autocomplete-wrap.md-whiteframe-z1 input,
.su-country-input md-autocomplete md-autocomplete-wrap.md-menu-showing input,
.su-country-input md-autocomplete md-autocomplete-wrap.md-menu-showing.md-whiteframe-z1 input {
  color: var(--input-text) !important;
  background: transparent !important;
  font-family: var(--font-sans) !important;
  font-size: 14px !important;
  height: 46px !important;
  line-height: 46px !important;
  padding: 0 10px !important;
}
.su-country-input md-autocomplete md-autocomplete-wrap input::placeholder,
.su-country-input md-autocomplete md-autocomplete-wrap.md-whiteframe-z1 input::placeholder,
.su-country-input md-autocomplete md-autocomplete-wrap.md-menu-showing input::placeholder,
.su-country-input md-autocomplete md-autocomplete-wrap.md-menu-showing.md-whiteframe-z1 input::placeholder {
  color: var(--input-placeholder) !important;
}
.su-country-input md-autocomplete md-autocomplete-wrap button,
.su-country-input md-autocomplete md-autocomplete-wrap.md-whiteframe-z1 button,
.su-country-input md-autocomplete md-autocomplete-wrap.md-menu-showing button,
.su-country-input md-autocomplete md-autocomplete-wrap.md-menu-showing.md-whiteframe-z1 button {
  color: var(--text-secondary) !important;
}
.su-country-input md-autocomplete md-autocomplete-wrap button md-icon,
.su-country-input md-autocomplete md-autocomplete-wrap.md-whiteframe-z1 button md-icon,
.su-country-input md-autocomplete md-autocomplete-wrap.md-menu-showing button md-icon,
.su-country-input md-autocomplete md-autocomplete-wrap.md-menu-showing.md-whiteframe-z1 button md-icon {
  color: var(--text-secondary) !important;
}
.su-country-input--compact {
  flex: 0 1 auto;
  min-width: 128px;
  max-width: 168px;
}
.su-country-input--compact .su-country-flag {
  padding: 0 4px 0 10px;
}
.su-country-input--compact md-autocomplete md-autocomplete-wrap button {
  display: none !important;
}
.su-country-input--compact md-autocomplete md-autocomplete-wrap input {
  padding: 0 10px 0 0 !important;
  text-overflow: ellipsis;
}

.su-pricing-cards {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 8px;
}

.su-pricing-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  background: var(--input-bg);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  padding: 16px 20px;
  cursor: pointer;
  transition: all var(--duration-norm) var(--ease-default);
  position: relative;
  overflow: hidden;
}
.su-pricing-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--an-shadow-md);
  border-color: var(--an-border-hover);
}
.su-pricing-card.su-pricing-card-selected {
  border-color: var(--an-rose) !important;
  background: rgba(236, 78, 54, 0.06) !important;
  box-shadow: 0 0 0 1px var(--an-rose), 0 4px 20px rgba(236, 78, 54, 0.12);
  transform: translateY(-1px);
}
.su-pricing-card .su-plan-info {
  flex: 1;
  min-width: 0;
}
.su-pricing-card .su-plan-name {
  font-size: 15px;
  font-weight: 700;
  color: var(--text-primary);
  font-family: var(--font-sans);
  margin: 0 0 4px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.su-pricing-card .su-plan-desc {
  font-size: 12px;
  color: var(--text-secondary);
  font-family: var(--font-sans);
  margin: 0;
  line-height: 1.5;
}
.su-pricing-card .su-plan-price {
  text-align: right;
  flex-shrink: 0;
  margin-left: 16px;
}
.su-pricing-card .su-plan-amount {
  font-size: 22px;
  font-weight: 800;
  color: var(--text-primary);
  font-family: var(--font-sans);
  line-height: 1;
  display: block;
}
.su-pricing-card .su-plan-period {
  font-size: 11px;
  color: var(--text-secondary);
  font-family: var(--font-sans);
  display: block;
  margin-top: 2px;
}
.su-pricing-card .su-plan-annual {
  font-size: 10px;
  color: var(--an-emerald);
  font-family: var(--font-sans);
  display: block;
  margin-top: 2px;
}

.su-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 10px;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: var(--an-radius-pill);
  letter-spacing: 0.3px;
  font-family: var(--font-sans);
}
.su-badge.su-badge-recommended {
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
  border: 1px solid rgba(16, 185, 129, 0.2);
}
.su-badge.su-badge-trial {
  background: var(--an-violet-soft);
  color: var(--an-violet);
  border: 1px solid rgba(108, 99, 255, 0.2);
}

.su-annual-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-bottom: 20px;
  font-size: 13px;
  color: var(--text-secondary);
  font-family: var(--font-sans);
}
.su-annual-toggle md-switch {
  margin: 0;
}

.su-glass-card .button-primary {
  width: 100%;
  margin: 4px 0 0;
}

.su-fine-print {
  text-align: center;
  font-size: 12px;
  color: var(--text-secondary);
  font-family: var(--font-sans);
  margin: 12px 0 0;
  line-height: 1.6;
}
.su-fine-print a {
  color: var(--an-rose);
  text-decoration: none;
}
.su-fine-print a:hover {
  text-decoration: underline;
}

.su-back-btn {
  background: none !important;
  border: none !important;
  box-shadow: none !important;
  color: var(--text-secondary) !important;
  font-size: 13px !important;
  font-family: var(--font-sans) !important;
  cursor: pointer;
  padding: 0 !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  line-height: 1 !important;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-bottom: 24px;
  transition: color var(--duration-fast) ease;
}
.su-back-btn:hover {
  color: var(--text-primary) !important;
}

.su-footer {
  margin-top: 24px;
  text-align: center;
}
.su-footer .wt-clean-select {
  background-color: transparent !important;
  border: 1px solid var(--glass-border) !important;
  border-radius: 10px !important;
  height: 40px !important;
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  margin: 0 0 16px 0 !important;
  padding: 0 14px !important;
  box-shadow: none !important;
  min-width: 140px !important;
}
.su-footer .wt-clean-select .md-select-value {
  color: var(--text-secondary) !important;
}
.su-footer .wt-clean-select .md-select-value span:not(.md-select-icon),
.su-footer .wt-clean-select .md-select-value .md-text {
  color: var(--text-secondary) !important;
}
.su-footer .wt-clean-select .md-select-value .md-select-icon {
  color: var(--text-secondary) !important;
}
.su-footer p {
  font-size: 11px;
  color: var(--text-secondary);
  font-family: var(--font-sans);
  margin: 4px 0;
  line-height: 1.6;
}
.su-footer a {
  color: var(--an-rose);
  text-decoration: none;
}
.su-footer a:hover {
  text-decoration: underline;
}

.su-already-link {
  text-align: center;
  margin-top: 16px;
  font-size: 13px;
  color: var(--text-secondary);
  font-family: var(--font-sans);
}
.su-already-link a {
  color: var(--an-rose);
  font-weight: 600;
  text-decoration: none;
  margin-left: 4px;
}
.su-already-link a:hover {
  text-decoration: underline;
}

.su-verify-container {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: 32px 24px;
  min-height: 100vh;
  box-sizing: border-box;
  width: 100%;
}
.su-verify-container .su-verify-card {
  box-sizing: border-box;
  max-width: 480px;
  width: 100%;
  margin-top: 40px;
  text-align: center;
  background: var(--glass-bg);
  border: 1px solid var(--glass-border);
  border-radius: 28px;
  backdrop-filter: blur(40px);
  -webkit-backdrop-filter: blur(40px);
  padding: 40px 36px;
  box-shadow: var(--glass-shadow);
  animation: suFadeIn var(--duration-slow) var(--ease-spring) both;
}
@media (max-width: 480px) {
  .su-verify-container {
    padding: 24px 12px;
  }
  .su-verify-container .su-verify-card {
    padding: 32px 20px;
    margin-top: 16px;
  }
  .su-verify-container .su-otp-wrap {
    gap: 6px;
  }
}
.su-verify-container .su-verify-icon {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: var(--an-rose-soft);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 20px;
}
.su-verify-container .su-verify-icon i {
  font-size: 32px;
  color: var(--an-rose);
}
.su-verify-container h2 {
  color: var(--text-primary);
  font-size: 22px;
  font-weight: 800;
  margin: 0 0 10px;
  font-family: var(--font-sans) !important;
}
.su-verify-container p {
  color: var(--text-secondary);
  font-size: 14px;
  margin: 0 0 28px;
  line-height: 1.6;
  font-family: var(--font-sans);
}
.su-verify-container .su-otp-wrap {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-bottom: 24px;
}
.su-verify-container .code-input {
  margin: 0 !important;
  flex: 0 1 48px;
  min-width: 0;
  width: 48px;
  height: 56px;
  border-radius: var(--an-radius-sm);
  border: 1px solid var(--an-border);
  background: var(--input-bg);
  color: var(--text-primary) !important;
  font-size: 22px;
  font-weight: 700;
  text-align: center;
  font-family: var(--font-sans);
  outline: none;
  transition: all var(--duration-fast) var(--ease-default);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  caret-color: var(--an-rose);
}
.su-verify-container .code-input:focus {
  border-color: var(--an-rose) !important;
  box-shadow: 0 0 0 3px rgba(236, 78, 54, 0.15);
}
.su-verify-container .su-pin-error {
  font-size: 12px;
  color: var(--an-rose);
  margin: -12px 0 16px;
  font-family: var(--font-sans);
}

.su-success-icon {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background: var(--an-emerald-soft);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 20px;
  animation: suPulseGreen 0.6s var(--ease-spring) both;
}
.su-success-icon i {
  font-size: 36px;
  color: var(--an-emerald);
}

@keyframes suPulseGreen {
  from {
    transform: scale(0.5);
    opacity: 0;
  }
  70% {
    transform: scale(1.08);
    opacity: 1;
  }
  to {
    transform: scale(1);
    opacity: 1;
  }
}
.su-error-container {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: 32px 24px;
  min-height: 100vh;
}
.su-error-container .su-error-card {
  max-width: 440px;
  width: 100%;
  margin-top: 40px;
  text-align: center;
  background: rgba(236, 78, 54, 0.06);
  border: 1px solid rgba(236, 78, 54, 0.2);
  border-radius: 24px;
  backdrop-filter: blur(40px);
  -webkit-backdrop-filter: blur(40px);
  padding: 36px;
  box-shadow: 0 8px 32px rgba(236, 78, 54, 0.1);
  animation: suFadeIn var(--duration-slow) var(--ease-spring) both;
}

.su-payment-container {
  max-width: 600px;
  margin: 24px auto 0;
}
.su-payment-container .su-selected-plan-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: var(--input-bg);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  padding: 14px 20px;
  margin-bottom: 20px;
}
.su-payment-container .su-selected-plan-summary .su-plan-name {
  font-size: 15px;
  font-weight: 700;
  color: var(--text-primary);
  font-family: var(--font-sans);
  display: flex;
  align-items: center;
  gap: 8px;
}
.su-payment-container .su-selected-plan-summary .su-plan-amount {
  font-size: 18px;
  font-weight: 800;
  color: var(--text-primary);
  font-family: var(--font-sans);
}

.jk-carousel {
  height: 100% !important;
}
.jk-carousel .slides-container {
  height: 100%;
}
.jk-carousel .slides-container md-radio-group {
  position: absolute;
  bottom: 32px;
}
.jk-carousel .slides-container div {
  display: flex;
  justify-content: center;
  align-items: center;
}

.carousel-inner .carousel-item {
  padding: 0 10% 40px;
}
.carousel-inner .carousel-item img {
  max-width: 40vw !important;
  margin: 0 auto 40px;
  max-height: 50vh !important;
}
.carousel-inner .carousel-item .item-title {
  font-family: var(--font-sans) !important;
  font-style: normal;
  font-weight: 800;
  font-size: 22px;
  line-height: 30px;
  color: #FFFFFF;
  margin: 0;
  letter-spacing: -0.3px;
}
.carousel-inner .carousel-item .item-text {
  font-family: var(--font-sans) !important;
  font-style: normal;
  font-weight: 400;
  font-size: 15px;
  line-height: 26px;
  color: rgba(255, 255, 255, 0.8);
  margin: 0;
}

@media (max-width: 1024px) {
  .wt-carousel-container {
    display: none !important;
  }
  .su-card-container,
  .wt-login-card-container {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
  }
}
.signUpInput md-autocomplete-wrap {
  height: 48px;
}
.signUpInput md-autocomplete-wrap input {
  height: 48px;
}
.signUpInput md-select-value {
  border-bottom: none;
  height: 34px;
}
.signUpInput md-select-value span.md-select-icon {
  background-image: url("../../img/signup/chevron_down.svg");
}

.noPaddingInput {
  padding-left: 0 !important;
}

.md-select-value-signup {
  min-height: 36px !important;
}

.su-section-subheading {
  text-align: left;
  margin: 16px 0 12px;
  font-weight: 600;
  color: var(--text-primary);
  font-size: 13px;
  font-family: var(--font-sans);
  letter-spacing: 0.2px;
  transition: color 0.4s ease;
}

.su-error-icon {
  font-size: 48px !important;
  color: var(--an-rose) !important;
  margin-bottom: 16px;
  display: block;
}

.su-error-title {
  color: var(--text-primary);
  font-family: var(--font-sans) !important;
  font-size: 20px;
  font-weight: 800;
  margin: 0 0 10px;
  transition: color 0.4s ease;
}

.su-error-desc {
  color: var(--text-secondary);
  font-size: 13px;
  margin: 0 0 24px;
  font-family: var(--font-sans);
  line-height: 1.6;
  transition: color 0.4s ease;
}

.su-plan-selected-check {
  color: var(--an-emerald);
}

.su-badge-abs {
  position: absolute;
  top: 12px;
  right: 12px;
}

.su-badge-icon {
  font-size: 11px !important;
  line-height: 1 !important;
}

.su-step-error-msg {
  color: var(--an-rose);
  font-size: 12px;
  font-family: var(--font-sans);
  margin: 8px 0 0;
  text-align: center;
  line-height: 1.5;
}

.su-pin-hint {
  margin-bottom: 16px !important;
}

.su-pin-access-hint {
  margin-top: 20px !important;
}

.su-pin-access-link {
  color: var(--an-rose) !important;
}
.su-pin-access-link:hover {
  opacity: 0.8;
}

body.login-bk md-autocomplete md-autocomplete-wrap input,
body.signup-bk md-autocomplete md-autocomplete-wrap input {
  color: var(--input-text) !important;
  background: transparent !important;
  font-family: var(--font-sans) !important;
  font-size: 14px !important;
}
body.login-bk md-autocomplete md-autocomplete-wrap input::placeholder,
body.signup-bk md-autocomplete md-autocomplete-wrap input::placeholder {
  color: var(--input-placeholder) !important;
}
body.login-bk md-autocomplete md-autocomplete-wrap button,
body.signup-bk md-autocomplete md-autocomplete-wrap button {
  color: var(--text-secondary) !important;
}
body.login-bk md-autocomplete md-autocomplete-wrap button md-icon,
body.signup-bk md-autocomplete md-autocomplete-wrap button md-icon {
  color: var(--text-secondary) !important;
}
body.login-bk .md-autocomplete-suggestions-container,
body.signup-bk .md-autocomplete-suggestions-container {
  border-radius: 12px !important;
  overflow: hidden;
  border: 1px solid rgba(0, 0, 0, 0.08) !important;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2) !important;
  background: #ffffff !important;
}
body.login-bk .md-autocomplete-suggestions-container .md-autocomplete-suggestions,
body.signup-bk .md-autocomplete-suggestions-container .md-autocomplete-suggestions {
  background: #ffffff !important;
}
body.login-bk .md-autocomplete-suggestions-container .md-autocomplete-suggestions li,
body.signup-bk .md-autocomplete-suggestions-container .md-autocomplete-suggestions li {
  font-family: var(--font-sans) !important;
  font-size: 13px;
  color: #111216 !important;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px !important;
  height: auto !important;
  min-height: 44px !important;
  box-sizing: border-box;
  transition: background 0.15s ease;
}
body.login-bk .md-autocomplete-suggestions-container .md-autocomplete-suggestions li:hover, body.login-bk .md-autocomplete-suggestions-container .md-autocomplete-suggestions li.selected,
body.signup-bk .md-autocomplete-suggestions-container .md-autocomplete-suggestions li:hover,
body.signup-bk .md-autocomplete-suggestions-container .md-autocomplete-suggestions li.selected {
  background: #f4f4f5 !important;
}
body.login-bk .md-autocomplete-suggestions-container .md-autocomplete-suggestions li img.wf-flag-inline,
body.signup-bk .md-autocomplete-suggestions-container .md-autocomplete-suggestions li img.wf-flag-inline {
  width: 20px;
  height: 14px;
  object-fit: cover;
  border-radius: 2px;
  flex-shrink: 0;
}

.su-address-country-notice {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 8px 0 0;
  padding: 10px 12px;
  border-radius: 10px;
  background: var(--an-amber-soft);
  border: 1px solid var(--an-amber);
}
.su-address-country-notice md-icon {
  color: var(--an-amber);
  flex: 0 0 auto;
  margin: 0;
}
.su-address-country-notice md-icon i[class*=iconoir-] {
  color: var(--an-amber);
}
.su-address-country-notice__body {
  flex: 1 1 auto;
  min-width: 0;
}
.su-address-country-notice__text {
  margin: 0;
  font-family: var(--font-sans);
  font-size: 12px;
  line-height: 1.5;
  color: var(--text-primary);
}
.su-address-country-notice__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 6px;
}

.su-google-connected {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  margin-bottom: 20px;
  border-radius: var(--an-radius);
  border: 1px solid var(--an-emerald, #10b981);
  background: rgba(16, 185, 129, 0.08);
}
.su-google-connected__check {
  flex: 0 0 auto;
  color: var(--an-emerald, #10b981) !important;
}
.su-google-connected__check i {
  color: var(--an-emerald, #10b981) !important;
}
.su-google-connected__text {
  display: flex;
  flex-direction: column;
  min-width: 0;
  flex: 1 1 auto;
}
.su-google-connected__label {
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 700;
  color: var(--text-primary);
}
.su-google-connected__email {
  font-family: var(--font-sans);
  font-size: 12px;
  color: var(--text-secondary);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.su-google-password-note {
  display: flex;
  align-items: center;
  min-height: 46px;
  font-family: var(--font-sans);
  font-size: 12px;
  line-height: 1.5;
  color: var(--text-secondary);
}

.su-account-found {
  text-align: center;
  padding: 28px 20px;
  border-radius: var(--an-radius);
  border: 1px solid var(--glass-border);
  background: var(--input-bg);
}
.su-account-found__icon {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  margin: 0 auto 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--an-rose-soft);
}
.su-account-found__icon i {
  font-size: 26px;
  color: var(--an-rose);
}
.su-account-found__title {
  font-family: var(--font-sans);
  font-size: 18px;
  font-weight: 800;
  color: var(--text-primary);
  margin: 0 0 6px;
}
.su-account-found__email {
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 600;
  color: var(--an-rose);
  margin: 0 0 14px;
  overflow-wrap: anywhere;
}
.su-account-found__body {
  font-family: var(--font-sans);
  font-size: 13px;
  line-height: 1.6;
  color: var(--text-secondary);
  margin: 0 0 22px;
}
.su-account-found__actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}
.su-account-found__actions .button-primary {
  width: 100%;
  margin: 0;
}

.su-link-btn {
  background: none;
  border: none;
  box-shadow: none;
  padding: 0;
  min-width: 0;
  min-height: 0;
  cursor: pointer;
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 600;
  color: var(--an-rose);
}
.su-link-btn:hover {
  text-decoration: underline;
}
.su-link-btn--muted {
  font-weight: 500;
  color: var(--text-secondary);
}

.su-verify-container .su-pin-resend {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: center;
  gap: 6px;
  margin-top: 18px;
}
.su-verify-container .su-pin-resend .su-fine-print,
.su-verify-container .su-pin-resend p {
  margin: 0;
}
.su-verify-container .su-pin-resend-wait {
  color: var(--text-secondary);
  opacity: 0.8;
}
.su-verify-container p.su-pin-resend-sent {
  margin: 8px 0 0;
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 500;
  text-align: center;
  color: var(--an-emerald, #10b981);
}

.su-address-manual-hint {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-top: 8px;
  font-family: var(--font-sans);
  font-size: 11px;
  line-height: 1.5;
  color: var(--text-secondary);
}
.su-address-manual-hint md-icon, .su-address-manual-hint i {
  font-size: 14px;
  min-width: 14px;
  min-height: 14px;
  color: var(--an-amber, #f59e0b) !important;
}

.su-error-icon--ok i {
  color: var(--an-emerald, #10b981) !important;
}

.su-venue-finder {
  padding: 18px;
  margin: 0 0 20px;
  border-radius: var(--an-radius);
  border: 1px solid var(--glass-border);
  background: var(--input-bg);
}
.su-venue-finder__head {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 14px;
}
.su-venue-finder__icon {
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  background: var(--an-rose-soft);
}
.su-venue-finder__icon i {
  font-size: 19px;
  color: var(--an-rose) !important;
}
.su-venue-finder__headings {
  flex: 1 1 auto;
  min-width: 0;
}
.su-venue-finder__title {
  margin: 0 0 2px;
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 800;
  color: var(--text-primary);
}
.su-venue-finder__subtitle {
  margin: 0;
  font-family: var(--font-sans);
  font-size: 12px;
  line-height: 1.5;
  color: var(--text-secondary);
}
.su-venue-finder__search-row {
  display: flex;
  align-items: flex-start;
  gap: 8px;
}
.su-venue-finder__field {
  position: relative;
  flex: 1 1 auto;
  min-width: 0;
}
.su-venue-finder__field .su-venue-finder__input {
  background-color: var(--an-bg, var(--input-bg)) !important;
  border-radius: 12px !important;
  color: var(--input-text) !important;
  border: 1px solid var(--input-border) !important;
  box-shadow: var(--input-shadow) !important;
  padding: 0 16px 0 44px !important;
  height: 48px !important;
  line-height: 48px !important;
  width: 100% !important;
  box-sizing: border-box;
  font-size: 14px !important;
  font-family: var(--font-sans) !important;
  transition: all 0.25s cubic-bezier(0.2, 0.8, 0.2, 1);
}
.su-venue-finder__field .su-venue-finder__input:focus {
  border-color: var(--input-focus-border) !important;
  box-shadow: 0 0 0 3px var(--input-focus-ring) !important;
  outline: none;
}
.su-venue-finder__field .su-venue-finder__input::placeholder {
  color: var(--input-placeholder) !important;
}
.su-venue-finder__field--error .su-venue-finder__input {
  border-color: var(--an-rose) !important;
}
.su-venue-finder__search {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  margin: 0 !important;
  pointer-events: none;
  z-index: 1;
}
.su-venue-finder__search i {
  font-size: 18px;
  color: var(--input-placeholder) !important;
}
.su-venue-finder__country {
  flex: 0 0 auto;
}
.su-venue-finder__error {
  margin: 6px 0 0;
  font-family: var(--font-sans);
  font-size: 11px;
  color: var(--an-rose);
}
.su-venue-finder__country-error {
  margin: 6px 0 0;
}
.su-venue-finder__manual {
  display: block;
  margin-top: 12px;
  text-align: left;
}

.su-branches-card {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  margin: 0 0 20px;
  border-radius: var(--an-radius);
  border: 1px solid var(--glass-border);
  background: var(--input-bg);
}
.su-branches-card__icon {
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--an-rose-soft);
}
.su-branches-card__icon i {
  font-size: 18px;
  color: var(--an-rose) !important;
}
.su-branches-card__text {
  flex: 1 1 auto;
  min-width: 0;
}
.su-branches-card__question {
  margin: 0 0 2px;
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 700;
  color: var(--text-primary);
}
.su-branches-card__hint {
  margin: 0;
  font-family: var(--font-sans);
  font-size: 12px;
  color: var(--text-secondary);
}
.su-branches-card__stepper {
  flex: 0 0 auto;
  display: flex;
  align-items: stretch;
  border: 1px solid var(--input-border);
  border-radius: 10px;
  overflow: hidden;
  background: var(--an-bg, var(--input-bg));
}
.su-branches-card__btn {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent !important;
  border: none;
  box-shadow: none;
  cursor: pointer;
  padding: 0;
  min-width: 0;
  min-height: 0;
  margin: 0 !important;
}
.su-branches-card__btn i {
  font-size: 15px;
  color: var(--text-secondary) !important;
}
.su-branches-card__btn:hover:not([disabled]) {
  background: var(--input-border) !important;
}
.su-branches-card__btn:hover:not([disabled]) i {
  color: var(--text-primary) !important;
}
.su-branches-card__btn[disabled] {
  opacity: 0.35;
  cursor: default;
}
.su-branches-card__value {
  width: 42px;
  height: 32px;
  text-align: center;
  border: none;
  border-left: 1px solid var(--input-border);
  border-right: 1px solid var(--input-border);
  background: transparent !important;
  color: var(--input-text) !important;
  font-family: var(--font-sans) !important;
  font-size: 14px !important;
  font-weight: 700;
  padding: 0 !important;
  -moz-appearance: textfield;
}
.su-branches-card__value::-webkit-inner-spin-button, .su-branches-card__value::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.su-branches-card__value:focus {
  outline: none;
  background: var(--input-focus-ring) !important;
}
@media (max-width: 767px) {
  .su-branches-card {
    align-items: flex-start;
  }
  .su-branches-card__stepper {
    margin-top: 2px;
  }
}

.su-venue-card {
  padding: 18px;
  margin: 0 0 20px;
  border-radius: var(--an-radius);
  border: 1px solid var(--an-emerald, #10b981);
  background: rgba(16, 185, 129, 0.08);
}
.su-venue-card__head {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 14px;
}
.su-venue-card__icon {
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  background: rgba(16, 185, 129, 0.16);
}
.su-venue-card__icon i {
  font-size: 19px;
  color: var(--an-emerald, #10b981) !important;
}
.su-venue-card__identity {
  flex: 1 1 auto;
  min-width: 0;
}
.su-venue-card__eyebrow {
  margin: 0 0 2px;
  font-family: var(--font-sans);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  color: var(--an-emerald, #10b981);
}
.su-venue-card__name {
  margin: 0;
  font-family: var(--font-sans);
  font-size: 16px;
  font-weight: 800;
  line-height: 1.3;
  color: var(--text-primary);
  overflow-wrap: anywhere;
}
.su-venue-card__check {
  flex: 0 0 auto;
  margin: 0 !important;
}
.su-venue-card__check i {
  font-size: 20px;
  color: var(--an-emerald, #10b981) !important;
}
.su-venue-card__facts {
  list-style: none;
  margin: 0;
  padding: 0;
}
.su-venue-card__facts li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 5px 0;
  font-family: var(--font-sans);
  font-size: 12px;
  line-height: 1.5;
  color: var(--text-secondary);
}
.su-venue-card__facts md-icon {
  flex: 0 0 auto;
  margin: 0 !important;
  margin-top: 1px !important;
}
.su-venue-card__facts md-icon i {
  font-size: 15px;
  color: var(--text-secondary) !important;
}
.su-venue-card__facts span {
  min-width: 0;
  overflow-wrap: anywhere;
}
.su-venue-card__url {
  overflow-wrap: anywhere;
}
.su-venue-card__hours-toggle {
  margin-left: 8px;
  vertical-align: baseline;
}
.su-venue-card__hours {
  list-style: none;
  margin: 8px 0 0;
  padding: 10px 12px;
  border-radius: 10px;
  background: var(--input-bg);
  border: 1px solid var(--glass-border);
}
.su-venue-card__hours li {
  font-family: var(--font-sans);
  font-size: 12px;
  line-height: 1.7;
  color: var(--text-secondary);
}
.su-venue-card__closed {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-top: 12px;
  padding: 10px 12px;
  border-radius: 10px;
  background: var(--an-amber-soft);
  border: 1px solid var(--an-amber);
  font-family: var(--font-sans);
  font-size: 12px;
  line-height: 1.5;
  color: var(--text-primary);
}
.su-venue-card__closed md-icon {
  flex: 0 0 auto;
  margin: 0 !important;
}
.su-venue-card__closed md-icon i {
  font-size: 15px;
  color: var(--an-amber) !important;
}
.su-venue-card__note {
  margin: 12px 0 0;
  font-family: var(--font-sans);
  font-size: 11px;
  line-height: 1.5;
  color: var(--text-secondary);
}
.su-venue-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 12px;
}

.su-venue-dupe {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: -8px 0 20px;
  padding: 12px 14px;
  border-radius: var(--an-radius);
  background: var(--an-amber-soft);
  border: 1px solid var(--an-amber);
}
.su-venue-dupe > md-icon {
  flex: 0 0 auto;
  margin: 0 !important;
}
.su-venue-dupe > md-icon i {
  color: var(--an-amber) !important;
}
.su-venue-dupe__body {
  flex: 1 1 auto;
  min-width: 0;
}
.su-venue-dupe__title {
  margin: 0 0 4px;
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 700;
  color: var(--text-primary);
}
.su-venue-dupe__text {
  margin: 0;
  font-family: var(--font-sans);
  font-size: 12px;
  line-height: 1.5;
  color: var(--text-secondary);
}
.su-venue-dupe__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 8px;
}

.su-details-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin: -8px 0 20px;
}
.su-details-actions:empty {
  display: none;
}

.su-draft-notice {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  margin-bottom: 18px;
  border-radius: var(--an-radius-sm, 8px);
  border: 1px solid var(--glass-border);
  background: var(--input-bg);
}
.su-draft-notice md-icon, .su-draft-notice i {
  font-size: 15px;
  min-width: 15px;
  min-height: 15px;
  color: var(--text-secondary) !important;
}
.su-draft-notice__text {
  flex: 1 1 auto;
  font-family: var(--font-sans);
  font-size: 12px;
  color: var(--text-secondary);
}

.su-venue-card__summary {
  margin: 0 0 12px;
  font-family: var(--font-sans);
  font-size: 12px;
  font-style: italic;
  line-height: 1.55;
  color: var(--text-secondary);
}
.su-venue-card__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0 0 12px;
}

.su-venue-tag {
  display: inline-flex;
  align-items: center;
  padding: 3px 9px;
  border-radius: var(--an-radius-pill, 999px);
  background: rgba(16, 185, 129, 0.14);
  border: 1px solid rgba(16, 185, 129, 0.3);
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 600;
  line-height: 1.4;
  color: var(--text-primary);
  white-space: nowrap;
}

.pr-layout {
  position: relative;
  z-index: 10;
  min-height: 100vh;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: 40px 24px;
  box-sizing: border-box;
}
@media (max-width: 767px) {
  .pr-layout {
    padding: 24px 16px;
  }
}

.pr-glass-card {
  position: relative;
  z-index: 1;
  border-radius: 32px;
  box-shadow: var(--glass-shadow);
  overflow: hidden;
  backdrop-filter: blur(40px);
  -webkit-backdrop-filter: blur(40px);
  background-color: var(--glass-bg);
  border: 1px solid var(--glass-border);
  padding: 40px 44px 32px;
  width: 100%;
  max-width: 480px;
  box-sizing: border-box;
  margin: auto;
  transition: background-color 0.4s ease, border 0.4s ease, box-shadow 0.4s ease;
}
@media (max-width: 767px) {
  .pr-glass-card {
    padding: 28px 20px 24px;
    border-radius: 20px;
  }
}
@media (min-width: 768px) {
  .pr-glass-card {
    padding: 32px 28px 24px;
  }
}
.pr-glass-card .wt-glass-brand-line {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1.5px;
  background: linear-gradient(90deg, rgba(226, 62, 43, 0) 0%, rgba(226, 62, 43, 0.9) 50%, rgba(226, 62, 43, 0) 100%);
  z-index: 2;
  box-shadow: 0 1px 15px rgba(226, 62, 43, 0.5);
}
.pr-glass-card .wt-form-group {
  margin: 0 0 20px 0;
  padding: 0;
  width: 100%;
  display: block;
}
.pr-glass-card .wt-form-group label {
  position: static;
  transform: none;
  color: var(--text-secondary);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.4px;
  margin-bottom: 8px;
  display: block;
  text-align: left;
  pointer-events: auto;
  transition: color 0.4s ease;
  font-family: var(--font-sans);
  text-transform: uppercase;
}
.pr-glass-card .wt-form-group .signUpInput {
  background-color: var(--input-bg) !important;
  border-radius: 12px !important;
  color: var(--input-text) !important;
  border: 1px solid var(--input-border) !important;
  box-shadow: var(--input-shadow) !important;
  padding: 0 16px !important;
  height: 48px !important;
  line-height: 48px !important;
  width: 100% !important;
  box-sizing: border-box;
  font-size: 14px !important;
  font-family: var(--font-sans) !important;
  transition: all 0.25s cubic-bezier(0.2, 0.8, 0.2, 1);
}
.pr-glass-card .wt-form-group .signUpInput:focus {
  border-color: var(--input-focus-border) !important;
  background-color: rgba(255, 255, 255, 0.06) !important;
  box-shadow: 0 0 0 3px var(--input-focus-ring) !important;
  outline: none;
}
.pr-glass-card .wt-form-group .signUpInput::placeholder {
  color: var(--input-placeholder) !important;
  transition: color 0.4s ease;
}
.pr-glass-card .wt-form-group .md-input-message-animation {
  font-size: 11px;
  color: var(--an-rose);
  margin-top: 4px;
}
.pr-glass-card .button-primary {
  width: 100%;
  margin: 4px 0 0;
  height: 48px;
  line-height: 48px;
  border-radius: 12px;
  font-size: 15px;
  transition: transform 0.2s cubic-bezier(0.2, 0.8, 0.2, 1), filter 0.2s, box-shadow 0.2s;
}
.pr-glass-card .button-primary:hover:not(:disabled) {
  filter: brightness(1.15);
  transform: translateY(-2px);
  box-shadow: 0 12px 25px rgba(226, 62, 43, 0.4);
}
.pr-glass-card .button-primary:active:not(:disabled) {
  transform: translateY(0);
}
.pr-glass-card .button-primary:disabled {
  background: var(--btn-disabled-bg) !important;
  border: var(--btn-disabled-border) !important;
  color: var(--btn-disabled-text) !important;
  box-shadow: none !important;
  cursor: not-allowed;
  transform: none !important;
  opacity: 1 !important;
}
.pr-glass-card a.button-primary {
  display: block;
  text-align: center;
  text-decoration: none;
  box-sizing: border-box;
}

.pr-card-header {
  text-align: center;
  margin-bottom: 28px;
}
.pr-card-header .pr-logo {
  height: 44px;
  width: auto;
  display: block;
  margin: 0 auto;
}

.pr-state {
  text-align: center;
  animation: prFadeIn var(--duration-slow) var(--ease-spring) both;
}
.pr-state__icon {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  margin: 0 auto 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--an-rose-soft);
}
.pr-state__icon i {
  font-size: 28px;
  color: var(--an-rose);
}
.pr-state--success .pr-state__icon {
  background: var(--an-emerald-soft);
}
.pr-state--success .pr-state__icon i {
  color: var(--an-emerald);
}
.pr-state__title {
  font-family: var(--font-sans);
  font-size: 20px;
  font-weight: 800;
  letter-spacing: -0.3px;
  color: var(--text-primary);
  margin: 0 0 8px;
}
.pr-state__body {
  font-family: var(--font-sans);
  font-size: 14px;
  line-height: 1.65;
  color: var(--text-secondary);
  margin: 0 0 8px;
}
.pr-state__hint {
  font-family: var(--font-sans);
  font-size: 12px;
  line-height: 1.6;
  color: var(--text-secondary);
  opacity: 0.85;
  margin: 18px 0 0;
}
.pr-state__actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  margin-top: 24px;
}
.pr-state__actions .button-primary {
  width: 100%;
  margin: 0;
}

.pr-state__spinner {
  width: 60px;
  height: 60px;
  margin: 0 auto 18px;
  border-radius: 50%;
  border: 3px solid var(--glass-border);
  border-top-color: var(--an-rose);
  animation: prSpin 0.9s linear infinite;
}

@keyframes prSpin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes prFadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.pr-intro {
  text-align: center;
  margin-bottom: 26px;
}
.pr-intro__title {
  font-family: var(--font-sans);
  font-size: 20px;
  font-weight: 800;
  letter-spacing: -0.3px;
  color: var(--text-primary);
  margin: 0 0 8px;
}
.pr-intro__body {
  font-family: var(--font-sans);
  font-size: 13.5px;
  line-height: 1.65;
  color: var(--text-secondary);
  margin: 0;
}

.pr-account {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  margin-bottom: 22px;
  border-radius: 12px;
  border: 1px solid var(--glass-border);
  background: var(--input-bg);
}
.pr-account i {
  font-size: 20px;
  color: var(--an-rose);
  flex-shrink: 0;
}
.pr-account__text {
  min-width: 0;
}
.pr-account__label {
  display: block;
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.4px;
  text-transform: uppercase;
  color: var(--text-secondary);
  margin-bottom: 2px;
}
.pr-account__value {
  display: block;
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 600;
  color: var(--text-primary);
  overflow-wrap: anywhere;
}

.pr-input-wrap {
  position: relative;
}
.pr-input-wrap .signUpInput {
  padding-right: 48px !important;
}

.pr-reveal {
  position: absolute;
  top: 0;
  right: 0;
  height: 48px;
  width: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  color: var(--text-secondary);
  transition: color var(--duration-fast) ease;
}
.pr-reveal i {
  font-size: 19px;
}
.pr-reveal:hover {
  color: var(--text-primary);
}
.pr-reveal:focus-visible {
  outline: 2px solid var(--input-focus-border);
  outline-offset: -2px;
  border-radius: 12px;
}

.pr-reqs {
  margin: 0 0 22px;
  padding: 14px 16px;
  border-radius: 12px;
  border: 1px solid var(--glass-border);
  background: var(--input-bg);
}
.pr-reqs__title {
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.4px;
  text-transform: uppercase;
  color: var(--text-secondary);
  margin: 0 0 10px;
}
.pr-reqs__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.pr-req {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-sans);
  font-size: 12.5px;
  line-height: 1.5;
  color: var(--text-secondary);
  margin-bottom: 6px;
  transition: color var(--duration-norm) var(--ease-default);
}
.pr-req:last-child {
  margin-bottom: 0;
}
.pr-req i {
  font-size: 15px;
  flex-shrink: 0;
  opacity: 0.55;
  transition: opacity var(--duration-norm) var(--ease-default);
}
.pr-req.is-met {
  color: var(--an-emerald);
}
.pr-req.is-met i {
  opacity: 1;
}

.pr-error {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 12px 14px;
  margin: 0 0 18px;
  border-radius: 12px;
  border: 1px solid var(--an-rose);
  background: var(--an-rose-soft);
  font-family: var(--font-sans);
  font-size: 13px;
  line-height: 1.55;
  color: var(--text-primary);
  animation: prFadeIn var(--duration-norm) var(--ease-default) both;
}
.pr-error i {
  font-size: 17px;
  color: var(--an-rose);
  flex-shrink: 0;
  margin-top: 1px;
}

.pr-glass-card .pr-footer {
  margin-top: 26px;
  padding: 0;
  text-align: center;
}
.pr-glass-card .pr-footer .wt-clean-select {
  background-color: transparent !important;
  border: 1px solid var(--glass-border) !important;
  border-radius: 10px !important;
  height: 40px !important;
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  margin: 0 0 16px 0 !important;
  padding: 0 14px !important;
  box-shadow: none !important;
  min-width: 150px !important;
}
.pr-glass-card .pr-footer .wt-clean-select .md-select-value {
  color: var(--text-secondary) !important;
}
.pr-glass-card .pr-footer .wt-clean-select .md-select-value span:not(.md-select-icon),
.pr-glass-card .pr-footer .wt-clean-select .md-select-value .md-text {
  color: var(--text-secondary) !important;
}
.pr-glass-card .pr-footer .wt-clean-select .md-select-value .md-select-icon {
  color: var(--text-secondary) !important;
}
.pr-glass-card .pr-footer p {
  font-family: var(--font-sans);
  font-size: 12.5px;
  color: var(--text-secondary);
  margin: 6px 0;
  line-height: 1.6;
}
.pr-glass-card .pr-footer a {
  color: var(--an-rose);
  font-weight: 600;
  text-decoration: none;
}
.pr-glass-card .pr-footer a:hover {
  text-decoration: underline;
}

.pr-back-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 600;
  color: var(--text-secondary) !important;
  text-decoration: none;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  transition: color var(--duration-fast) ease;
}
.pr-back-link i {
  font-size: 15px;
}
.pr-back-link:hover {
  color: var(--text-primary) !important;
  text-decoration: none;
}

.badge {
  position: relative;
  padding: 2px 5px;
  border-radius: 10px;
  display: inline-block;
}
.badge.plan_free {
  background: #eaeaea;
  color: rgba(0, 0, 0, 0.6);
}
.badge.plan_starter {
  background: #7ac142;
  color: rgba(255, 255, 255, 0.8);
}
.badge.plan_growing {
  background: #497fe4;
  color: rgba(255, 255, 255, 0.8);
}
.badge.plan_pro {
  background: #222222;
  color: rgba(255, 255, 255, 0.8);
}
.badge.plan_premium {
  background: #222222;
  color: rgba(255, 255, 255, 0.8);
}

.selected-interface {
  border-bottom: solid 2px rgb(236, 78, 54);
  color: rgb(236, 78, 54);
}

.payment-methods {
  margin: 10px;
}
.payment-methods .img-high {
  width: 30px !important;
  vertical-align: middle;
  margin-top: -2px;
}

.img-interface-high {
  width: 30px !important;
  margin-right: 28px;
  margin-left: 18px;
}

.img-interface-long {
  height: 10px !important;
  margin-right: 10px;
}

.img-interface-long-100 {
  height: 20px !important;
  margin-right: 10px;
}

.has-indicator {
  padding-left: 20px;
}

.availability {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  left: -20px;
  top: 22px;
  background: #e6b43e;
  color: rgba(0, 0, 0, 0.8);
  content: " ";
  position: relative;
  border: solid 2px rgb(241.6972477064, 215.0917431193, 152.3027522936);
}
.availability.place_public {
  background: #7ac142;
  border: solid 2px rgb(176.0478087649, 218.1952191235, 142.8047808765);
  color: rgba(255, 255, 255, 0.8);
}

.flex-layout .card-layout {
  min-height: 120px;
  width: 120px;
  cursor: pointer;
}
.flex-layout .card-layout md-card-header {
  padding-bottom: 0px;
}
.flex-layout .card-layout md-card-title {
  padding-top: 0px;
}
.flex-layout .card-layout md-card-title md-card-title-text {
  text-align: center;
}
.flex-layout .card-layout .material-icons {
  font-size: 34px;
}
.flex-layout .card-layout md-icon {
  width: 34px;
}
.flex-layout .layout-selected {
  outline: rgb(236, 78, 54) auto 1px !important;
}

.item-img-msg {
  margin-top: 10px;
  margin-bottom: 10px;
  width: 300px;
  text-align: center;
}

.twoOptionsSwitch {
  display: flex;
  align-items: center;
}
.twoOptionsSwitch md-switch {
  margin: 22px 0;
}
.twoOptionsSwitch md-switch .md-container {
  margin-left: 8px;
}
.twoOptionsSwitch md-switch .md-bar {
  background-color: rgba(236, 78, 54, 0.5) !important;
}
.twoOptionsSwitch md-switch .md-thumb {
  color: rgb(236, 78, 54) !important;
  background-color: rgb(236, 78, 54) !important;
}
.twoOptionsSwitch md-switch.md-checked .md-thumb {
  color: rgb(236, 78, 54) !important;
}

.campaignInputs md-input-container:not(.md-input-invalid) .md-errors-spacer {
  display: none !important;
}

.discounts-form md-input-container {
  padding: 0px;
  margin: 0px;
}
.discounts-form md-input-container .md-errors-spacer {
  display: none;
}

.discounts-table .view-discount {
  padding: 12px 0px 0px 14px !important;
}

.place-video {
  width: 100%;
}

/* ── Kiosk Configuration Dialog ─────────────────────────────────── */
/* Kiosk Configuration Modern Layout */
.kiosk-layout {
  display: flex;
  flex-direction: row;
  height: 100%;
  background-color: #fafafa;
}
.waitry-dark-theme .kiosk-layout {
  background-color: var(--an-bg);
}

/* Sidebar Navigation */
.kiosk-sidebar {
  box-sizing: border-box !important;
  width: 260px;
  background-color: #ffffff;
  border-right: 1px solid rgba(0, 0, 0, 0.06);
  padding: 24px 16px;
  flex-shrink: 0;
}
.waitry-dark-theme .kiosk-sidebar {
  background-color: var(--an-surface);
  border-right-color: var(--an-border);
}
.kiosk-sidebar .kiosk-nav-title {
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: rgba(0, 0, 0, 0.4);
  margin-bottom: 12px;
  padding-left: 12px;
}
.waitry-dark-theme .kiosk-sidebar .kiosk-nav-title {
  color: var(--an-text-faint);
}
.kiosk-sidebar .kiosk-nav-item {
  box-sizing: border-box !important;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  padding: 10px 12px;
  border-radius: 6px;
  margin-bottom: 4px;
  font-size: 14px;
  font-weight: 500;
  color: rgba(0, 0, 0, 0.7);
  cursor: pointer;
  transition: all 0.2s ease;
  text-align: left;
}
.waitry-dark-theme .kiosk-sidebar .kiosk-nav-item {
  color: var(--an-text-muted);
}
.kiosk-sidebar .kiosk-nav-item md-icon {
  font-size: 20px;
  margin-right: 12px;
  flex-shrink: 0;
  color: rgba(0, 0, 0, 0.5);
  transition: color 0.2s ease;
}
.waitry-dark-theme .kiosk-sidebar .kiosk-nav-item md-icon {
  color: var(--an-text-faint);
}
.kiosk-sidebar .kiosk-nav-item:hover {
  background-color: rgba(0, 0, 0, 0.03);
  color: rgba(0, 0, 0, 0.9);
}
.kiosk-sidebar .kiosk-nav-item:hover md-icon {
  color: rgba(0, 0, 0, 0.7);
}
.waitry-dark-theme .kiosk-sidebar .kiosk-nav-item:hover {
  background-color: var(--an-surface2);
  color: var(--an-text);
}
.waitry-dark-theme .kiosk-sidebar .kiosk-nav-item:hover md-icon {
  color: var(--an-text-muted);
}
.kiosk-sidebar .kiosk-nav-item.active {
  background-color: rgba(236, 78, 54, 0.08);
  color: rgb(236, 78, 54);
  font-weight: 600;
}
.kiosk-sidebar .kiosk-nav-item.active md-icon {
  color: rgb(236, 78, 54);
}

/* Sidebar mini-mode: icon-only rail when studio is open */
.kiosk-sidebar {
  transition: width 0.28s cubic-bezier(0.4, 0, 0.2, 1), padding 0.28s cubic-bezier(0.4, 0, 0.2, 1);
}
.kiosk-sidebar--mini {
  width: 56px !important;
  min-width: 56px !important;
  max-width: 56px !important;
  flex-basis: 56px !important;
  flex-shrink: 0 !important;
  padding: 16px 4px !important;
  overflow: hidden !important;
}
.kiosk-sidebar--mini .kiosk-nav-title {
  display: none;
}
.kiosk-sidebar--mini .kiosk-nav-item {
  justify-content: center !important;
  padding: 10px 0 !important;
  position: relative;
}
.kiosk-sidebar--mini .kiosk-nav-item span {
  display: none !important;
}
.kiosk-sidebar--mini .kiosk-nav-item md-icon {
  margin-right: 0 !important;
}
.kiosk-sidebar--mini .kiosk-nav-item:hover::after {
  content: attr(data-label);
  position: fixed;
  left: 62px;
  white-space: nowrap;
  font-size: 12px;
  font-weight: 500;
  color: #fff;
  background: rgba(17, 17, 20, 0.92);
  padding: 5px 10px;
  border-radius: 7px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
  pointer-events: none;
  z-index: 9999;
  backdrop-filter: blur(8px);
}

/* Studio toolbar clean title */
.kiosk-studio-title {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.9);
  letter-spacing: 0.01em;
}
.kiosk-studio-title md-icon {
  font-size: 18px;
  width: 18px;
  height: 18px;
  color: rgba(255, 255, 255, 0.65);
}

/* ─── Transition Preview Overlay ─────────────────────────────────────────── */
.kiosk-studio-transition-preview {
  position: absolute;
  inset: 0;
  overflow: hidden;
  cursor: pointer;
}
.kiosk-studio-transition-preview:hover::before {
  content: "";
  position: absolute;
  inset: 0;
  border: 2px solid rgba(236, 78, 54, 0.4);
  border-radius: 2px;
  z-index: 20;
  pointer-events: none;
}

.kiosk-studio-tp__slide {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.kiosk-studio-tp__slide img, .kiosk-studio-tp__slide video {
  width: 100%;
  height: 100%;
  display: block;
}

.kiosk-studio-tp__from {
  z-index: 1;
}

.kiosk-studio-tp__to {
  z-index: 2;
}

/* Label badge at the bottom of the preview */
.kiosk-studio-tp__label {
  position: absolute;
  bottom: 12px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  display: flex;
  align-items: center;
  gap: 5px;
  background: rgba(0, 0, 0, 0.7);
  color: #fff;
  font-size: 11px;
  font-weight: 600;
  padding: 5px 11px;
  border-radius: 20px;
  backdrop-filter: blur(6px);
  white-space: nowrap;
  letter-spacing: 0.02em;
  pointer-events: none;
}
.kiosk-studio-tp__label md-icon {
  font-size: 12px;
  width: 12px;
  height: 12px;
  color: rgba(236, 78, 54, 0.9);
}

.kiosk-content {
  flex: 1;
  overflow-y: auto;
  padding: 32px 48px 112px;
}
.kiosk-content .kiosk-section-title {
  font-size: 24px;
  font-weight: 600;
  color: #1a1a1a;
  margin: 0 0 8px 0;
}
.waitry-dark-theme .kiosk-content .kiosk-section-title {
  color: var(--an-text);
}
.kiosk-content .kiosk-section-desc {
  font-size: 14px;
  color: rgba(0, 0, 0, 0.5);
  margin: 0 0 32px 0;
}
.waitry-dark-theme .kiosk-content .kiosk-section-desc {
  color: var(--an-text-muted);
}

.kiosk-config-md-content,
.kiosk-layout ~ * md-content.flex,
md-content.flex:has(.kiosk-layout) {
  padding-bottom: 0 !important;
}

/* ── Fix: Angular Material floating-label clipping inside kiosk ──
   When md-select has a value, Angular Material transforms the label above the field.
   In flex-width containers this label gets height:0/clipped. Fix with overflow:visible. */
.kiosk-content md-input-container {
  padding-top: 20px;
  overflow: visible;
}
.kiosk-content md-input-container label {
  overflow: visible;
}
.kiosk-content md-input-container.md-input-has-value label, .kiosk-content md-input-container.md-input-focused label {
  height: auto !important;
  overflow: visible;
  white-space: nowrap;
}

/* Modern Card */
.kiosk-card {
  background-color: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  box-shadow: var(--an-shadow-xs);
  margin-bottom: var(--space-xl);
  overflow: hidden;
}
.kiosk-card .kiosk-card-header {
  padding: var(--space-xl);
  border-bottom: 1px solid var(--an-border);
  background-color: var(--an-bg-subtle);
}
.kiosk-card .kiosk-card-header h4 {
  margin: 0 0 4px 0;
  font-size: 16px;
  font-weight: 600;
  color: var(--an-text);
}
.kiosk-card .kiosk-card-header p {
  margin: 0;
  font-size: 13px;
  color: var(--an-text-muted);
}
.kiosk-card .kiosk-card-body {
  padding: var(--space-xl);
}
.kiosk-card .kiosk-card-footer {
  padding: var(--space-lg) var(--space-xl);
  background-color: var(--an-bg-subtle);
  border-top: 1px solid var(--an-border);
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

/* Form Groups */
.kiosk-form-group {
  margin-bottom: var(--space-xl);
}
.kiosk-form-group:last-child {
  margin-bottom: 0;
}
.kiosk-form-group .kiosk-label {
  font-size: 14px;
  font-weight: 500;
  color: var(--an-text);
  margin-bottom: var(--space-sm);
  display: block;
}
.kiosk-form-group .kiosk-hint {
  font-size: 12px;
  color: var(--an-text-muted);
  margin-bottom: var(--space-md);
  display: block;
}
.kiosk-form-group .kiosk-toggle-item md-switch .md-label {
  font-size: 14px;
  font-weight: 500;
  color: var(--an-text);
}
.kiosk-form-group .kiosk-toggle-desc {
  display: block;
  font-size: 12px;
  color: var(--an-text-muted);
}

/* Standalone — every usage lives outside .kiosk-form-group, this must not be nested */
.kiosk-native-input {
  width: 100%;
  height: 40px;
  padding: 0 12px;
  font-size: 14px;
  font-family: inherit;
  color: var(--an-text);
  background: var(--an-surface);
  border: 1px solid var(--an-border-strong);
  border-radius: var(--an-radius-sm);
  outline: none;
  box-sizing: border-box;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
  display: block;
}
.kiosk-native-input:focus {
  border-color: var(--an-rose);
  box-shadow: 0 0 0 3px var(--an-rose-soft);
}
.kiosk-native-input::placeholder {
  color: var(--an-placeholder);
}

/* Multilanguage field list — one compact row per venue-enabled language.
   Stacks vertically so it scales to any language count (1 or 12) without the
   overflow/wrap breakage a fixed N-column grid hits past 2-3 languages. */
.kiosk-lang-field-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.kiosk-lang-field-row {
  display: flex;
  align-items: center;
  gap: 10px;
}

.kiosk-lang-badge {
  flex: 0 0 auto;
  min-width: 34px;
  height: 28px;
  padding: 0 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.03em;
  color: var(--an-text-muted);
  background: var(--an-bg-subtle);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-xs);
  cursor: default;
}

.kiosk-lang-input.kiosk-native-input {
  flex: 1 1 auto;
  min-width: 0;
  width: auto;
}

/* Home-screen mode picker — forces an explicit, mutually-exclusive choice
   between the kiosk's built-in Destacados screen and this screen's custom
   builder, instead of leaving both configurable (only one is ever shown). */
.kiosk-mode-toggle {
  display: flex;
  gap: var(--space-md);
  margin-bottom: var(--space-xl);
}
@media (max-width: 640px) {
  .kiosk-mode-toggle {
    flex-direction: column;
  }
}

.kiosk-mode-option {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  padding: var(--space-lg);
  background: var(--an-surface);
  border: 1.5px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  text-align: left;
  cursor: pointer;
  font-family: var(--font-sans);
  transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
}
.kiosk-mode-option md-icon {
  color: var(--an-text-muted);
  margin-bottom: 4px;
}
.kiosk-mode-option:hover {
  border-color: var(--an-border-strong);
}
.kiosk-mode-option--active {
  border-color: var(--an-rose);
  background: var(--an-rose-soft);
  box-shadow: 0 0 0 3px var(--an-rose-soft);
}
.kiosk-mode-option--active md-icon {
  color: var(--an-rose);
}
.kiosk-mode-option--active .kiosk-mode-option__title {
  color: var(--an-rose);
}

.kiosk-mode-option__title {
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text);
}

.kiosk-mode-option__desc {
  font-size: 12px;
  font-weight: 400;
  color: var(--an-text-muted);
  line-height: 1.4;
}

/* Locators (Kiosk > Localizadores) — the valid-range row and the step icon
   picker. Both are deliberately small controls on a dense screen: the range is
   three short fields that read as one sentence ("A 1 – 40"), and the icon
   picker is a fixed palette rather than a dropdown so the whole choice is
   visible at once. */
.wf-locator-prefix.kiosk-native-input {
  flex: 0 0 auto;
  width: 72px;
  text-transform: uppercase;
}
.wf-locator-prefix.kiosk-native-input[disabled] {
  opacity: 0.5;
  cursor: not-allowed;
}

.wf-locator-bound.kiosk-native-input {
  flex: 0 0 auto;
  width: 96px;
}

.wf-locator-icon-picker {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: var(--space-sm) 0 var(--space-md);
}

.wf-locator-icon {
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  background: var(--an-surface);
  border: 1.5px solid var(--an-border);
  border-radius: var(--an-radius-xs);
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease;
}
.wf-locator-icon md-icon {
  color: var(--an-text-muted);
  margin: 0;
}
.wf-locator-icon:hover {
  border-color: var(--an-border-strong);
}
.wf-locator-icon--active {
  border-color: var(--an-rose);
  background: var(--an-rose-soft);
}
.wf-locator-icon--active md-icon {
  color: var(--an-rose);
}

/* The locator copy card's header carries its two actions (translate from a
   language, back to the seed) on the right, the way .pm-card__header does:
   the header is the one place a card-level action lives, never a field row. */
.kiosk-card-header--actions {
  display: flex;
  align-items: flex-start;
  gap: var(--space-md);
  flex-wrap: wrap;
}
.kiosk-card-header--actions .kiosk-card-header__text {
  flex: 1 1 240px;
  min-width: 0;
}

.kiosk-card-header__actions {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
  margin-left: auto;
}
.kiosk-card-header__actions .md-button {
  margin: 0;
}

.wf-locator-reset-btn.md-icon-button {
  width: 34px;
  height: 34px;
  min-height: 34px;
  line-height: 34px;
}
.wf-locator-reset-btn.md-icon-button md-icon {
  color: var(--an-text-muted);
}
.wf-locator-reset-btn.md-icon-button:not([disabled]):hover md-icon {
  color: var(--an-text);
}
.wf-locator-reset-btn.md-icon-button[disabled] md-icon {
  color: var(--an-text-faint);
}

.wf-locator-translate-btn.md-button {
  height: 34px;
  min-height: 34px;
  line-height: 34px;
  padding: 0 10px 0 12px;
  text-transform: none;
}
.wf-locator-translate-btn.md-button md-progress-circular {
  flex-shrink: 0;
}
.wf-locator-translate-btn.md-button .wf-locator-translate-btn__caret {
  font-size: 14px;
  width: 14px;
  height: 14px;
  opacity: 0.6;
}

/* One row per venue language inside the "translate from" menu: the code
   badge the field rows already use, then the language's name. */
md-menu-content md-menu-item .kiosk-lang-badge {
  margin-right: 8px;
  height: 22px;
  min-width: 30px;
}

/* Custom Select Group — bypasses MD floating label animation bug */
.kiosk-select-group {
  display: flex;
  flex-direction: column;
}
.kiosk-select-group .kiosk-select-label, .kiosk-select-group.kiosk-select-label {
  font-size: 12px;
  font-weight: 600;
  color: rgba(0, 0, 0, 0.5);
  text-transform: uppercase;
  letter-spacing: 0.04em;
  margin-bottom: 6px;
  display: block;
}
.waitry-dark-theme .kiosk-select-group .kiosk-select-label, .waitry-dark-theme .kiosk-select-group.kiosk-select-label {
  color: var(--an-text-muted);
}
.kiosk-select-group md-select.kiosk-select {
  border: 1.5px solid rgba(0, 0, 0, 0.15);
  border-radius: 6px;
  height: 40px;
  padding: 0 8px;
  margin: 0;
  background: white;
  transition: border-color 0.2s ease;
}
.waitry-dark-theme .kiosk-select-group md-select.kiosk-select {
  background: var(--an-surface2);
}
.kiosk-select-group md-select.kiosk-select .md-select-value {
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  height: 100% !important;
  min-height: 0 !important;
  padding: 0 8px !important;
}
.kiosk-select-group md-select.kiosk-select:focus, .kiosk-select-group md-select.kiosk-select[aria-expanded=true] {
  border-color: rgb(236, 78, 54);
}
.kiosk-select-group md-select.kiosk-select.md-no-underline .md-select-value {
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Selected-item chips under a kiosk-select-group autocomplete picker */
.kiosk-chip-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
}

.kiosk-chip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 6px 4px 10px;
  font-size: 13px;
  font-weight: 500;
  border-radius: var(--an-radius-pill, 999px);
  background: var(--an-surface2, rgba(0, 0, 0, 0.04));
  border: 1px solid var(--an-border, rgba(0, 0, 0, 0.12));
}
.kiosk-chip md-icon {
  width: 16px;
  height: 16px;
  min-width: 16px;
  font-size: 16px;
  cursor: pointer;
  opacity: 0.5;
  transition: opacity 0.15s ease;
}
.kiosk-chip md-icon:hover {
  opacity: 1;
}

/* Media Uploader */
.kiosk-media-uploader {
  width: 140px;
  height: 248px; /* 9:16 portrait ratio */
  border-radius: 10px;
  border: 2px dashed rgba(0, 0, 0, 0.15);
  background-color: rgba(0, 0, 0, 0.02);
  cursor: pointer;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.25s ease;
  flex-shrink: 0;
}
.waitry-dark-theme .kiosk-media-uploader {
  background-color: var(--an-surface2);
  border-color: var(--an-border-strong);
}
.kiosk-media-uploader:hover {
  border-color: rgba(236, 78, 54, 0.4);
  background-color: rgba(236, 78, 54, 0.02);
}
.kiosk-media-uploader:hover .kiosk-media-placeholder md-icon {
  color: rgba(236, 78, 54, 0.6);
}
.kiosk-media-uploader--small {
  width: 100px;
  height: 177px;
}
.kiosk-media-uploader .kiosk-media-placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  color: rgba(0, 0, 0, 0.4);
  font-size: 12px;
  text-align: center;
  padding: 12px;
  transition: color 0.2s ease;
}
.waitry-dark-theme .kiosk-media-uploader .kiosk-media-placeholder {
  color: var(--an-text-faint);
}
.kiosk-media-uploader .kiosk-media-placeholder md-icon {
  font-size: 32px;
  color: rgba(0, 0, 0, 0.25);
  transition: color 0.2s ease;
}
.waitry-dark-theme .kiosk-media-uploader .kiosk-media-placeholder md-icon {
  color: var(--an-text-faint);
}
.kiosk-media-uploader .kiosk-preview-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.kiosk-media-uploader .kiosk-media-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.4);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.2s ease;
  color: white;
  font-size: 13px;
  font-weight: 500;
  backdrop-filter: blur(2px);
}
.kiosk-media-uploader:hover .kiosk-media-overlay {
  opacity: 1;
}
.kiosk-media-uploader .kiosk-media-spinner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.kiosk-media-uploader .kiosk-media-progress {
  position: absolute;
  inset: 0;
  z-index: 6;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 12px;
  background: rgba(10, 11, 13, 0.6);
  backdrop-filter: blur(3px);
}
.kiosk-media-uploader .kiosk-media-progress__ringwrap {
  position: relative;
  width: 52px;
  height: 52px;
  flex-shrink: 0;
}
.kiosk-media-uploader .kiosk-media-progress__ring {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: conic-gradient(#fff 0deg, rgba(255, 255, 255, 0.25) 0deg);
  -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 4px), #000 calc(100% - 4px));
  mask: radial-gradient(farthest-side, transparent calc(100% - 4px), #000 calc(100% - 4px));
}
.kiosk-media-uploader .kiosk-media-progress__ring--indeterminate {
  background: conic-gradient(#fff 0deg 90deg, rgba(255, 255, 255, 0.25) 90deg 360deg);
  animation: kiosk-media-progress-spin 0.9s linear infinite;
}
.kiosk-media-uploader .kiosk-media-progress__pct {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
.kiosk-media-uploader .kiosk-media-progress__icon {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
}
.kiosk-media-uploader .kiosk-media-progress__icon md-icon {
  font-size: 20px;
  width: 20px;
  height: 20px;
}
.kiosk-media-uploader .kiosk-media-progress__label {
  color: rgba(255, 255, 255, 0.82);
  font-size: 11px;
  font-weight: 600;
  text-align: center;
  line-height: 1.3;
  max-width: 100%;
}

@keyframes kiosk-media-progress-spin {
  to {
    transform: rotate(360deg);
  }
}
.kiosk-error-msg {
  color: #d32f2f;
  font-size: 12px;
  margin-top: 6px;
  font-weight: 500;
}

/* Slides badge in screensaver header */
.kiosk-slides-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(236, 78, 54, 0.08);
  color: rgb(236, 78, 54);
  border-radius: 20px;
  padding: 4px 12px 4px 8px;
  font-size: 13px;
  font-weight: 600;
  flex-shrink: 0;
}
.kiosk-slides-badge md-icon {
  font-size: 16px;
  color: rgb(236, 78, 54);
}

/* Slide thumbnails strip */
.kiosk-slides-strip {
  display: flex;
  gap: 8px;
  margin-bottom: 20px;
  flex-wrap: wrap;
}

.kiosk-slide-thumb {
  width: 72px;
  height: 128px;
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.06) center/cover no-repeat;
  position: relative;
  overflow: hidden;
  flex-shrink: 0;
  border: 1.5px solid rgba(0, 0, 0, 0.08);
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding-bottom: 6px;
}
.kiosk-slide-thumb .kiosk-slide-thumb-order {
  background: rgba(0, 0, 0, 0.55);
  color: white;
  font-size: 11px;
  font-weight: 700;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 6px;
  left: 6px;
}
.kiosk-slide-thumb md-icon {
  color: white;
  font-size: 18px;
  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.6);
}
.kiosk-slide-thumb--more {
  background: rgba(0, 0, 0, 0.04);
  border: 1.5px dashed rgba(0, 0, 0, 0.15);
  color: rgba(0, 0, 0, 0.45);
  font-size: 14px;
  font-weight: 600;
  align-items: center;
  justify-content: center;
  padding-bottom: 0;
}
.waitry-dark-theme .kiosk-slide-thumb--more {
  color: var(--an-text-faint);
}

/* Empty state for slides */
.kiosk-slides-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 24px 0;
  color: rgba(0, 0, 0, 0.3);
  margin-bottom: 16px;
}
.kiosk-slides-empty md-icon {
  font-size: 40px;
  color: rgba(0, 0, 0, 0.2);
}
.kiosk-slides-empty p {
  font-size: 13px;
  margin: 0;
}

/* Kiosk config cancel button (ghost/neutral style) */
.kiosk-cancel-btn {
  border: 1px solid rgba(0, 0, 0, 0.2) !important;
  color: rgba(0, 0, 0, 0.65) !important;
  background: transparent !important;
  border-radius: 8px !important;
  height: 32px !important;
  line-height: 32px !important;
  min-height: 32px !important;
  padding: 0 16px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  margin-right: 8px !important;
}
.kiosk-cancel-btn:hover {
  background: rgba(0, 0, 0, 0.06) !important;
  border-color: rgba(0, 0, 0, 0.3) !important;
}

/* Studio open button */
.kiosk-studio-open-btn {
  margin: 0 !important;
  padding: 0 24px !important;
}

/* Screensaver slides */
.kiosk-slides-list {
  margin: 8px 0 16px;
}

.kiosk-slide-card {
  margin: 4px 0;
  box-shadow: none;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 8px;
}
.kiosk-slide-card md-card-content {
  padding: 8px 16px;
}

.kiosk-slide-order {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.06);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  font-size: 13px;
  color: rgba(0, 0, 0, 0.54);
  margin-right: 12px;
  flex-shrink: 0;
}

.kiosk-studio-section md-icon {
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  vertical-align: middle !important;
  flex-shrink: 0 !important;
  overflow: hidden !important;
  max-width: 20px !important;
  max-height: 20px !important;
}

.kiosk-content--studio {
  padding: 0 !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}

.kiosk-studio-inline-wrapper {
  margin: 0 !important;
  padding: 0 !important;
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0 !important;
  height: 100%;
}
.kiosk-studio-inline-wrapper > ng-include {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
  min-height: 0 !important;
  height: 100% !important;
}

.kiosk-studio-section {
  background: #16181c;
  display: flex;
  flex-direction: column;
  flex: 1;
  overflow: hidden;
  color: rgba(0, 0, 0, 0.85);
  min-height: 0 !important;
  height: 100%;
  border-radius: 12px 12px 0 0;
  box-shadow: 0 -4px 24px rgba(0, 0, 0, 0.12);
}
.kiosk-studio-section:fullscreen, .kiosk-studio-section:-webkit-full-screen, .kiosk-studio-section:-moz-full-screen, .kiosk-studio-section--fullscreen {
  border-radius: 0;
  min-height: 100vh !important;
  height: 100vh !important;
}

.kiosk-studio-section md-button.md-icon-button {
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.kiosk-studio-toolbar {
  height: 52px;
  min-height: 52px;
  background: #ffffff;
  border-bottom: 1px solid rgba(0, 0, 0, 0.07);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 14px;
  user-select: none;
  flex-shrink: 0;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
  z-index: 10;
  position: relative;
}
.kiosk-studio-toolbar__left, .kiosk-studio-toolbar__center, .kiosk-studio-toolbar__right {
  display: flex;
  align-items: center;
  gap: 2px;
}
.kiosk-studio-toolbar__right {
  gap: 6px;
}
.kiosk-studio-toolbar__divider {
  width: 1px;
  height: 20px;
  background: rgba(0, 0, 0, 0.08);
  margin: 0 6px;
  flex-shrink: 0;
}
.kiosk-studio-toolbar__zoom {
  font-size: 12px;
  color: rgba(0, 0, 0, 0.4);
  width: 42px;
  text-align: center;
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum";
  font-weight: 500;
  letter-spacing: -0.01em;
}
.kiosk-studio-toolbar__btn {
  color: rgba(0, 0, 0, 0.38) !important;
  width: 32px !important;
  height: 32px !important;
  min-height: 32px !important;
  border-radius: 8px !important;
  line-height: 32px !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: background 0.12s, color 0.12s !important;
}
.kiosk-studio-toolbar__btn md-icon {
  font-size: 17px !important;
  max-width: 17px !important;
  max-height: 17px !important;
  color: inherit !important;
  line-height: 1 !important;
  overflow: hidden !important;
}
.kiosk-studio-toolbar__btn:hover {
  color: rgba(0, 0, 0, 0.85) !important;
  background: rgba(0, 0, 0, 0.06) !important;
}
.kiosk-studio-toolbar__btn.active {
  color: rgb(236, 78, 54) !important;
  background: rgba(236, 78, 54, 0.1) !important;
}
.kiosk-studio-toolbar__save {
  height: 34px !important;
  min-height: 34px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  padding: 0 16px !important;
  border-radius: 8px !important;
  background: rgb(236, 78, 54) !important;
  color: #fff !important;
  box-shadow: 0 2px 8px rgba(236, 78, 54, 0.3) !important;
  transition: all 0.2s !important;
  position: relative;
}
.kiosk-studio-toolbar__save md-icon {
  font-size: 15px !important;
  max-width: 15px !important;
  max-height: 15px !important;
  color: #fff !important;
  margin: 0 !important;
  overflow: hidden !important;
}
.kiosk-studio-toolbar__save span {
  line-height: 1 !important;
}
.kiosk-studio-toolbar__save:hover {
  background: rgb(215, 62, 40) !important;
  box-shadow: 0 4px 14px rgba(236, 78, 54, 0.4) !important;
  transform: translateY(-1px) !important;
}
.kiosk-studio-toolbar__save.dirty::after {
  content: "";
  position: absolute;
  top: -3px;
  right: -3px;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #f59e0b;
  border: 2px solid #fff;
  animation: ks-dirty-pulse 1.8s ease-in-out infinite;
}
.kiosk-studio-toolbar__cancel {
  height: 34px !important;
  min-height: 34px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  font-size: 13px !important;
  padding: 0 14px !important;
  border-radius: 8px !important;
  background: transparent !important;
  color: rgba(0, 0, 0, 0.5) !important;
  border: 1px solid rgba(0, 0, 0, 0.13) !important;
  box-shadow: none !important;
  transition: all 0.15s !important;
}
.kiosk-studio-toolbar__cancel md-icon {
  font-size: 14px !important;
  max-width: 14px !important;
  max-height: 14px !important;
  color: rgba(0, 0, 0, 0.35) !important;
  margin: 0 !important;
  overflow: hidden !important;
}
.kiosk-studio-toolbar__cancel span {
  line-height: 1 !important;
}
.kiosk-studio-toolbar__cancel:hover {
  background: rgba(0, 0, 0, 0.04) !important;
  color: rgba(0, 0, 0, 0.8) !important;
  border-color: rgba(0, 0, 0, 0.22) !important;
}

@keyframes ks-dirty-pulse {
  0%, 100% {
    transform: scale(1);
    opacity: 1;
  }
  50% {
    transform: scale(1.35);
    opacity: 0.65;
  }
}
.kiosk-studio-main {
  flex: 1;
  display: flex;
  overflow: hidden;
  min-height: 0;
  position: relative;
  background: #16181c;
}

.kiosk-studio-left, .kiosk-studio-right {
  width: 252px;
  min-width: 252px;
  background: #ffffff;
  display: flex;
  flex-direction: column;
  overflow-y: auto;
  overflow-x: hidden;
  user-select: none;
  flex-shrink: 0;
  position: relative;
}

.kiosk-studio-left {
  border-right: 1px solid rgba(0, 0, 0, 0.06);
  box-shadow: 2px 0 12px rgba(0, 0, 0, 0.06);
}

.kiosk-studio-right {
  border-left: 1px solid rgba(0, 0, 0, 0.06);
  box-shadow: -2px 0 12px rgba(0, 0, 0, 0.06);
}

.kiosk-studio-panel-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 12px 10px 16px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  background: #fafafa;
  flex-shrink: 0;
}
.kiosk-studio-panel-header__title {
  font-size: 11px;
  font-weight: 700;
  color: rgba(0, 0, 0, 0.38);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  display: flex;
  align-items: center;
  gap: 6px;
}
.kiosk-studio-panel-header__title md-icon {
  color: rgba(0, 0, 0, 0.22) !important;
  font-size: 14px !important;
  max-width: 14px !important;
  max-height: 14px !important;
  line-height: 1 !important;
}
.kiosk-studio-panel-header__close {
  width: 24px !important;
  height: 24px !important;
  min-height: 24px !important;
  color: rgba(0, 0, 0, 0.22) !important;
  border-radius: 6px !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.kiosk-studio-panel-header__close md-icon {
  font-size: 12px !important;
  max-width: 12px !important;
  max-height: 12px !important;
  line-height: 1 !important;
}
.kiosk-studio-panel-header__close:hover {
  color: rgba(0, 0, 0, 0.6) !important;
  background: rgba(0, 0, 0, 0.05) !important;
}

.kiosk-studio-collapsed-toggle {
  width: 28px;
  background: #ffffff;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding-top: 18px;
  cursor: pointer;
  flex-shrink: 0;
  transition: background 0.15s;
}
.kiosk-studio-collapsed-toggle md-icon {
  color: rgba(0, 0, 0, 0.18) !important;
  font-size: 16px !important;
  max-width: 16px !important;
  max-height: 16px !important;
}
.kiosk-studio-collapsed-toggle:hover {
  background: rgba(0, 0, 0, 0.02);
}
.kiosk-studio-collapsed-toggle:hover md-icon {
  color: rgba(0, 0, 0, 0.48) !important;
}
.kiosk-studio-collapsed-toggle--left {
  border-right: 1px solid rgba(0, 0, 0, 0.06);
}
.kiosk-studio-collapsed-toggle--right {
  border-left: 1px solid rgba(0, 0, 0, 0.06);
}

.kiosk-studio-upload {
  padding: 14px 14px 8px;
}
.kiosk-studio-upload__dropzone {
  border: 2px dashed rgba(0, 0, 0, 0.1);
  border-radius: 14px;
  padding: 22px 12px;
  text-align: center;
  cursor: pointer;
  transition: all 0.22s;
  background: rgba(0, 0, 0, 0.01);
  position: relative;
  overflow: hidden;
}
.kiosk-studio-upload__dropzone::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at center, rgba(236, 78, 54, 0.08) 0%, transparent 68%);
  opacity: 0;
  transition: opacity 0.22s;
  pointer-events: none;
}
.kiosk-studio-upload__dropzone:hover {
  border-color: rgba(236, 78, 54, 0.38);
  background: rgba(236, 78, 54, 0.02);
}
.kiosk-studio-upload__dropzone:hover::before {
  opacity: 1;
}
.kiosk-studio-upload__dropzone:hover md-icon {
  color: rgba(236, 78, 54, 0.65) !important;
}
.kiosk-studio-upload__dropzone.uploading {
  border-color: rgba(236, 78, 54, 0.22);
  pointer-events: none;
}
.kiosk-studio-upload__dropzone md-icon {
  color: rgba(0, 0, 0, 0.18) !important;
  font-size: 30px !important;
  max-width: 30px !important;
  max-height: 30px !important;
  transition: color 0.22s !important;
}
.kiosk-studio-upload__text {
  font-size: 13px;
  color: rgba(0, 0, 0, 0.5);
  margin-top: 10px;
  font-weight: 500;
}
.kiosk-studio-upload__hint {
  font-size: 11px;
  color: rgba(0, 0, 0, 0.28);
  margin-top: 3px;
  letter-spacing: 0.02em;
}
.kiosk-studio-upload__spinner {
  margin: 0 auto;
}

.kiosk-studio-section-label {
  font-size: 11px;
  color: rgba(0, 0, 0, 0.38);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 700;
  margin: 0 0 6px;
  padding: 0 16px;
}

.kiosk-studio-url-section {
  padding: 0 14px 10px;
}

.kiosk-studio-url-row {
  display: flex;
  gap: 6px;
  align-items: center;
}

.kiosk-studio-url-input {
  flex: 1;
  background: #f6f7f9;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 8px;
  padding: 7px 10px;
  font-size: 13px;
  color: rgba(0, 0, 0, 0.8);
  outline: none;
  font-family: inherit;
  transition: all 0.15s;
}
.kiosk-studio-url-input:focus {
  border-color: rgb(236, 78, 54);
  background: #fff;
  box-shadow: 0 0 0 3px rgba(236, 78, 54, 0.1);
}
.kiosk-studio-url-input::placeholder {
  color: rgba(0, 0, 0, 0.54);
}

.kiosk-studio-url-add {
  width: 34px !important;
  height: 34px !important;
  min-height: 34px !important;
  border-radius: 8px !important;
  background: rgba(236, 78, 54, 0.08) !important;
  color: rgb(236, 78, 54) !important;
  margin: 0 !important;
  flex-shrink: 0;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.15s !important;
}
.kiosk-studio-url-add md-icon {
  color: inherit !important;
  font-size: 17px !important;
  max-width: 17px !important;
  max-height: 17px !important;
}
.kiosk-studio-url-add:hover {
  background: rgba(236, 78, 54, 0.15) !important;
  box-shadow: 0 2px 8px rgba(236, 78, 54, 0.18) !important;
}

.kiosk-studio-ai-section {
  padding: 0 14px 12px;
}

.kiosk-studio-ai-btn {
  width: 100%;
  padding: 9px 12px;
  border-radius: 10px;
  border: 1px solid rgba(124, 58, 237, 0.22);
  background: linear-gradient(135deg, rgba(124, 58, 237, 0.08), rgba(236, 78, 54, 0.08));
  color: #7c3aed;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-family: inherit;
  transition: all 0.16s;
  letter-spacing: 0.01em;
}
.kiosk-studio-ai-btn md-icon {
  color: inherit !important;
  margin: 0 !important;
  font-size: 16px !important;
  max-width: 16px !important;
  max-height: 16px !important;
  overflow: hidden !important;
  line-height: 16px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.kiosk-studio-ai-btn:hover {
  border-color: rgba(124, 58, 237, 0.42);
  background: linear-gradient(135deg, rgba(124, 58, 237, 0.14), rgba(236, 78, 54, 0.12));
  box-shadow: 0 2px 10px rgba(124, 58, 237, 0.16);
}
.kiosk-studio-ai-btn:disabled {
  opacity: 0.5;
  cursor: default;
  box-shadow: none;
}

.kiosk-studio-library-btn {
  width: 100%;
  padding: 9px 12px;
  border-radius: 10px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  background: rgba(0, 0, 0, 0.02);
  color: rgba(0, 0, 0, 0.7);
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-family: inherit;
  transition: all 0.16s;
  letter-spacing: 0.01em;
  margin-top: 8px;
}
.kiosk-studio-library-btn md-icon {
  color: inherit !important;
  margin: 0 !important;
  font-size: 16px !important;
  max-width: 16px !important;
  max-height: 16px !important;
  overflow: hidden !important;
  line-height: 16px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.kiosk-studio-library-btn:hover {
  border-color: rgba(0, 0, 0, 0.18);
  background: rgba(0, 0, 0, 0.04);
}
.kiosk-studio-library-btn:disabled {
  opacity: 0.5;
  cursor: default;
  box-shadow: none;
}

.kiosk-studio-ai-hint {
  font-size: 11px;
  color: rgba(0, 0, 0, 0.32);
  margin: 6px 2px 0;
  text-align: center;
  letter-spacing: 0.02em;
}

.kiosk-studio-apply-all {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin-top: 8px;
  padding: 4px 8px;
  border-radius: 6px;
  border: none;
  background: transparent;
  cursor: pointer;
  font-family: inherit;
  font-size: 11px;
  font-weight: 600;
  color: rgba(0, 0, 0, 0.38);
  letter-spacing: 0.02em;
  transition: all 0.14s;
}
.kiosk-studio-apply-all md-icon {
  color: inherit !important;
  margin: 0 !important;
  font-size: 13px !important;
  max-width: 13px !important;
  max-height: 13px !important;
  overflow: hidden !important;
  line-height: 13px !important;
}
.kiosk-studio-apply-all:hover {
  color: rgb(236, 78, 54);
  background: rgba(236, 78, 54, 0.06);
}

.kiosk-studio-drop-overlay {
  position: absolute;
  inset: 0;
  z-index: 40;
  background: rgba(236, 78, 54, 0.06);
  backdrop-filter: blur(2px);
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  border: 2px dashed rgba(236, 78, 54, 0.5);
  border-radius: 12px;
}
.kiosk-studio-drop-overlay__inner {
  text-align: center;
  padding: 26px 34px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
}
.kiosk-studio-drop-overlay__inner md-icon {
  color: rgb(236, 78, 54) !important;
  font-size: 38px !important;
  max-width: 38px !important;
  max-height: 38px !important;
}
.kiosk-studio-drop-overlay__inner p {
  margin: 10px 0 0;
  font-size: 14px;
  font-weight: 600;
  color: rgba(0, 0, 0, 0.65);
}

@keyframes ks-fx-kenburns {
  from {
    transform: scale(1) translate(0, 0);
  }
  to {
    transform: scale(1.14) translate(-2%, -1.5%);
  }
}
@keyframes ks-fx-zoom-in {
  from {
    transform: scale(1);
  }
  to {
    transform: scale(1.16);
  }
}
@keyframes ks-fx-zoom-out {
  from {
    transform: scale(1.16);
  }
  to {
    transform: scale(1);
  }
}
@keyframes ks-fx-pan-left {
  from {
    transform: scale(1.12) translateX(3%);
  }
  to {
    transform: scale(1.12) translateX(-3%);
  }
}
@keyframes ks-fx-pan-right {
  from {
    transform: scale(1.12) translateX(-3%);
  }
  to {
    transform: scale(1.12) translateX(3%);
  }
}
.kiosk-studio-canvas__media.ks-fx-kenburns, .kiosk-studio-player__slide img.ks-fx-kenburns {
  animation: ks-fx-kenburns 11s linear infinite alternate both;
}
.kiosk-studio-canvas__media.ks-fx-zoom-in, .kiosk-studio-player__slide img.ks-fx-zoom-in {
  animation: ks-fx-zoom-in 11s linear infinite alternate both;
}
.kiosk-studio-canvas__media.ks-fx-zoom-out, .kiosk-studio-player__slide img.ks-fx-zoom-out {
  animation: ks-fx-zoom-out 11s linear infinite alternate both;
}
.kiosk-studio-canvas__media.ks-fx-pan-left, .kiosk-studio-player__slide img.ks-fx-pan-left {
  animation: ks-fx-pan-left 11s linear infinite alternate both;
}
.kiosk-studio-canvas__media.ks-fx-pan-right, .kiosk-studio-player__slide img.ks-fx-pan-right {
  animation: ks-fx-pan-right 11s linear infinite alternate both;
}

.kiosk-studio-canvas__bezel .ks-overlay,
.kiosk-studio-player__slide .ks-overlay {
  position: absolute;
  left: 0;
  right: 0;
  z-index: 3;
  padding: 6em 3.4em;
  pointer-events: none;
  text-align: center;
}
.kiosk-studio-canvas__bezel .ks-overlay.ks-overlay--top,
.kiosk-studio-player__slide .ks-overlay.ks-overlay--top {
  top: 0;
}
.kiosk-studio-canvas__bezel .ks-overlay.ks-overlay--center,
.kiosk-studio-player__slide .ks-overlay.ks-overlay--center {
  top: 50%;
  transform: translateY(-50%);
}
.kiosk-studio-canvas__bezel .ks-overlay.ks-overlay--bottom,
.kiosk-studio-player__slide .ks-overlay.ks-overlay--bottom {
  bottom: 0;
}
.kiosk-studio-canvas__bezel .ks-overlay .ks-overlay__title,
.kiosk-studio-player__slide .ks-overlay .ks-overlay__title {
  margin: 0;
  font-size: 5.6em;
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.01em;
}
.kiosk-studio-canvas__bezel .ks-overlay .ks-overlay__subtitle,
.kiosk-studio-player__slide .ks-overlay .ks-overlay__subtitle {
  margin: 1.2em 0 0;
  font-size: 2.9em;
  font-weight: 500;
  line-height: 1.35;
  opacity: 0.92;
}
.kiosk-studio-canvas__bezel .ks-overlay.ks-overlay--dark,
.kiosk-studio-player__slide .ks-overlay.ks-overlay--dark {
  color: #fff;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.55);
}
.kiosk-studio-canvas__bezel .ks-overlay.ks-overlay--dark.ks-overlay--bottom,
.kiosk-studio-player__slide .ks-overlay.ks-overlay--dark.ks-overlay--bottom {
  background: linear-gradient(to top, rgba(0, 0, 0, 0.62), transparent);
  padding-top: 14em;
}
.kiosk-studio-canvas__bezel .ks-overlay.ks-overlay--dark.ks-overlay--top,
.kiosk-studio-player__slide .ks-overlay.ks-overlay--dark.ks-overlay--top {
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.62), transparent);
  padding-bottom: 14em;
}
.kiosk-studio-canvas__bezel .ks-overlay.ks-overlay--light,
.kiosk-studio-player__slide .ks-overlay.ks-overlay--light {
  color: #16181c;
  text-shadow: 0 2px 12px rgba(255, 255, 255, 0.55);
}
.kiosk-studio-canvas__bezel .ks-overlay.ks-overlay--light.ks-overlay--bottom,
.kiosk-studio-player__slide .ks-overlay.ks-overlay--light.ks-overlay--bottom {
  background: linear-gradient(to top, rgba(255, 255, 255, 0.72), transparent);
  padding-top: 14em;
}
.kiosk-studio-canvas__bezel .ks-overlay.ks-overlay--light.ks-overlay--top,
.kiosk-studio-player__slide .ks-overlay.ks-overlay--light.ks-overlay--top {
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0.72), transparent);
  padding-bottom: 14em;
}
.kiosk-studio-canvas__bezel .ks-overlay.ks-overlay--accent,
.kiosk-studio-player__slide .ks-overlay.ks-overlay--accent {
  color: #fff;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.35);
}
.kiosk-studio-canvas__bezel .ks-overlay.ks-overlay--accent .ks-overlay__title,
.kiosk-studio-player__slide .ks-overlay.ks-overlay--accent .ks-overlay__title {
  color: #ffcf5c;
}
.kiosk-studio-canvas__bezel .ks-overlay.ks-overlay--accent.ks-overlay--bottom,
.kiosk-studio-player__slide .ks-overlay.ks-overlay--accent.ks-overlay--bottom {
  background: linear-gradient(to top, rgba(0, 0, 0, 0.55), transparent);
  padding-top: 14em;
}
.kiosk-studio-canvas__bezel .ks-overlay.ks-overlay--accent.ks-overlay--top,
.kiosk-studio-player__slide .ks-overlay.ks-overlay--accent.ks-overlay--top {
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.55), transparent);
  padding-bottom: 14em;
}

.kiosk-studio-ghost-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
  padding: 8px 10px;
  border-radius: 8px;
  border: 1px dashed rgba(0, 0, 0, 0.16);
  background: transparent;
  color: rgba(0, 0, 0, 0.45);
  font-family: inherit;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.14s;
}
.kiosk-studio-ghost-btn md-icon {
  color: inherit !important;
  margin: 0 !important;
  font-size: 14px !important;
  max-width: 14px !important;
  max-height: 14px !important;
  overflow: hidden !important;
  line-height: 14px !important;
}
.kiosk-studio-ghost-btn:hover {
  border-color: rgba(236, 78, 54, 0.4);
  color: rgb(236, 78, 54);
  background: rgba(236, 78, 54, 0.04);
}

.kiosk-studio-text-input {
  width: 100%;
  box-sizing: border-box;
  background: #f6f7f9;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 8px;
  padding: 7px 10px;
  font-size: 13px;
  color: rgba(0, 0, 0, 0.8);
  outline: none;
  font-family: inherit;
  transition: all 0.15s;
  margin-bottom: 6px;
}
.kiosk-studio-text-input:focus {
  border-color: rgb(236, 78, 54);
  background: #fff;
  box-shadow: 0 0 0 3px rgba(236, 78, 54, 0.1);
}
.kiosk-studio-text-input::placeholder {
  color: rgba(0, 0, 0, 0.54);
}

.kiosk-studio-time-row {
  display: flex;
  align-items: center;
  gap: 8px;
}
.kiosk-studio-time-row .kiosk-studio-text-input {
  flex: 1;
  margin-bottom: 0;
}
.kiosk-studio-time-row__sep {
  color: rgba(0, 0, 0, 0.3);
  font-size: 13px;
}
.kiosk-studio-time-row {
  margin-bottom: 8px;
}

.kiosk-studio-chip-row {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
  margin: 6px 0;
}
.kiosk-studio-chip-row--days {
  gap: 4px;
}

.kiosk-studio-chip {
  padding: 5px 10px;
  border-radius: 999px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  background: #f6f7f9;
  color: rgba(0, 0, 0, 0.5);
  font-family: inherit;
  font-size: 11px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.13s;
}
.kiosk-studio-chip:hover {
  color: rgba(0, 0, 0, 0.75);
  background: rgba(0, 0, 0, 0.05);
}
.kiosk-studio-chip.active {
  background: rgba(236, 78, 54, 0.1);
  color: rgb(236, 78, 54);
  border-color: rgba(236, 78, 54, 0.3);
}
.kiosk-studio-chip--day {
  padding: 5px 8px;
  min-width: 32px;
  text-align: center;
}

.kiosk-studio-apply-all--danger:hover {
  color: #e53935;
  background: rgba(229, 57, 53, 0.07);
}

.kiosk-studio-props__hint {
  font-size: 11px;
  color: rgba(0, 0, 0, 0.35);
  margin: 0 0 8px;
  line-height: 1.45;
}

.kiosk-studio-timeline__flags {
  position: absolute;
  bottom: 4px;
  right: 6px;
  display: flex;
  gap: 3px;
  z-index: 3;
}
.kiosk-studio-timeline__flags md-icon {
  color: rgba(255, 255, 255, 0.85) !important;
  background: rgba(0, 0, 0, 0.45);
  border-radius: 4px;
  padding: 2px;
  font-size: 10px !important;
  max-width: 14px !important;
  max-height: 14px !important;
  overflow: hidden !important;
  line-height: 10px !important;
}

.kiosk-studio-breadcrumbs {
  display: flex;
  align-items: center;
  gap: 3px;
  font-size: 13px;
  color: rgba(0, 0, 0, 0.4);
  font-weight: 500;
}
.kiosk-studio-breadcrumbs md-icon {
  margin: 0 !important;
  font-size: 14px !important;
  max-width: 14px !important;
  max-height: 14px !important;
  overflow: hidden !important;
  color: rgba(0, 0, 0, 0.22) !important;
}
.kiosk-studio-breadcrumbs span {
  display: inline-flex;
  align-items: center;
  line-height: 1.2;
}

.kiosk-studio-type-row {
  display: flex;
  gap: 6px;
  padding: 0 14px 12px;
}

.kiosk-studio-type-btn {
  flex: 1;
  padding: 7px 8px;
  border-radius: 8px;
  border: 1px solid rgba(0, 0, 0, 0.08);
  background: #f6f7f9;
  color: rgba(0, 0, 0, 0.45);
  font-size: 12px;
  font-weight: 500;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 6px;
  justify-content: center;
  font-family: inherit;
  transition: all 0.14s;
  letter-spacing: 0.01em;
}
.kiosk-studio-type-btn md-icon {
  color: inherit !important;
  margin: 0 !important;
  font-size: 14px !important;
  max-width: 14px !important;
  max-height: 14px !important;
  overflow: hidden !important;
  line-height: 14px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.kiosk-studio-type-btn:hover {
  color: rgba(0, 0, 0, 0.78);
  background: rgba(0, 0, 0, 0.05);
}
.kiosk-studio-type-btn.active {
  background: rgba(236, 78, 54, 0.08);
  color: rgb(236, 78, 54);
  border-color: rgba(236, 78, 54, 0.2);
  font-weight: 600;
}

.kiosk-studio-canvas-area {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  min-width: 0;
  background: #16181c;
  background-image: radial-gradient(rgba(255, 255, 255, 0.025) 1px, transparent 1px);
  background-size: 22px 22px;
}

.kiosk-studio-canvas {
  position: relative;
  transition: width 0.22s cubic-bezier(0.4, 0, 0.2, 1), height 0.22s cubic-bezier(0.4, 0, 0.2, 1);
}
.kiosk-studio-canvas__bezel {
  position: absolute;
  inset: 0;
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.07);
  background: #111;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.5), 0 8px 24px rgba(0, 0, 0, 0.4), 0 40px 80px rgba(0, 0, 0, 0.55), inset 0 1px 0 rgba(255, 255, 255, 0.04);
}
.kiosk-studio-canvas__grid {
  position: absolute;
  inset: 0;
  z-index: 10;
  pointer-events: none;
  opacity: 0.22;
  background-image: linear-gradient(to right, rgba(255, 255, 255, 0.22) 1px, transparent 1px), linear-gradient(to bottom, rgba(255, 255, 255, 0.22) 1px, transparent 1px);
}
.kiosk-studio-canvas__content {
  position: absolute;
  inset: 0;
}
.kiosk-studio-canvas__media {
  width: 100%;
  height: 100%;
  display: block;
}
.kiosk-studio-canvas__empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  color: rgba(255, 255, 255, 0.18);
  font-size: 14px;
  gap: 14px;
  background: linear-gradient(135deg, #1d1f24 0%, #111 100%);
  text-align: center;
  padding: 24px;
  box-sizing: border-box;
}
.kiosk-studio-canvas__empty-icon {
  font-size: 60px !important;
  width: 60px !important;
  height: 60px !important;
  color: rgba(255, 255, 255, 0.07) !important;
  margin-bottom: 4px;
}
.kiosk-studio-canvas__empty-hint {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.1);
  margin-top: 2px;
  line-height: 1.6;
  max-width: 140px;
}
.kiosk-studio-canvas__label {
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 11px;
  color: rgba(255, 255, 255, 0.3);
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.04em;
  background: rgba(255, 255, 255, 0.05);
  padding: 3px 10px;
  border-radius: 20px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(4px);
  user-select: none;
}

.kiosk-studio-canvas-actions {
  position: absolute;
  bottom: 44px;
  left: 50%;
  transform: translateX(-50%);
}

.kiosk-studio-play-btn {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 10px 22px;
  border-radius: 100px;
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.9);
  font-size: 13px;
  font-weight: 500;
  border: 1px solid rgba(255, 255, 255, 0.12);
  cursor: pointer;
  backdrop-filter: blur(12px);
  font-family: inherit;
  letter-spacing: 0.02em;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.08);
  transition: all 0.2s;
}
.kiosk-studio-play-btn md-icon {
  color: #fff !important;
  font-size: 16px !important;
  max-width: 16px !important;
  max-height: 16px !important;
}
.kiosk-studio-play-btn:hover {
  background: rgba(255, 255, 255, 0.18);
  border-color: rgba(255, 255, 255, 0.22);
  box-shadow: 0 6px 28px rgba(0, 0, 0, 0.45), inset 0 1px 0 rgba(255, 255, 255, 0.12);
  transform: translateY(-1px);
}
.kiosk-studio-play-btn:active {
  transform: translateY(0);
}

.kiosk-studio-props-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  color: rgba(0, 0, 0, 0.28);
  font-size: 13px;
  gap: 10px;
  padding: 24px;
  text-align: center;
}
.kiosk-studio-props-empty__icon {
  font-size: 38px !important;
  width: 38px !important;
  height: 38px !important;
  color: rgba(0, 0, 0, 0.07) !important;
  margin-bottom: 4px;
}

.kiosk-studio-props {
  overflow-y: auto;
  flex: 1;
}

.kiosk-studio-props__section {
  padding: 14px 16px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}
.kiosk-studio-props__section:last-child {
  border-bottom: none;
}

.kiosk-studio-props__label {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  font-weight: 700;
  color: rgba(0, 0, 0, 0.33);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin-bottom: 10px;
}
.kiosk-studio-props__label md-icon {
  color: rgba(0, 0, 0, 0.22) !important;
  font-size: 13px !important;
  max-width: 13px !important;
  max-height: 13px !important;
  line-height: 1 !important;
}

.kiosk-studio-props__slide-info {
  display: flex;
  align-items: center;
  gap: 10px;
}

.kiosk-studio-props__slide-icon {
  width: 36px;
  height: 36px;
  border-radius: 10px;
  background: rgba(0, 0, 0, 0.05);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.kiosk-studio-props__slide-icon md-icon {
  color: rgba(0, 0, 0, 0.28) !important;
  font-size: 18px !important;
  max-width: 18px !important;
  max-height: 18px !important;
}
.kiosk-studio-props__slide-icon.video {
  background: rgba(139, 92, 246, 0.08);
}
.kiosk-studio-props__slide-icon.video md-icon {
  color: rgba(139, 92, 246, 0.6) !important;
}

.kiosk-studio-props__slide-meta {
  min-width: 0;
  flex: 1;
}

.kiosk-studio-props__slide-name {
  font-size: 12px;
  font-weight: 500;
  color: rgba(0, 0, 0, 0.68);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  margin-bottom: 2px;
}

.kiosk-studio-props__slide-type {
  font-size: 11px;
  color: rgba(0, 0, 0, 0.38);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-weight: 600;
}

.kiosk-studio-props__duration-row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 2px;
}

.kiosk-studio-range {
  flex: 1 !important;
  height: 20px !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  border-radius: 2px !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  outline: none !important;
  box-shadow: none !important;
  cursor: pointer !important;
  background: transparent !important;
}
.kiosk-studio-range::-webkit-slider-thumb {
  appearance: none !important;
  -webkit-appearance: none !important;
  width: 18px !important;
  height: 18px !important;
  border-radius: 50% !important;
  background: rgb(236, 78, 54) !important;
  border: 2.5px solid #fff !important;
  box-shadow: 0 2px 8px rgba(236, 78, 54, 0.4) !important;
  cursor: pointer !important;
  margin-top: -7px !important;
  transition: transform 0.12s, box-shadow 0.12s !important;
}
.kiosk-studio-range::-webkit-slider-thumb:hover {
  transform: scale(1.18);
  box-shadow: 0 3px 12px rgba(236, 78, 54, 0.55) !important;
}
.kiosk-studio-range::-moz-range-thumb {
  width: 14px !important;
  height: 14px !important;
  border-radius: 50% !important;
  background: rgb(236, 78, 54) !important;
  border: 2px solid #fff !important;
  box-shadow: 0 2px 8px rgba(236, 78, 54, 0.4) !important;
  cursor: pointer !important;
}
.kiosk-studio-range::-webkit-slider-runnable-track {
  height: 4px !important;
  border-radius: 2px !important;
  background: rgba(0, 0, 0, 0.08) !important;
}
.kiosk-studio-range::-moz-range-track {
  height: 4px !important;
  border-radius: 2px !important;
  background: rgba(0, 0, 0, 0.08) !important;
}

.kiosk-studio-props__duration-input {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
}
.kiosk-studio-props__duration-input span {
  font-size: 12px;
  color: rgba(0, 0, 0, 0.32);
  flex-shrink: 0;
}

.kiosk-studio-number-input {
  width: 52px !important;
  height: 34px !important;
  line-height: 34px;
  text-align: center;
  font-size: 14px;
  font-weight: 500;
  color: rgba(0, 0, 0, 0.75);
  background: #f6f7f9 !important;
  border: 1px solid rgba(0, 0, 0, 0.1) !important;
  border-radius: 8px !important;
  padding: 0 4px !important;
  outline: none !important;
  box-shadow: none !important;
  flex-shrink: 0 !important;
  -moz-appearance: textfield;
  transition: border-color 0.15s, box-shadow 0.15s, background 0.15s !important;
}
.kiosk-studio-number-input:focus {
  border-color: rgb(236, 78, 54) !important;
  box-shadow: 0 0 0 3px rgba(236, 78, 54, 0.1) !important;
  background: #fff !important;
}
.kiosk-studio-number-input::-webkit-outer-spin-button, .kiosk-studio-number-input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.kiosk-studio-props__presets {
  display: flex;
  gap: 4px;
  margin-top: 10px;
}

.kiosk-studio-preset-btn {
  flex: 1;
  padding: 5px 2px;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  background: #f6f7f9;
  color: rgba(0, 0, 0, 0.38);
  border: 1px solid rgba(0, 0, 0, 0.07);
  font-family: inherit;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: all 0.12s;
  letter-spacing: -0.01em;
}
.kiosk-studio-preset-btn:hover {
  color: rgba(0, 0, 0, 0.78);
  background: rgba(0, 0, 0, 0.06);
}
.kiosk-studio-preset-btn.active {
  background: rgba(236, 78, 54, 0.1);
  color: rgb(236, 78, 54);
  border-color: rgba(236, 78, 54, 0.22);
  font-weight: 700;
}

.kiosk-studio-transition-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px;
}

.kiosk-studio-transition-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  padding: 8px 4px;
  border-radius: 8px;
  border: 1px solid rgba(0, 0, 0, 0.08);
  cursor: pointer;
  font-family: inherit;
  background: #f6f7f9;
  color: rgba(0, 0, 0, 0.48);
  transition: all 0.14s;
}
.kiosk-studio-transition-btn:hover {
  color: rgba(0, 0, 0, 0.85);
  background: #fff;
  border-color: rgba(0, 0, 0, 0.14);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}
.kiosk-studio-transition-btn.active {
  background: rgba(236, 78, 54, 0.08);
  color: rgb(236, 78, 54);
  border-color: rgba(236, 78, 54, 0.25);
  box-shadow: 0 0 0 2px rgba(236, 78, 54, 0.1);
}
.kiosk-studio-transition-btn__icon {
  font-size: 17px;
  width: 26px;
  height: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  border-radius: 6px;
  background: rgba(0, 0, 0, 0.04);
  transition: all 0.2s;
}
.kiosk-studio-transition-btn__label {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.01em;
}
.kiosk-studio-transition-btn:hover .kiosk-studio-transition-btn__icon {
  animation-duration: 0.85s;
  animation-iteration-count: infinite;
  animation-timing-function: ease-in-out;
}
.kiosk-studio-transition-btn[data-transition=fade]:hover .kiosk-studio-transition-btn__icon {
  animation-name: ks-preview-fade;
}
.kiosk-studio-transition-btn[data-transition=slide-left]:hover .kiosk-studio-transition-btn__icon {
  animation-name: ks-preview-slide-left;
}
.kiosk-studio-transition-btn[data-transition=slide-right]:hover .kiosk-studio-transition-btn__icon {
  animation-name: ks-preview-slide-right;
}
.kiosk-studio-transition-btn[data-transition=slide-up]:hover .kiosk-studio-transition-btn__icon {
  animation-name: ks-preview-slide-up;
}
.kiosk-studio-transition-btn[data-transition=slide-down]:hover .kiosk-studio-transition-btn__icon {
  animation-name: ks-preview-slide-down;
}
.kiosk-studio-transition-btn[data-transition=zoom-in]:hover .kiosk-studio-transition-btn__icon {
  animation-name: ks-preview-zoom-in;
}
.kiosk-studio-transition-btn[data-transition=zoom-out]:hover .kiosk-studio-transition-btn__icon {
  animation-name: ks-preview-zoom-out;
}
.kiosk-studio-transition-btn[data-transition=flip]:hover .kiosk-studio-transition-btn__icon {
  animation-name: ks-preview-flip;
}
.kiosk-studio-transition-btn[data-transition=dissolve]:hover .kiosk-studio-transition-btn__icon {
  animation-name: ks-preview-dissolve;
}

@keyframes ks-preview-fade {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.12;
  }
}
@keyframes ks-preview-slide-left {
  0% {
    transform: translateX(0);
    opacity: 1;
  }
  49% {
    transform: translateX(-10px);
    opacity: 0;
  }
  50% {
    transform: translateX(10px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes ks-preview-slide-right {
  0% {
    transform: translateX(0);
    opacity: 1;
  }
  49% {
    transform: translateX(10px);
    opacity: 0;
  }
  50% {
    transform: translateX(-10px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes ks-preview-slide-up {
  0% {
    transform: translateY(0);
    opacity: 1;
  }
  49% {
    transform: translateY(-10px);
    opacity: 0;
  }
  50% {
    transform: translateY(10px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes ks-preview-slide-down {
  0% {
    transform: translateY(0);
    opacity: 1;
  }
  49% {
    transform: translateY(10px);
    opacity: 0;
  }
  50% {
    transform: translateY(-10px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes ks-preview-zoom-in {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.55);
  }
}
@keyframes ks-preview-zoom-out {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(0.5);
  }
}
@keyframes ks-preview-flip {
  0% {
    transform: rotateY(0);
  }
  100% {
    transform: rotateY(360deg);
  }
}
@keyframes ks-preview-dissolve {
  0%, 100% {
    filter: blur(0) opacity(1);
  }
  50% {
    filter: blur(3px) opacity(0.18);
  }
}
.kiosk-studio-fit-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px;
}

.kiosk-studio-fit-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  padding: 10px 6px;
  border-radius: 8px;
  border: 1px solid rgba(0, 0, 0, 0.08);
  cursor: pointer;
  font-family: inherit;
  background: #f6f7f9;
  color: rgba(0, 0, 0, 0.48);
  text-align: center;
  transition: all 0.14s;
}
.kiosk-studio-fit-btn:hover {
  color: rgba(0, 0, 0, 0.85);
  background: #fff;
  border-color: rgba(0, 0, 0, 0.14);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}
.kiosk-studio-fit-btn.active {
  background: rgba(236, 78, 54, 0.08);
  color: rgb(236, 78, 54);
  border-color: rgba(236, 78, 54, 0.25);
  box-shadow: 0 0 0 2px rgba(236, 78, 54, 0.1);
}
.kiosk-studio-fit-btn__visual {
  width: 28px;
  height: 20px;
  border: 1.5px solid currentColor;
  border-radius: 3px;
  position: relative;
  overflow: hidden;
  flex-shrink: 0;
  opacity: 0.6;
}
.kiosk-studio-fit-btn__visual::after {
  content: "";
  position: absolute;
  background: currentColor;
  border-radius: 1px;
  opacity: 0.45;
}
.kiosk-studio-fit-btn__label {
  font-size: 11px;
  font-weight: 600;
}
.kiosk-studio-fit-btn__desc {
  font-size: 10px;
  opacity: 0.52;
}

.kiosk-studio-fit-btn[data-fit=cover] .kiosk-studio-fit-btn__visual::after {
  inset: -3px;
}

.kiosk-studio-fit-btn[data-fit=contain] .kiosk-studio-fit-btn__visual::after {
  inset: 4px;
}

.kiosk-studio-fit-btn[data-fit=fill] .kiosk-studio-fit-btn__visual::after {
  inset: 0;
}

.kiosk-studio-fit-btn[data-fit=scale-down] .kiosk-studio-fit-btn__visual::after {
  inset: 5px 7px;
}

.kiosk-studio-timeline {
  height: 160px;
  min-height: 160px;
  background: #ffffff;
  border-top: 1px solid rgba(0, 0, 0, 0.07);
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  user-select: none;
}
.kiosk-studio-timeline__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 5px 14px 5px 16px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  background: #fafafa;
  flex-shrink: 0;
}
.kiosk-studio-timeline__label {
  font-size: 11px;
  font-weight: 700;
  color: rgba(0, 0, 0, 0.33);
  text-transform: uppercase;
  letter-spacing: 0.08em;
}
.kiosk-studio-timeline__stats {
  font-size: 12px;
  color: rgba(0, 0, 0, 0.32);
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum";
}
.kiosk-studio-timeline__duration-track {
  height: 2px;
  background: rgba(0, 0, 0, 0.04);
  flex-shrink: 0;
  position: relative;
}
.kiosk-studio-timeline__duration-fill {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  background: linear-gradient(90deg, rgba(236, 78, 54, 0.35) 0%, rgba(236, 78, 54, 0.75) 100%);
  transition: width 0.35s ease;
  border-radius: 0 1px 1px 0;
}
.kiosk-studio-timeline__strip {
  flex: 1;
  display: flex;
  align-items: center;
  gap: 0;
  padding: 0 14px;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: thin;
  scrollbar-color: rgba(0, 0, 0, 0.1) transparent;
  position: relative;
}
.kiosk-studio-timeline__strip::-webkit-scrollbar {
  height: 3px;
}
.kiosk-studio-timeline__strip::-webkit-scrollbar-track {
  background: transparent;
}
.kiosk-studio-timeline__strip::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.1);
  border-radius: 2px;
}
.kiosk-studio-timeline__card {
  position: relative;
  min-width: 72px;
  height: 108px;
  border-radius: 9px;
  border: 1.5px solid rgba(0, 0, 0, 0.08);
  background: #f6f7f9;
  cursor: pointer;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  transition: border-color 0.15s, box-shadow 0.15s, transform 0.15s;
  margin: 6px 6px 6px 0;
}
.kiosk-studio-timeline__card:hover {
  border-color: rgba(0, 0, 0, 0.18);
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.1);
  transform: translateY(-2px);
}
.kiosk-studio-timeline__card:hover .kiosk-studio-timeline__delete {
  opacity: 1;
}
.kiosk-studio-timeline__card.selected {
  border-color: rgb(236, 78, 54);
  background: rgba(236, 78, 54, 0.02);
  box-shadow: 0 0 0 2px rgba(236, 78, 54, 0.15), 0 4px 14px rgba(236, 78, 54, 0.08);
}
.kiosk-studio-timeline__card.drop-target {
  box-shadow: 0 0 0 2px rgba(236, 78, 54, 0.55);
  transform: translateY(-3px);
}
.kiosk-studio-timeline__card.playing {
  border-color: rgba(236, 78, 54, 0.55);
  box-shadow: 0 0 0 2px rgba(236, 78, 54, 0.2), 0 0 18px rgba(236, 78, 54, 0.18);
}
.kiosk-studio-timeline__thumb {
  position: absolute;
  inset: 0;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #000;
  border-radius: 9px;
}
.kiosk-studio-timeline__thumb img, .kiosk-studio-timeline__thumb video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
  display: block;
}
.kiosk-studio-timeline__placeholder-icon {
  font-size: 20px !important;
  max-width: 20px !important;
  max-height: 20px !important;
  color: rgba(0, 0, 0, 0.14) !important;
}
.kiosk-studio-timeline__info {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 4px 6px 5px;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.72) 15%, transparent);
  border-radius: 0 0 9px 9px;
}
.kiosk-studio-timeline__name {
  font-size: 10px;
  color: rgba(255, 255, 255, 0.92);
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 55px;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.4);
}
.kiosk-studio-timeline__dur {
  font-size: 10px;
  color: rgba(255, 255, 255, 0.85);
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum";
  display: flex;
  align-items: center;
  gap: 2px;
  flex-shrink: 0;
  background: rgba(255, 255, 255, 0.18);
  padding: 1px 4px;
  border-radius: 3px;
}
.kiosk-studio-timeline__dur md-icon {
  color: rgba(255, 255, 255, 0.85) !important;
  font-size: 11px !important;
  max-width: 11px !important;
  max-height: 11px !important;
}
.kiosk-studio-timeline__badge {
  position: absolute;
  top: -7px;
  left: -7px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  font-weight: 700;
  background: #e8e9eb;
  border: 2px solid #fff;
  color: rgba(0, 0, 0, 0.38);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
  transition: all 0.14s;
}
.kiosk-studio-timeline__badge.selected {
  background: rgb(236, 78, 54);
  color: #fff;
  border-color: rgba(236, 78, 54, 0.3);
  box-shadow: 0 2px 8px rgba(236, 78, 54, 0.3);
}
.kiosk-studio-timeline__delete {
  position: absolute;
  top: -7px;
  right: -7px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: rgba(239, 68, 68, 0.88);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.14s, transform 0.14s;
  cursor: pointer;
  box-shadow: 0 2px 5px rgba(239, 68, 68, 0.32);
}
.kiosk-studio-timeline__delete:hover {
  background: rgb(239, 68, 68);
  transform: scale(1.12);
}
.kiosk-studio-timeline__delete md-icon {
  font-size: 10px !important;
  max-width: 10px !important;
  max-height: 10px !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff !important;
}
.kiosk-studio-timeline__progress {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 3px;
  border-radius: 0 0 7px 7px;
  overflow: hidden;
  background: rgba(236, 78, 54, 0.12);
}
.kiosk-studio-timeline__progress-fill {
  height: 100%;
  background: rgb(236, 78, 54);
  transition: width 0.1s linear;
}
.kiosk-studio-timeline__transition {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 36px;
  height: 108px;
  cursor: pointer;
  flex-shrink: 0;
  margin-top: 6px;
}
.kiosk-studio-timeline__transition-icon {
  z-index: 2;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #fff;
  border: 1.5px solid rgba(0, 0, 0, 0.1);
  color: rgba(0, 0, 0, 0.38);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  transition: all 0.14s;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.08);
}
.kiosk-studio-timeline__transition-icon:hover {
  border-color: rgba(0, 0, 0, 0.22);
  color: rgba(0, 0, 0, 0.7);
  transform: scale(1.12);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.kiosk-studio-timeline__transition-line {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  height: 1px;
  background: rgba(0, 0, 0, 0.07);
  z-index: 1;
}
.kiosk-studio-timeline__transition.selected .kiosk-studio-timeline__transition-icon {
  background: rgb(236, 78, 54);
  color: #fff;
  border-color: rgb(236, 78, 54);
  box-shadow: 0 0 0 3px rgba(236, 78, 54, 0.15), 0 2px 8px rgba(236, 78, 54, 0.28);
}
.kiosk-studio-timeline__transition.selected .kiosk-studio-timeline__transition-line {
  background: rgba(236, 78, 54, 0.32);
  height: 2px;
  top: calc(50% - 0.5px);
}
.kiosk-studio-timeline__transition.loop-transition .kiosk-studio-timeline__transition-icon {
  border-color: rgba(76, 175, 80, 0.35);
  color: rgba(56, 142, 60, 0.75);
}
.kiosk-studio-timeline__transition.loop-transition .kiosk-studio-timeline__transition-line {
  background: rgba(76, 175, 80, 0.18);
  height: 1.5px;
}
.kiosk-studio-timeline__transition.loop-transition:hover .kiosk-studio-timeline__transition-icon {
  border-color: rgba(76, 175, 80, 0.7);
  color: rgb(56, 142, 60);
}
.kiosk-studio-timeline__transition.loop-transition.selected .kiosk-studio-timeline__transition-icon {
  background: rgba(56, 142, 60, 0.9);
  border-color: rgba(56, 142, 60, 0.9);
  color: #fff;
  box-shadow: 0 0 0 3px rgba(76, 175, 80, 0.18), 0 2px 8px rgba(76, 175, 80, 0.28);
}
.kiosk-studio-timeline__transition.loop-transition.selected .kiosk-studio-timeline__transition-line {
  background: rgba(76, 175, 80, 0.32);
}
.kiosk-studio-timeline__transition__loop-badge {
  position: absolute;
  bottom: -14px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 9px;
  font-weight: 700;
  color: rgba(56, 142, 60, 0.7);
  letter-spacing: 0;
  pointer-events: none;
  white-space: nowrap;
}
.kiosk-studio-timeline__add {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-width: 72px;
  width: 72px;
  height: 108px;
  border-radius: 9px;
  border: 2px dashed rgba(0, 0, 0, 0.1);
  cursor: pointer;
  flex-shrink: 0;
  transition: all 0.2s;
  margin: 6px 6px 6px 0;
  background: transparent;
}
.kiosk-studio-timeline__add:hover {
  border-color: rgba(236, 78, 54, 0.4);
  background: rgba(236, 78, 54, 0.03);
  transform: translateY(-2px);
}
.kiosk-studio-timeline__add:hover .kiosk-studio-timeline__add-icon {
  color: rgba(236, 78, 54, 0.55) !important;
}
.kiosk-studio-timeline__add:hover .kiosk-studio-timeline__add-label {
  color: rgba(236, 78, 54, 0.55);
}
.kiosk-studio-timeline__add-icon {
  font-size: 22px !important;
  max-width: 22px !important;
  max-height: 22px !important;
  color: rgba(0, 0, 0, 0.14) !important;
  transition: color 0.2s !important;
}
.kiosk-studio-timeline__add-label {
  font-size: 10px;
  font-weight: 700;
  color: rgba(0, 0, 0, 0.18);
  text-transform: uppercase;
  letter-spacing: 0.07em;
  transition: color 0.2s;
}

.kiosk-studio-player {
  position: fixed;
  inset: 0;
  z-index: 9000;
  background: #000;
  cursor: pointer;
}
.kiosk-studio-player__slide {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
  transform-style: preserve-3d;
}
.kiosk-studio-player__slide img, .kiosk-studio-player__slide video {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
.kiosk-studio-player__slide.prev, .kiosk-studio-player__slide.active-slide {
  z-index: 1;
}
.kiosk-studio-player__slide.curr, .kiosk-studio-player__slide.incoming-slide {
  z-index: 2;
}
.kiosk-studio-player__dots {
  position: absolute;
  top: 20px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 6px;
  z-index: 10;
}
.kiosk-studio-player__dots span {
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.28);
  transition: all 0.32s ease;
}
.kiosk-studio-player__dots span.active {
  background: rgb(236, 78, 54);
  width: 20px;
  border-radius: 3px;
  box-shadow: 0 0 8px rgba(236, 78, 54, 0.6);
}
.kiosk-studio-player__progress {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: rgba(255, 255, 255, 0.07);
  z-index: 10;
}
.kiosk-studio-player__progress-bar {
  height: 100%;
  background: rgb(236, 78, 54);
  transition: width 0.05s linear;
  box-shadow: 0 0 10px rgba(236, 78, 54, 0.7);
}
.kiosk-studio-player__close {
  position: absolute;
  top: 20px;
  right: 20px;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.48);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  backdrop-filter: blur(8px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  z-index: 10;
  transition: all 0.2s;
}
.kiosk-studio-player__close:hover {
  background: rgba(0, 0, 0, 0.72);
  transform: scale(1.06);
}
.kiosk-studio-player__close md-icon {
  color: rgba(255, 255, 255, 0.88) !important;
  font-size: 18px !important;
  max-width: 18px !important;
  max-height: 18px !important;
}
.kiosk-studio-player__counter {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 12px;
  color: rgba(255, 255, 255, 0.65);
  background: rgba(0, 0, 0, 0.48);
  padding: 5px 14px;
  border-radius: 20px;
  backdrop-filter: blur(8px);
  font-variant-numeric: tabular-nums;
  border: 1px solid rgba(255, 255, 255, 0.07);
  z-index: 10;
}

@keyframes ks-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes ks-slide-left {
  from {
    transform: translateX(100%);
  }
  to {
    transform: translateX(0);
  }
}
@keyframes ks-slide-right {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0);
  }
}
@keyframes ks-slide-up {
  from {
    transform: translateY(100%);
  }
  to {
    transform: translateY(0);
  }
}
@keyframes ks-slide-down {
  from {
    transform: translateY(-100%);
  }
  to {
    transform: translateY(0);
  }
}
@keyframes ks-zoom-in {
  from {
    transform: scale(0.7);
    opacity: 0;
  }
  to {
    transform: scale(1);
    opacity: 1;
  }
}
@keyframes ks-zoom-out {
  from {
    transform: scale(1.32);
    opacity: 0;
  }
  to {
    transform: scale(1);
    opacity: 1;
  }
}
@keyframes ks-flip {
  from {
    transform: perspective(1200px) rotateY(90deg);
    opacity: 0;
  }
  to {
    transform: perspective(1200px) rotateY(0deg);
    opacity: 1;
  }
}
@keyframes ks-dissolve {
  from {
    filter: blur(14px);
    opacity: 0;
  }
  to {
    filter: blur(0);
    opacity: 1;
  }
}
.kiosk-transition-fade {
  animation: ks-fade-in 0.7s ease both;
}

.kiosk-transition-slide-left {
  animation: ks-slide-left 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
}

.kiosk-transition-slide-right {
  animation: ks-slide-right 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
}

.kiosk-transition-slide-up {
  animation: ks-slide-up 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
}

.kiosk-transition-slide-down {
  animation: ks-slide-down 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
}

.kiosk-transition-zoom-in {
  animation: ks-zoom-in 0.6s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

.kiosk-transition-zoom-out {
  animation: ks-zoom-out 0.6s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

.kiosk-transition-flip {
  animation: ks-flip 0.72s cubic-bezier(0.4, 0, 0.2, 1) both;
}

.kiosk-transition-dissolve {
  animation: ks-dissolve 0.9s ease-in-out both;
}

.kiosk-studio-shortcuts {
  position: fixed;
  inset: 0;
  z-index: 9100;
  background: rgba(0, 0, 0, 0.52);
  backdrop-filter: blur(6px);
  display: flex;
  align-items: center;
  justify-content: center;
  animation: ks-fade-in 0.18s ease both;
}
.kiosk-studio-shortcuts__panel {
  width: 400px;
  border-radius: 18px;
  border: 1px solid rgba(0, 0, 0, 0.07);
  background: #fff;
  box-shadow: 0 32px 64px rgba(0, 0, 0, 0.2), 0 8px 20px rgba(0, 0, 0, 0.06);
  padding: 24px;
  animation: ks-shortcuts-appear 0.24s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}
.kiosk-studio-shortcuts__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 18px;
}
.kiosk-studio-shortcuts__header h3 {
  font-size: 15px;
  font-weight: 700;
  color: rgba(0, 0, 0, 0.85);
  margin: 0;
}
.kiosk-studio-shortcuts__header md-button {
  color: rgba(0, 0, 0, 0.32) !important;
}
.kiosk-studio-shortcuts__header md-button:hover {
  color: rgba(0, 0, 0, 0.65) !important;
}
.kiosk-studio-shortcuts__grid {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

@keyframes ks-shortcuts-appear {
  from {
    transform: scale(0.88) translateY(10px);
    opacity: 0;
  }
  to {
    transform: scale(1) translateY(0);
    opacity: 1;
  }
}
.kiosk-studio-shortcut {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 8px;
  border-radius: 8px;
  transition: background 0.1s;
}
.kiosk-studio-shortcut:hover {
  background: rgba(0, 0, 0, 0.03);
}
.kiosk-studio-shortcut kbd {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 26px;
  height: 26px;
  padding: 0 7px;
  border-radius: 6px;
  background: #f0f1f3;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-bottom-width: 2px;
  font-size: 11px;
  font-weight: 600;
  color: rgba(0, 0, 0, 0.52);
  font-family: inherit;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.kiosk-studio-shortcut span {
  font-size: 13px;
  color: rgba(0, 0, 0, 0.48);
  margin-left: 4px;
  flex: 1;
}

.kiosk-video-trim {
  position: fixed;
  inset: 0;
  z-index: 9300;
  background: rgba(0, 0, 0, 0.55);
  backdrop-filter: blur(6px);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  animation: ks-fade-in 0.18s ease both;
}
.kiosk-video-trim__panel {
  width: 420px;
  max-width: 100%;
  border-radius: 18px;
  border: 1px solid rgba(0, 0, 0, 0.07);
  background: #fff;
  box-shadow: 0 32px 64px rgba(0, 0, 0, 0.2), 0 8px 20px rgba(0, 0, 0, 0.06);
  padding: 24px;
  animation: ks-shortcuts-appear 0.24s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}
.waitry-dark-theme .kiosk-video-trim__panel {
  background: var(--an-surface2);
  border-color: var(--an-border-strong);
}
.kiosk-video-trim__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 2px;
}
.kiosk-video-trim__header h3 {
  font-size: 16px;
  font-weight: 700;
  color: rgba(0, 0, 0, 0.85);
  margin: 0;
}
.waitry-dark-theme .kiosk-video-trim__header h3 {
  color: var(--an-text);
}
.kiosk-video-trim__header md-button.md-icon-button {
  margin: 0 !important;
  color: rgba(0, 0, 0, 0.32) !important;
}
.kiosk-video-trim__header md-button.md-icon-button:hover {
  color: rgba(0, 0, 0, 0.65) !important;
}
.waitry-dark-theme .kiosk-video-trim__header md-button.md-icon-button {
  color: var(--an-text-faint) !important;
}
.kiosk-video-trim__hint {
  font-size: 12.5px;
  color: rgba(0, 0, 0, 0.45);
  margin: 0 0 16px;
}
.waitry-dark-theme .kiosk-video-trim__hint {
  color: var(--an-text-faint);
}
.kiosk-video-trim__preview {
  position: relative;
  width: 100%;
  height: 280px;
  border-radius: 12px;
  overflow: hidden;
  background: #000;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 14px;
}
.kiosk-video-trim__video {
  max-width: 100%;
  max-height: 100%;
  display: block;
}
.kiosk-video-trim__play-btn {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  background: rgba(0, 0, 0, 0);
  transition: background 0.2s;
}
.kiosk-video-trim__play-btn md-icon {
  font-size: 44px !important;
  width: 44px !important;
  height: 44px !important;
  max-width: 44px !important;
  max-height: 44px !important;
  color: rgba(255, 255, 255, 0.92) !important;
  filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.4));
}
.kiosk-video-trim__play-btn:hover {
  background: rgba(0, 0, 0, 0.15);
}
.kiosk-video-trim__times {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 11px;
  font-variant-numeric: tabular-nums;
  color: rgba(0, 0, 0, 0.4);
  margin-bottom: 8px;
}
.waitry-dark-theme .kiosk-video-trim__times {
  color: var(--an-text-faint);
}
.kiosk-video-trim__duration {
  font-weight: 700;
  color: rgb(236, 78, 54);
}
.kiosk-video-trim__track {
  position: relative;
  height: 32px;
  margin-bottom: 4px;
}
.kiosk-video-trim__track-bg {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  height: 6px;
  transform: translateY(-50%);
  border-radius: 4px;
  background: rgba(0, 0, 0, 0.08);
}
.waitry-dark-theme .kiosk-video-trim__track-bg {
  background: rgba(255, 255, 255, 0.1);
}
.kiosk-video-trim__selection {
  position: absolute;
  top: 50%;
  height: 6px;
  transform: translateY(-50%);
  border-radius: 4px;
  background: rgb(236, 78, 54);
  box-shadow: 0 0 8px rgba(236, 78, 54, 0.5);
}
.kiosk-video-trim__handle {
  position: absolute;
  top: 50%;
  width: 16px;
  height: 16px;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  background: #fff;
  border: 3px solid rgb(236, 78, 54);
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.25);
  cursor: grab;
  z-index: 2;
  touch-action: none;
}
.kiosk-video-trim__handle:active {
  cursor: grabbing;
  transform: translate(-50%, -50%) scale(1.15);
}
.kiosk-video-trim__max-note {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 11.5px;
  color: rgba(0, 0, 0, 0.45);
  background: rgba(0, 0, 0, 0.03);
  border-radius: 8px;
  padding: 8px 10px;
  margin-top: 10px;
}
.kiosk-video-trim__max-note md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  color: rgba(0, 0, 0, 0.3) !important;
}
.waitry-dark-theme .kiosk-video-trim__max-note {
  color: var(--an-text-faint);
  background: var(--an-surface3, rgba(255, 255, 255, 0.05));
}
.kiosk-video-trim__actions {
  margin-top: 18px;
  padding: 0 !important;
  border-top: none !important;
  background: transparent !important;
}
.kiosk-video-trim__actions .wf-save-btn md-icon {
  color: #fff !important;
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
}

.kiosk-studio-context-backdrop {
  position: fixed;
  inset: 0;
  z-index: 9200;
}

.kiosk-studio-context-menu {
  position: fixed;
  z-index: 9201;
  width: 172px;
  border-radius: 12px;
  border: 1px solid rgba(0, 0, 0, 0.08);
  background: rgba(255, 255, 255, 0.97);
  box-shadow: 0 12px 36px rgba(0, 0, 0, 0.16), 0 2px 8px rgba(0, 0, 0, 0.06);
  padding: 4px;
  backdrop-filter: blur(16px);
  animation: ks-context-appear 0.14s cubic-bezier(0.4, 0, 0.2, 1) both;
}
.kiosk-studio-context-menu button {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 8px 10px;
  font-size: 13px;
  color: rgba(0, 0, 0, 0.68);
  background: none;
  border: none;
  cursor: pointer;
  font-family: inherit;
  text-align: left;
  border-radius: 8px;
  transition: background 0.1s;
}
.kiosk-studio-context-menu button md-icon {
  color: rgba(0, 0, 0, 0.32) !important;
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  flex-shrink: 0;
}
.kiosk-studio-context-menu button:hover {
  background: rgba(0, 0, 0, 0.04);
  color: rgba(0, 0, 0, 0.88);
}
.kiosk-studio-context-menu button.danger {
  color: rgb(220, 38, 38);
}
.kiosk-studio-context-menu button.danger md-icon {
  color: rgba(220, 38, 38, 0.58) !important;
}
.kiosk-studio-context-menu button.danger:hover {
  background: rgba(220, 38, 38, 0.06);
}

@keyframes ks-context-appear {
  from {
    opacity: 0;
    transform: scale(0.94) translateY(-5px);
  }
  to {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}
/* Left-Align Sidenav Navigation Overrides */
.kiosk-sidebar .kiosk-nav-item {
  justify-content: flex-start !important;
  text-align: left !important;
}
.kiosk-sidebar .kiosk-nav-item md-icon {
  margin: 0 12px 0 0 !important;
}

/* 9:16 Portrait Ratio Uploaders & Previews (kiosk screensaver config) */
.kiosk-media-uploader {
  width: 120px !important;
  height: 213px !important;
  border: 1.5px dashed rgba(0, 0, 0, 0.08) !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  background: #fbfbfb !important;
  position: relative !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.25s ease !important;
}
.waitry-dark-theme .kiosk-media-uploader {
  background: var(--an-surface2) !important;
}
.kiosk-media-uploader:hover {
  border-color: rgb(236, 78, 54) !important;
  background: rgba(236, 78, 54, 0.01) !important;
}
.kiosk-media-uploader:hover .kiosk-media-overlay {
  opacity: 1 !important;
}
.kiosk-media-uploader--small {
  width: 80px !important;
  height: 142px !important;
}
.kiosk-media-uploader--horizontal {
  width: 160px !important;
  height: 90px !important;
}
.kiosk-media-uploader .kiosk-preview-img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
}
.kiosk-media-uploader .kiosk-media-placeholder {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  color: rgba(0, 0, 0, 0.3) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  gap: 6px !important;
  text-align: center !important;
  padding: 8px !important;
}
.waitry-dark-theme .kiosk-media-uploader .kiosk-media-placeholder {
  color: var(--an-text-faint) !important;
}
.kiosk-media-uploader .kiosk-media-placeholder md-icon {
  font-size: 24px !important;
  width: 24px !important;
  height: 24px !important;
  color: rgba(0, 0, 0, 0.2) !important;
}
.waitry-dark-theme .kiosk-media-uploader .kiosk-media-placeholder md-icon {
  color: var(--an-text-faint) !important;
}
.kiosk-media-uploader .kiosk-media-overlay {
  position: absolute !important;
  inset: 0 !important;
  background: rgba(0, 0, 0, 0.45) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  opacity: 0 !important;
  transition: opacity 0.2s ease !important;
  z-index: 5 !important;
}
.kiosk-media-uploader .kiosk-media-overlay md-icon {
  color: #ffffff !important;
  font-size: 20px !important;
  width: 20px !important;
  height: 20px !important;
}
.kiosk-media-uploader .kiosk-media-spinner {
  position: absolute !important;
  z-index: 6 !important;
}

/* Drag-over state — dropping a file directly onto an uploader card.
   Declared after both .kiosk-media-uploader blocks above (same specificity,
   both use !important) so source order lets it win the cascade. */
.kiosk-media-uploader--drag-over {
  border-color: rgb(236, 78, 54) !important;
  border-style: solid !important;
  background: rgba(236, 78, 54, 0.06) !important;
  box-shadow: 0 0 0 3px rgba(236, 78, 54, 0.12) !important;
}

/* Remove button — clears an already-set (or pending) media slot without
   opening the file picker; sits above the upload overlay, hover-revealed
   like the card itself, same idiom as .cmi-thumb__remove in the catalog. */
.kiosk-media-uploader__remove {
  position: absolute !important;
  top: 4px !important;
  right: 4px !important;
  width: 22px !important;
  height: 22px !important;
  min-width: 22px !important;
  min-height: 22px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  border-radius: 50% !important;
  background: rgba(0, 0, 0, 0.55) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 7 !important;
  opacity: 0;
  cursor: pointer;
  transition: opacity 0.15s ease, background 0.15s ease;
}
.kiosk-media-uploader__remove md-icon {
  font-size: 13px !important;
  width: 13px !important;
  height: 13px !important;
  min-width: 13px !important;
  color: #fff !important;
}
.kiosk-media-uploader__remove:hover {
  background: var(--an-danger, #ef4444) !important;
}

.kiosk-media-uploader:hover .kiosk-media-uploader__remove {
  opacity: 1;
}

.kiosk-media-placeholder__drop-hint {
  display: block !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  opacity: 0.65;
  margin-top: -4px !important;
}

/* Slide thumbnails 9:16 portrait */
.kiosk-slide-thumb {
  width: 72px !important;
  height: 128px !important;
  background-size: cover !important;
  background-position: center !important;
  position: relative !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  border: 1px solid rgba(0, 0, 0, 0.08) !important;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04) !important;
}
.kiosk-slide-thumb .kiosk-preview-img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
.kiosk-slide-thumb-order {
  position: absolute !important;
  top: 6px !important;
  left: 6px !important;
  background: rgba(0, 0, 0, 0.55) !important;
  color: #fff !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  padding: 1px 6px !important;
  border-radius: 4px !important;
  z-index: 3 !important;
}
.kiosk-slide-thumb--more {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(0, 0, 0, 0.04) !important;
  color: rgba(0, 0, 0, 0.45) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  border: 1.5px dashed rgba(0, 0, 0, 0.08) !important;
}
.waitry-dark-theme .kiosk-slide-thumb--more {
  color: var(--an-text-faint) !important;
}

/* Integrated Bezel Player (bounded inside 9:16 portrait canvas bezel) */
.kiosk-studio-canvas__bezel .kiosk-studio-player {
  position: absolute !important;
  inset: 0 !important;
  z-index: 20 !important;
  background: #000 !important;
  cursor: pointer !important;
  border-radius: 16px !important;
  overflow: hidden !important;
}
.kiosk-studio-canvas__bezel .kiosk-studio-player .kiosk-studio-player__slide {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
}
.kiosk-studio-canvas__bezel .kiosk-studio-player .kiosk-studio-player__slide.prev {
  z-index: 1 !important;
}
.kiosk-studio-canvas__bezel .kiosk-studio-player .kiosk-studio-player__slide.curr {
  z-index: 2 !important;
}
.kiosk-studio-canvas__bezel .kiosk-studio-player .kiosk-studio-player__slide img, .kiosk-studio-canvas__bezel .kiosk-studio-player .kiosk-studio-player__slide video {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
}
.kiosk-studio-canvas__bezel .kiosk-studio-player .kiosk-studio-player__progress {
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 4px !important;
  background: rgba(255, 255, 255, 0.15) !important;
}
.kiosk-studio-canvas__bezel .kiosk-studio-player .kiosk-studio-player__progress-bar {
  height: 100% !important;
  background: rgb(236, 78, 54) !important;
  transition: width 0.05s linear !important;
}
.kiosk-studio-canvas__bezel .kiosk-studio-player .kiosk-studio-player__close {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  width: 32px !important;
  height: 32px !important;
  border-radius: 50% !important;
  background: rgba(0, 0, 0, 0.6) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  backdrop-filter: blur(4px) !important;
}
.kiosk-studio-canvas__bezel .kiosk-studio-player .kiosk-studio-player__close:hover {
  background: rgba(0, 0, 0, 0.85) !important;
}
.kiosk-studio-canvas__bezel .kiosk-studio-player .kiosk-studio-player__close md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  color: #fff !important;
}
.kiosk-studio-canvas__bezel .kiosk-studio-player .kiosk-studio-player__counter {
  position: absolute !important;
  bottom: 12px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  font-size: 10px !important;
  color: rgba(255, 255, 255, 0.7) !important;
  background: rgba(0, 0, 0, 0.6) !important;
  padding: 4px 10px !important;
  border-radius: 10px !important;
  backdrop-filter: blur(4px) !important;
  font-variant-numeric: tabular-nums !important;
  font-weight: 500 !important;
}

/* Column Button Selector */
.kiosk-column-row {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.06);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}
.kiosk-column-row:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}

.kiosk-column-info {
  flex: 1;
}
.kiosk-column-info .kiosk-column-label {
  font-size: 14px;
  font-weight: 600;
  color: #222;
  display: block;
}
.waitry-dark-theme .kiosk-column-info .kiosk-column-label {
  color: var(--an-text);
}

.kiosk-column-selector {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.kiosk-column-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 10px;
  background: #ffffff;
  border: 1.5px solid rgba(0, 0, 0, 0.12);
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  width: 84px;
  height: 72px;
  outline: none;
  box-sizing: border-box;
  user-select: none;
}
.waitry-dark-theme .kiosk-column-btn {
  background: var(--an-surface2);
}
.kiosk-column-btn .kiosk-column-btn-text {
  font-size: 11px;
  font-weight: 600;
  color: rgba(0, 0, 0, 0.5);
  transition: color 0.2s ease;
  text-align: center;
  white-space: nowrap;
}
.waitry-dark-theme .kiosk-column-btn .kiosk-column-btn-text {
  color: var(--an-text-muted);
}
.kiosk-column-btn:hover {
  border-color: rgba(236, 78, 54, 0.4);
  background-color: rgba(236, 78, 54, 0.01);
}
.kiosk-column-btn:hover .kiosk-column-btn-text {
  color: rgba(236, 78, 54, 0.7);
}
.kiosk-column-btn:hover .kiosk-grid-preview {
  background: rgba(0, 0, 0, 0.06);
}
.kiosk-column-btn:hover .kiosk-grid-preview .kiosk-grid-preview-cell {
  background: rgba(0, 0, 0, 0.25);
}
.waitry-dark-theme .kiosk-column-btn:hover .kiosk-grid-preview {
  background: rgba(255, 255, 255, 0.09);
}
.waitry-dark-theme .kiosk-column-btn:hover .kiosk-grid-preview .kiosk-grid-preview-cell {
  background: rgba(255, 255, 255, 0.38);
}
.kiosk-column-btn.active {
  border-color: rgb(236, 78, 54);
  background-color: rgba(236, 78, 54, 0.06);
  box-shadow: 0 0 0 1px rgb(236, 78, 54);
}
.kiosk-column-btn.active .kiosk-column-btn-text {
  color: rgb(236, 78, 54);
  font-weight: 700;
}
.kiosk-column-btn.active .kiosk-grid-preview {
  background: rgba(236, 78, 54, 0.12);
}
.kiosk-column-btn.active .kiosk-grid-preview .kiosk-grid-preview-cell {
  background: rgb(236, 78, 54);
}

/* Grid Preview inside buttons */
.kiosk-grid-preview {
  display: grid;
  gap: 2px;
  width: 44px;
  height: 26px;
  padding: 3px;
  border-radius: 4px;
  background: rgba(0, 0, 0, 0.04);
  box-sizing: border-box;
  transition: all 0.2s ease;
}
.waitry-dark-theme .kiosk-grid-preview {
  background: rgba(255, 255, 255, 0.06);
}
.kiosk-grid-preview .kiosk-grid-preview-cell {
  background: rgba(0, 0, 0, 0.15);
  border-radius: 1px;
  transition: all 0.2s ease;
}
.waitry-dark-theme .kiosk-grid-preview .kiosk-grid-preview-cell {
  background: rgba(255, 255, 255, 0.28);
}
.kiosk-grid-preview.cols-1 {
  grid-template-columns: repeat(1, 1fr);
}
.kiosk-grid-preview.cols-2 {
  grid-template-columns: repeat(2, 1fr);
}
.kiosk-grid-preview.cols-3 {
  grid-template-columns: repeat(3, 1fr);
}
.kiosk-grid-preview.cols-4 {
  grid-template-columns: repeat(4, 1fr);
}
.kiosk-grid-preview.cols-5 {
  grid-template-columns: repeat(5, 1fr);
}
.kiosk-grid-preview.cols-6 {
  grid-template-columns: repeat(6, 1fr);
}

/* Responsive Cards Row Layout (2 columns when space permits) */
.kiosk-cards-row {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin-bottom: 24px;
}
@media (min-width: 960px) {
  .kiosk-cards-row {
    flex-direction: row;
  }
  .kiosk-cards-row .kiosk-card {
    flex: 1;
    margin-bottom: 0 !important;
    display: flex;
    flex-direction: column;
  }
  .kiosk-cards-row .kiosk-card .kiosk-card-body {
    flex: 1;
    display: flex;
    flex-direction: column;
  }
}

.wt-access-points-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  gap: 16px;
  padding: 16px 0;
}

.wt-ap-card {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 12px;
  padding: 16px;
  min-height: 120px;
  transition: all 0.25s ease;
  overflow: hidden;
  cursor: pointer;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.02);
  --ap-color: var(--an-primary, #e34343);
}
.wt-ap-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--ap-color);
  opacity: 0;
  transition: opacity 0.25s ease;
  z-index: 0;
}
.wt-ap-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.06);
  border-color: var(--an-border-strong);
}
.wt-ap-card:hover::before {
  opacity: 0.04;
}
.wt-ap-card:hover .wt-ap-card__actions {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.wt-ap-card__content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}
.wt-ap-card__indicator {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: var(--ap-color);
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--ap-color) 20%, transparent);
}
.wt-ap-card__title {
  font-size: 22px;
  font-weight: 700;
  color: var(--an-text);
  margin: 0;
  text-align: center;
}
.wt-ap-card__actions {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background: var(--an-surface);
  border-top: 1px solid var(--an-border);
  padding: 4px;
  display: flex;
  align-items: center;
  justify-content: space-around;
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: all 0.25s ease;
  z-index: 2;
}
.wt-ap-card__actions .md-icon-button {
  margin: 0;
  width: 32px;
  height: 32px;
  min-height: 32px;
}
.wt-ap-card__actions .md-icon-button md-icon {
  color: var(--an-text-muted);
  font-size: 16px;
}
.wt-ap-card__actions .md-icon-button:hover md-icon {
  color: var(--an-text);
}
.wt-ap-card__actions .wt-btn-delete:hover md-icon {
  color: var(--an-danger, #e53935);
}
.wt-ap-card--add {
  border: 2px dashed var(--an-border-strong);
  background: transparent;
  align-items: center;
  justify-content: center;
  box-shadow: none;
  color: var(--an-text-muted);
}
.wt-ap-card--add md-icon {
  color: inherit;
  font-size: 28px;
  margin-bottom: 8px;
}
.wt-ap-card--add span {
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.wt-ap-card--add:hover {
  border-color: var(--an-primary);
  color: var(--an-primary);
  background: rgba(236, 78, 54, 0.04);
  transform: translateY(0);
  box-shadow: none;
}
.wt-ap-card--bulk {
  border: 2px dashed color-mix(in srgb, var(--an-primary, #6C63FF) 60%, transparent);
  background: transparent;
  align-items: center;
  justify-content: center;
  box-shadow: none;
  color: var(--an-primary, #6C63FF);
  cursor: pointer;
}
.wt-ap-card--bulk md-icon {
  color: inherit;
  font-size: 28px;
  margin-bottom: 8px;
}
.wt-ap-card--bulk span {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.wt-ap-card--bulk:hover {
  border-color: var(--an-primary);
  background: color-mix(in srgb, var(--an-primary, #6C63FF) 6%, transparent);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px color-mix(in srgb, var(--an-primary, #6C63FF) 18%, transparent);
}

.wt-bulk-dialog {
  min-width: 520px;
  max-width: 600px;
  width: 90vw;
  border-radius: 16px !important;
  overflow: hidden;
}
@media (max-width: 600px) {
  .wt-bulk-dialog {
    min-width: unset;
    width: 100%;
  }
}

.wt-bulk-steps {
  padding: 20px 24px 0;
  display: flex;
  align-items: center;
  gap: 0;
}

.wt-bulk-step {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  cursor: default;
}
.wt-bulk-step.done {
  cursor: pointer;
}
.wt-bulk-step__circle {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-weight: 700;
  border: 2px solid var(--an-border-strong);
  background: var(--an-surface2);
  color: var(--an-text-muted);
  transition: all 0.25s ease;
}
.wt-bulk-step__circle md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  color: inherit;
}
.wt-bulk-step__label {
  font-size: 11px;
  font-weight: 600;
  color: var(--an-text-faint);
  text-transform: uppercase;
  letter-spacing: 0.4px;
  white-space: nowrap;
  transition: color 0.25s ease;
}
.wt-bulk-step.active .wt-bulk-step__circle {
  background: var(--an-primary, #EC4E36);
  border-color: var(--an-primary, #EC4E36);
  color: #fff;
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--an-primary, #EC4E36) 20%, transparent);
}
.wt-bulk-step.active .wt-bulk-step__label {
  color: var(--an-primary, #EC4E36);
}
.wt-bulk-step.done .wt-bulk-step__circle {
  background: var(--an-success, #16C57A);
  border-color: var(--an-success, #16C57A);
  color: #fff;
}
.wt-bulk-step.done .wt-bulk-step__label {
  color: var(--an-text-muted);
}
.wt-bulk-step__connector {
  flex: 1;
  height: 2px;
  background: var(--an-border);
  margin: 0 8px;
  margin-bottom: 22px;
  border-radius: 2px;
  transition: background 0.25s ease;
}
.wt-bulk-step__connector.done {
  background: var(--an-success, #16C57A);
}

.wt-bulk-content {
  padding: 20px 24px 8px;
  min-height: 260px;
}

.wt-bulk-section {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.wt-bulk-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.wt-bulk-label {
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
  display: block;
  margin-bottom: 2px;
}

.wt-bulk-hint {
  font-size: 12px;
  color: var(--an-text-faint);
  margin: 0 0 4px;
  line-height: 1.4;
}

.wt-bulk-count-row {
  display: flex;
  align-items: center;
  gap: 16px;
}

.wt-bulk-slider {
  flex: 1;
  margin: 0 !important;
  padding: 0 !important;
}

.wt-bulk-count-input {
  width: 72px !important;
  min-width: 72px !important;
  margin: 0 !important;
}
.wt-bulk-count-input input {
  font-size: 18px !important;
  font-weight: 700 !important;
  text-align: center;
}

.wt-bulk-max-note {
  font-size: 11px;
  color: var(--an-text-faint);
  margin: 0;
  font-style: italic;
}

.wt-bulk-pad-options {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.wt-bulk-pad-btn {
  margin: 0 !important;
  border: 1.5px solid var(--an-border-strong) !important;
  border-radius: 8px !important;
  min-height: 36px !important;
  height: 36px !important;
  line-height: 34px !important;
  padding: 0 14px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  font-family: monospace !important;
  color: var(--an-text-muted) !important;
  background: var(--an-surface2) !important;
  text-transform: none !important;
  transition: all 0.2s ease !important;
}
.wt-bulk-pad-btn.active {
  border-color: var(--an-primary, #EC4E36) !important;
  color: var(--an-primary, #EC4E36) !important;
  background: color-mix(in srgb, var(--an-primary, #EC4E36) 8%, transparent) !important;
  box-shadow: 0 0 0 1px var(--an-primary, #EC4E36) !important;
}

.wt-bulk-name-row {
  display: flex;
  align-items: flex-end;
  gap: 8px;
}

.wt-bulk-token {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 12px;
  height: 34px;
  background: color-mix(in srgb, var(--an-primary, #EC4E36) 10%, transparent);
  border: 1.5px dashed var(--an-primary, #EC4E36);
  border-radius: 8px;
  font-family: monospace;
  font-size: 14px;
  font-weight: 700;
  color: var(--an-primary, #EC4E36);
  flex-shrink: 0;
  margin-bottom: 18px;
}

.wt-bulk-preview-panel {
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: 10px;
  padding: 14px 16px;
  transition: all 0.2s ease;
}

.wt-bulk-preview-label {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-faint);
  margin-bottom: 10px;
  display: flex;
  align-items: center;
}
.wt-bulk-preview-label md-icon {
  color: inherit;
}

.wt-bulk-preview-names {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.wt-bulk-preview-chip {
  display: inline-flex;
  align-items: center;
  padding: 4px 12px;
  background: var(--an-surface);
  border: 1px solid var(--an-border-strong);
  border-radius: 20px;
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
  font-family: monospace;
  transition: all 0.2s ease;
  animation: wt-chip-pop 0.2s ease both;
}

@keyframes wt-chip-pop {
  from {
    transform: scale(0.85);
    opacity: 0;
  }
  to {
    transform: scale(1);
    opacity: 1;
  }
}
.wt-bulk-preview-ellipsis {
  font-size: 12px;
  color: var(--an-text-faint);
  font-style: italic;
}

.wt-bulk-confirm-header {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 0 16px;
  font-size: 14px;
  color: var(--an-text);
}
.wt-bulk-confirm-header strong {
  font-size: 22px;
  font-weight: 800;
  color: var(--an-primary, #EC4E36);
}

.wt-bulk-layout-badge {
  display: inline-block;
  margin-left: 8px;
  padding: 2px 8px;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: 12px;
  font-size: 12px;
  color: var(--an-text-muted);
  font-weight: 600;
}

.wt-bulk-names-scroll {
  max-height: 220px;
  overflow-y: auto;
  border: 1px solid var(--an-border);
  border-radius: 10px;
  padding: 8px;
  background: var(--an-surface2);
}

.wt-bulk-names-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
  gap: 6px;
}

.wt-bulk-name-chip {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 5px 10px;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 8px;
  font-size: 12px;
  overflow: hidden;
}

.wt-bulk-name-index {
  font-size: 10px;
  color: var(--an-text-faint);
  min-width: 20px;
  font-weight: 600;
}

.wt-bulk-name-text {
  font-weight: 600;
  color: var(--an-text);
  font-family: monospace;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.wt-bulk-overflow-note {
  padding: 8px 4px 2px;
  font-size: 12px;
  color: var(--an-text-faint);
  text-align: center;
  font-style: italic;
}

.wt-bulk-validation-error {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 8px;
  padding: 10px 14px;
  background: color-mix(in srgb, var(--an-danger, #e53935) 10%, transparent);
  border: 1px solid color-mix(in srgb, var(--an-danger, #e53935) 30%, transparent);
  border-radius: 8px;
  font-size: 13px;
  color: var(--an-danger, #e53935);
}
.wt-bulk-validation-error md-icon {
  color: inherit;
  font-size: 18px;
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}

.wt-bulk-btn-cancel {
  color: var(--an-text-muted) !important;
}

.wt-bulk-btn-back md-icon {
  margin-right: 4px;
  font-size: 16px;
  width: 16px;
  height: 16px;
}

.wt-bulk-btn-next md-icon,
.wt-bulk-btn-create md-icon {
  margin-left: 4px;
  font-size: 16px;
  width: 16px;
  height: 16px;
}

.wt-bulk-toolbar-icon {
  margin-right: 10px;
}

.wt-bulk-preview-eye-icon {
  margin-right: 6px;
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  color: inherit;
}

.wt-bulk-confirm-icon {
  font-size: 28px !important;
  width: 28px !important;
  height: 28px !important;
  color: var(--an-success, #16C57A);
  flex-shrink: 0;
}

.places-container {
  padding: 24px;
  background-color: var(--an-bg);
  min-height: 100%;
  box-sizing: border-box;
}

.places-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
  gap: 16px;
}
.places-header .header-title-area h1 {
  margin: 0 0 2px 0;
  font-size: 22px;
  font-weight: 700;
  color: var(--an-text);
  line-height: 1.2;
}
.places-header .header-title-area p {
  margin: 0;
  font-size: 12px;
  color: var(--an-text-muted);
  font-weight: 500;
}
.places-header .header-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}
.places-header .header-actions .md-button {
  margin: 0;
  border-radius: var(--an-radius-sm) !important;
  font-weight: 600;
  font-size: 13px;
  text-transform: none;
  letter-spacing: 0;
  height: 36px;
  min-height: 36px;
  line-height: 36px;
  padding: 0 14px !important;
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  transition: all var(--duration-fast) var(--ease-default);
}
.places-header .header-actions .md-button md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  margin: 0;
  line-height: 1;
}
.places-header .header-actions .md-button.btn-secondary {
  background: var(--an-surface) !important;
  border: 1px solid var(--an-border-strong) !important;
  color: var(--an-text-muted) !important;
  box-shadow: var(--an-shadow-xs);
}
.places-header .header-actions .md-button.btn-secondary:hover {
  background: var(--an-surface2) !important;
  color: var(--an-text) !important;
  border-color: var(--an-border-strong) !important;
}
.places-header .header-actions .md-button.btn-primary {
  background: var(--an-rose) !important;
  color: #ffffff !important;
  border: none !important;
  box-shadow: 0 2px 8px rgba(236, 78, 54, 0.28);
}
.places-header .header-actions .md-button.btn-primary:hover {
  background: #d94530 !important;
  box-shadow: 0 4px 14px rgba(236, 78, 54, 0.38) !important;
  transform: translateY(-1px);
}
.places-header .header-actions .md-button.btn-primary:active {
  transform: translateY(0);
}

.places-utility-bar {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  padding: 8px 14px;
  margin-bottom: 20px;
  box-shadow: var(--an-shadow-xs);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.places-utility-bar .filter-group {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  flex: 1;
  min-width: 0;
}
.places-utility-bar .cdk-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.places-utility-bar .search-wrapper {
  position: relative;
  display: flex;
  align-items: center;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  padding: 0 10px;
  min-width: 200px;
  max-width: 260px;
  height: 34px;
  box-sizing: border-box;
  transition: border-color var(--duration-fast) var(--ease-default), box-shadow var(--duration-fast) var(--ease-default);
}
.places-utility-bar .search-wrapper md-icon {
  color: var(--an-text-faint);
  font-size: 15px;
  width: 15px;
  height: 15px;
  margin-right: 7px;
  flex-shrink: 0;
  line-height: 1;
}
.places-utility-bar .search-wrapper input {
  background: transparent;
  border: none;
  outline: none;
  color: var(--an-text);
  font-family: var(--font-sans);
  font-size: 13px;
  width: 100%;
  min-width: 0;
  height: 100%;
  box-sizing: border-box;
}
.places-utility-bar .search-wrapper input::placeholder {
  color: var(--an-placeholder);
}
.places-utility-bar .search-wrapper:focus-within {
  border-color: var(--an-rose);
  background: var(--an-surface);
  box-shadow: 0 0 0 3px var(--an-rose-soft);
}
.places-utility-bar .filter-select-wrapper {
  display: inline-flex;
  align-items: center;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  padding: 0 6px 0 10px;
  height: 34px;
  box-sizing: border-box;
  gap: 4px;
  cursor: pointer;
  transition: border-color var(--duration-fast) var(--ease-default);
}
.places-utility-bar .filter-select-wrapper > md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  color: var(--an-text-faint);
  flex-shrink: 0;
  line-height: 1;
}
.places-utility-bar .filter-select-wrapper > label {
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  color: var(--an-text-faint);
  margin: 0;
  flex-shrink: 0;
  cursor: pointer;
}
.places-utility-bar .filter-select-wrapper .places-filter-select {
  margin: 0;
  padding: 0;
  min-width: 70px;
  max-width: 140px;
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text) !important;
  border-bottom: none !important;
  min-height: 0;
  height: 34px;
  line-height: 34px;
}
.places-utility-bar .filter-select-wrapper .places-filter-select .md-select-value {
  border-bottom: none !important;
  padding-bottom: 0;
  min-height: 0;
  height: 34px;
  line-height: 34px;
  min-width: 0;
}
.places-utility-bar .filter-select-wrapper .places-filter-select .md-select-value::after {
  display: none !important;
  height: 0 !important;
}
.places-utility-bar .filter-select-wrapper .places-filter-select .md-select-value .md-text,
.places-utility-bar .filter-select-wrapper .places-filter-select .md-select-value > span:not(.md-select-icon) {
  color: var(--an-text) !important;
  font-size: 13px;
  font-weight: 600;
  line-height: 34px;
}
.places-utility-bar .filter-select-wrapper .places-filter-select .md-select-value .md-select-icon {
  color: var(--an-text-muted) !important;
  width: 16px;
  margin-left: 2px;
}
.places-utility-bar .filter-select-wrapper:hover {
  border-color: var(--an-border-strong);
  background: var(--an-surface);
}
.places-utility-bar .filter-select-wrapper:focus-within {
  border-color: var(--an-rose);
}
.places-utility-bar .view-toggles {
  display: flex;
  align-items: center;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  padding: 3px;
  gap: 2px;
  flex-shrink: 0;
}
.places-utility-bar .view-toggles .toggle-btn {
  margin: 0 !important;
  border-radius: calc(var(--an-radius-sm) - 2px) !important;
  min-width: 28px !important;
  width: 28px !important;
  height: 28px !important;
  padding: 0 !important;
  line-height: 28px !important;
  color: var(--an-text-faint) !important;
  background: transparent !important;
  box-shadow: none !important;
  transition: background var(--duration-fast) var(--ease-default), color var(--duration-fast) var(--ease-default);
}
.places-utility-bar .view-toggles .toggle-btn md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  line-height: 1;
}
.places-utility-bar .view-toggles .toggle-btn.active {
  background: var(--an-surface) !important;
  color: var(--an-rose) !important;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.12) !important;
}
.places-utility-bar .view-toggles .toggle-btn:hover:not(.active) {
  background: var(--an-surface) !important;
  color: var(--an-text-muted) !important;
}

.places-card-grid {
  margin: -10px;
}

.places-card-wrapper {
  padding: 10px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}

.premium-place-card {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  overflow: hidden;
  box-shadow: var(--an-shadow-xs);
  transition: box-shadow var(--duration-norm) var(--ease-default), transform var(--duration-norm) var(--ease-spring), border-color var(--duration-norm) var(--ease-default);
  position: relative;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.premium-place-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--an-shadow-lg);
  border-color: var(--an-border-strong);
}
.premium-place-card .card-banner {
  height: 120px;
  position: relative;
  background-color: var(--an-surface2);
  overflow: hidden;
  flex-shrink: 0;
}
.premium-place-card .card-banner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.premium-place-card .card-banner::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.08) 0%, rgba(0, 0, 0, 0.52) 100%);
  pointer-events: none;
  z-index: 1;
}
.premium-place-card .card-banner .status-pill {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 3px 9px;
  border-radius: var(--an-radius-pill);
  background: rgba(0, 0, 0, 0.55);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  font-size: 11px;
  font-weight: 600;
  color: #ffffff;
  letter-spacing: 0.1px;
}
.premium-place-card .card-banner .status-pill .status-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--an-amber);
  flex-shrink: 0;
}
.premium-place-card .card-banner .status-pill .status-dot.active {
  background: var(--an-emerald);
}
.premium-place-card .card-avatar-wrapper {
  position: absolute;
  top: 90px;
  left: 16px;
  width: 60px;
  height: 60px;
  border-radius: 10px;
  border: 3px solid var(--an-surface);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);
  overflow: hidden;
  background: var(--an-surface2);
  z-index: 3;
  flex-shrink: 0;
}
.premium-place-card .card-avatar-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.premium-place-card .card-body {
  padding: 44px 16px 12px 16px;
  flex: 1;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  min-height: 0;
  overflow: hidden;
}
.premium-place-card .card-body .card-name {
  margin: 0 0 6px 0;
  font-size: 15px;
  font-weight: 700;
  color: var(--an-text) !important;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.3;
}
.premium-place-card .card-body .plan-badge {
  display: inline-block;
  align-self: flex-start;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 2px 7px;
  border-radius: 4px;
  margin-bottom: 10px;
  white-space: nowrap;
  background: var(--an-surface2);
  color: var(--an-text-muted);
  border: 1px solid var(--an-border);
}
.premium-place-card .card-body .plan-badge.plan-pro, .premium-place-card .card-body .plan-badge.plan-unlimited, .premium-place-card .card-body .plan-badge.plan-premium, .premium-place-card .card-body .plan-badge.plan-enterprise, .premium-place-card .card-body .plan-badge.plan-partner {
  background: var(--an-rose-soft);
  color: var(--an-rose);
  border-color: transparent;
}
.premium-place-card .card-body .plan-badge.plan-growing, .premium-place-card .card-body .plan-badge.plan-starter, .premium-place-card .card-body .plan-badge.plan-basic, .premium-place-card .card-body .plan-badge.plan-standard {
  background: var(--an-sky-soft);
  color: var(--an-sky);
  border-color: transparent;
}
.premium-place-card .card-body .plan-badge.plan-free, .premium-place-card .card-body .plan-badge.plan-demo, .premium-place-card .card-body .plan-badge.plan-trial {
  background: var(--an-surface3, var(--an-surface2));
  color: var(--an-text-muted);
  border-color: var(--an-border);
}
.premium-place-card .card-body .card-description {
  margin: 0 0 10px 0;
  font-size: 12px;
  color: var(--an-text-muted);
  line-height: 1.5;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  flex-shrink: 0;
}
.premium-place-card .card-body .card-spacer {
  flex: 1;
  min-height: 8px;
}
.premium-place-card .card-body .info-row {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  color: var(--an-text-muted);
  margin-bottom: 4px;
  min-width: 0;
}
.premium-place-card .card-body .info-row:last-child {
  margin-bottom: 0;
}
.premium-place-card .card-body .info-row md-icon {
  font-size: 13px;
  width: 13px;
  height: 13px;
  color: var(--an-text-faint);
  flex-shrink: 0;
  line-height: 1;
}
.premium-place-card .card-body .info-row span {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
  flex: 1;
}
.premium-place-card .card-footer {
  border-top: 1px solid var(--an-border);
  padding: 6px 8px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 1px;
  flex-shrink: 0;
  background: transparent;
}
.premium-place-card .card-footer .footer-sep {
  width: 1px;
  height: 18px;
  background: var(--an-border);
  margin: 0 4px;
  flex-shrink: 0;
}
.premium-place-card .card-footer .md-button {
  margin: 0 !important;
  min-width: 30px !important;
  width: 30px !important;
  height: 30px !important;
  border-radius: var(--an-radius-xs) !important;
  padding: 0 !important;
  color: var(--an-text-faint) !important;
  background: transparent !important;
  box-shadow: none !important;
  transition: background var(--duration-fast) var(--ease-default), color var(--duration-fast) var(--ease-default);
}
.premium-place-card .card-footer .md-button md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  line-height: 1;
}
.premium-place-card .card-footer .md-button:hover {
  background: var(--an-surface2) !important;
  color: var(--an-text-muted) !important;
}
.premium-place-card .card-footer .md-button.btn-manage-place {
  color: var(--an-rose) !important;
}
.premium-place-card .card-footer .md-button.btn-manage-place:hover {
  background: var(--an-rose-soft) !important;
  color: var(--an-rose) !important;
}
.premium-place-card .card-footer .md-button.btn-delete-place:hover {
  background: rgba(239, 68, 68, 0.08) !important;
  color: var(--an-red, #ef4444) !important;
}

.places-empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 72px 24px;
  text-align: center;
}
.places-empty-state md-icon {
  font-size: 44px;
  width: 44px;
  height: 44px;
  color: var(--an-text-faint);
  margin-bottom: 16px;
  line-height: 1;
}
.places-empty-state h4 {
  margin: 0 0 6px 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--an-text);
}
.places-empty-state p {
  margin: 0;
  font-size: 13px;
  color: var(--an-text-muted);
}

.premium-places-list {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  overflow: hidden;
  box-shadow: var(--an-shadow-xs);
}
.premium-places-list .list-header {
  display: flex;
  align-items: center;
  background: var(--an-surface2);
  border-bottom: 1px solid var(--an-border);
  padding: 10px 16px;
  font-weight: 600;
  font-size: 11px;
  color: var(--an-text-faint);
  text-transform: uppercase;
  letter-spacing: 0.6px;
  user-select: none;
  gap: 0;
}
.premium-places-list .list-header .col-place {
  flex: 2;
  min-width: 180px;
}
.premium-places-list .list-header .col-status {
  flex: 0 0 130px;
}
.premium-places-list .list-header .col-plan {
  flex: 0 0 120px;
}
.premium-places-list .list-header .col-address {
  flex: 2;
  min-width: 0;
}
.premium-places-list .list-header .col-actions {
  flex: 0 0 160px;
  text-align: right;
}
.premium-places-list .list-row {
  display: flex;
  align-items: center;
  padding: 10px 16px;
  border-bottom: 1px solid var(--an-border);
  gap: 0;
  transition: background var(--duration-fast) var(--ease-default);
}
.premium-places-list .list-row:last-child {
  border-bottom: none;
}
.premium-places-list .list-row:hover {
  background: var(--an-surface2);
}
.premium-places-list .list-row .col-place {
  flex: 2;
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 180px;
  padding-right: 12px;
}
.premium-places-list .list-row .col-place .row-avatar {
  width: 38px;
  height: 38px;
  border-radius: var(--an-radius-xs);
  overflow: hidden;
  border: 1px solid var(--an-border);
  background: var(--an-surface2);
  flex-shrink: 0;
}
.premium-places-list .list-row .col-place .row-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.premium-places-list .list-row .col-place .row-title-area {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.premium-places-list .list-row .col-place .row-title-area .row-name {
  font-weight: 600;
  font-size: 13px;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.premium-places-list .list-row .col-place .row-title-area .row-phone {
  font-size: 11px;
  color: var(--an-text-faint);
  margin-top: 2px;
}
.premium-places-list .list-row .col-status {
  flex: 0 0 130px;
}
.premium-places-list .list-row .col-status .row-status-pill {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  font-weight: 500;
  color: var(--an-text-muted);
}
.premium-places-list .list-row .col-status .row-status-pill .status-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--an-amber);
  flex-shrink: 0;
}
.premium-places-list .list-row .col-status .row-status-pill .status-dot.active {
  background: var(--an-emerald);
}
.premium-places-list .list-row .col-plan {
  flex: 0 0 120px;
}
.premium-places-list .list-row .col-plan .plan-badge {
  display: inline-block;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 2px 7px;
  border-radius: 4px;
  white-space: nowrap;
  background: var(--an-surface2);
  color: var(--an-text-muted);
  border: 1px solid var(--an-border);
}
.premium-places-list .list-row .col-plan .plan-badge.plan-pro, .premium-places-list .list-row .col-plan .plan-badge.plan-unlimited, .premium-places-list .list-row .col-plan .plan-badge.plan-premium, .premium-places-list .list-row .col-plan .plan-badge.plan-enterprise, .premium-places-list .list-row .col-plan .plan-badge.plan-partner {
  background: var(--an-rose-soft);
  color: var(--an-rose);
  border-color: transparent;
}
.premium-places-list .list-row .col-plan .plan-badge.plan-growing, .premium-places-list .list-row .col-plan .plan-badge.plan-starter, .premium-places-list .list-row .col-plan .plan-badge.plan-basic, .premium-places-list .list-row .col-plan .plan-badge.plan-standard {
  background: var(--an-sky-soft);
  color: var(--an-sky);
  border-color: transparent;
}
.premium-places-list .list-row .col-plan .plan-badge.plan-free, .premium-places-list .list-row .col-plan .plan-badge.plan-demo, .premium-places-list .list-row .col-plan .plan-badge.plan-trial {
  background: var(--an-surface3, var(--an-surface2));
  color: var(--an-text-muted);
}
.premium-places-list .list-row .col-address {
  flex: 2;
  font-size: 12px;
  color: var(--an-text-muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
  padding-right: 12px;
}
.premium-places-list .list-row .col-actions {
  flex: 0 0 160px;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 1px;
}
.premium-places-list .list-row .col-actions .md-button {
  margin: 0 !important;
  min-width: 30px !important;
  width: 30px !important;
  height: 30px !important;
  border-radius: var(--an-radius-xs) !important;
  padding: 0 !important;
  color: var(--an-text-faint) !important;
  background: transparent !important;
  box-shadow: none !important;
  transition: background var(--duration-fast) var(--ease-default), color var(--duration-fast) var(--ease-default);
}
.premium-places-list .list-row .col-actions .md-button md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  line-height: 1;
}
.premium-places-list .list-row .col-actions .md-button:hover {
  background: var(--an-surface3, var(--an-surface2)) !important;
  color: var(--an-text-muted) !important;
}
.premium-places-list .list-row .col-actions .md-button.btn-manage-place {
  color: var(--an-rose) !important;
}
.premium-places-list .list-row .col-actions .md-button.btn-manage-place:hover {
  background: var(--an-rose-soft) !important;
}
.premium-places-list .list-row .col-actions .md-button.btn-delete-place:hover {
  background: rgba(239, 68, 68, 0.08) !important;
  color: var(--an-red, #ef4444) !important;
}

@media (max-width: 767px) {
  .places-container {
    padding: 14px;
  }
  .places-header {
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
    margin-bottom: 14px;
  }
  .places-header .header-actions {
    justify-content: flex-end;
  }
  .places-utility-bar {
    padding: 10px;
    gap: 8px;
  }
  .places-utility-bar .filter-group {
    flex-wrap: wrap;
  }
  .places-utility-bar .search-wrapper {
    min-width: 100%;
    max-width: 100%;
  }
  .places-utility-bar .view-toggles {
    display: none;
  }
  .places-card-grid {
    margin: -6px;
  }
  .places-card-wrapper {
    padding: 6px;
  }
  .premium-places-list {
    display: none;
  }
}
.wf-timezone-detected {
  display: flex;
  align-items: center;
  gap: 4px;
  color: var(--an-emerald, #10b981);
}
.wf-timezone-detected md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  color: inherit;
  flex-shrink: 0;
}

.kiosk-crop-dialog {
  width: 560px;
  max-width: 92vw;
  height: auto;
  min-height: 0;
  max-height: 92vh;
}

.kiosk-crop-content {
  padding: 20px;
}

.ls-dialog {
  max-width: 640px;
  width: 100%;
}

.ls-toolbar-icon {
  margin-right: 8px;
}

.ls-content {
  padding: 20px 24px 8px;
}

.ls-hint {
  color: rgba(0, 0, 0, 0.6);
  font-size: 13px;
  line-height: 1.5;
  margin: 0 0 20px;
}
.waitry-dark-theme .ls-hint {
  color: rgba(255, 255, 255, 0.55);
}

.ls-section {
  margin-bottom: 24px;
}
.ls-section__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
}
.ls-section__label {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: rgba(0, 0, 0, 0.5);
}
.waitry-dark-theme .ls-section__label {
  color: rgba(255, 255, 255, 0.45);
}

.ls-clear-btn {
  background: none;
  border: none;
  padding: 2px 6px;
  font-size: 12px;
  font-weight: 600;
  color: #8b5cf6;
  cursor: pointer;
}
.ls-clear-btn:hover {
  text-decoration: underline;
}

.ls-default-select {
  max-width: 320px;
}

.ls-lang-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.ls-lang-pill {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 7px 14px;
  border-radius: 20px;
  border: 1px solid rgba(0, 0, 0, 0.12);
  background: #fff;
  color: rgba(0, 0, 0, 0.75);
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.15s ease;
}
.waitry-dark-theme .ls-lang-pill {
  border-color: rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.04);
  color: rgba(255, 255, 255, 0.75);
}
.ls-lang-pill:hover {
  border-color: #a78bfa;
}
.waitry-dark-theme .ls-lang-pill:hover {
  border-color: #8b5cf6;
}
.ls-lang-pill--selected {
  background: #8b5cf6;
  border-color: #8b5cf6;
  color: #fff;
}
.ls-lang-pill--selected:hover {
  border-color: #8b5cf6;
}
.ls-lang-pill__check {
  width: 14px;
  height: 14px;
  min-width: 14px;
  font-size: 14px;
  --an-icon-size: 14px;
}

.ls-empty-hint {
  margin: 8px 0 0;
  font-size: 12px;
  font-style: italic;
  color: rgba(0, 0, 0, 0.45);
}
.waitry-dark-theme .ls-empty-hint {
  color: rgba(255, 255, 255, 0.4);
}

.vt-lang-tabs {
  margin-bottom: 16px;
}

.vt-lang-tab {
  position: relative;
}
.vt-lang-tab--has-content {
  font-weight: 600;
}
.vt-lang-tab__check {
  width: 12px;
  height: 12px;
  min-width: 12px;
  font-size: 12px;
  --an-icon-size: 12px;
}
.vt-lang-tab--add {
  border-style: dashed;
  color: #8b5cf6;
}
.waitry-dark-theme .vt-lang-tab--add {
  color: #a78bfa;
}

.vt-empty-hint {
  color: rgba(0, 0, 0, 0.45);
  font-size: 13px;
  font-style: italic;
  padding: 8px 0 4px;
}
.waitry-dark-theme .vt-empty-hint {
  color: rgba(255, 255, 255, 0.4);
}

.vt-editor {
  border-top: 1px solid rgba(0, 0, 0, 0.07);
  padding-top: 16px;
}
.waitry-dark-theme .vt-editor {
  border-top-color: rgba(255, 255, 255, 0.07);
}
.vt-editor__actions {
  display: flex;
  justify-content: flex-end;
  margin-top: 8px;
}

#kiosk-studio-inline {
  --ksp-bg: var(--an-bg);
  --ksp-surface: var(--an-surface);
  --ksp-surface-2: var(--an-surface2);
  --ksp-surface-3: var(--an-surface3);
  --ksp-border: var(--an-border);
  --ksp-border-2: var(--an-border-strong);
  --ksp-text: var(--an-text);
  --ksp-muted: var(--an-text-muted);
  --ksp-faint: var(--an-text-faint);
  --ksp-accent: var(--an-rose);
  --ksp-accent-2: #d6432c;
  --ksp-accent-rgb: 236, 78, 54;
  --ksp-ai: #7c3aed;
  --ksp-ai-rgb: 124, 58, 237;
  --ksp-wash-1: rgba(0, 0, 0, 0.025);
  --ksp-wash-2: rgba(0, 0, 0, 0.045);
  --ksp-scrollbar: rgba(0, 0, 0, 0.16);
  --ksp-scrollbar-hover: rgba(0, 0, 0, 0.26);
  --ksp-shadow-toolbar: 0 1px 0 rgba(0, 0, 0, 0.06);
  --ksp-shadow-card: 0 1px 4px rgba(0, 0, 0, 0.07);
  --ksp-shadow-card-selected: 0 4px 14px rgba(0, 0, 0, 0.12);
  --ksp-shadow-menu: 0 16px 48px rgba(0, 0, 0, 0.16);
  background: var(--ksp-bg);
  color: var(--ksp-text);
}
.waitry-dark-theme #kiosk-studio-inline {
  --ksp-bg: #101317;
  --ksp-surface: #171b21;
  --ksp-surface-2: #1f242d;
  --ksp-surface-3: #2a303b;
  --ksp-border: rgba(255, 255, 255, 0.07);
  --ksp-border-2: rgba(255, 255, 255, 0.14);
  --ksp-text: #eef1f6;
  --ksp-muted: #9aa3b2;
  --ksp-faint: #667084;
  --ksp-accent: #ec4e36;
  --ksp-accent-2: #f37058;
  --ksp-ai: #a78bfa;
  --ksp-ai-rgb: 167, 139, 250;
  --ksp-wash-1: rgba(255, 255, 255, 0.02);
  --ksp-wash-2: rgba(255, 255, 255, 0.05);
  --ksp-scrollbar: rgba(255, 255, 255, 0.12);
  --ksp-scrollbar-hover: rgba(255, 255, 255, 0.2);
  --ksp-shadow-toolbar: 0 1px 0 rgba(0, 0, 0, 0.4);
  --ksp-shadow-card: 0 2px 8px rgba(0, 0, 0, 0.3);
  --ksp-shadow-card-selected: 0 4px 14px rgba(0, 0, 0, 0.4);
  --ksp-shadow-menu: 0 16px 48px rgba(0, 0, 0, 0.55);
  color-scheme: dark;
}
#kiosk-studio-inline md-icon {
  color: var(--ksp-muted);
}
#kiosk-studio-inline ::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
#kiosk-studio-inline ::-webkit-scrollbar-track {
  background: transparent;
}
#kiosk-studio-inline ::-webkit-scrollbar-thumb {
  background: var(--ksp-scrollbar);
  border-radius: 4px;
}
#kiosk-studio-inline ::-webkit-scrollbar-thumb:hover {
  background: var(--ksp-scrollbar-hover);
}
#kiosk-studio-inline .kiosk-studio-toolbar {
  background: var(--ksp-surface);
  border-bottom: 1px solid var(--ksp-border);
  box-shadow: var(--ksp-shadow-toolbar);
  height: 52px;
  min-height: 52px;
  padding: 0 12px;
}
#kiosk-studio-inline .kiosk-studio-title {
  color: var(--ksp-text);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.02em;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
#kiosk-studio-inline .kiosk-studio-title md-icon {
  color: var(--ksp-accent) !important;
  font-size: 17px !important;
  max-width: 17px !important;
  max-height: 17px !important;
}
#kiosk-studio-inline .kiosk-studio-toolbar__divider {
  width: 1px;
  height: 22px;
  background: var(--ksp-border-2);
  margin: 0 10px;
  display: inline-block;
  vertical-align: middle;
}
#kiosk-studio-inline .kiosk-studio-toolbar__zoom {
  color: var(--ksp-muted);
  font-size: 12px;
  font-weight: 600;
  min-width: 44px;
  text-align: center;
  font-variant-numeric: tabular-nums;
}
#kiosk-studio-inline .kiosk-studio-toolbar__btn.md-icon-button {
  width: 34px !important;
  height: 34px !important;
  min-height: 34px !important;
  margin: 0 1px !important;
  padding: 0 !important;
  border-radius: 9px !important;
  background: transparent !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: background 0.14s, color 0.14s !important;
}
#kiosk-studio-inline .kiosk-studio-toolbar__btn.md-icon-button md-icon {
  color: var(--ksp-muted) !important;
  font-size: 17px !important;
  max-width: 17px !important;
  max-height: 17px !important;
  line-height: 17px !important;
}
#kiosk-studio-inline .kiosk-studio-toolbar__btn.md-icon-button:hover {
  background: var(--ksp-surface-3) !important;
}
#kiosk-studio-inline .kiosk-studio-toolbar__btn.md-icon-button:hover md-icon {
  color: var(--ksp-text) !important;
}
#kiosk-studio-inline .kiosk-studio-toolbar__btn.md-icon-button.active {
  background: rgba(var(--ksp-accent-rgb), 0.16) !important;
}
#kiosk-studio-inline .kiosk-studio-toolbar__btn.md-icon-button.active md-icon {
  color: var(--ksp-accent-2) !important;
}
#kiosk-studio-inline .kiosk-studio-toolbar__btn.md-icon-button[disabled] {
  opacity: 0.35;
}
#kiosk-studio-inline .kiosk-studio-toolbar__btn.md-icon-button[disabled] md-icon {
  color: var(--ksp-faint) !important;
}
#kiosk-studio-inline .kiosk-studio-toolbar__cancel.md-button {
  margin: 0 8px 0 0 !important;
  padding: 0 14px !important;
  min-height: 34px !important;
  line-height: 34px !important;
  border-radius: 9px !important;
  color: var(--ksp-muted) !important;
  border: 1px solid var(--ksp-border-2) !important;
  background: transparent !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}
#kiosk-studio-inline .kiosk-studio-toolbar__cancel.md-button md-icon {
  color: inherit !important;
  font-size: 15px !important;
  max-width: 15px !important;
  max-height: 15px !important;
  margin: 0 !important;
}
#kiosk-studio-inline .kiosk-studio-toolbar__cancel.md-button:hover {
  color: var(--ksp-text) !important;
  border-color: var(--ksp-border-2) !important;
  background: var(--ksp-surface-3) !important;
}
#kiosk-studio-inline .kiosk-studio-toolbar__save.md-button {
  min-height: 34px !important;
  line-height: 34px !important;
  padding: 0 18px !important;
  border-radius: 9px !important;
  background: var(--ksp-accent) !important;
  color: #fff !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  box-shadow: 0 2px 10px rgba(var(--ksp-accent-rgb), 0.35) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}
#kiosk-studio-inline .kiosk-studio-toolbar__save.md-button md-icon {
  color: #fff !important;
  font-size: 15px !important;
  max-width: 15px !important;
  max-height: 15px !important;
  margin: 0 !important;
}
#kiosk-studio-inline .kiosk-studio-toolbar__save.md-button:hover {
  background: var(--ksp-accent-2) !important;
  box-shadow: 0 4px 16px rgba(var(--ksp-accent-rgb), 0.45) !important;
}
#kiosk-studio-inline .kiosk-studio-left,
#kiosk-studio-inline .kiosk-studio-right {
  background: var(--ksp-surface);
  box-shadow: none;
}
#kiosk-studio-inline .kiosk-studio-left {
  border-right: 1px solid var(--ksp-border);
}
#kiosk-studio-inline .kiosk-studio-right {
  border-left: 1px solid var(--ksp-border);
}
#kiosk-studio-inline .kiosk-studio-panel-header {
  background: transparent;
  border-bottom: 1px solid var(--ksp-border);
  padding: 12px 14px;
}
#kiosk-studio-inline .kiosk-studio-panel-header__title {
  color: var(--ksp-muted);
  font-size: 10.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.09em;
  display: inline-flex;
  align-items: center;
  gap: 7px;
}
#kiosk-studio-inline .kiosk-studio-panel-header__title md-icon {
  color: var(--ksp-faint) !important;
  font-size: 14px !important;
  max-width: 14px !important;
  max-height: 14px !important;
}
#kiosk-studio-inline .kiosk-studio-panel-header__close.md-icon-button {
  background: transparent !important;
}
#kiosk-studio-inline .kiosk-studio-panel-header__close.md-icon-button md-icon {
  color: var(--ksp-faint) !important;
}
#kiosk-studio-inline .kiosk-studio-panel-header__close.md-icon-button:hover {
  background: var(--ksp-surface-3) !important;
}
#kiosk-studio-inline .kiosk-studio-panel-header__close.md-icon-button:hover md-icon {
  color: var(--ksp-text) !important;
}
#kiosk-studio-inline .kiosk-studio-collapsed-toggle {
  background: var(--ksp-surface);
}
#kiosk-studio-inline .kiosk-studio-collapsed-toggle md-icon {
  color: var(--ksp-muted) !important;
}
#kiosk-studio-inline .kiosk-studio-collapsed-toggle:hover {
  background: var(--ksp-surface-2);
}
#kiosk-studio-inline .kiosk-studio-collapsed-toggle:hover md-icon {
  color: var(--ksp-text) !important;
}
#kiosk-studio-inline .kiosk-studio-collapsed-toggle--left {
  border-right: 1px solid var(--ksp-border);
}
#kiosk-studio-inline .kiosk-studio-collapsed-toggle--right {
  border-left: 1px solid var(--ksp-border);
}
#kiosk-studio-inline .kiosk-studio-section-label {
  color: var(--ksp-faint);
  font-size: 10.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.09em;
  margin: 0 0 8px;
  padding: 0 14px;
}
#kiosk-studio-inline .kiosk-studio-upload__dropzone {
  border: 1.5px dashed var(--ksp-border-2);
  background: var(--ksp-wash-1);
  border-radius: 12px;
}
#kiosk-studio-inline .kiosk-studio-upload__dropzone::before {
  background: radial-gradient(circle at center, rgba(var(--ksp-accent-rgb), 0.12) 0%, transparent 68%);
}
#kiosk-studio-inline .kiosk-studio-upload__dropzone:hover {
  border-color: rgba(var(--ksp-accent-rgb), 0.55);
  background: rgba(var(--ksp-accent-rgb), 0.05);
}
#kiosk-studio-inline .kiosk-studio-upload__dropzone:hover md-icon {
  color: var(--ksp-accent-2) !important;
}
#kiosk-studio-inline .kiosk-studio-upload__dropzone md-icon {
  color: var(--ksp-faint) !important;
}
#kiosk-studio-inline .kiosk-studio-upload__text {
  color: var(--ksp-text);
  font-weight: 600;
}
#kiosk-studio-inline .kiosk-studio-upload__hint {
  color: var(--ksp-faint);
}
#kiosk-studio-inline .kiosk-studio-url-input,
#kiosk-studio-inline .kiosk-studio-text-input,
#kiosk-studio-inline .kiosk-studio-number-input {
  background: var(--ksp-surface-2);
  border: 1px solid var(--ksp-border);
  color: var(--ksp-text);
}
#kiosk-studio-inline .kiosk-studio-url-input::placeholder,
#kiosk-studio-inline .kiosk-studio-text-input::placeholder,
#kiosk-studio-inline .kiosk-studio-number-input::placeholder {
  color: var(--ksp-faint);
}
#kiosk-studio-inline .kiosk-studio-url-input:focus,
#kiosk-studio-inline .kiosk-studio-text-input:focus,
#kiosk-studio-inline .kiosk-studio-number-input:focus {
  border-color: rgba(var(--ksp-accent-rgb), 0.65);
  background: var(--ksp-surface-2);
  box-shadow: 0 0 0 3px rgba(var(--ksp-accent-rgb), 0.18);
}
#kiosk-studio-inline .kiosk-studio-url-add.md-icon-button {
  background: var(--ksp-accent) !important;
  color: #fff !important;
  box-shadow: 0 2px 8px rgba(var(--ksp-accent-rgb), 0.35) !important;
}
#kiosk-studio-inline .kiosk-studio-url-add.md-icon-button md-icon {
  color: #fff !important;
}
#kiosk-studio-inline .kiosk-studio-url-add.md-icon-button:hover {
  background: var(--ksp-accent-2) !important;
}
#kiosk-studio-inline .kiosk-studio-url-add.md-icon-button[disabled] {
  background: var(--ksp-surface-2) !important;
  box-shadow: none !important;
}
#kiosk-studio-inline .kiosk-studio-url-add.md-icon-button[disabled] md-icon {
  color: var(--ksp-faint) !important;
}
#kiosk-studio-inline .kiosk-studio-ai-btn {
  border: 1px solid rgba(var(--ksp-ai-rgb), 0.4);
  background: linear-gradient(135deg, rgba(var(--ksp-ai-rgb), 0.16), rgba(var(--ksp-accent-rgb), 0.1));
  color: var(--ksp-ai);
  font-weight: 700;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
}
#kiosk-studio-inline .kiosk-studio-ai-btn:hover {
  border-color: rgba(var(--ksp-ai-rgb), 0.7);
  background: linear-gradient(135deg, rgba(var(--ksp-ai-rgb), 0.26), rgba(var(--ksp-accent-rgb), 0.16));
  box-shadow: 0 2px 14px rgba(var(--ksp-ai-rgb), 0.25);
}
#kiosk-studio-inline .kiosk-studio-ai-btn:disabled {
  opacity: 0.45;
  box-shadow: none;
}
#kiosk-studio-inline .kiosk-studio-library-btn {
  border: 1px solid var(--ksp-border);
  background: var(--ksp-surface);
  color: var(--ksp-text);
  font-weight: 700;
  box-shadow: var(--ksp-shadow-card);
}
#kiosk-studio-inline .kiosk-studio-library-btn:hover {
  border-color: var(--ksp-border-2);
  background: var(--ksp-surface-2);
}
#kiosk-studio-inline .kiosk-studio-library-btn:disabled {
  opacity: 0.45;
  box-shadow: none;
}
#kiosk-studio-inline .kiosk-studio-ai-hint {
  color: var(--ksp-faint);
  text-align: center;
}
#kiosk-studio-inline .kiosk-studio-type-row {
  background: var(--ksp-surface-2);
  border: 1px solid var(--ksp-border);
  border-radius: 10px;
  padding: 3px;
  gap: 3px;
  margin: 0 14px 12px;
}
#kiosk-studio-inline .kiosk-studio-type-btn {
  border: none;
  border-radius: 8px;
  background: transparent;
  color: var(--ksp-muted);
  font-weight: 600;
  padding: 7px 8px;
}
#kiosk-studio-inline .kiosk-studio-type-btn:hover {
  color: var(--ksp-text);
  background: var(--ksp-wash-2);
}
#kiosk-studio-inline .kiosk-studio-type-btn.active {
  background: var(--ksp-surface-3);
  color: var(--ksp-text);
  box-shadow: var(--ksp-shadow-card);
}
#kiosk-studio-inline .kiosk-studio-type-btn.active md-icon {
  color: var(--ksp-accent-2) !important;
}
#kiosk-studio-inline .kiosk-studio-canvas-stack {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  max-height: 100%;
}
#kiosk-studio-inline .kiosk-studio-canvas__footer {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  white-space: nowrap;
  flex-shrink: 0;
}
#kiosk-studio-inline .kiosk-studio-canvas__label {
  position: static;
  transform: none;
  inset: auto;
  color: rgba(255, 255, 255, 0.45);
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 999px;
  padding: 0 12px;
  height: 32px;
  line-height: 32px;
  font-variant-numeric: tabular-nums;
  margin: 0;
  white-space: nowrap;
  box-sizing: border-box;
}
#kiosk-studio-inline .kiosk-studio-play-btn {
  padding: 0 16px;
  height: 32px;
  gap: 7px;
  font-size: 12.5px;
  font-weight: 600;
  background: rgba(236, 78, 54, 0.2);
  border: 1px solid rgba(236, 78, 54, 0.5);
  color: #ff8a72;
  box-shadow: none;
  backdrop-filter: none;
}
#kiosk-studio-inline .kiosk-studio-play-btn md-icon {
  color: inherit !important;
}
#kiosk-studio-inline .kiosk-studio-play-btn:hover {
  background: rgba(236, 78, 54, 0.32);
  border-color: rgba(236, 78, 54, 0.75);
  box-shadow: 0 2px 12px rgba(236, 78, 54, 0.3);
  transform: none;
}
#kiosk-studio-inline .kiosk-studio-props-empty {
  color: var(--ksp-faint);
}
#kiosk-studio-inline .kiosk-studio-props-empty__icon {
  color: var(--ksp-faint) !important;
  opacity: 0.6;
}
#kiosk-studio-inline .kiosk-studio-props__section {
  border-bottom: 1px solid var(--ksp-border);
  padding: 14px;
}
#kiosk-studio-inline .kiosk-studio-props__section:last-child {
  border-bottom: none;
}
#kiosk-studio-inline .kiosk-studio-props__label {
  color: var(--ksp-faint);
  font-size: 10.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.09em;
  display: flex;
  align-items: center;
  gap: 7px;
  margin-bottom: 10px;
}
#kiosk-studio-inline .kiosk-studio-props__label md-icon {
  color: var(--ksp-faint) !important;
  font-size: 14px !important;
  max-width: 14px !important;
  max-height: 14px !important;
}
#kiosk-studio-inline .kiosk-studio-props__hint {
  color: var(--ksp-faint);
}
#kiosk-studio-inline .kiosk-studio-props__slide-icon {
  background: var(--ksp-surface-2);
  border: 1px solid var(--ksp-border);
}
#kiosk-studio-inline .kiosk-studio-props__slide-icon md-icon {
  color: var(--ksp-muted) !important;
}
#kiosk-studio-inline .kiosk-studio-props__slide-icon.video md-icon {
  color: var(--ksp-accent-2) !important;
}
#kiosk-studio-inline .kiosk-studio-props__slide-name {
  color: var(--ksp-text);
}
#kiosk-studio-inline .kiosk-studio-props__slide-type {
  color: var(--ksp-faint);
}
#kiosk-studio-inline .kiosk-studio-range {
  accent-color: var(--ksp-accent);
}
#kiosk-studio-inline .kiosk-studio-range::-webkit-slider-runnable-track {
  background: var(--ksp-surface-3) !important;
}
#kiosk-studio-inline .kiosk-studio-range::-moz-range-track {
  background: var(--ksp-surface-3) !important;
}
#kiosk-studio-inline .kiosk-studio-range::-webkit-slider-thumb {
  border-color: var(--ksp-surface) !important;
}
#kiosk-studio-inline .kiosk-studio-props__duration-input {
  background: var(--ksp-surface-2) !important;
  border: 1px solid var(--ksp-border) !important;
  border-radius: 8px;
}
#kiosk-studio-inline .kiosk-studio-props__duration-input span {
  color: var(--ksp-muted);
}
#kiosk-studio-inline .kiosk-studio-props__duration-input input, #kiosk-studio-inline .kiosk-studio-props__duration-input .kiosk-studio-number-input {
  background: transparent !important;
  border: none !important;
  color: var(--ksp-text) !important;
  box-shadow: none !important;
}
#kiosk-studio-inline .kiosk-studio-preset-btn,
#kiosk-studio-inline .kiosk-studio-chip {
  background: var(--ksp-surface-2);
  border: 1px solid var(--ksp-border);
  color: var(--ksp-muted);
}
#kiosk-studio-inline .kiosk-studio-preset-btn:hover,
#kiosk-studio-inline .kiosk-studio-chip:hover {
  color: var(--ksp-text);
  border-color: var(--ksp-border-2);
  background: var(--ksp-surface-3);
}
#kiosk-studio-inline .kiosk-studio-preset-btn.active,
#kiosk-studio-inline .kiosk-studio-chip.active {
  background: rgba(var(--ksp-accent-rgb), 0.14);
  color: var(--ksp-accent-2);
  border-color: rgba(var(--ksp-accent-rgb), 0.5);
  font-weight: 700;
}
#kiosk-studio-inline .kiosk-studio-transition-btn,
#kiosk-studio-inline .kiosk-studio-fit-btn {
  background: var(--ksp-surface-2);
  border: 1px solid var(--ksp-border);
  color: var(--ksp-muted);
}
#kiosk-studio-inline .kiosk-studio-transition-btn .kiosk-studio-transition-btn__icon,
#kiosk-studio-inline .kiosk-studio-fit-btn .kiosk-studio-transition-btn__icon {
  color: var(--ksp-text);
}
#kiosk-studio-inline .kiosk-studio-transition-btn .kiosk-studio-transition-btn__label,
#kiosk-studio-inline .kiosk-studio-transition-btn .kiosk-studio-fit-btn__label,
#kiosk-studio-inline .kiosk-studio-fit-btn .kiosk-studio-transition-btn__label,
#kiosk-studio-inline .kiosk-studio-fit-btn .kiosk-studio-fit-btn__label {
  color: var(--ksp-muted);
}
#kiosk-studio-inline .kiosk-studio-transition-btn .kiosk-studio-fit-btn__desc,
#kiosk-studio-inline .kiosk-studio-fit-btn .kiosk-studio-fit-btn__desc {
  color: var(--ksp-faint);
}
#kiosk-studio-inline .kiosk-studio-transition-btn .kiosk-studio-fit-btn__visual,
#kiosk-studio-inline .kiosk-studio-fit-btn .kiosk-studio-fit-btn__visual {
  border-color: var(--ksp-border-2);
  background: var(--ksp-wash-1);
}
#kiosk-studio-inline .kiosk-studio-transition-btn .kiosk-studio-fit-btn__visual::after,
#kiosk-studio-inline .kiosk-studio-fit-btn .kiosk-studio-fit-btn__visual::after {
  background: rgba(var(--ksp-accent-rgb), 0.45);
}
#kiosk-studio-inline .kiosk-studio-transition-btn:hover,
#kiosk-studio-inline .kiosk-studio-fit-btn:hover {
  border-color: var(--ksp-border-2);
  background: var(--ksp-surface-3);
}
#kiosk-studio-inline .kiosk-studio-transition-btn.active,
#kiosk-studio-inline .kiosk-studio-fit-btn.active {
  background: rgba(var(--ksp-accent-rgb), 0.14);
  border-color: rgba(var(--ksp-accent-rgb), 0.55);
}
#kiosk-studio-inline .kiosk-studio-transition-btn.active .kiosk-studio-transition-btn__icon,
#kiosk-studio-inline .kiosk-studio-fit-btn.active .kiosk-studio-transition-btn__icon {
  color: var(--ksp-accent-2);
}
#kiosk-studio-inline .kiosk-studio-transition-btn.active .kiosk-studio-transition-btn__label,
#kiosk-studio-inline .kiosk-studio-transition-btn.active .kiosk-studio-fit-btn__label,
#kiosk-studio-inline .kiosk-studio-fit-btn.active .kiosk-studio-transition-btn__label,
#kiosk-studio-inline .kiosk-studio-fit-btn.active .kiosk-studio-fit-btn__label {
  color: var(--ksp-text);
  font-weight: 700;
}
#kiosk-studio-inline .kiosk-studio-apply-all {
  width: 100%;
  justify-content: center;
  margin-top: 10px;
  padding: 7px 10px;
  border: 1px dashed var(--ksp-border);
  border-radius: 8px;
  color: var(--ksp-faint);
  white-space: nowrap;
}
#kiosk-studio-inline .kiosk-studio-apply-all md-icon {
  color: inherit !important;
}
#kiosk-studio-inline .kiosk-studio-apply-all:hover {
  color: var(--ksp-accent-2);
  background: rgba(var(--ksp-accent-rgb), 0.08);
  border-color: rgba(var(--ksp-accent-rgb), 0.4);
}
#kiosk-studio-inline .kiosk-studio-apply-all--danger:hover {
  color: #e5453a;
  background: rgba(229, 57, 53, 0.1);
  border-color: rgba(229, 57, 53, 0.4);
}
#kiosk-studio-inline .kiosk-studio-ghost-btn {
  border: 1px dashed var(--ksp-border-2);
  color: var(--ksp-muted);
}
#kiosk-studio-inline .kiosk-studio-ghost-btn:hover {
  border-color: rgba(var(--ksp-accent-rgb), 0.5);
  color: var(--ksp-accent-2);
  background: rgba(var(--ksp-accent-rgb), 0.06);
}
#kiosk-studio-inline .kiosk-studio-time-row__sep {
  color: var(--ksp-faint);
}
#kiosk-studio-inline .kiosk-studio-timeline {
  background: var(--ksp-surface);
  border-top: 1px solid var(--ksp-border);
}
#kiosk-studio-inline .kiosk-studio-timeline__header {
  background: transparent;
  border-bottom: 1px solid var(--ksp-border);
  padding: 7px 16px;
}
#kiosk-studio-inline .kiosk-studio-timeline__label {
  color: var(--ksp-faint);
  font-size: 10.5px;
  letter-spacing: 0.09em;
}
#kiosk-studio-inline .kiosk-studio-timeline__stats {
  color: var(--ksp-faint);
}
#kiosk-studio-inline .kiosk-studio-timeline__duration-track {
  background: var(--ksp-surface-3);
}
#kiosk-studio-inline .kiosk-studio-timeline__card {
  background: var(--ksp-surface-2);
  border: 1.5px solid var(--ksp-border);
  border-radius: 10px;
  box-shadow: var(--ksp-shadow-card);
}
#kiosk-studio-inline .kiosk-studio-timeline__card:hover {
  border-color: var(--ksp-border-2);
}
#kiosk-studio-inline .kiosk-studio-timeline__card.selected {
  border-color: var(--ksp-accent);
  box-shadow: 0 0 0 1px rgba(var(--ksp-accent-rgb), 0.4), var(--ksp-shadow-card-selected);
}
#kiosk-studio-inline .kiosk-studio-timeline__card.drop-target {
  border-color: var(--ksp-accent-2);
  border-style: dashed;
}
#kiosk-studio-inline .kiosk-studio-timeline__card.playing {
  border-color: rgba(var(--ksp-accent-rgb), 0.75);
}
#kiosk-studio-inline .kiosk-studio-timeline__badge {
  background: var(--ksp-surface-3);
  color: var(--ksp-muted);
  border: 1px solid var(--ksp-border-2);
}
#kiosk-studio-inline .kiosk-studio-timeline__badge.selected {
  background: var(--ksp-accent);
  color: #fff;
  border-color: var(--ksp-accent);
}
#kiosk-studio-inline .kiosk-studio-timeline__delete {
  background: rgba(0, 0, 0, 0.55);
}
#kiosk-studio-inline .kiosk-studio-timeline__delete md-icon {
  color: rgba(255, 255, 255, 0.85) !important;
}
#kiosk-studio-inline .kiosk-studio-timeline__delete:hover {
  background: rgba(229, 57, 53, 0.9);
}
#kiosk-studio-inline .kiosk-studio-timeline__transition .kiosk-studio-timeline__transition-icon {
  background: var(--ksp-surface-2);
  border: 1px solid var(--ksp-border-2);
  color: var(--ksp-muted);
}
#kiosk-studio-inline .kiosk-studio-timeline__transition .kiosk-studio-timeline__transition-line {
  background: var(--ksp-border-2);
}
#kiosk-studio-inline .kiosk-studio-timeline__transition:hover .kiosk-studio-timeline__transition-icon {
  border-color: rgba(var(--ksp-accent-rgb), 0.55);
  color: var(--ksp-text);
}
#kiosk-studio-inline .kiosk-studio-timeline__transition.selected .kiosk-studio-timeline__transition-icon {
  background: rgba(var(--ksp-accent-rgb), 0.18);
  border-color: var(--ksp-accent);
  color: var(--ksp-accent-2);
}
#kiosk-studio-inline .kiosk-studio-timeline__loop-badge {
  color: var(--ksp-faint);
}
#kiosk-studio-inline .kiosk-studio-timeline__add {
  min-width: 96px;
  border: 1.5px dashed var(--ksp-border-2);
  border-radius: 10px;
  background: transparent;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
}
#kiosk-studio-inline .kiosk-studio-timeline__add .kiosk-studio-timeline__add-icon {
  color: var(--ksp-faint) !important;
}
#kiosk-studio-inline .kiosk-studio-timeline__add .kiosk-studio-timeline__add-label {
  color: var(--ksp-faint);
  font-size: 9.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  text-align: center;
  line-height: 1.3;
  max-width: 84px;
}
#kiosk-studio-inline .kiosk-studio-timeline__add:hover {
  border-color: rgba(var(--ksp-accent-rgb), 0.55);
  background: rgba(var(--ksp-accent-rgb), 0.05);
}
#kiosk-studio-inline .kiosk-studio-timeline__add:hover .kiosk-studio-timeline__add-icon {
  color: var(--ksp-accent-2) !important;
}
#kiosk-studio-inline .kiosk-studio-timeline__add:hover .kiosk-studio-timeline__add-label {
  color: var(--ksp-accent-2);
}
#kiosk-studio-inline .kiosk-studio-timeline__flags {
  bottom: 30px;
  right: 6px;
  top: auto;
}
#kiosk-studio-inline .kiosk-studio-timeline__flags md-icon {
  background: rgba(0, 0, 0, 0.6);
  color: rgba(255, 255, 255, 0.9) !important;
}
#kiosk-studio-inline .kiosk-studio-drop-overlay {
  background: rgba(16, 19, 23, 0.45);
  backdrop-filter: blur(24px) saturate(1.1);
  border: 2px dashed rgba(var(--ksp-accent-rgb), 0.6);
}
#kiosk-studio-inline .kiosk-studio-drop-overlay__inner {
  background: var(--ksp-surface);
  border: 1px solid var(--ksp-border-2);
  box-shadow: var(--ksp-shadow-menu);
}
#kiosk-studio-inline .kiosk-studio-drop-overlay__inner p {
  color: var(--ksp-text);
}
#kiosk-studio-inline .kiosk-studio-drop-overlay__inner md-icon {
  color: var(--ksp-accent-2) !important;
}
#kiosk-studio-inline .kiosk-studio-context-menu {
  background: var(--ksp-surface);
  backdrop-filter: blur(24px);
  border: 1px solid var(--ksp-border-2);
  box-shadow: var(--ksp-shadow-menu);
}
#kiosk-studio-inline .kiosk-studio-context-menu button {
  color: var(--ksp-text);
}
#kiosk-studio-inline .kiosk-studio-context-menu button md-icon {
  color: var(--ksp-muted) !important;
}
#kiosk-studio-inline .kiosk-studio-context-menu button:hover {
  background: var(--ksp-wash-2);
}
#kiosk-studio-inline .kiosk-studio-context-menu button.danger {
  color: #e5453a;
}
#kiosk-studio-inline .kiosk-studio-context-menu button.danger md-icon {
  color: #e5453a !important;
}
#kiosk-studio-inline .kiosk-studio-shortcuts {
  background: rgba(10, 12, 15, 0.5);
  backdrop-filter: blur(24px);
}
#kiosk-studio-inline .kiosk-studio-shortcuts__panel {
  background: var(--ksp-surface);
  border: 1px solid var(--ksp-border-2);
  box-shadow: var(--ksp-shadow-menu);
}
#kiosk-studio-inline .kiosk-studio-shortcuts__header {
  padding-bottom: 14px;
  border-bottom: 1px solid var(--ksp-border);
}
#kiosk-studio-inline .kiosk-studio-shortcuts__header h3 {
  color: var(--ksp-text);
}
#kiosk-studio-inline .kiosk-studio-shortcuts__header .md-icon-button md-icon {
  color: var(--ksp-muted) !important;
}
#kiosk-studio-inline .kiosk-studio-shortcut {
  color: var(--ksp-muted);
}
#kiosk-studio-inline .kiosk-studio-shortcut span {
  color: var(--ksp-muted) !important;
}
#kiosk-studio-inline .kiosk-studio-shortcut kbd {
  background: var(--ksp-surface-3);
  border: 1px solid var(--ksp-border-2);
  border-bottom-width: 2px;
  color: var(--ksp-text);
}

.kiosk-studio-sync-note {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  margin: 12px 12px 0;
  padding: 10px 12px;
  border-radius: 9px;
  border: 1px solid rgba(var(--ksp-ai-rgb), 0.3);
  background: rgba(var(--ksp-ai-rgb), 0.08);
}
.kiosk-studio-sync-note md-icon {
  color: var(--ksp-ai) !important;
  font-size: 16px !important;
  max-width: 16px !important;
  max-height: 16px !important;
  flex-shrink: 0;
  margin-top: 1px;
}
.kiosk-studio-sync-note__title {
  margin: 0;
  font-size: 12px;
  font-weight: 700;
  color: var(--ksp-text);
  line-height: 1.35;
}
.kiosk-studio-sync-note__desc {
  margin: 2px 0 0;
  font-size: 11.5px;
  color: var(--ksp-muted);
  line-height: 1.4;
}
.kiosk-studio-sync-note--leader {
  border-color: rgba(234, 179, 8, 0.35);
  background: rgba(234, 179, 8, 0.1);
}
.kiosk-studio-sync-note--leader md-icon {
  color: #b8860b !important;
}

.kiosk-studio-props__lock {
  margin-left: auto;
  opacity: 0.75;
}

.kiosk-studio-props__section--locked .kiosk-studio-range,
.kiosk-studio-props__section--locked .kiosk-studio-number-input,
.kiosk-studio-props__section--locked .kiosk-studio-preset-btn,
.kiosk-studio-props__section--locked .kiosk-studio-transition-btn {
  opacity: 0.5;
  cursor: not-allowed;
}

.public-links {
  padding: 4px 4px;
}
.public-links .url-txt {
  font-size: 13px;
  color: var(--an-text-muted);
  margin: 12px;
}
.public-links .link-card {
  font-size: 10px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.7px !important;
  color: var(--an-text-muted) !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
}
.public-links .link-card md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  color: var(--an-text-faint) !important;
}
.public-links .link-title {
  margin: 4px 0 0 4px;
  font-weight: 600;
  color: var(--an-text);
}
.public-links .link-url {
  border: 1px solid var(--an-border);
  padding: 5px;
  border-radius: 6px;
}
.public-links md-card.flat {
  background: var(--an-surface) !important;
  border: 1px solid var(--an-border) !important;
  border-radius: var(--an-radius) !important;
  box-shadow: var(--an-shadow) !important;
  transition: transform 0.2s, box-shadow 0.2s;
  overflow: hidden;
  position: relative;
}
.public-links md-card.flat::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 3px;
  height: 100%;
  background: var(--an-border);
  transition: background 0.2s;
}
.public-links md-card.flat:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.07) !important;
}
.public-links md-card.flat:hover::before {
  background: var(--an-primary);
}
.public-links md-card.flat md-card-title {
  padding: 12px 16px 6px !important;
}
.public-links md-card.flat md-card-content {
  padding: 0 16px 14px 16px !important;
}
.public-links md-card.flat .md-headline {
  font-size: 22px !important;
  font-weight: 800 !important;
  color: var(--an-text) !important;
  letter-spacing: -0.5px !important;
  line-height: 1.1 !important;
}

.waitry-dark-theme .public-links md-card.flat {
  background: var(--an-surface) !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
}

.home-root {
  background: var(--an-bg);
  min-height: 100%;
}

.home-root md-icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
}

.home-container {
  width: 100%;
  max-width: var(--an-content-max-width);
  margin: 0 auto;
  padding: 24px 20px 80px;
  box-sizing: border-box;
}

.home-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 16px;
  align-items: stretch;
  margin-bottom: 16px;
}

.home-card--full {
  grid-column: span 6;
}

.home-card--wide {
  grid-column: span 4;
}

.home-card--half {
  grid-column: span 3;
}

.home-card--third {
  grid-column: span 2;
}

.home-card--attention, .home-card--onboarding_hero {
  background: none;
  border: none;
  box-shadow: none;
  overflow: visible;
}
.home-card--attention:hover, .home-card--onboarding_hero:hover {
  box-shadow: none;
  border-color: transparent;
}

.home-card--onboarding_hero .home-onboarding {
  margin-bottom: 0;
}

.home-slot.home-card--onboarding_hero {
  margin-bottom: 16px;
}

.home-card {
  min-width: 0;
  display: flex;
  flex-direction: column;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  box-shadow: var(--an-shadow-sm);
  overflow: hidden;
  animation: anFadeUp 0.4s ease both;
  transition: box-shadow 0.2s, border-color 0.2s;
}
.home-card:hover {
  box-shadow: var(--an-shadow-md);
  border-color: var(--an-border-hover);
}
.home-card > ng-include, .home-card > [ng-include] {
  display: contents;
}
.home-card--error {
  border-color: var(--an-rose);
}

.home-card-header {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 14px 18px 12px 24px;
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
  border-bottom: 1px solid var(--an-border);
  position: relative;
  --an-icon-size: 17px;
}
.home-card-header::before {
  content: "";
  position: absolute;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  width: 3px;
  height: 16px;
  border-radius: 4px;
  background: transparent;
  transition: background 0.2s ease;
}
.home-card-header md-icon {
  flex-shrink: 0;
}
.home-card-header--emerald::before {
  background: var(--an-emerald) !important;
}
.home-card-header--emerald > md-icon:first-child {
  color: var(--an-emerald) !important;
}
.home-card-header--violet::before {
  background: var(--an-violet) !important;
}
.home-card-header--violet > md-icon:first-child {
  color: var(--an-violet) !important;
}
.home-card-header--rose::before {
  background: var(--an-rose) !important;
}
.home-card-header--rose > md-icon:first-child {
  color: var(--an-rose) !important;
}
.home-card-header--sky::before {
  background: var(--an-sky) !important;
}
.home-card-header--sky > md-icon:first-child {
  color: var(--an-sky) !important;
}
.home-card-header--amber::before {
  background: var(--an-amber) !important;
}
.home-card-header--amber > md-icon:first-child {
  color: var(--an-amber) !important;
}
.home-card-header--orange::before {
  background: var(--an-orange) !important;
}
.home-card-header--orange > md-icon:first-child {
  color: var(--an-orange) !important;
}

.home-card-title {
  margin: 0;
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
  font-family: inherit;
  line-height: 1.3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.home-card-meta {
  font-size: 11px;
  font-weight: 600;
  color: var(--an-text-muted);
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-pill);
  padding: 3px 10px;
  margin-left: auto;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  white-space: nowrap;
}
.home-card-meta--open {
  color: var(--an-emerald);
  border-color: var(--an-emerald);
}
.home-card-meta--night {
  color: var(--an-violet);
  border-color: var(--an-violet);
}

.home-card-body {
  padding: 18px 20px;
  min-height: 80px;
  flex: 1;
}
.home-card-body--no-pad {
  padding: 0;
}

.home-card-footer {
  padding: 10px 20px;
  border-top: 1px solid var(--an-border);
  background: var(--an-surface2);
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}

.home-card-link--meta {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.4px;
}

.home-delta--sm {
  font-size: 10px;
  padding: 1px 6px;
}

.home-card-link {
  font-size: 12px;
  font-weight: 600;
  color: var(--an-rose);
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  font-family: inherit;
  transition: opacity 0.2s;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  --an-icon-size: 14px;
}
.home-card-link md-icon {
  color: inherit !important;
}
.home-card-link:hover {
  opacity: 0.75;
}

.home-icon-btn {
  background: none;
  border: none;
  cursor: pointer;
  padding: 4px;
  margin-left: auto;
  color: var(--an-text-muted);
  border-radius: var(--an-radius-sm);
  display: inline-flex;
  --an-icon-size: 16px;
}
.home-icon-btn md-icon {
  color: inherit !important;
}
.home-icon-btn:hover {
  color: var(--an-text);
  background: var(--an-surface2);
}

.home-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 80px;
  color: var(--an-text-muted);
  font-size: 13px;
  text-align: center;
  --an-icon-size: 28px;
}
.home-empty md-icon {
  opacity: 0.3;
}
.home-empty p {
  margin: 0;
  max-width: 32ch;
  line-height: 1.5;
}
.home-empty--inline {
  min-height: 0;
  padding: 8px 0;
}

.home-signal-error {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  min-height: 56px;
  color: var(--an-text-muted);
  font-size: 13px;
  --an-icon-size: 18px;
}
.home-signal-error > md-icon {
  color: var(--an-amber) !important;
}
.home-signal-error__text {
  flex: 1;
  min-width: 0;
}

.home-retry {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-pill);
  padding: 4px 10px;
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text);
  cursor: pointer;
  font-family: inherit;
  --an-icon-size: 14px;
}
.home-retry md-icon {
  color: inherit !important;
}
.home-retry:hover {
  border-color: var(--an-border-hover);
  background: var(--an-surface);
}

.home-slot > ng-include, .home-slot > [ng-include] {
  display: contents;
}

.home-slot--attention {
  display: block;
  margin-bottom: 16px;
}

.home-attention {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}
.home-attention__label {
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  color: var(--an-text-muted);
  flex-shrink: 0;
}
.home-attention__chips {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  flex: 1;
  min-width: 0;
}

.home-att-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 12px 7px 8px;
  border-radius: var(--an-radius-pill);
  border: 1px solid var(--an-border);
  background: var(--an-surface);
  box-shadow: var(--an-shadow-sm);
  font-family: inherit;
  font-size: 12.5px;
  font-weight: 600;
  color: var(--an-text);
  cursor: pointer;
  text-align: left;
  max-width: 100%;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
  --an-icon-size: 14px;
}
.home-att-chip md-icon {
  color: var(--an-text-muted) !important;
}
.home-att-chip:hover:not([disabled]) {
  transform: translateY(-1px);
  box-shadow: var(--an-shadow-md);
}
.home-att-chip[disabled] {
  cursor: default;
}
.home-att-chip__sev {
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 2px 7px;
  border-radius: var(--an-radius-pill);
  background: var(--an-surface2);
  color: var(--an-text-muted);
  flex-shrink: 0;
}
.home-att-chip__text {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.home-att-chip--critical {
  border-color: var(--an-rose);
}
.home-att-chip--critical .home-att-chip__sev {
  background: var(--an-rose-soft);
  color: var(--an-rose);
}
.home-att-chip--warn {
  border-color: var(--an-amber);
}
.home-att-chip--warn .home-att-chip__sev {
  background: var(--an-amber-soft);
  color: var(--an-amber);
}
.home-att-chip--info .home-att-chip__sev {
  background: var(--an-sky-soft);
  color: var(--an-sky);
}
.home-att-chip--good .home-att-chip__sev {
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
}
.home-att-chip--more {
  cursor: default;
  color: var(--an-text-muted);
  font-weight: 700;
}

.home-hero {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  box-shadow: var(--an-shadow-sm);
  margin-bottom: 16px;
  overflow: hidden;
  position: relative;
  padding: 0 28px 8px;
}
.home-hero > ng-include, .home-hero > [ng-include] {
  display: contents;
}
.home-hero::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--an-rose), var(--an-orange), var(--an-amber));
}

.home-hero-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 24px 0 16px;
  gap: 24px;
}

.home-hero-content {
  display: flex;
  flex-direction: column;
  gap: 12px;
  flex: 1;
  min-width: 0;
}

.home-greeting {
  display: flex;
  align-items: baseline;
  gap: 12px;
  flex-wrap: wrap;
}

.home-greeting-text {
  margin: 0;
  font-size: 24px;
  font-weight: 800;
  color: var(--an-text);
  letter-spacing: -0.5px;
  font-family: inherit;
  line-height: 1.2;
}

.home-dayline {
  font-size: 13px;
  font-weight: 500;
  color: var(--an-text-muted);
}

.home-hero-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}

.home-scope-toggle {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  padding: 2px;
  gap: 2px;
}
.home-scope-toggle__btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 30px;
  padding: 0 12px;
  border: 0;
  border-radius: calc(var(--an-radius-sm) - 2px);
  background: transparent;
  color: var(--an-text-muted);
  font-family: inherit;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  max-width: 220px;
  --an-icon-size: 14px;
}
.home-scope-toggle__btn md-icon {
  color: inherit !important;
}
.home-scope-toggle__btn {
  transition: background 0.15s, color 0.15s;
}
.home-scope-toggle__btn:hover {
  background: var(--an-bg-subtle, var(--an-surface));
  color: var(--an-text);
}
.home-scope-toggle__btn--active, .home-scope-toggle__btn--active:hover {
  background: var(--an-rose-soft);
  color: var(--an-rose);
}
.home-scope-toggle__btn:focus-visible {
  outline: 2px solid var(--an-primary);
  outline-offset: 1px;
}
.home-scope-toggle__name {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.home-mise-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  background: linear-gradient(135deg, var(--an-rose-soft), var(--an-orange-soft));
  border: 1px solid var(--an-rose-ring);
  border-radius: var(--an-radius-pill);
  padding: 5px 12px;
  flex-shrink: 0;
  --an-icon-size: 12px;
}
.home-mise-badge md-icon {
  color: var(--an-rose) !important;
}
.home-mise-badge .mise-logo {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  background: linear-gradient(135deg, var(--an-rose), var(--an-orange));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.home-briefing-card {
  background: linear-gradient(135deg, var(--an-rose-soft), transparent);
  border: 1px solid var(--an-rose-ring);
  border-left: 3px solid var(--an-rose);
  border-radius: 0 var(--an-radius) var(--an-radius) 0;
  padding: 20px 24px;
  margin-bottom: 16px;
}

.home-briefing-toolbar {
  margin-bottom: 10px;
}

.home-briefing-stream {
  font-size: 15px;
  color: var(--an-text);
  line-height: 1.8;
  opacity: 0;
  animation: anFadeUp 0.5s ease-out 0.1s forwards;
}

.home-briefing-body {
  white-space: pre-wrap;
  word-break: break-word;
}

@keyframes miseCursorBlink {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
}
.home-briefing-cursor {
  display: inline-block;
  width: 2px;
  height: 17px;
  background: var(--an-rose);
  margin-left: 1px;
  vertical-align: text-bottom;
  border-radius: 1px;
  animation: miseCursorBlink 0.8s step-end infinite;
}

.home-briefing-text {
  font-size: 14.5px;
  color: var(--an-text-muted);
  line-height: 1.7;
}
.home-briefing-text--muted {
  opacity: 0.85;
}

.home-briefing-shimmer {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.home-shimmer-line {
  display: block;
  height: 12px;
  border-radius: 6px;
  background: linear-gradient(90deg, var(--an-surface2) 25%, var(--an-surface) 50%, var(--an-surface2) 75%);
  background-size: 200% 100%;
  animation: anSkeleton 1.4s infinite;
}
.home-shimmer-line--lg {
  width: 90%;
}
.home-shimmer-line--md {
  width: 70%;
}
.home-shimmer-line--sm {
  width: 45%;
}

.home-briefing-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-top: 14px;
  flex-wrap: wrap;
}

.home-briefing-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  animation: briefingActionsIn 0.4s ease-out both;
}

@keyframes briefingActionsIn {
  from {
    opacity: 0;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.home-briefing-action {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: var(--an-rose-soft);
  border: 1px solid var(--an-rose-ring);
  border-radius: var(--an-radius-pill);
  padding: 6px 14px 6px 10px;
  font-size: 12.5px;
  font-weight: 600;
  color: var(--an-rose);
  font-family: inherit;
  cursor: pointer;
  transition: all 0.2s ease;
  letter-spacing: 0.01em;
  --an-icon-size: 15px;
}
.home-briefing-action md-icon {
  color: inherit !important;
}
.home-briefing-action:hover {
  border-color: var(--an-rose);
  transform: translateY(-1px);
  box-shadow: var(--an-shadow-sm);
}
.home-briefing-action:active {
  transform: translateY(0);
  box-shadow: none;
}

.home-hero-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding-bottom: 4px;
}

.home-chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-pill);
  padding: 6px 14px 6px 10px;
  font-size: 12px;
  font-weight: 500;
  color: var(--an-text);
  font-family: inherit;
  cursor: pointer;
  transition: all 0.2s;
  --an-icon-size: 14px;
}
.home-chip md-icon {
  color: inherit !important;
}
.home-chip:hover {
  background: var(--an-rose-soft);
  border-color: var(--an-rose);
  color: var(--an-rose);
  transform: translateY(-1px);
}

.home-delta {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-size: 11px;
  font-weight: 700;
  padding: 3px 7px;
  border-radius: var(--an-radius-sm);
  border: 1px solid transparent;
  letter-spacing: 0.01em;
  --an-icon-size: 11px;
}
.home-delta md-icon {
  color: inherit !important;
}
.home-delta--up {
  color: var(--an-emerald);
  background: var(--an-emerald-soft);
  border-color: transparent;
}
.home-delta--down {
  color: var(--an-rose);
  background: var(--an-rose-soft);
  border-color: transparent;
}
.home-delta--neutral {
  color: var(--an-text-muted);
  background: var(--an-surface2);
  border-color: var(--an-border);
}

.home-kpi-section {
  margin-bottom: 16px;
}
.home-kpi-section > ng-include, .home-kpi-section > [ng-include] {
  display: contents;
}

.home-kpi-header {
  display: flex;
  align-items: baseline;
  gap: 12px;
  flex-wrap: wrap;
  padding: 0 4px 10px;
}
.home-kpi-header__title {
  margin: 0;
  font-size: 13px;
  font-weight: 800;
  color: var(--an-text);
  font-family: inherit;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.home-kpi-header__basis {
  font-size: 12px;
  color: var(--an-text-muted);
  cursor: help;
}
.home-kpi-header--recap .home-kpi-header__title {
  color: var(--an-amber);
}
.home-kpi-header__info {
  --an-icon-size: 15px;
  color: var(--an-text-muted) !important;
  cursor: help;
  align-self: center;
}

.home-kpi-strip {
  display: grid;
  grid-template-columns: 1.4fr repeat(4, minmax(0, 1fr));
  gap: 16px;
}
.home-kpi-strip--ops {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.home-kpi-card {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  box-shadow: var(--an-shadow-sm);
  padding: 16px 18px 14px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
  animation: anFadeUp 0.4s ease both;
  transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
}
.home-kpi-card[role=button] {
  cursor: pointer;
}
.home-kpi-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--an-shadow-md);
  border-color: var(--an-border-hover);
}
.home-kpi-card:focus-visible {
  outline: 2px solid var(--an-primary);
  outline-offset: 2px;
}
.home-kpi-card--focus {
  background: linear-gradient(135deg, var(--an-rose), var(--an-orange));
  border-color: transparent;
}
.home-kpi-card--focus .home-kpi-label, .home-kpi-card--focus .home-kpi-value, .home-kpi-card--focus .home-kpi-value small {
  color: #fff !important;
}
.home-kpi-card--focus .home-kpi-icon {
  background: rgba(255, 255, 255, 0.2);
}
.home-kpi-card--focus .home-kpi-icon md-icon {
  color: #fff !important;
}
.home-kpi-card--focus .home-kpi-period {
  background: rgba(255, 255, 255, 0.18);
  border-color: transparent;
  color: #fff;
}
.home-kpi-card--focus .home-delta {
  background: rgba(255, 255, 255, 0.18);
  border-color: transparent;
  color: #fff;
}
.home-kpi-card--focus .home-kpi-value {
  font-size: 34px;
}
.home-kpi-card--focus .home-retry {
  background: rgba(255, 255, 255, 0.18);
  border-color: transparent;
  color: #fff;
}
.home-kpi-card--focus .home-kpi-skeleton {
  background: rgba(255, 255, 255, 0.25);
}

.home-kpi-head {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.home-kpi-icon {
  width: 30px;
  height: 30px;
  border-radius: 9px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--an-surface2);
  --an-icon-size: 16px;
}
.home-kpi-icon md-icon {
  color: var(--an-text-muted) !important;
}
.home-kpi-icon--revenue, .home-kpi-icon--best {
  background: var(--an-rose-soft);
}
.home-kpi-icon--revenue md-icon, .home-kpi-icon--best md-icon {
  color: var(--an-rose) !important;
}
.home-kpi-icon--orders, .home-kpi-icon--open, .home-kpi-icon--kiosk, .home-kpi-icon--kiosks, .home-kpi-icon--busy_venues {
  background: var(--an-sky-soft);
}
.home-kpi-icon--orders md-icon, .home-kpi-icon--open md-icon, .home-kpi-icon--kiosk md-icon, .home-kpi-icon--kiosks md-icon, .home-kpi-icon--busy_venues md-icon {
  color: var(--an-sky) !important;
}
.home-kpi-icon--open_venues {
  background: var(--an-violet-soft, var(--an-sky-soft));
}
.home-kpi-icon--open_venues md-icon {
  color: var(--an-violet) !important;
}
.home-kpi-icon--ticket, .home-kpi-icon--prep, .home-kpi-icon--deliver {
  background: var(--an-amber-soft);
}
.home-kpi-icon--ticket md-icon, .home-kpi-icon--prep md-icon, .home-kpi-icon--deliver md-icon {
  color: var(--an-amber) !important;
}
.home-kpi-icon--covers, .home-kpi-icon--bookings, .home-kpi-icon--conversion, .home-kpi-icon--rating {
  background: var(--an-emerald-soft);
}
.home-kpi-icon--covers md-icon, .home-kpi-icon--bookings md-icon, .home-kpi-icon--conversion md-icon, .home-kpi-icon--rating md-icon {
  color: var(--an-emerald) !important;
}
.home-kpi-icon--calls, .home-kpi-icon--cancels, .home-kpi-icon--alerts, .home-kpi-icon--soldout, .home-kpi-icon--channels, .home-kpi-icon--occupancy {
  background: var(--an-orange-soft);
}
.home-kpi-icon--calls md-icon, .home-kpi-icon--cancels md-icon, .home-kpi-icon--alerts md-icon, .home-kpi-icon--soldout md-icon, .home-kpi-icon--channels md-icon, .home-kpi-icon--occupancy md-icon {
  color: var(--an-orange) !important;
}

.home-kpi-label {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  color: var(--an-text-muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.home-kpi-value {
  font-size: 28px;
  font-weight: 800;
  color: var(--an-text);
  letter-spacing: -0.8px;
  line-height: 1;
}
.home-kpi-value small {
  font-size: 14px;
  font-weight: 600;
  color: var(--an-text-muted);
  letter-spacing: 0;
}
.home-kpi-value--muted {
  color: var(--an-text-muted);
  font-size: 20px;
}
.home-kpi-value--label {
  font-size: 12px !important;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.3;
  text-transform: none;
}

.home-kpi-skeleton {
  height: 28px;
  width: 60%;
  border-radius: 6px;
  background: linear-gradient(90deg, var(--an-surface2) 25%, var(--an-surface) 50%, var(--an-surface2) 75%);
  background-size: 200% 100%;
  animation: anSkeleton 1.4s infinite;
}

.home-kpi-foot {
  margin-top: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-height: 22px;
}
.home-kpi-foot .home-kpi-period {
  margin-left: auto;
}

.home-kpi-period {
  display: inline-block;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-pill);
  padding: 3px 10px;
  font-size: 10px;
  font-weight: 700;
  color: var(--an-text-muted);
  letter-spacing: 0.3px;
  text-transform: uppercase;
  white-space: nowrap;
}

.home-kpi-hint {
  margin: 8px 4px 0;
}

.home-kpi-projection {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: -4px 4px 12px;
  font-size: 12px;
  color: var(--an-text-muted);
  line-height: 1.4;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.home-kpi-projection md-icon {
  --an-icon-size: 14px;
  flex-shrink: 0;
  color: var(--an-text-faint) !important;
}
.home-kpi-projection span {
  overflow: hidden;
  text-overflow: ellipsis;
}

.home-kpi-group + .home-kpi-group {
  margin-top: 20px;
}

.home-kpi-section--portfolio {
  margin-bottom: 16px;
}

.home-kpi-idle {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 10px 4px 0;
}
.home-kpi-idle md-icon {
  --an-icon-size: 14px;
  color: var(--an-text-faint) !important;
}

.home-pulse-caption {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 10px 20px 0;
  color: var(--an-amber);
  font-weight: 600;
}
.home-pulse-caption md-icon {
  --an-icon-size: 14px;
  color: var(--an-amber) !important;
}

.home-card-body--tiles {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: 10px;
}

.home-pulse-tile {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  padding: 12px 14px;
  min-height: 92px;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  text-align: left;
  font-family: inherit;
  cursor: pointer;
  transition: border-color 0.15s, transform 0.15s;
}
.home-pulse-tile:hover:not([disabled]) {
  border-color: var(--an-border-hover);
  transform: translateY(-1px);
}
.home-pulse-tile[disabled] {
  cursor: default;
}
.home-pulse-tile__icon {
  --an-icon-size: 16px;
}
.home-pulse-tile__icon md-icon {
  color: var(--an-text-muted) !important;
}
.home-pulse-tile__value {
  font-size: 24px;
  font-weight: 800;
  color: var(--an-text);
  letter-spacing: -0.5px;
  line-height: 1;
}
.home-pulse-tile__value small {
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text-muted);
}
.home-pulse-tile__value--muted {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text-muted);
  --an-icon-size: 16px;
}
.home-pulse-tile__label {
  font-size: 11px;
  font-weight: 600;
  color: var(--an-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.4px;
}
.home-pulse-tile__skeleton {
  display: block;
  height: 24px;
  width: 40%;
  border-radius: 6px;
  background: linear-gradient(90deg, var(--an-surface) 25%, var(--an-surface2) 50%, var(--an-surface) 75%);
  background-size: 200% 100%;
  animation: anSkeleton 1.4s infinite;
}
.home-pulse-tile--alert {
  border-color: var(--an-rose);
}
.home-pulse-tile--alert .home-pulse-tile__value {
  color: var(--an-rose);
}
.home-pulse-tile--alert .home-pulse-tile__icon md-icon {
  color: var(--an-rose) !important;
}
.home-pulse-tile--level-high {
  border-color: var(--an-orange);
}
.home-pulse-tile--level-high .home-pulse-tile__value {
  color: var(--an-orange);
}
.home-pulse-tile--level-medium {
  border-color: var(--an-amber);
}

.home-live {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  font-weight: 600;
  color: var(--an-text-muted);
  white-space: nowrap;
}
.home-live__dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--an-text-faint);
  flex-shrink: 0;
}
.home-live--on {
  color: var(--an-emerald);
}
.home-live--on .home-live__dot {
  background: var(--an-emerald);
  box-shadow: 0 0 0 3px var(--an-emerald-soft);
  animation: homeLivePulse 2s ease-in-out infinite;
}

@keyframes homeLivePulse {
  0%, 100% {
    box-shadow: 0 0 0 3px var(--an-emerald-soft);
  }
  50% {
    box-shadow: 0 0 0 5px var(--an-emerald-soft);
  }
}
.home-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

@keyframes homeValueBump {
  from {
    color: var(--an-sky);
    transform: translateY(-1px) scale(1.06);
  }
}
.home-pulse-tile--bump .home-pulse-tile__value,
.home-kiosk--bump .home-kiosk__orders strong,
.home-chanmix__row--bump .home-chanmix__count,
.home-kpi-card--bump .home-kpi-value {
  transform-origin: left center;
  animation: homeValueBump 0.7s ease-out;
}

.home-kiosk--bump .home-kiosk__orders strong {
  display: inline-block;
}

.home-pulse-tile--bump {
  border-color: var(--an-sky);
}

@media (prefers-reduced-motion: reduce) {
  .home-pulse-tile--bump .home-pulse-tile__value,
  .home-kiosk--bump .home-kiosk__orders strong,
  .home-chanmix__row--bump .home-chanmix__count,
  .home-kpi-card--bump .home-kpi-value {
    animation: none;
  }
  .home-live--on .home-live__dot {
    animation: none;
  }
}
.home-book__stats {
  display: flex;
  gap: 18px;
  flex-wrap: wrap;
  margin-bottom: 14px;
}
.home-book__stat {
  display: flex;
  flex-direction: column;
}
.home-book__stat strong {
  font-size: 24px;
  font-weight: 800;
  color: var(--an-text);
  letter-spacing: -0.5px;
  line-height: 1.1;
}
.home-book__stat span {
  font-size: 11px;
  color: var(--an-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.4px;
  font-weight: 600;
}
.home-book__next {
  border-top: 1px solid var(--an-border);
  padding-top: 12px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.home-book__eyebrow {
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  color: var(--an-text-faint);
}
.home-book__line {
  font-size: 13px;
  color: var(--an-text);
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  align-items: baseline;
}
.home-book__line strong {
  font-size: 15px;
}
.home-book__covers {
  color: var(--an-text-muted);
}

.home-mini-stats {
  display: flex;
  gap: 18px;
  flex-wrap: wrap;
}

.home-mini-stat {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.home-mini-stat strong {
  font-size: 24px;
  font-weight: 800;
  color: var(--an-text);
  letter-spacing: -0.5px;
  line-height: 1.1;
}
.home-mini-stat strong small {
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text-muted);
}
.home-mini-stat span {
  font-size: 11px;
  color: var(--an-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.4px;
  font-weight: 600;
}

.home-channel-list {
  display: flex;
  flex-direction: column;
}

.home-channel-row {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 0;
  font-size: 13px;
  border-bottom: 1px solid var(--an-border);
}
.home-channel-row:last-child {
  border-bottom: none;
}

.home-channel-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--an-text-faint);
  flex-shrink: 0;
}
.home-channel-dot--on {
  background: var(--an-emerald);
}
.home-channel-dot--off {
  background: var(--an-rose);
}

.home-channel-name {
  flex: 1;
  min-width: 0;
  font-weight: 600;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.home-channel-state {
  font-size: 11px;
  color: var(--an-text-muted);
  font-weight: 600;
}

.home-platform-list {
  margin-top: 6px;
}

.home-platform-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 0;
  border-bottom: 1px solid var(--an-border);
}
.home-platform-row:last-child {
  border-bottom: none;
}

.home-platform-name {
  font-size: 13px;
  font-weight: 600;
}

.home-plain-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.home-plain-list li {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: var(--an-text);
}
.home-plain-list__name {
  flex: 1;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.home-plain-list__tag {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  color: var(--an-rose);
  background: var(--an-rose-soft);
  border-radius: var(--an-radius-pill);
  padding: 2px 8px;
}

.home-review-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.home-review {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  font-size: 13px;
}
.home-review__score {
  flex-shrink: 0;
  min-width: 28px;
  height: 28px;
  border-radius: var(--an-radius-sm);
  background: var(--an-amber-soft);
  color: var(--an-amber);
  font-weight: 800;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 6px;
}
.home-review__text {
  color: var(--an-text);
  line-height: 1.5;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.home-bench-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.home-bench-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  font-size: 13px;
}

.home-bench-name {
  color: var(--an-text);
  font-weight: 600;
}

.home-bench-pos {
  font-size: 11px;
  font-weight: 700;
  padding: 3px 9px;
  border-radius: var(--an-radius-pill);
  background: var(--an-surface2);
  color: var(--an-text-muted);
}
.home-bench-pos--above {
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
}
.home-bench-pos--below {
  background: var(--an-rose-soft);
  color: var(--an-rose);
}

.home-checkup__line, .home-plan__line {
  margin: 0 0 10px;
  font-size: 13px;
  line-height: 1.55;
  color: var(--an-text);
}

.home-news__title {
  display: block;
  font-size: 14px;
  color: var(--an-text);
  margin-bottom: 6px;
}
.home-news__body {
  margin: 0 0 10px;
  font-size: 13px;
  line-height: 1.55;
  color: var(--an-text-muted);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.home-venue-list {
  display: flex;
  flex-direction: column;
  padding: 4px 0;
}

.home-venue {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 10px 20px;
  background: none;
  border: none;
  border-bottom: 1px solid var(--an-border);
  text-align: left;
  font-family: inherit;
  cursor: pointer;
  --an-icon-size: 14px;
}
.home-venue md-icon {
  color: var(--an-text-faint) !important;
}
.home-venue:last-child {
  border-bottom: none;
}
.home-venue:hover {
  background: var(--an-surface2);
}
.home-venue:hover md-icon {
  color: var(--an-rose) !important;
}
.home-venue:focus-visible {
  outline: 2px solid var(--an-primary);
  outline-offset: -2px;
}
.home-venue__avatar-wrap {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  overflow: hidden;
  flex-shrink: 0;
  background: var(--an-surface2);
}
.home-venue__avatar {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.home-venue__name {
  flex: 1;
  min-width: 0;
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.home-venue__meta {
  font-size: 12px;
  color: var(--an-text-muted);
  white-space: nowrap;
}

.home-portfolio__group + .home-portfolio__group {
  border-top: 2px solid var(--an-border);
}
.home-portfolio__head {
  padding: 10px 20px 4px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  color: var(--an-text-muted);
}
.home-portfolio__cols, .home-portfolio__row {
  display: grid;
  grid-template-columns: minmax(0, 2.2fr) 84px minmax(0, 1.4fr) minmax(0, 0.8fr) minmax(0, 0.8fr);
  gap: 12px;
  align-items: center;
  padding: 0 20px;
}
.home-portfolio__cols {
  padding-top: 8px;
  padding-bottom: 6px;
  border-bottom: 1px solid var(--an-border);
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-faint);
}
.home-portfolio__cols .home-portfolio__col--name {
  grid-column: span 2;
}
.home-portfolio__col--num, .home-portfolio__cell--num {
  text-align: right;
  justify-content: flex-end;
}
.home-portfolio__row {
  width: 100%;
  min-height: 50px;
  background: none;
  border: none;
  border-bottom: 1px solid var(--an-border);
  text-align: left;
  font-family: inherit;
  font-size: 13px;
  color: var(--an-text);
  cursor: pointer;
  transition: background 0.15s;
}
.home-portfolio__row:last-child {
  border-bottom: none;
}
.home-portfolio__row:hover {
  background: var(--an-surface2);
}
.home-portfolio__row:focus-visible {
  outline: 2px solid var(--an-primary);
  outline-offset: -2px;
}
.home-portfolio__row--active {
  background: var(--an-rose-soft);
}
.home-portfolio__row--active .home-portfolio__name {
  color: var(--an-rose);
}
.home-portfolio__row--active:hover {
  background: var(--an-rose-soft);
}
.home-portfolio__row--error .home-portfolio__name {
  color: var(--an-text-muted);
}
.home-portfolio__row--legacy {
  grid-template-columns: 24px minmax(0, 2fr) minmax(0, 1fr) 40px;
}
.home-portfolio__cell {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
.home-portfolio__cell--name {
  flex-direction: column;
  align-items: flex-start;
  gap: 1px;
}
.home-portfolio__cell--hot {
  font-weight: 800;
  color: var(--an-orange);
}
.home-portfolio__cell--unavailable {
  grid-column: 3/span 3;
  justify-content: flex-end;
  font-size: 12px;
  color: var(--an-text-faint);
  font-style: italic;
}
.home-portfolio__name {
  font-weight: 700;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}
.home-portfolio__city {
  font-size: 11px;
  color: var(--an-text-muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}
.home-portfolio__value {
  font-weight: 800;
  letter-spacing: -0.3px;
  white-space: nowrap;
}
.home-portfolio__value--muted {
  font-weight: 500;
  font-size: 11px;
  color: var(--an-text-faint);
}
.home-portfolio__rank {
  font-size: 11px;
  font-weight: 800;
  color: var(--an-text-muted);
  text-align: center;
}
.home-portfolio__alerts {
  background: var(--an-amber-soft);
  color: var(--an-amber);
}
.home-portfolio__hint {
  margin: 10px 20px 4px;
}

.home-locked {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px;
  border-radius: var(--an-radius);
  border: 1px dashed var(--an-border-strong);
  background: var(--an-surface2);
}
.home-locked__icon {
  width: 34px;
  height: 34px;
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  --an-icon-size: 16px;
}
.home-locked__icon md-icon {
  color: var(--an-text-muted) !important;
}
.home-locked__text {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.home-locked__title {
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
}
.home-locked__desc {
  font-size: 12px;
  color: var(--an-text-muted);
}

.home-card-body--trend {
  display: flex;
  flex-direction: column;
}

.home-spark-chart {
  display: flex;
  align-items: stretch;
  gap: 6px;
  --home-spark-label-h: 20px;
}

.home-spark-chart--hourly {
  --home-spark-label-h: 16px;
}

.home-card--trend_7d .home-spark-chart {
  flex: 1;
  height: auto;
  min-height: 128px;
}

.home-sparkline {
  display: flex;
  align-items: flex-end;
  gap: 10px;
  height: 128px;
  padding: 0 4px;
  position: relative;
  flex: 1;
  min-width: 0;
}

.home-spark-plot {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: var(--home-spark-label-h);
  pointer-events: none;
}

.home-spark-gridline {
  position: absolute;
  left: 0;
  right: 0;
  border-top: 1px dashed var(--an-border);
}

.home-spark-axis {
  flex: 0 0 46px;
  width: 46px;
  position: relative;
}

.home-spark-axis__plot {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: var(--home-spark-label-h);
}

.home-spark-axis__tick {
  position: absolute;
  left: 0;
  right: 0;
  transform: translateY(50%);
}

.home-spark-axis__label {
  display: block;
  font-size: 10px;
  font-weight: 600;
  color: var(--an-text-faint);
  text-align: right;
  line-height: 1;
  white-space: nowrap;
  padding-right: 6px;
}

.home-spark-col {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  height: 100%;
  cursor: pointer;
  position: relative;
  z-index: 1;
}
.home-spark-col:hover .home-spark-bar:not(.home-spark-bar--ghost) {
  background: var(--an-emerald);
  opacity: 0.8;
}

.home-spark-bar-wrap {
  flex: 1;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 2px;
  width: 100%;
}

.home-spark-bar {
  width: 100%;
  max-width: 44px;
  border-radius: 6px 6px 0 0;
  background: var(--an-emerald-soft);
  transition: height 0.8s cubic-bezier(0.4, 0, 0.2, 1), background 0.2s;
}
.home-spark-bar--today {
  background: var(--an-emerald);
}
.home-spark-bar--ghost {
  max-width: 14px;
  background: var(--an-border);
  border-radius: 4px 4px 0 0;
}

.home-spark-label {
  font-size: 10px;
  font-weight: 600;
  color: var(--an-text-muted);
  margin-top: 8px;
  text-transform: uppercase;
  letter-spacing: 0.3px;
}
.home-spark-label--today {
  color: var(--an-emerald);
  font-weight: 700;
}

.home-sparkline--hourly {
  gap: 3px;
  padding: 0;
  min-height: 128px;
}

.home-spark-col--hour {
  cursor: default;
}
.home-spark-col--hour:hover .home-spark-bar--front {
  opacity: 0.85;
}

.home-spark-bar-wrap--stack {
  position: relative;
}

.home-spark-bar--behind {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  max-width: none;
  width: 100%;
  margin: 0 auto;
  border-radius: 4px 4px 0 0;
  z-index: 0;
}

.home-spark-bar--front {
  position: relative;
  z-index: 1;
  max-width: none;
  width: 70%;
  border-radius: 4px 4px 0 0;
}

.home-spark-col--future .home-spark-bar--front {
  opacity: 0;
}

.home-spark-col--now .home-spark-bar--front {
  background: var(--an-emerald);
}

.home-spark-col--peak .home-spark-label {
  color: var(--an-text);
  font-weight: 700;
}

.home-spark-label--hidden {
  visibility: hidden;
}

.home-sparkline--hourly .home-spark-label {
  margin-top: 6px;
  font-size: 9px;
  letter-spacing: 0;
}

.home-spark-label--date {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1px;
  font-weight: 700;
  color: var(--an-text);
}

.home-spark-date {
  font-size: 8px;
  font-weight: 600;
  color: var(--an-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.2px;
  white-space: nowrap;
}

.home-curve-hint {
  margin: 8px 0 0;
}

.home-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 12px;
  font-size: 11px;
  color: var(--an-text-muted);
}
.home-legend__item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.home-legend__swatch {
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 3px;
  background: var(--an-emerald-soft);
}
.home-legend__swatch--bar {
  background: var(--an-emerald-soft);
}
.home-legend__swatch--now {
  background: var(--an-emerald);
}
.home-legend__swatch--fill {
  background: linear-gradient(90deg, var(--an-sky), var(--an-sky-soft));
}
.home-legend__swatch--ghost {
  width: 3px;
  height: 12px;
  border-radius: 2px;
  background: var(--an-text-muted);
}

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

.home-chanmix__row {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr) minmax(60px, 2fr) 40px 36px;
  align-items: center;
  gap: 10px;
  font-size: 12.5px;
  color: var(--an-text);
}
.home-chanmix__row--dominant .home-chanmix__name {
  font-weight: 800;
}
.home-chanmix__row--dominant .home-chanmix__fill {
  background: linear-gradient(90deg, var(--an-rose), var(--an-orange));
}
.home-chanmix__row--quiet .home-chanmix__name, .home-chanmix__row--quiet .home-chanmix__share, .home-chanmix__row--quiet .home-chanmix__count {
  color: var(--an-text-faint);
}

.home-chanmix__icon {
  --an-icon-size: 15px;
}
.home-chanmix__icon md-icon {
  color: var(--an-text-muted) !important;
}

.home-chanmix__row--dominant .home-chanmix__icon md-icon {
  color: var(--an-rose) !important;
}

.home-chanmix__name {
  font-weight: 600;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.home-chanmix__track {
  position: relative;
  height: 8px;
  background: var(--an-surface2);
  border-radius: 4px;
  overflow: visible;
}

.home-chanmix__fill {
  height: 100%;
  border-radius: 4px;
  background: linear-gradient(90deg, var(--an-sky), var(--an-sky-soft));
  transition: width 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.home-chanmix__ghost {
  position: absolute;
  top: -3px;
  bottom: -3px;
  width: 3px;
  margin-left: -1px;
  border-radius: 2px;
  background: var(--an-text-muted);
  opacity: 0.8;
  cursor: help;
}

.home-chanmix__share {
  text-align: right;
  font-weight: 800;
  letter-spacing: -0.3px;
}

.home-chanmix__count {
  text-align: right;
  font-size: 11px;
  color: var(--an-text-muted);
}

.home-kiosk-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.home-kiosk {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.home-kiosk__main {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12.5px;
}
.home-kiosk__name {
  font-weight: 700;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.home-kiosk__chip {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  color: var(--an-text-muted);
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-pill);
  padding: 1px 8px;
}
.home-kiosk__orders {
  font-size: 12px;
  color: var(--an-text-muted);
  white-space: nowrap;
}
.home-kiosk__orders strong {
  color: var(--an-text);
  font-weight: 800;
}
.home-kiosk__track {
  height: 6px;
  background: var(--an-surface2);
  border-radius: 3px;
  overflow: hidden;
}
.home-kiosk__fill {
  height: 100%;
  background: linear-gradient(90deg, var(--an-violet), var(--an-sky));
  border-radius: 3px;
  transition: width 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}
.home-kiosk__last {
  font-size: 11px;
  color: var(--an-text-muted);
}
.home-kiosk--idle .home-kiosk__name {
  color: var(--an-text-muted);
}
.home-kiosk--idle .home-kiosk__fill {
  background: var(--an-border);
}

.home-recap {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.home-recap__stats {
  display: flex;
  gap: 22px;
  flex-wrap: wrap;
}
.home-recap__stat {
  display: flex;
  flex-direction: column;
  gap: 4px;
  align-items: flex-start;
}
.home-recap__stat--focus .home-recap__value {
  font-size: 28px;
}
.home-recap__label {
  font-size: 11px;
  color: var(--an-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.4px;
  font-weight: 600;
}
.home-recap__value {
  font-size: 22px;
  font-weight: 800;
  color: var(--an-text);
  letter-spacing: -0.5px;
  line-height: 1.1;
}
.home-recap__basis {
  margin: -6px 0 0;
}
.home-recap__items {
  border-top: 1px solid var(--an-border);
  padding-top: 12px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.home-recap__eyebrow {
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  color: var(--an-text-faint);
}

.home-bar-list--compact {
  gap: 8px;
}

.home-bar-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.home-bar-row {
  display: flex;
  align-items: center;
  gap: 10px;
}

.home-bar-rank {
  font-size: 11px;
  font-weight: 800;
  color: var(--an-text-muted);
  width: 14px;
  flex-shrink: 0;
  text-align: center;
}

.home-bar-img-wrap {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  overflow: hidden;
  flex-shrink: 0;
  background: var(--an-surface2);
}

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

.home-bar-name {
  font-size: 12.5px;
  font-weight: 600;
  color: var(--an-text);
  flex: 1;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.home-bar-track {
  width: 96px;
  height: 6px;
  background: var(--an-surface2);
  border-radius: 3px;
  overflow: hidden;
  flex-shrink: 0;
}

.home-bar-fill {
  height: 100%;
  background: linear-gradient(90deg, var(--an-rose), var(--an-orange));
  border-radius: 3px;
  transition: width 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.home-bar-qty {
  font-size: 11px;
  font-weight: 700;
  color: var(--an-text-muted);
  width: 24px;
  text-align: right;
  flex-shrink: 0;
}

.home-digest-header {
  width: 100%;
  cursor: pointer;
  text-align: left;
  background: none;
  font-family: inherit;
  border-left: none;
  border-right: none;
  border-top: none;
}
.home-digest-header:hover {
  background: var(--an-surface2);
}
.home-digest-header:focus-visible {
  outline: 2px solid var(--an-primary);
  outline-offset: -2px;
}

.home-digest-caret {
  color: var(--an-text-muted) !important;
}

.home-digest-headline {
  font-size: 14.5px;
  font-weight: 700;
  color: var(--an-text);
  line-height: 1.5;
  margin-bottom: 12px;
}

.home-digest-bullets {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.home-digest-bullet {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 13px;
  line-height: 1.5;
  color: var(--an-text);
  --an-icon-size: 16px;
}
.home-digest-bullet md-icon {
  flex-shrink: 0;
  margin-top: 2px !important;
  color: var(--an-text-muted) !important;
}
.home-digest-bullet--win md-icon {
  color: var(--an-emerald) !important;
}
.home-digest-bullet--risk md-icon {
  color: var(--an-amber) !important;
}
.home-digest-bullet--action md-icon {
  color: var(--an-violet) !important;
}

.home-setup-pct {
  font-size: 20px;
  font-weight: 900;
  color: var(--an-amber);
  letter-spacing: -0.5px;
}

.home-setup-bar-track {
  width: 100%;
  height: 6px;
  background: var(--an-surface2);
  border-radius: 3px;
  overflow: hidden;
  margin-bottom: 16px;
}

.home-setup-bar-fill {
  height: 100%;
  background: linear-gradient(90deg, var(--an-amber), var(--an-amber-soft));
  border-radius: 3px;
  transition: width 1s cubic-bezier(0.4, 0, 0.2, 1);
}

.home-setup-steps {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.home-setup-step {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  color: var(--an-text-muted);
  --an-icon-size: 16px;
}
.home-setup-step--done .home-setup-step-icon {
  color: var(--an-emerald) !important;
}
.home-setup-step--done .home-setup-step-label {
  color: var(--an-text);
}

.home-setup-step-icon {
  color: var(--an-text-muted) !important;
}

.home-setup-step-label {
  flex: 1;
  font-weight: 500;
}

.home-mise-audio {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-left: 8px;
  padding-left: 8px;
  border-left: 1px solid var(--an-rose-ring);
  height: 16px;
}
.home-mise-audio--footer {
  margin-left: 0;
  padding-left: 0;
  border-left: none;
  background: var(--an-rose-soft);
  border: 1px solid var(--an-rose-ring);
  border-radius: var(--an-radius-pill);
  padding: 4px 10px;
  height: auto;
  gap: 6px;
}

.mise-audio-btn {
  display: flex;
  align-items: center;
  gap: 4px;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  color: var(--an-rose);
  transition: all 0.2s ease;
  outline: none;
  --an-icon-size: 16px;
}
.mise-audio-btn md-icon {
  color: inherit !important;
}
.mise-audio-btn:hover {
  color: var(--an-orange);
  transform: scale(1.1);
}
.mise-audio-btn.is-playing {
  color: var(--an-orange);
}

@keyframes miseMiniWave {
  0%, 100% {
    height: 4px;
  }
  50% {
    height: 10px;
  }
}
.mise-audio-waves {
  display: flex;
  align-items: center;
  gap: 1.5px;
  height: 12px;
}
.mise-audio-waves span {
  display: block;
  width: 1.5px;
  background: currentColor;
  border-radius: 1px;
  animation: miseMiniWave 0.8s ease-in-out infinite;
}
.mise-audio-waves span:nth-child(1) {
  animation-delay: 0s;
}
.mise-audio-waves span:nth-child(2) {
  animation-delay: 0.2s;
}
.mise-audio-waves span:nth-child(3) {
  animation-delay: 0.4s;
}

.mise-audio-stop {
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  padding: 2px;
  cursor: pointer;
  color: var(--an-text-muted);
  transition: color 0.2s;
  outline: none;
  --an-icon-size: 14px;
}
.mise-audio-stop md-icon {
  color: inherit !important;
}
.mise-audio-stop:hover {
  color: var(--an-rose);
}

button.home-onboarding__hub-cta {
  cursor: pointer;
}

@media (max-width: 1279px) {
  .home-kpi-strip {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
  .home-kpi-card--focus .home-kpi-value {
    font-size: 28px;
  }
  .home-card--third {
    grid-column: span 3;
  }
  .home-card--wide {
    grid-column: span 6;
  }
}
@media (max-width: 1023px) {
  .home-kpi-strip, .home-kpi-strip--ops {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .home-kpi-card--focus {
    grid-column: span 3;
  }
  .home-card--half {
    grid-column: span 6;
  }
}
@media (max-width: 959px) {
  .home-hero-inner {
    flex-direction: column;
    align-items: stretch;
  }
}
@media (max-width: 1023px) {
  .home-portfolio__cols {
    display: none;
  }
  .home-portfolio__row {
    grid-template-columns: minmax(0, 2fr) 72px minmax(0, 1.4fr) 44px 44px;
  }
}
@media (max-width: 767px) {
  .home-hero-top {
    flex-direction: column;
    align-items: stretch;
  }
  .home-scope-toggle {
    align-self: flex-start;
    max-width: 100%;
  }
  .home-portfolio__cols, .home-portfolio__row {
    padding: 0 12px;
    gap: 8px;
  }
  .home-portfolio__row {
    grid-template-columns: minmax(0, 2fr) minmax(0, 1.2fr) 36px;
  }
  .home-portfolio__cell--badge, .home-portfolio__row .home-portfolio__cell--num:nth-last-child(2) {
    display: none;
  }
  .home-chanmix__row {
    grid-template-columns: 20px minmax(0, 1fr) minmax(50px, 1.6fr) 36px 30px;
    gap: 6px;
  }
  .home-sparkline--hourly .home-spark-label--hidden {
    display: none;
  }
  .home-container {
    padding: 12px 12px 80px;
  }
  .home-grid {
    gap: 10px;
  }
  .home-card--third, .home-card--half, .home-card--wide {
    grid-column: span 6;
  }
  .home-hero {
    padding: 0 16px 8px;
  }
  .home-hero-inner {
    padding: 20px 0 14px;
  }
  .home-greeting-text {
    font-size: 18px;
  }
  .home-kpi-strip, .home-kpi-strip--ops {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }
  .home-kpi-card--focus {
    grid-column: span 2;
  }
  .home-kpi-value {
    font-size: 22px;
  }
  .home-sparkline {
    height: 80px;
  }
  .home-attention__label {
    width: 100%;
  }
}
.waitry-dark-theme .home-briefing-card {
  background: linear-gradient(135deg, var(--an-rose-soft), transparent);
}
.waitry-dark-theme .home-spark-bar--ghost {
  background: var(--an-border-strong);
}
.waitry-dark-theme .home-chanmix__ghost {
  background: var(--an-text);
}

.home-onboarding {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-lg);
  box-shadow: var(--an-shadow-sm);
  padding: var(--space-lg);
  margin-bottom: var(--space-lg);
}
.home-onboarding__head {
  display: flex;
  align-items: center;
  gap: var(--space-lg);
  margin-bottom: var(--space-lg);
}
.home-onboarding__intro {
  flex: 1 1 auto;
  min-width: 0;
}
.home-onboarding__title {
  font-family: var(--font-sans);
  font-size: 20px;
  font-weight: 800;
  color: var(--an-text);
  margin: 0 0 4px;
  letter-spacing: -0.3px;
}
.home-onboarding__subtitle {
  font-family: var(--font-sans);
  font-size: 13px;
  line-height: 1.5;
  color: var(--an-text-muted);
  margin: 0;
}
.home-onboarding__ring {
  position: relative;
  flex: 0 0 auto;
  width: 64px;
  height: 64px;
}
.home-onboarding__ring-svg {
  width: 64px;
  height: 64px;
  transform: rotate(-90deg);
}
.home-onboarding__ring-track {
  stroke: var(--an-border);
}
.home-onboarding__ring-fill {
  stroke: var(--an-primary);
  transition: stroke-dasharray var(--duration-slow) var(--ease-default);
}
.home-onboarding__ring-pct {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
}
.home-onboarding__step-icon {
  flex: 0 0 auto;
}
.home-onboarding__step-icon i {
  font-size: 18px;
  color: var(--an-text-faint) !important;
}
.home-onboarding__step-text {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-width: 0;
}
.home-onboarding__step-label {
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
}
.home-onboarding__step-desc {
  font-family: var(--font-sans);
  font-size: 12px;
  line-height: 1.45;
  color: var(--an-text-muted);
  margin-top: 2px;
}
.home-onboarding__step-cta {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  border: none;
  cursor: pointer;
  padding: 7px 16px;
  border-radius: var(--an-radius-pill);
  background: var(--an-primary);
  color: #fff;
  text-decoration: none;
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 700;
}
.home-onboarding__step-cta:hover {
  filter: brightness(1.06);
}
.home-onboarding__step-link {
  flex: 0 0 auto;
  background: none;
  border: none;
  cursor: pointer;
  padding: 6px 8px;
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text-muted);
}
.home-onboarding__step-link:hover {
  color: var(--an-primary);
}
.home-onboarding__counter {
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text-faint);
  margin: 6px 0 0;
  letter-spacing: 0.2px;
}
.home-onboarding__next {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  padding: 12px var(--space-sm);
  border-radius: var(--an-radius-sm);
  background: var(--an-primary-soft, rgba(73, 127, 228, 0.08));
}
.home-onboarding__next .home-onboarding__step-icon i {
  color: var(--an-primary) !important;
}
@media (max-width: 600px) {
  .home-onboarding__next {
    flex-wrap: wrap;
  }
  .home-onboarding__next .home-onboarding__step-text {
    flex: 1 1 100%;
  }
}
.home-onboarding__next-eyebrow {
  font-family: var(--font-sans);
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  color: var(--an-primary);
  margin-bottom: 2px;
}
.home-onboarding__hub-cta {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 7px 14px;
  border-radius: var(--an-radius-pill);
  border: 1px solid var(--an-border-strong, var(--an-border));
  background: var(--an-surface2);
  color: var(--an-text);
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
}
.home-onboarding__hub-cta md-icon i {
  font-size: 14px;
  color: var(--an-text-muted) !important;
}
.home-onboarding__hub-cta:hover {
  border-color: var(--an-primary);
  color: var(--an-primary);
}
.home-onboarding__hub-cta:hover md-icon i {
  color: var(--an-primary) !important;
}
.home-onboarding__foot {
  display: flex;
  justify-content: center;
  margin-top: var(--space-md);
}
.home-onboarding__foot--split {
  justify-content: space-between;
  align-items: center;
  gap: var(--space-sm);
}
.home-onboarding__dismiss {
  background: none;
  border: none;
  cursor: pointer;
  font-family: var(--font-sans);
  font-size: 12px;
  color: var(--an-text-faint);
}
.home-onboarding__dismiss:hover {
  color: var(--an-text-muted);
}
.home-onboarding--summary .home-onboarding__head {
  margin-bottom: var(--space-md);
}
.home-onboarding--done {
  border-color: var(--an-emerald);
  background: var(--an-emerald-soft, rgba(16, 185, 129, 0.08));
}
.home-onboarding__celebrate {
  display: flex;
  align-items: center;
  gap: var(--space-md);
}
.home-onboarding__celebrate-icon i {
  font-size: 32px;
  color: var(--an-emerald) !important;
}
@media (max-width: 600px) {
  .home-onboarding {
    padding: var(--space-md);
  }
  .home-onboarding__head {
    gap: var(--space-md);
  }
  .home-onboarding__title {
    font-size: 17px;
  }
  .home-onboarding__next {
    padding: 10px 4px;
  }
  .home-onboarding__celebrate {
    flex-direction: column;
    text-align: center;
  }
  .home-onboarding__foot--split {
    flex-direction: column-reverse;
  }
}

.home-onboarding__seed {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  padding: 12px var(--space-sm);
  margin-bottom: var(--space-sm);
  border-radius: var(--an-radius-sm);
  border: 1px dashed var(--an-border);
  background: var(--an-surface2);
}
.home-onboarding__seed-icon i {
  font-size: 18px;
  color: var(--an-violet, #8b5cf6) !important;
}
.home-onboarding__seed-text {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-width: 0;
}
.home-onboarding__seed-title {
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
}
.home-onboarding__seed-desc {
  font-family: var(--font-sans);
  font-size: 12px;
  line-height: 1.45;
  color: var(--an-text-muted);
  margin-top: 2px;
}
@media (max-width: 600px) {
  .home-onboarding__seed {
    flex-wrap: wrap;
  }
  .home-onboarding__seed-text {
    flex: 1 1 100%;
  }
}

@media (max-width: 599px) {
  .home-greeting-text {
    font-size: 21px;
  }
  .home-briefing-card {
    padding: 14px 14px 12px;
    margin-bottom: 12px;
  }
  .home-briefing-stream {
    font-size: 14.5px;
    line-height: 1.55;
  }
}
#moduleOnboarding .onb-root {
  background: var(--an-bg);
}
#moduleOnboarding .onb-container {
  max-width: 1080px;
  margin: 0 auto;
  padding: var(--space-lg);
}
#moduleOnboarding .onb-placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-sm);
  padding: 64px var(--space-lg);
  text-align: center;
}
#moduleOnboarding .onb-placeholder__icon i {
  font-size: 32px;
  color: var(--an-amber) !important;
}
#moduleOnboarding .onb-placeholder__text {
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 600;
  color: var(--an-text);
}
#moduleOnboarding .onb-placeholder__hint {
  font-family: var(--font-sans);
  font-size: 13px;
  line-height: 1.5;
  color: var(--an-text-muted);
  max-width: 420px;
}
#moduleOnboarding .onb-hero {
  display: flex;
  align-items: center;
  gap: var(--space-lg);
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-lg);
  box-shadow: var(--an-shadow-sm);
  padding: var(--space-lg);
  margin-bottom: var(--space-lg);
}
#moduleOnboarding .onb-hero--live {
  border-color: var(--an-emerald);
  background: var(--an-emerald-soft);
}
#moduleOnboarding .onb-hero__ring {
  position: relative;
  flex: 0 0 auto;
  width: 72px;
  height: 72px;
}
#moduleOnboarding .onb-hero__ring-svg {
  width: 72px;
  height: 72px;
  transform: rotate(-90deg);
}
#moduleOnboarding .onb-hero__ring-track {
  stroke: var(--an-border);
}
#moduleOnboarding .onb-hero__ring-fill {
  stroke: var(--an-primary);
  transition: stroke-dasharray var(--duration-slow) var(--ease-default);
}
#moduleOnboarding .onb-hero__ring-pct {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-sans);
  font-size: 15px;
  font-weight: 800;
  color: var(--an-text);
}
#moduleOnboarding .onb-hero__text {
  flex: 1 1 auto;
  min-width: 0;
}
#moduleOnboarding .onb-hero__title {
  font-family: var(--font-sans);
  font-size: 21px;
  font-weight: 800;
  letter-spacing: -0.3px;
  color: var(--an-text);
  margin: 0 0 4px;
}
#moduleOnboarding .onb-hero__subtitle {
  font-family: var(--font-sans);
  font-size: 13px;
  line-height: 1.5;
  color: var(--an-text-muted);
  margin: 0;
}
#moduleOnboarding .onb-hero__count {
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.3px;
  text-transform: uppercase;
  color: var(--an-text-faint);
  margin: var(--space-sm) 0 0;
}
#moduleOnboarding .onb-hero__actions {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: var(--space-sm);
}
#moduleOnboarding .onb-note {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  padding: 10px var(--space-md);
  margin-bottom: var(--space-lg);
  border-radius: var(--an-radius-sm);
  background: var(--an-amber-soft);
  border: 1px solid var(--an-amber);
  font-family: var(--font-sans);
  font-size: 12.5px;
  line-height: 1.45;
  color: var(--an-text);
}
#moduleOnboarding .onb-note__icon i {
  font-size: 18px;
  color: var(--an-amber) !important;
}
#moduleOnboarding .onb-filter {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-sm);
  margin-bottom: var(--space-lg);
}
#moduleOnboarding .onb-filter__chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 14px;
  border-radius: var(--an-radius-pill);
  border: 1px solid var(--an-border);
  background: var(--an-surface);
  color: var(--an-text-muted);
  font-family: var(--font-sans);
  font-size: 12.5px;
  font-weight: 600;
  cursor: pointer;
  transition: all var(--duration-fast) var(--ease-default);
}
#moduleOnboarding .onb-filter__chip:hover {
  border-color: var(--an-border-strong);
  color: var(--an-text);
}
#moduleOnboarding .onb-filter__chip--on {
  background: var(--an-primary);
  border-color: var(--an-primary);
  color: #fff;
}
#moduleOnboarding .onb-filter__chip--on md-icon i {
  color: #fff !important;
}
#moduleOnboarding .onb-filter__chip--on .onb-filter__count {
  color: rgba(255, 255, 255, 0.85);
}
#moduleOnboarding .onb-filter__chip--done:not(.onb-filter__chip--on) md-icon i {
  color: var(--an-emerald) !important;
}
#moduleOnboarding .onb-filter__icon i {
  font-size: 15px;
  color: var(--an-text-faint) !important;
}
#moduleOnboarding .onb-filter__count {
  font-weight: 700;
  font-size: 11.5px;
  color: var(--an-text-faint);
}
#moduleOnboarding .onb-pillar {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-lg);
  box-shadow: var(--an-shadow-sm);
  padding: var(--space-lg);
  margin-bottom: var(--space-lg);
}
#moduleOnboarding .onb-pillar__head {
  display: flex;
  align-items: center;
  gap: var(--space-md);
  padding-bottom: var(--space-md);
  border-bottom: 1px solid var(--an-border);
  margin-bottom: var(--space-sm);
}
#moduleOnboarding .onb-pillar__badge {
  flex: 0 0 auto;
  width: 40px;
  height: 40px;
  border-radius: var(--an-radius-sm);
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--an-primary-soft);
}
#moduleOnboarding .onb-pillar__badge md-icon i {
  font-size: 20px;
  color: var(--an-primary) !important;
}
#moduleOnboarding .onb-pillar__badge--done {
  background: var(--an-emerald-soft);
}
#moduleOnboarding .onb-pillar__badge--done md-icon i {
  color: var(--an-emerald) !important;
}
#moduleOnboarding .onb-pillar__headtext {
  flex: 1 1 auto;
  min-width: 0;
}
#moduleOnboarding .onb-pillar__title {
  font-family: var(--font-sans);
  font-size: 15px;
  font-weight: 700;
  color: var(--an-text);
  margin: 0;
}
#moduleOnboarding .onb-pillar__desc {
  font-family: var(--font-sans);
  font-size: 12.5px;
  line-height: 1.45;
  color: var(--an-text-muted);
  margin: 2px 0 0;
}
#moduleOnboarding .onb-pillar__count {
  flex: 0 0 auto;
  font-family: var(--font-sans);
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: 0.3px;
  text-transform: uppercase;
  color: var(--an-text-faint);
  white-space: nowrap;
}
#moduleOnboarding .onb-pillar-upsell {
  display: flex;
  align-items: flex-start;
  gap: var(--space-md);
  padding: var(--space-md);
  margin-bottom: var(--space-md);
  background: var(--an-amber-soft);
  border: 1px solid var(--an-amber);
  border-radius: var(--an-radius-sm);
}
#moduleOnboarding .onb-pillar-upsell__icon {
  flex: 0 0 auto;
  width: 32px;
  height: 32px;
  border-radius: var(--an-radius-sm);
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--an-surface);
}
#moduleOnboarding .onb-pillar-upsell__icon md-icon i {
  font-size: 17px;
  color: var(--an-amber) !important;
}
#moduleOnboarding .onb-pillar-upsell__body {
  flex: 1 1 auto;
  min-width: 0;
}
#moduleOnboarding .onb-pillar-upsell__eyebrow {
  margin: 0 0 2px;
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--an-amber);
}
#moduleOnboarding .onb-pillar-upsell__title {
  margin: 0 0 4px;
  font-family: var(--font-sans);
  font-size: 13.5px;
  font-weight: 700;
  color: var(--an-text);
}
#moduleOnboarding .onb-pillar-upsell__list {
  margin: 0;
  padding-left: 18px;
  font-family: var(--font-sans);
  font-size: 12px;
  line-height: 1.6;
  color: var(--an-text-muted);
}
#moduleOnboarding .onb-pillar-upsell__cta {
  flex: 0 0 auto;
  align-self: center;
}
#moduleOnboarding .onb-steps {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
}
#moduleOnboarding .onb-step {
  display: flex;
  align-items: flex-start;
  gap: var(--space-md);
  padding: var(--space-md) var(--space-sm);
  border-radius: var(--an-radius-sm);
  border-bottom: 1px solid var(--an-border);
  transition: background var(--duration-fast) var(--ease-default);
}
#moduleOnboarding .onb-step:last-child {
  border-bottom: none;
}
#moduleOnboarding .onb-step--next {
  background: var(--an-primary-soft);
  border-bottom-color: transparent;
}
#moduleOnboarding .onb-step--done .onb-step__label {
  color: var(--an-text-muted);
}
#moduleOnboarding .onb-step--done .onb-step__icon {
  background: var(--an-emerald-soft);
}
#moduleOnboarding .onb-step--done .onb-step__icon md-icon i {
  color: var(--an-emerald) !important;
}
#moduleOnboarding .onb-step--skipped .onb-step__label,
#moduleOnboarding .onb-step--skipped .onb-step__desc, #moduleOnboarding .onb-step--locked .onb-step__label,
#moduleOnboarding .onb-step--locked .onb-step__desc {
  color: var(--an-text-faint);
}
#moduleOnboarding .onb-step__icon {
  flex: 0 0 auto;
  width: 32px;
  height: 32px;
  border-radius: var(--an-radius-sm);
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--an-surface2);
}
#moduleOnboarding .onb-step__icon md-icon i {
  font-size: 17px;
  color: var(--an-text-muted) !important;
}
#moduleOnboarding .onb-step__text {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
#moduleOnboarding .onb-step__labelrow {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
}
#moduleOnboarding .onb-step__label {
  font-family: var(--font-sans);
  font-size: 13.5px;
  font-weight: 700;
  color: var(--an-text);
}
#moduleOnboarding .onb-step__desc {
  font-family: var(--font-sans);
  font-size: 12.5px;
  line-height: 1.45;
  color: var(--an-text-muted);
}
#moduleOnboarding .onb-step__facts {
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text-faint);
}
#moduleOnboarding .onb-step__note {
  font-family: var(--font-sans);
  font-size: 11.5px;
  font-style: italic;
  color: var(--an-text-faint);
}
#moduleOnboarding .onb-step__actions {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: var(--space-sm);
}
#moduleOnboarding .onb-tag {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  border-radius: var(--an-radius-pill);
  font-family: var(--font-sans);
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: 0.4px;
  text-transform: uppercase;
  white-space: nowrap;
}
#moduleOnboarding .onb-tag--done {
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
}
#moduleOnboarding .onb-tag--next {
  background: var(--an-primary);
  color: #fff;
}
#moduleOnboarding .onb-tag--optional, #moduleOnboarding .onb-tag--skipped {
  background: var(--an-surface2);
  color: var(--an-text-faint);
}
#moduleOnboarding .onb-tag--locked {
  background: var(--an-amber-soft);
  color: var(--an-amber);
}
#moduleOnboarding .pm-btn-primary[disabled],
#moduleOnboarding .pm-btn-secondary[disabled],
#moduleOnboarding .onb-linkbtn[disabled] {
  background: var(--an-surface2) !important;
  color: var(--an-text-faint) !important;
  border-color: var(--an-border) !important;
  box-shadow: none !important;
  cursor: default;
}
#moduleOnboarding .pm-btn-primary[disabled] md-icon, #moduleOnboarding .pm-btn-primary[disabled] [class^=iconoir-], #moduleOnboarding .pm-btn-primary[disabled] [class*=" iconoir-"],
#moduleOnboarding .pm-btn-secondary[disabled] md-icon,
#moduleOnboarding .pm-btn-secondary[disabled] [class^=iconoir-],
#moduleOnboarding .pm-btn-secondary[disabled] [class*=" iconoir-"],
#moduleOnboarding .onb-linkbtn[disabled] md-icon,
#moduleOnboarding .onb-linkbtn[disabled] [class^=iconoir-],
#moduleOnboarding .onb-linkbtn[disabled] [class*=" iconoir-"] {
  color: var(--an-text-faint) !important;
}
#moduleOnboarding .pm-btn-primary[disabled]:hover,
#moduleOnboarding .pm-btn-secondary[disabled]:hover,
#moduleOnboarding .onb-linkbtn[disabled]:hover {
  background: var(--an-surface2) !important;
  border-color: var(--an-border) !important;
  transform: none;
  filter: none;
}
#moduleOnboarding .onb-linkbtn {
  background: none !important;
  box-shadow: none !important;
  color: var(--an-text-muted) !important;
  font-family: var(--font-sans);
  font-size: 12.5px;
  font-weight: 600;
}
#moduleOnboarding .onb-linkbtn md-icon, #moduleOnboarding .onb-linkbtn [class^=iconoir-], #moduleOnboarding .onb-linkbtn [class*=" iconoir-"] {
  color: var(--an-text-muted) !important;
  font-size: 16px;
}
#moduleOnboarding .onb-linkbtn:hover {
  color: var(--an-primary) !important;
  background: var(--an-primary-soft) !important;
}
#moduleOnboarding .onb-linkbtn:hover md-icon, #moduleOnboarding .onb-linkbtn:hover [class^=iconoir-], #moduleOnboarding .onb-linkbtn:hover [class*=" iconoir-"] {
  color: var(--an-primary) !important;
}
@media (max-width: 720px) {
  #moduleOnboarding .onb-container {
    padding: var(--space-md);
  }
  #moduleOnboarding .onb-hero {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-md);
  }
  #moduleOnboarding .onb-hero__actions {
    width: 100%;
  }
  #moduleOnboarding .onb-step {
    flex-wrap: wrap;
  }
  #moduleOnboarding .onb-step__actions {
    width: 100%;
    justify-content: flex-end;
  }
  #moduleOnboarding .onb-pillar__count {
    display: none;
  }
}

.onbw-dialog {
  max-width: 620px;
  width: 92vw;
}
.onbw-dialog .onbw-body {
  display: flex;
  flex-direction: column;
  gap: var(--space-lg);
  padding: var(--space-xl) !important;
  font-family: var(--font-sans);
}
.onbw-dialog .onbw-lede {
  margin: 0;
  font-size: 14px;
  line-height: 1.55;
  color: var(--an-text-muted);
}
.onbw-dialog .onbw-panel {
  display: flex;
  align-items: flex-start;
  gap: var(--space-lg);
  padding: var(--space-lg);
  background: var(--an-surface2);
  border: 1px solid var(--an-border-strong);
  border-radius: var(--an-radius);
}
.onbw-dialog .onbw-panel--plain {
  background: transparent;
}
.onbw-dialog .onbw-panel__body {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}
.onbw-dialog .onbw-panel__label {
  margin: 0;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--an-text-faint);
}
.onbw-dialog .onbw-panel__actions {
  display: flex;
  gap: var(--space-sm);
  flex-wrap: wrap;
  margin-top: var(--space-xs);
}
.onbw-dialog .onbw-panel__actions .md-button {
  margin: 0 !important;
}
.onbw-dialog .onbw-qr {
  flex: 0 0 auto;
  padding: var(--space-sm);
  background: #FFFFFF;
  border: 1px solid var(--an-border-strong);
  border-radius: var(--an-radius-sm);
  line-height: 0;
}
.onbw-dialog .onbw-qr img {
  display: block;
}
.onbw-dialog .onbw-link {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
  padding: var(--space-xs) var(--space-xs) var(--space-xs) var(--space-md);
  background: var(--an-bg);
  border: 1px solid var(--an-border-strong);
  border-radius: var(--an-radius-sm);
}
.onbw-dialog .onbw-link a {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-family: var(--font-mono);
  font-size: 13px;
  color: var(--an-primary);
  text-decoration: none;
}
.onbw-dialog .onbw-link a:hover {
  text-decoration: underline;
}
.onbw-dialog .onbw-link__copy.md-button {
  flex: 0 0 auto;
  margin: 0 !important;
  width: 32px;
  min-width: 32px;
  height: 32px;
  line-height: 32px;
}
.onbw-dialog .onbw-link__copy.md-button md-icon {
  color: var(--an-text-muted) !important;
  font-size: 18px;
}
.onbw-dialog .onbw-hint {
  margin: 0;
  font-size: 12px;
  line-height: 1.5;
  color: var(--an-text-faint);
}
.onbw-dialog .onbw-step {
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
  padding: var(--space-lg);
  border: 1px solid var(--an-border-strong);
  border-radius: var(--an-radius);
}
.onbw-dialog .onbw-step__head {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
}
.onbw-dialog .onbw-step__head md-icon {
  color: var(--an-text-muted) !important;
  font-size: 18px;
}
.onbw-dialog .onbw-step__title {
  margin: 0;
  font-size: 14px;
  font-weight: 600;
  color: var(--an-text);
}
.onbw-dialog .onbw-step__text {
  margin: 0;
  font-size: 13px;
  line-height: 1.55;
  color: var(--an-text-muted);
}
.onbw-dialog .onbw-step__actions {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  flex-wrap: wrap;
}
.onbw-dialog .onbw-step__actions .md-button {
  margin: 0 !important;
}
.onbw-dialog .onbw-count {
  margin-left: auto;
  padding: 2px var(--space-sm);
  background: var(--an-surface2);
  border-radius: var(--an-radius-pill);
  font-size: 11px;
  font-weight: 700;
  color: var(--an-text-muted);
}
.onbw-dialog .onbw-notice {
  display: flex;
  align-items: flex-start;
  gap: var(--space-md);
  padding: var(--space-md) var(--space-lg);
  background: var(--an-sky-soft);
  border: 1px solid var(--an-sky);
  border-radius: var(--an-radius-sm);
}
.onbw-dialog .onbw-notice > md-icon {
  flex: 0 0 auto;
  color: var(--an-sky) !important;
  font-size: 20px;
  margin-top: 1px;
}
.onbw-dialog .onbw-notice--warn {
  background: var(--an-amber-soft);
  border-color: var(--an-amber);
}
.onbw-dialog .onbw-notice--warn > md-icon {
  color: var(--an-amber) !important;
}
.onbw-dialog .onbw-notice--ok {
  background: var(--an-emerald-soft);
  border-color: var(--an-emerald);
}
.onbw-dialog .onbw-notice--ok > md-icon {
  color: var(--an-emerald) !important;
}
.onbw-dialog .onbw-notice__title {
  margin: 0 0 2px;
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
}
.onbw-dialog .onbw-notice__text {
  margin: 0;
  font-size: 12px;
  line-height: 1.55;
  color: var(--an-text-muted);
}
.onbw-dialog .onbw-list {
  margin: var(--space-xs) 0 0;
  padding-left: 18px;
  font-size: 12px;
  line-height: 1.6;
  color: var(--an-text-muted);
}
.onbw-dialog .onbw-gw {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  padding: var(--space-sm) 0;
}
.onbw-dialog .onbw-gw + .onbw-gw {
  border-top: 1px solid var(--an-border-strong);
}
.onbw-dialog .onbw-gw__icon {
  color: var(--an-text-muted) !important;
  font-size: 18px;
}
.onbw-dialog .onbw-gw__name {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
}
.onbw-dialog .onbw-badge {
  margin-left: auto;
  padding: 2px var(--space-sm);
  border-radius: var(--an-radius-pill);
  font-size: 11px;
  font-weight: 600;
  white-space: nowrap;
}
.onbw-dialog .onbw-badge + .onbw-badge {
  margin-left: var(--space-xs);
}
.onbw-dialog .onbw-badge--ok {
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
}
.onbw-dialog .onbw-badge--warn {
  background: var(--an-amber-soft);
  color: var(--an-amber);
}
.onbw-dialog .onbw-badge--muted {
  background: var(--an-surface2);
  color: var(--an-text-faint);
}
.onbw-dialog .onbw-steps {
  margin: 0;
  padding-left: 20px;
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  font-size: 13px;
  line-height: 1.55;
  color: var(--an-text-muted);
}
.onbw-dialog .onbw-steps li::marker {
  color: var(--an-primary);
  font-weight: 700;
}
.onbw-dialog .onbw-verify {
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
}
.onbw-dialog .onbw-verify__count {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
}
.onbw-dialog md-dialog-actions {
  align-items: center;
  gap: var(--space-sm);
  padding: var(--space-md) var(--space-lg);
  border-top: 1px solid var(--an-border-strong);
}
.onbw-dialog md-dialog-actions .md-button {
  margin: 0 !important;
}
.onbw-dialog md-dialog-actions .pm-btn-primary[disabled],
.onbw-dialog md-dialog-actions .pm-btn-secondary[disabled] {
  background: var(--an-surface2) !important;
  background-image: none !important;
  color: var(--an-text-faint) !important;
  box-shadow: none !important;
}
.onbw-dialog md-dialog-actions .pm-btn-primary[disabled] md-icon, .onbw-dialog md-dialog-actions .pm-btn-primary[disabled] [class*=iconoir-],
.onbw-dialog md-dialog-actions .pm-btn-secondary[disabled] md-icon,
.onbw-dialog md-dialog-actions .pm-btn-secondary[disabled] [class*=iconoir-] {
  color: var(--an-text-faint) !important;
}
.onbw-dialog md-dialog-actions md-progress-circular path {
  stroke: currentColor;
}

@media (max-width: 600px) {
  .onbw-dialog .onbw-panel {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  .onbw-dialog .onbw-panel__body {
    align-items: center;
    width: 100%;
  }
  .onbw-dialog .onbw-link a {
    text-align: left;
  }
}
.onb-upsell-dialog__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}
.onb-upsell-dialog__list li {
  display: flex;
  align-items: flex-start;
  gap: var(--space-sm);
  font-family: var(--font-sans);
  font-size: 13px;
  line-height: 1.5;
  color: var(--an-text);
}
.onb-upsell-dialog__list li md-icon {
  flex: 0 0 auto;
  color: var(--an-emerald) !important;
  font-size: 18px;
  margin-top: 1px;
}

.onb-golive-dialog {
  max-width: 480px;
}
.onb-golive-dialog .onb-golive__body {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: var(--space-sm);
  padding: var(--space-xl) !important;
  font-family: var(--font-sans);
}
.onb-golive-dialog .onb-golive__badge {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--an-emerald-soft);
  margin-bottom: var(--space-xs);
}
.onb-golive-dialog .onb-golive__badge md-icon i {
  font-size: 28px;
  color: var(--an-emerald) !important;
}
.onb-golive-dialog .onb-golive__title {
  margin: 0;
  font-size: 20px;
  font-weight: 800;
  color: var(--an-text);
}
.onb-golive-dialog .onb-golive__subtitle {
  margin: 0;
  font-size: 13.5px;
  line-height: 1.5;
  color: var(--an-text-muted);
  max-width: 360px;
}
.onb-golive-dialog .onb-golive__pitch {
  width: 100%;
  margin-top: var(--space-md);
  padding: var(--space-md);
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  text-align: left;
}
.onb-golive-dialog .onb-golive__pitch-eyebrow {
  margin: 0 0 2px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--an-text-faint);
}
.onb-golive-dialog .onb-golive__pitch-title {
  margin: 0 0 6px;
  font-size: 13.5px;
  font-weight: 700;
  color: var(--an-text);
}
.onb-golive-dialog .onb-golive__pitch-list {
  margin: 0;
  padding-left: 18px;
  font-size: 12.5px;
  line-height: 1.7;
  color: var(--an-text-muted);
}

.onbi-dialog {
  max-width: 1000px;
  width: 92vw;
  background: var(--an-surface);
}
.onbi-dialog .onbi-bar {
  background: var(--an-surface) !important;
  border-bottom: 1px solid var(--an-border);
  box-shadow: none;
}
.onbi-dialog .onbi-bar .md-toolbar-tools {
  height: 56px;
  max-height: 56px;
}
.onbi-dialog .onbi-bar__icon i {
  font-size: 20px;
  color: var(--an-primary) !important;
}
.onbi-dialog .onbi-bar__title {
  font-family: var(--font-sans);
  font-size: 15px;
  font-weight: 700;
  color: var(--an-text);
  margin: 0 0 0 var(--space-sm);
}
.onbi-dialog .onbi-bar__btn i {
  color: var(--an-text-muted) !important;
}
.onbi-dialog .onbi-rail {
  display: flex;
  align-items: center;
  gap: var(--space-lg);
  padding: var(--space-sm) var(--space-lg);
  border-bottom: 1px solid var(--an-border);
  background: var(--an-surface2);
}
.onbi-dialog .onbi-rail__stop {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text-faint);
  transition: color var(--duration-fast) var(--ease-default);
}
.onbi-dialog .onbi-rail__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--an-border-strong);
}
.onbi-dialog .onbi-rail__stop--on {
  color: var(--an-primary);
}
.onbi-dialog .onbi-rail__stop--on .onbi-rail__dot {
  background: var(--an-primary);
  box-shadow: 0 0 0 4px var(--an-primary-soft);
}
.onbi-dialog .onbi-rail__stop--past {
  color: var(--an-text-muted);
}
.onbi-dialog .onbi-rail__stop--past .onbi-rail__dot {
  background: var(--an-emerald);
}
.onbi-dialog .onbi-body {
  background: var(--an-bg);
}
.onbi-dialog .onbi-content {
  padding: var(--space-lg);
}
.onbi-dialog .onbi-lede {
  font-family: var(--font-sans);
  font-size: 13.5px;
  line-height: 1.6;
  color: var(--an-text-muted);
  margin: 0 0 var(--space-md);
  max-width: 68ch;
}
.onbi-dialog .onbi-help {
  font-family: var(--font-sans);
  font-size: 12px;
  line-height: 1.5;
  color: var(--an-text-faint);
  margin: 2px 0 var(--space-md);
  max-width: 68ch;
}
.onbi-dialog .onbi-sources {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: var(--space-sm);
  margin-bottom: var(--space-lg);
}
.onbi-dialog .onbi-source {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  padding: var(--space-md);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-lg);
  background: var(--an-surface);
  cursor: pointer;
  text-align: left;
  font-family: var(--font-sans);
  transition: border-color var(--duration-fast) var(--ease-default), background var(--duration-fast) var(--ease-default);
}
.onbi-dialog .onbi-source__icon i {
  font-size: 20px;
  color: var(--an-text-muted) !important;
}
.onbi-dialog .onbi-source__label {
  font-size: 13.5px;
  font-weight: 700;
  color: var(--an-text);
}
.onbi-dialog .onbi-source__hint {
  font-size: 12px;
  line-height: 1.4;
  color: var(--an-text-faint);
}
.onbi-dialog .onbi-source:hover {
  border-color: var(--an-border-strong);
  background: var(--an-surface2);
}
.onbi-dialog .onbi-source--on {
  border-color: var(--an-primary);
  background: var(--an-primary-soft);
}
.onbi-dialog .onbi-source--on .onbi-source__icon i {
  color: var(--an-primary) !important;
}
.onbi-dialog .onbi-source--on .onbi-source__label {
  color: var(--an-primary);
}
.onbi-dialog .onbi-links {
  list-style: none;
  margin: 0 0 var(--space-xs);
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
}
.onbi-dialog .onbi-link {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  padding: 0 var(--space-sm) 0 var(--space-md);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-lg);
  background: var(--an-surface);
  transition: border-color var(--duration-fast) var(--ease-default);
}
.onbi-dialog .onbi-link:focus-within {
  border-color: var(--an-primary);
}
.onbi-dialog .onbi-link__icon {
  flex: 0 0 auto;
}
.onbi-dialog .onbi-link__icon i {
  font-size: 18px;
  color: var(--an-text-faint) !important;
}
.onbi-dialog .onbi-link__icon--known i {
  color: var(--an-primary) !important;
}
.onbi-dialog .onbi-link__field {
  flex: 1 1 auto;
  min-width: 0;
  height: 40px;
  margin: 0;
  padding: 0;
  border: none;
  background: transparent;
  box-shadow: none;
  outline: none;
  font-family: var(--font-sans);
  font-size: 13.5px;
  color: var(--an-text);
}
.onbi-dialog .onbi-link__field::placeholder {
  color: var(--an-placeholder);
}
.onbi-dialog .onbi-link__badge {
  flex: 0 0 auto;
  padding: 3px 9px;
  border-radius: 999px;
  background: var(--an-surface2);
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: var(--an-text-muted);
  white-space: nowrap;
}
.onbi-dialog .onbi-link__badge--market {
  background: var(--an-primary-soft);
  color: var(--an-primary);
}
.onbi-dialog .onbi-drop {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding: 32px var(--space-lg);
  border: 2px dashed var(--an-border-strong);
  border-radius: var(--an-radius-lg);
  background: var(--an-surface);
  cursor: pointer;
  text-align: center;
  transition: border-color var(--duration-fast) var(--ease-default), background var(--duration-fast) var(--ease-default);
}
.onbi-dialog .onbi-drop__icon i {
  font-size: 28px;
  color: var(--an-primary) !important;
}
.onbi-dialog .onbi-drop__title {
  font-family: var(--font-sans);
  font-size: 13.5px;
  font-weight: 700;
  color: var(--an-text);
}
.onbi-dialog .onbi-drop__hint {
  font-family: var(--font-sans);
  font-size: 12px;
  color: var(--an-text-faint);
}
.onbi-dialog .onbi-drop:hover {
  border-color: var(--an-primary);
  background: var(--an-primary-soft);
}
.onbi-dialog .onbi-drop--full {
  border-style: solid;
  border-color: var(--an-border);
  background: var(--an-surface2);
}
.onbi-dialog .onbi-pages {
  margin-top: var(--space-md);
}
.onbi-dialog .onbi-pages__head {
  display: flex;
  align-items: baseline;
  gap: var(--space-sm);
  margin-bottom: 6px;
}
.onbi-dialog .onbi-pages__count {
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 700;
  color: var(--an-text);
}
.onbi-dialog .onbi-pages__note {
  font-family: var(--font-sans);
  font-size: 12px;
  color: var(--an-text-faint);
}
.onbi-dialog .onbi-pagelist {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.onbi-dialog .onbi-page {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  padding: 8px var(--space-sm);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
}
.onbi-dialog .onbi-page__n {
  width: 22px;
  flex: 0 0 22px;
  text-align: center;
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 700;
  color: var(--an-text-faint);
}
.onbi-dialog .onbi-page__thumb {
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  border-radius: var(--an-radius-sm);
  overflow: hidden;
  background: var(--an-surface2);
  display: flex;
  align-items: center;
  justify-content: center;
}
.onbi-dialog .onbi-page__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.onbi-dialog .onbi-page__thumb i {
  color: var(--an-text-faint) !important;
}
.onbi-dialog .onbi-page__text {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 1px;
}
.onbi-dialog .onbi-page__name {
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.onbi-dialog .onbi-page__meta {
  font-family: var(--font-sans);
  font-size: 11.5px;
  color: var(--an-text-faint);
}
.onbi-dialog .onbi-page__meta--ok {
  color: var(--an-emerald);
}
.onbi-dialog .onbi-page__meta--bad {
  color: var(--an-amber);
}
.onbi-dialog .onbi-page__actions {
  display: flex;
  align-items: center;
  gap: 2px;
}
.onbi-dialog .onbi-page--bad {
  border-color: var(--an-amber);
  background: var(--an-amber-soft);
}
.onbi-dialog .onbi-working {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-sm);
  padding: 72px var(--space-lg);
  text-align: center;
}
.onbi-dialog .onbi-working__title {
  font-family: var(--font-sans);
  font-size: 16px;
  font-weight: 700;
  color: var(--an-text);
  margin: var(--space-sm) 0 0;
}
.onbi-dialog .onbi-working__body {
  font-family: var(--font-sans);
  font-size: 13px;
  line-height: 1.6;
  color: var(--an-text-muted);
  max-width: 46ch;
  margin: 0 0 var(--space-sm);
}
.onbi-dialog .onbi-summary {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-sm);
  margin-bottom: var(--space-md);
}
.onbi-dialog .onbi-stat {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 108px;
  padding: var(--space-sm) var(--space-md);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-lg);
  background: var(--an-surface);
}
.onbi-dialog .onbi-stat__n {
  font-family: var(--font-sans);
  font-size: 22px;
  font-weight: 800;
  line-height: 1.1;
  color: var(--an-text);
}
.onbi-dialog .onbi-stat__l {
  font-family: var(--font-sans);
  font-size: 11.5px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--an-text-faint);
}
.onbi-dialog .onbi-stat--warn {
  border-color: var(--an-amber);
  background: var(--an-amber-soft);
}
.onbi-dialog .onbi-stat--warn .onbi-stat__n {
  color: var(--an-amber);
}
.onbi-dialog .onbi-callout {
  display: flex;
  align-items: flex-start;
  gap: var(--space-sm);
  padding: var(--space-sm) var(--space-md);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-lg);
  background: var(--an-surface);
  margin-bottom: var(--space-md);
}
.onbi-dialog .onbi-callout__icon i {
  font-size: 18px;
}
.onbi-dialog .onbi-callout__text {
  display: flex;
  flex-direction: column;
  gap: 2px;
  font-family: var(--font-sans);
  font-size: 12.5px;
  line-height: 1.55;
  color: var(--an-text-muted);
}
.onbi-dialog .onbi-callout__title {
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
}
.onbi-dialog .onbi-callout--info {
  border-color: var(--an-primary);
  background: var(--an-primary-soft);
}
.onbi-dialog .onbi-callout--info .onbi-callout__icon i {
  color: var(--an-primary) !important;
}
.onbi-dialog .onbi-callout--warn {
  border-color: var(--an-amber);
  background: var(--an-amber-soft);
}
.onbi-dialog .onbi-callout--warn .onbi-callout__icon i {
  color: var(--an-amber) !important;
}
.onbi-dialog .onbi-callout--bad {
  border-color: var(--an-amber);
  background: var(--an-amber-soft);
}
.onbi-dialog .onbi-callout--bad .onbi-callout__icon i {
  color: var(--an-amber) !important;
}
.onbi-dialog .onbi-callout--bad .onbi-callout__title {
  color: var(--an-amber);
}
.onbi-dialog .onbi-notes {
  margin: 2px 0 0;
  padding-left: 18px;
}
.onbi-dialog .onbi-notes li {
  font-family: var(--font-sans);
  font-size: 12.5px;
  line-height: 1.55;
  color: var(--an-text-muted);
}
.onbi-dialog .onbi-reviewbar {
  display: flex;
  justify-content: flex-end;
  gap: var(--space-sm);
  margin-bottom: 6px;
}
.onbi-dialog .onbi-cat {
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-lg);
  background: var(--an-surface);
  margin-bottom: var(--space-sm);
  overflow: hidden;
}
.onbi-dialog .onbi-cat__head {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  padding: 4px var(--space-sm);
  background: var(--an-surface2);
  border-bottom: 1px solid var(--an-border);
}
.onbi-dialog .onbi-cat__field {
  flex: 1 1 auto;
  margin: 0;
  padding: 0;
  min-height: 0;
}
.onbi-dialog .onbi-cat__field .md-errors-spacer {
  display: none;
}
.onbi-dialog .onbi-cat__field label {
  font-size: 10.5px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.onbi-dialog .onbi-cat__field input {
  font-size: 14px;
  font-weight: 700;
}
.onbi-dialog .onbi-cat__count {
  font-family: var(--font-sans);
  font-size: 11.5px;
  font-weight: 600;
  color: var(--an-text-faint);
  white-space: nowrap;
}
.onbi-dialog .onbi-prods {
  list-style: none;
  margin: 0;
  padding: 0;
}
.onbi-dialog .onbi-prod {
  padding: var(--space-sm) var(--space-md);
  border-bottom: 1px solid var(--an-border);
  border-left: 3px solid transparent;
}
.onbi-dialog .onbi-prod:last-child {
  border-bottom: none;
}
.onbi-dialog .onbi-prod__row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--space-sm);
}
.onbi-dialog .onbi-prod__name, .onbi-dialog .onbi-prod__price, .onbi-dialog .onbi-prod__desc {
  margin: 0;
  padding: 0;
  min-height: 0;
}
.onbi-dialog .onbi-prod__name .md-errors-spacer, .onbi-dialog .onbi-prod__price .md-errors-spacer, .onbi-dialog .onbi-prod__desc .md-errors-spacer {
  display: none;
}
.onbi-dialog .onbi-prod__name label, .onbi-dialog .onbi-prod__price label, .onbi-dialog .onbi-prod__desc label {
  font-size: 10.5px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.onbi-dialog .onbi-prod__name {
  flex: 1 1 240px;
}
.onbi-dialog .onbi-prod__price {
  flex: 0 0 110px;
}
.onbi-dialog .onbi-prod__desc {
  margin-top: 6px;
}
.onbi-dialog .onbi-prod__tags {
  display: flex;
  align-items: center;
  gap: 4px;
}
.onbi-dialog .onbi-prod__actions {
  display: flex;
  align-items: center;
  gap: 2px;
  margin-left: auto;
}
.onbi-dialog .onbi-prod__why {
  font-family: var(--font-sans);
  font-size: 12px;
  line-height: 1.5;
  color: var(--an-amber);
  margin: 4px 0 0;
}
.onbi-dialog .onbi-prod__mods {
  display: inline-block;
  font-family: var(--font-sans);
  font-size: 11.5px;
  color: var(--an-text-faint);
  margin-top: 4px;
}
.onbi-dialog .onbi-prod--check {
  border-left-color: var(--an-amber);
  background: var(--an-amber-soft);
}
.onbi-dialog .onbi-mods {
  margin-top: 6px;
  padding: var(--space-sm);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface2);
}
.onbi-dialog .onbi-mod {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  padding: 4px 0;
}
.onbi-dialog .onbi-mod__name {
  font-family: var(--font-sans);
  font-size: 12.5px;
  font-weight: 700;
  color: var(--an-text);
}
.onbi-dialog .onbi-mod__rule {
  font-family: var(--font-sans);
  font-size: 11.5px;
  color: var(--an-text-faint);
}
.onbi-dialog .onbi-mod__opts {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}
.onbi-dialog .onbi-chip {
  display: inline-block;
  padding: 1px 8px;
  border-radius: var(--an-radius-pill);
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  font-family: var(--font-sans);
  font-size: 11.5px;
  color: var(--an-text-muted);
}
.onbi-dialog .onbi-tag {
  display: inline-block;
  padding: 1px 8px;
  border-radius: var(--an-radius-pill);
  font-family: var(--font-sans);
  font-size: 10.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  white-space: nowrap;
}
.onbi-dialog .onbi-tag--promo {
  background: var(--an-primary-soft);
  color: var(--an-primary);
}
.onbi-dialog .onbi-tag--check {
  background: var(--an-amber-soft);
  color: var(--an-amber);
}
.onbi-dialog .onbi-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding: 48px var(--space-lg);
  text-align: center;
}
.onbi-dialog .onbi-empty__icon i {
  font-size: 28px;
  color: var(--an-text-faint) !important;
}
.onbi-dialog .onbi-empty__title {
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text);
}
.onbi-dialog .onbi-empty__hint {
  font-family: var(--font-sans);
  font-size: 12.5px;
  line-height: 1.55;
  color: var(--an-text-muted);
  max-width: 46ch;
}
.onbi-dialog .onbi-decide {
  margin-top: var(--space-lg);
  padding: var(--space-md);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-lg);
  background: var(--an-surface);
}
.onbi-dialog .onbi-decide__title {
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text);
  margin: 0 0 var(--space-sm);
}
.onbi-dialog .onbi-check {
  margin: 0;
  font-family: var(--font-sans);
  font-size: 13px;
  color: var(--an-text);
}
.onbi-dialog .onbi-done {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: var(--space-lg) var(--space-md);
}
.onbi-dialog .onbi-done__icon i {
  font-size: 40px;
  color: var(--an-emerald) !important;
}
.onbi-dialog .onbi-done__title {
  font-family: var(--font-sans);
  font-size: 18px;
  font-weight: 800;
  color: var(--an-text);
  margin: var(--space-sm) 0 4px;
}
.onbi-dialog .onbi-done__body, .onbi-dialog .onbi-done__next {
  font-family: var(--font-sans);
  font-size: 13px;
  line-height: 1.6;
  color: var(--an-text-muted);
  max-width: 52ch;
  margin: 0 0 var(--space-md);
}
.onbi-dialog .onbi-done .onbi-summary {
  justify-content: center;
}
.onbi-dialog .onbi-actions {
  border-top: 1px solid var(--an-border);
  background: var(--an-surface);
  padding: var(--space-sm) var(--space-md);
  gap: var(--space-sm);
}
.onbi-dialog .onbi-linkbtn {
  background: none !important;
  box-shadow: none !important;
  color: var(--an-text-muted) !important;
  font-family: var(--font-sans);
  font-size: 12.5px;
  font-weight: 600;
}
.onbi-dialog .onbi-linkbtn md-icon, .onbi-dialog .onbi-linkbtn [class^=iconoir-], .onbi-dialog .onbi-linkbtn [class*=" iconoir-"] {
  color: var(--an-text-muted) !important;
  font-size: 16px;
}
.onbi-dialog .onbi-linkbtn:hover {
  color: var(--an-primary) !important;
  background: var(--an-primary-soft) !important;
}
.onbi-dialog .onbi-linkbtn:hover md-icon, .onbi-dialog .onbi-linkbtn:hover [class^=iconoir-], .onbi-dialog .onbi-linkbtn:hover [class*=" iconoir-"] {
  color: var(--an-primary) !important;
}
.onbi-dialog .onbi-iconbtn {
  width: 30px !important;
  min-width: 30px !important;
  height: 30px !important;
  margin: 0 !important;
}
.onbi-dialog .onbi-iconbtn md-icon, .onbi-dialog .onbi-iconbtn [class^=iconoir-], .onbi-dialog .onbi-iconbtn [class*=" iconoir-"] {
  color: var(--an-text-muted) !important;
  font-size: 16px;
}
.onbi-dialog .onbi-iconbtn:hover md-icon, .onbi-dialog .onbi-iconbtn:hover [class^=iconoir-], .onbi-dialog .onbi-iconbtn:hover [class*=" iconoir-"] {
  color: var(--an-primary) !important;
}
.onbi-dialog .onbi-iconbtn[disabled] {
  opacity: 0.4;
}
.onbi-dialog .onbi-iconbtn[disabled] md-icon, .onbi-dialog .onbi-iconbtn[disabled] [class^=iconoir-], .onbi-dialog .onbi-iconbtn[disabled] [class*=" iconoir-"] {
  color: var(--an-text-faint) !important;
}
.onbi-dialog .onbi-iconbtn--danger:hover md-icon, .onbi-dialog .onbi-iconbtn--danger:hover [class^=iconoir-], .onbi-dialog .onbi-iconbtn--danger:hover [class*=" iconoir-"] {
  color: var(--an-amber) !important;
}
@media (max-width: 720px) {
  .onbi-dialog {
    width: 100vw;
  }
  .onbi-dialog .onbi-content {
    padding: var(--space-md);
  }
  .onbi-dialog .onbi-rail {
    gap: var(--space-md);
  }
  .onbi-dialog .onbi-rail__label {
    display: none;
  }
  .onbi-dialog .onbi-prod__actions {
    margin-left: 0;
  }
}

#moduleOnbGuide .onbg-root {
  background: var(--an-bg);
}
#moduleOnbGuide .onbg-container {
  max-width: 1080px;
  margin: 0 auto;
  padding: var(--space-lg);
}
#moduleOnbGuide .onbg-placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-sm);
  padding: 64px var(--space-lg);
  text-align: center;
}
#moduleOnbGuide .onbg-placeholder__icon i {
  --an-icon-size: 32px;
  color: var(--an-amber) !important;
}
#moduleOnbGuide .onbg-placeholder__text {
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 600;
  color: var(--an-text);
}
#moduleOnbGuide .onbg-placeholder__hint {
  font-family: var(--font-sans);
  font-size: 13px;
  line-height: 1.5;
  color: var(--an-text-muted);
  max-width: 420px;
}
#moduleOnbGuide .onbg-head {
  display: flex;
  align-items: center;
  gap: var(--space-md);
  margin-bottom: var(--space-lg);
}
#moduleOnbGuide .onbg-head__ring {
  position: relative;
  flex: 0 0 auto;
  width: 56px;
  height: 56px;
  display: grid;
  place-items: center;
}
#moduleOnbGuide .onbg-head__ring-svg {
  position: absolute;
  inset: 0;
  width: 56px;
  height: 56px;
  transform: rotate(-90deg);
}
#moduleOnbGuide .onbg-head__ring-track {
  stroke: var(--an-border-strong);
}
#moduleOnbGuide .onbg-head__ring-fill {
  stroke: var(--an-primary);
  transition: stroke-dasharray var(--duration-slow) var(--ease-default);
}
#moduleOnbGuide .onbg-head__ring-pct {
  position: relative;
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: var(--an-text);
}
#moduleOnbGuide .onbg-head__title {
  font-family: var(--font-sans);
  font-size: 20px;
  font-weight: 700;
  color: var(--an-text);
  margin: 0;
}
#moduleOnbGuide .onbg-head__count {
  font-family: var(--font-sans);
  font-size: 13px;
  color: var(--an-text-muted);
  font-variant-numeric: tabular-nums;
  margin: 4px 0 0;
}
#moduleOnbGuide .onbg-note {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  padding: var(--space-sm) var(--space-md);
  margin-bottom: var(--space-md);
  border-radius: 10px;
  background: var(--an-amber-soft);
  font-family: var(--font-sans);
  font-size: 13px;
  line-height: 1.5;
  color: var(--an-text);
}
#moduleOnbGuide .onbg-note__icon i {
  --an-icon-size: 18px;
  color: var(--an-amber) !important;
}
#moduleOnbGuide .onbg-note--muted {
  background: var(--an-surface2);
}
#moduleOnbGuide .onbg-note--muted .onbg-note__icon i {
  color: var(--an-text-muted) !important;
}
#moduleOnbGuide .onbg-shell {
  display: grid;
  grid-template-columns: 240px 1fr;
  gap: var(--space-lg);
  align-items: start;
}
#moduleOnbGuide .onbg-rail {
  display: flex;
  flex-direction: column;
  gap: 2px;
  position: sticky;
  top: var(--space-md);
}
#moduleOnbGuide .onbg-rail__item {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  width: 100%;
  padding: 9px var(--space-sm);
  border: none;
  outline: none;
  border-radius: 8px;
  background: transparent;
  text-align: left;
  cursor: pointer;
  font-family: var(--font-sans);
  font-size: 13px;
  color: var(--an-text-muted);
  transition: background var(--duration-fast) var(--ease-default), color var(--duration-fast) var(--ease-default);
}
#moduleOnbGuide .onbg-rail__item:hover {
  background: var(--an-surface2);
}
#moduleOnbGuide .onbg-rail__item:focus-visible {
  box-shadow: inset 0 0 0 2px var(--an-primary);
}
#moduleOnbGuide .onbg-rail__item--current {
  background: var(--an-surface);
  color: var(--an-text);
  font-weight: 600;
  box-shadow: inset 2px 0 0 var(--an-primary);
}
#moduleOnbGuide .onbg-rail__item--done {
  color: var(--an-text);
}
#moduleOnbGuide .onbg-rail__item--done .onbg-rail__icon {
  background: var(--an-emerald-soft);
}
#moduleOnbGuide .onbg-rail__item--done .onbg-rail__icon i {
  color: var(--an-emerald) !important;
}
#moduleOnbGuide .onbg-rail__item--milestone:not(.onbg-rail__item--done) .onbg-rail__icon {
  background: var(--an-rose-soft);
}
#moduleOnbGuide .onbg-rail__item--milestone:not(.onbg-rail__item--done) .onbg-rail__icon i {
  color: var(--an-rose) !important;
}
#moduleOnbGuide .onbg-rail__item--locked {
  opacity: 0.6;
  cursor: default;
}
#moduleOnbGuide .onbg-rail__icon {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--an-surface2);
}
#moduleOnbGuide .onbg-rail__icon i {
  --an-icon-size: 15px;
  color: var(--an-text-muted);
}
#moduleOnbGuide .onbg-rail__label {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
#moduleOnbGuide .onbg-rail__done-toggle {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  width: 100%;
  padding: 9px var(--space-sm);
  margin-bottom: 2px;
  border: none;
  outline: none;
  border-radius: 8px;
  background: transparent;
  cursor: pointer;
  font-family: var(--font-sans);
  font-size: 12.5px;
  font-weight: 600;
  color: var(--an-text-muted);
}
#moduleOnbGuide .onbg-rail__done-toggle:hover {
  background: var(--an-surface2);
}
#moduleOnbGuide .onbg-rail__done-toggle:focus-visible {
  box-shadow: inset 0 0 0 2px var(--an-primary);
}
#moduleOnbGuide .onbg-rail__done-icon {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--an-emerald-soft);
}
#moduleOnbGuide .onbg-rail__done-icon i {
  --an-icon-size: 15px;
  color: var(--an-emerald);
}
#moduleOnbGuide .onbg-rail__done-label {
  flex: 1 1 auto;
  text-align: left;
}
#moduleOnbGuide .onbg-rail__done-caret {
  --an-icon-size: 16px;
  color: var(--an-text-faint);
}
#moduleOnbGuide .onbg-main {
  min-width: 0;
}
#moduleOnbGuide .onbg-card {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 14px;
  padding: var(--space-lg);
}
#moduleOnbGuide .onbg-card__head {
  display: flex;
  align-items: flex-start;
  gap: var(--space-md);
}
#moduleOnbGuide .onbg-card__icon {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background: var(--an-primary-soft);
}
#moduleOnbGuide .onbg-card__icon i {
  --an-icon-size: 22px;
  color: var(--an-primary);
}
#moduleOnbGuide .onbg-card__icon--done {
  background: var(--an-emerald-soft);
}
#moduleOnbGuide .onbg-card__icon--done i {
  color: var(--an-emerald);
}
#moduleOnbGuide .onbg-card__headtext {
  flex: 1 1 auto;
  min-width: 0;
}
#moduleOnbGuide .onbg-card__title {
  font-family: var(--font-sans);
  font-size: 17px;
  font-weight: 700;
  color: var(--an-text);
  margin: 0;
}
#moduleOnbGuide .onbg-card__question {
  font-family: var(--font-sans);
  font-size: 14px;
  line-height: 1.55;
  color: var(--an-text-muted);
  margin: 6px 0 0;
}
#moduleOnbGuide .onbg-card__badge {
  flex: 0 0 auto;
  align-self: center;
  padding: 3px 9px;
  border-radius: 9px;
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
  font-family: var(--font-sans);
  font-size: 11.5px;
  font-weight: 700;
}
#moduleOnbGuide .onbg-card__facts {
  font-family: var(--font-sans);
  font-size: 13px;
  color: var(--an-text-muted);
  font-variant-numeric: tabular-nums;
  margin: var(--space-md) 0 0;
}
#moduleOnbGuide .onbg-card__note {
  font-family: var(--font-sans);
  font-size: 12.5px;
  line-height: 1.5;
  color: var(--an-text-faint);
  margin: var(--space-sm) 0 0;
}
#moduleOnbGuide .onbg-card__locked, #moduleOnbGuide .onbg-card__golive {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  flex-wrap: wrap;
  margin-top: var(--space-md);
}
#moduleOnbGuide .onbg-card__locked-title {
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 600;
  color: var(--an-text);
  margin: 0;
}
#moduleOnbGuide .onbg-card__actions {
  display: flex;
  gap: var(--space-sm);
  flex-wrap: wrap;
  margin-top: var(--space-md);
}
#moduleOnbGuide .onbg-next-level {
  margin-top: var(--space-lg);
  padding: var(--space-lg);
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 14px;
}
#moduleOnbGuide .onbg-next-level__title {
  font-family: var(--font-sans);
  font-size: 15px;
  font-weight: 700;
  color: var(--an-text);
  margin: 0;
}
#moduleOnbGuide .onbg-next-level__desc {
  font-family: var(--font-sans);
  font-size: 13px;
  line-height: 1.5;
  color: var(--an-text-muted);
  margin: 4px 0 var(--space-md);
}
#moduleOnbGuide .onbg-next-level__list {
  list-style: none;
  padding: 0;
  margin: 0;
}
#moduleOnbGuide .onbg-next-level__item {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  padding: 9px 0;
  border-top: 1px solid var(--an-border-light);
}
#moduleOnbGuide .onbg-next-level__icon i {
  --an-icon-size: 18px;
  color: var(--an-text-muted) !important;
}
#moduleOnbGuide .onbg-next-level__label {
  flex: 1 1 auto;
  font-family: var(--font-sans);
  font-size: 13.5px;
  color: var(--an-text);
}
#moduleOnbGuide .onbg-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-sm);
  margin-top: var(--space-lg);
  padding-top: var(--space-md);
  border-top: 1px solid var(--an-border-light);
}
#moduleOnbGuide .onbg-foot__link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text-muted);
  text-decoration: none;
}
#moduleOnbGuide .onbg-foot__link:hover {
  color: var(--an-text);
}
#moduleOnbGuide .onbg-foot__link i {
  --an-icon-size: 16px;
  color: inherit !important;
}
#moduleOnbGuide .onbg-linkbtn {
  color: var(--an-text-muted) !important;
  font-weight: 600;
}
#moduleOnbGuide .onbg-linkbtn md-icon, #moduleOnbGuide .onbg-linkbtn [class*=iconoir-] {
  color: var(--an-text-muted) !important;
}
#moduleOnbGuide .onbg-linkbtn:hover {
  color: var(--an-text) !important;
}
@media (max-width: 960px) {
  #moduleOnbGuide .onbg-shell {
    grid-template-columns: 1fr;
  }
  #moduleOnbGuide .onbg-rail {
    position: static;
    flex-direction: row;
    gap: var(--space-sm);
    overflow-x: auto;
    padding-bottom: var(--space-sm);
  }
  #moduleOnbGuide .onbg-rail__item {
    width: auto;
    flex: 0 0 auto;
    padding: 7px 11px;
    border-radius: 999px;
    background: var(--an-surface);
    border: 1px solid var(--an-border);
  }
  #moduleOnbGuide .onbg-rail__item--current {
    box-shadow: none;
    border-color: var(--an-primary);
  }
  #moduleOnbGuide .onbg-rail__label {
    max-width: 140px;
  }
  #moduleOnbGuide .onbg-container {
    padding: var(--space-md);
  }
}

#moduleOnbGuide .onbg-thread {
  margin-top: var(--space-md);
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 14px;
  overflow: hidden;
}
#moduleOnbGuide .onbg-thread--open {
  border-color: var(--an-primary);
}
#moduleOnbGuide .onbg-thread__head {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  padding: var(--space-md);
  cursor: pointer;
  user-select: none;
}
#moduleOnbGuide .onbg-thread__head:hover {
  background: var(--an-surface2);
}
#moduleOnbGuide .onbg-thread__avatar {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--an-primary-soft);
}
#moduleOnbGuide .onbg-thread__spark {
  display: block;
  width: 20px;
  height: 20px;
}
#moduleOnbGuide .onbg-thread__spark svg {
  width: 100%;
  height: 100%;
}
#moduleOnbGuide .onbg-thread__headtext {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
}
#moduleOnbGuide .onbg-thread__title {
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text);
}
#moduleOnbGuide .onbg-thread__sub {
  font-family: var(--font-sans);
  font-size: 12.5px;
  color: var(--an-text-muted);
}
#moduleOnbGuide .onbg-thread__caret {
  --an-icon-size: 18px;
  color: var(--an-text-faint);
}
#moduleOnbGuide .onbg-thread__body {
  border-top: 1px solid var(--an-border-light);
  padding: var(--space-md);
}
#moduleOnbGuide .onbg-thread__starters {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-sm);
}
#moduleOnbGuide .onbg-thread__greeting {
  flex: 1 0 100%;
  font-family: var(--font-sans);
  font-size: 13.5px;
  line-height: 1.55;
  color: var(--an-text-muted);
  margin: 0 0 4px;
}
#moduleOnbGuide .onbg-thread__starter {
  padding: 7px 12px;
  border: 1px solid var(--an-border);
  border-radius: 999px;
  background: transparent;
  cursor: pointer;
  font-family: var(--font-sans);
  font-size: 12.5px;
  color: var(--an-text);
  transition: border-color var(--duration-fast) var(--ease-default), background var(--duration-fast) var(--ease-default);
}
#moduleOnbGuide .onbg-thread__starter:hover {
  border-color: var(--an-primary);
  background: var(--an-primary-soft);
}
#moduleOnbGuide .onbg-thread__msgs {
  max-height: 340px;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}
#moduleOnbGuide .onbg-thread__msg {
  display: flex;
  flex-direction: column;
}
#moduleOnbGuide .onbg-thread__msg--user {
  align-items: flex-end;
}
#moduleOnbGuide .onbg-thread__msg--user .onbg-thread__bubble {
  background: var(--an-primary);
  color: #fff;
  border-radius: 12px 12px 2px 12px;
}
#moduleOnbGuide .onbg-thread__msg--assistant .onbg-thread__bubble {
  background: var(--an-surface2);
  color: var(--an-text);
  border-radius: 12px 12px 12px 2px;
}
#moduleOnbGuide .onbg-thread__msg--error .onbg-thread__bubble {
  background: var(--an-rose-soft);
  color: var(--an-text);
}
#moduleOnbGuide .onbg-thread__bubble {
  max-width: 88%;
  padding: 9px 13px;
  font-family: var(--font-sans);
  font-size: 13.5px;
  line-height: 1.55;
  word-break: break-word;
}
#moduleOnbGuide .onbg-thread__bubble p:first-child {
  margin-top: 0;
}
#moduleOnbGuide .onbg-thread__bubble p:last-child {
  margin-bottom: 0;
}
#moduleOnbGuide .onbg-thread__bubble table, #moduleOnbGuide .onbg-thread__bubble pre {
  display: block;
  max-width: 100%;
  overflow-x: auto;
}
#moduleOnbGuide .onbg-thread__status {
  font-family: var(--font-sans);
  font-size: 12px;
  color: var(--an-text-faint);
  padding: 2px 4px;
}
#moduleOnbGuide .onbg-thread__typing {
  display: inline-flex;
  gap: 4px;
  padding: 11px 13px;
}
#moduleOnbGuide .onbg-thread__typing span {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--an-text-faint);
  animation: onbgTyping 1.2s infinite ease-in-out;
}
#moduleOnbGuide .onbg-thread__typing span:nth-child(2) {
  animation-delay: 0.15s;
}
#moduleOnbGuide .onbg-thread__typing span:nth-child(3) {
  animation-delay: 0.3s;
}
#moduleOnbGuide .onbg-thread__pills {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-sm);
  margin-top: var(--space-sm);
}
#moduleOnbGuide .onbg-thread__pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 11px;
  border: 1px solid var(--an-border);
  border-radius: 999px;
  background: transparent;
  cursor: pointer;
  font-family: var(--font-sans);
  font-size: 12.5px;
  color: var(--an-text);
}
#moduleOnbGuide .onbg-thread__pill i {
  --an-icon-size: 14px;
  color: var(--an-text-muted);
}
#moduleOnbGuide .onbg-thread__pill:hover {
  border-color: var(--an-primary);
}
#moduleOnbGuide .onbg-thread__pill--action {
  border-color: var(--an-primary);
  color: var(--an-primary);
}
#moduleOnbGuide .onbg-thread__pill--action i {
  color: var(--an-primary);
}
#moduleOnbGuide .onbg-thread__intent {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: var(--space-sm);
  margin-top: var(--space-sm);
  padding: var(--space-sm) var(--space-md);
  border-radius: 10px;
  background: var(--an-primary-soft);
}
#moduleOnbGuide .onbg-thread__intent-text {
  font-family: var(--font-sans);
  font-size: 13px;
  color: var(--an-text);
}
#moduleOnbGuide .onbg-thread__intent-actions {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
}
#moduleOnbGuide .onbg-thread__composer {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  margin-top: var(--space-md);
}
#moduleOnbGuide .onbg-thread__attach {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  cursor: pointer;
  color: var(--an-text-muted);
  transition: background var(--duration-fast) var(--ease-default);
}
#moduleOnbGuide .onbg-thread__attach:hover {
  background: var(--an-surface2);
}
#moduleOnbGuide .onbg-thread__attach i {
  --an-icon-size: 19px;
  color: inherit;
}
#moduleOnbGuide .onbg-thread__attach input[type=file] {
  display: none;
}
#moduleOnbGuide .onbg-thread__input {
  flex: 1 1 auto;
  min-width: 0;
  height: 40px;
  padding: 0 14px;
  border: 1px solid var(--an-border);
  border-radius: 999px;
  background: var(--an-bg);
  color: var(--an-text);
  font-family: var(--font-sans);
  font-size: 13.5px;
  outline: none;
}
#moduleOnbGuide .onbg-thread__input::placeholder {
  color: var(--an-placeholder);
}
#moduleOnbGuide .onbg-thread__input:focus {
  border-color: var(--an-primary);
}
#moduleOnbGuide .onbg-thread__input[disabled] {
  opacity: 0.6;
}
#moduleOnbGuide .onbg-thread__send {
  flex: 0 0 auto;
  min-width: 40px !important;
  width: 40px !important;
  height: 40px !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 50% !important;
}
@media (max-width: 960px) {
  #moduleOnbGuide .onbg-thread__msgs {
    max-height: 260px;
  }
  #moduleOnbGuide .onbg-thread__bubble {
    max-width: 94%;
  }
}

@keyframes onbgTyping {
  0%, 60%, 100% {
    opacity: 0.25;
    transform: translateY(0);
  }
  30% {
    opacity: 1;
    transform: translateY(-3px);
  }
}
@keyframes onbgTyping {
  0%, 60%, 100% {
    opacity: 0.25;
    transform: translateY(0);
  }
  30% {
    opacity: 1;
    transform: translateY(-3px);
  }
}
#moduleOnbGuide .onbg-prop {
  margin-top: var(--space-sm);
  padding: var(--space-md);
  border: 1px solid var(--an-border);
  border-radius: 12px;
  background: var(--an-bg);
}
#moduleOnbGuide .onbg-prop--pending {
  border-color: var(--an-primary);
  background: var(--an-primary-soft);
}
#moduleOnbGuide .onbg-prop--executed {
  border-color: var(--an-emerald);
  background: var(--an-emerald-soft);
}
#moduleOnbGuide .onbg-prop--rejected {
  opacity: 0.7;
}
#moduleOnbGuide .onbg-prop--dead {
  opacity: 0.6;
  border-style: dashed;
}
#moduleOnbGuide .onbg-prop__head {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
}
#moduleOnbGuide .onbg-prop__icon {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--an-surface);
}
#moduleOnbGuide .onbg-prop__icon i {
  --an-icon-size: 14px;
  color: var(--an-text-muted);
}
#moduleOnbGuide .onbg-prop--pending #moduleOnbGuide .onbg-prop__icon i {
  color: var(--an-primary);
}
#moduleOnbGuide .onbg-prop--executed #moduleOnbGuide .onbg-prop__icon i {
  color: var(--an-emerald);
}
#moduleOnbGuide .onbg-prop__title {
  flex: 1 1 auto;
  font-family: var(--font-sans);
  font-size: 13.5px;
  font-weight: 700;
  color: var(--an-text);
}
#moduleOnbGuide .onbg-prop__state {
  flex: 0 0 auto;
  font-family: var(--font-sans);
  font-size: 11.5px;
  font-weight: 700;
  color: var(--an-text-muted);
}
#moduleOnbGuide .onbg-prop__lines {
  list-style: none;
  padding: 0;
  margin: var(--space-sm) 0 0 32px;
}
#moduleOnbGuide .onbg-prop__lines li {
  font-family: var(--font-sans);
  font-size: 13px;
  line-height: 1.6;
  color: var(--an-text);
  word-break: break-word;
}
#moduleOnbGuide .onbg-prop__actions {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  margin: var(--space-md) 0 0 32px;
}

#moduleOnbGuide .onbg-choice,
#moduleOnboarding .onbg-choice {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: var(--space-sm);
  margin-top: var(--space-md);
}
#moduleOnbGuide .onbg-choice__option,
#moduleOnboarding .onbg-choice__option {
  display: flex;
  align-items: flex-start;
  gap: var(--space-sm);
  width: 100%;
  padding: var(--space-md);
  border: 1px solid var(--an-border);
  border-radius: 12px;
  background: var(--an-surface);
  text-align: left;
  cursor: pointer;
  font-family: var(--font-sans);
  transition: border-color var(--duration-fast) var(--ease-default), background var(--duration-fast) var(--ease-default);
}
#moduleOnbGuide .onbg-choice__option:hover:not([disabled]),
#moduleOnboarding .onbg-choice__option:hover:not([disabled]) {
  border-color: var(--an-primary);
  background: var(--an-surface2);
}
#moduleOnbGuide .onbg-choice__option:focus-visible,
#moduleOnboarding .onbg-choice__option:focus-visible {
  outline: none;
  box-shadow: 0 0 0 2px var(--an-primary);
}
#moduleOnbGuide .onbg-choice__option[disabled],
#moduleOnboarding .onbg-choice__option[disabled] {
  opacity: 0.6;
  cursor: default;
}
#moduleOnbGuide .onbg-choice__icon,
#moduleOnboarding .onbg-choice__icon {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border-radius: 10px;
  background: var(--an-primary-soft);
}
#moduleOnbGuide .onbg-choice__icon i,
#moduleOnboarding .onbg-choice__icon i {
  --an-icon-size: 19px;
  color: var(--an-primary);
}
#moduleOnbGuide .onbg-choice__text,
#moduleOnboarding .onbg-choice__text {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 3px;
}
#moduleOnbGuide .onbg-choice__title,
#moduleOnboarding .onbg-choice__title {
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text);
}
#moduleOnbGuide .onbg-choice__desc,
#moduleOnboarding .onbg-choice__desc {
  font-size: 12.5px;
  line-height: 1.5;
  color: var(--an-text-muted);
}
#moduleOnbGuide .onbg-choice__hint,
#moduleOnboarding .onbg-choice__hint {
  font-size: 12px;
  font-weight: 600;
  color: var(--an-amber);
}
#moduleOnbGuide .onbg-choice__caret,
#moduleOnboarding .onbg-choice__caret {
  flex: 0 0 auto;
  align-self: center;
  --an-icon-size: 18px;
  color: var(--an-text-faint);
}

#moduleOnbGuide .onbg-card__wait {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  flex-wrap: wrap;
  margin-top: var(--space-md);
  padding: var(--space-md);
  border: 1px solid var(--an-amber-soft);
  border-radius: 12px;
  background: var(--an-amber-soft);
}
#moduleOnbGuide .onbg-card__wait-icon i {
  --an-icon-size: 20px;
  color: var(--an-amber) !important;
}
#moduleOnbGuide .onbg-card__wait-text {
  flex: 1 1 220px;
  min-width: 0;
}
#moduleOnbGuide .onbg-card__wait-title {
  font-family: var(--font-sans);
  font-size: 13.5px;
  font-weight: 700;
  color: var(--an-text);
  margin: 0;
}
#moduleOnbGuide .onbg-card__wait-desc {
  font-family: var(--font-sans);
  font-size: 12.5px;
  line-height: 1.5;
  color: var(--an-text-muted);
  margin: 3px 0 0;
}
#moduleOnbGuide .onbg-card__note--ok {
  color: var(--an-emerald);
  font-weight: 600;
}
#moduleOnbGuide .onbg-rail__tag {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 18px;
  height: 18px;
  border-radius: 5px;
  background: var(--an-amber-soft);
}
#moduleOnbGuide .onbg-rail__tag i {
  --an-icon-size: 12px;
  color: var(--an-amber);
}
#moduleOnbGuide .onbg-rail__item--waiting:not(.onbg-rail__item--current) .onbg-rail__label {
  color: var(--an-text-faint);
}

#moduleOnboarding .onb-integration {
  margin-bottom: var(--space-lg);
  padding: var(--space-lg);
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 14px;
}
#moduleOnboarding .onb-integration__head {
  display: flex;
  align-items: flex-start;
  gap: var(--space-md);
}
#moduleOnboarding .onb-integration__badge {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 12px;
  background: var(--an-primary-soft);
}
#moduleOnboarding .onb-integration__badge i {
  --an-icon-size: 20px;
  color: var(--an-primary) !important;
}
#moduleOnboarding .onb-integration__headtext {
  flex: 1 1 auto;
  min-width: 0;
}
#moduleOnboarding .onb-integration__title {
  font-family: var(--font-sans);
  font-size: 16px;
  font-weight: 700;
  color: var(--an-text);
  margin: 0;
}
#moduleOnboarding .onb-integration__desc {
  font-family: var(--font-sans);
  font-size: 13.5px;
  line-height: 1.55;
  color: var(--an-text-muted);
  margin: 5px 0 0;
}
#moduleOnboarding .onb-note--waiting {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  flex-wrap: wrap;
  border-color: var(--an-amber-soft);
  background: var(--an-amber-soft);
}
#moduleOnboarding .onb-note--waiting .onb-note__icon i {
  color: var(--an-amber) !important;
}
#moduleOnboarding .onb-note--waiting span {
  flex: 1 1 240px;
}
#moduleOnboarding .onb-tag--waiting {
  background: var(--an-amber-soft);
  color: var(--an-amber);
}
#moduleOnboarding .onb-step__note--waiting {
  color: var(--an-amber);
}

.brochurePreview {
  position: relative;
}
.brochurePreview .tableTentScene {
  width: 200px;
  height: 200px;
  margin: 80px auto 0;
  perspective: 800px;
  perspective-origin: 50% 50%;
}
.brochurePreview .tableTentScene:hover {
  transition: all 0.2s ease-out;
  transform: scale(1.2);
}
.brochurePreview .tableTentScene .tableTent {
  width: 200px;
  height: 200px;
  position: relative;
  transform-style: preserve-3d;
  transform: translateZ(-100px) scale(1);
  animation: spinTableTent 15s infinite linear;
}
.brochurePreview .tableTentScene .tableTent:hover {
  animation-play-state: paused;
}
.brochurePreview .tableTentScene .tableTent .side {
  position: absolute;
  width: 200px;
  height: 290px;
  border: 1px solid #222;
  font-weight: bold;
  background: white;
  text-align: center;
  transform-origin: 50% 50%;
  transition: all 0.5s ease-in-out;
}
.brochurePreview .tableTentScene .tableTent .side .content svg {
  width: 100%;
  transform: translateY(152px);
}
.brochurePreview .tableTentScene .tableTent .side .qr {
  transform: scale(0.6) translate(-109px, 273px);
}
.brochurePreview .tableTentScene .tableTent .side .pin {
  widtH: 100px;
  transform: scale(0.63) translate(-123px, 219px);
}
.brochurePreview .tableTentScene .tableTent .side .pinSec {
  transform: scale(0.6) translate(-70px, 122px);
}
.brochurePreview .tableTentScene .tableTent .side .tableNumber {
  transform: scale(0.65) translate(-110px, 295px);
}
.brochurePreview .tableTentScene .tableTent .side .logo {
  transform: scale(0.62) translate(-59px, 258px);
}
.brochurePreview .tableTentScene .tableTent .side.bottom {
  transform: rotateX(-90deg) translateZ(115px);
  height: 160px;
  background: #efefef;
}
.brochurePreview .tableTentScene .tableTent .side.shadow {
  transform: rotateX(-90deg) translateZ(135px) scale(0.8);
  height: 150px;
  border: none;
  box-shadow: 0 0 30px 30PX rgba(0, 0, 0, 0.2);
  background: rgba(0, 0, 0, 0.2);
}
.brochurePreview.tent .front, .brochurePreview.tent .back {
  transform: rotate3d(1, 1, 1, 0deg);
  transform-style: preserve-3d;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.brochurePreview.tent .front:after, .brochurePreview.tent .back:after {
  content: " ";
  right: 0px;
  bottom: 0px;
  position: absolute;
  top: 0px;
  left: 0px;
  background: linear-gradient(to bottom, #efefef, #eee);
  transform: rotate3d(0, 1, 0, 180deg) translateZ(1px);
  transform-style: preserve-3d;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.brochurePreview.tent .front > div, .brochurePreview.tent .back > div {
  z-index: 1;
  transform: scale(0.588);
  transform-origin: top left;
  transform-style: preserve-3d;
  backface-visibility: visible;
}
.brochurePreview.tent .front {
  transform: rotateY(0deg) rotateX(16deg) translateY(-75px) translateZ(63px);
}
.brochurePreview.tent .back {
  transform: rotateY(180deg) rotateX(16deg) translateZ(63px) translateY(-75px);
}
.brochurePreview.double .front, .brochurePreview.poster .front, .brochurePreview.simple .front {
  transform: rotateY(0deg) rotateX(0deg) translateY(-96px) translateZ(0px);
}
.brochurePreview.double .back, .brochurePreview.poster .back, .brochurePreview.simple .back {
  transform: rotateY(180deg) rotateX(0deg) translateZ(1px) translateY(-96px);
}
.brochurePreview.poster .tableTent, .brochurePreview.simple .tableTent {
  animation: none;
}
.brochurePreview.poster .back, .brochurePreview.simple .back {
  background: #e0e0e0 !important;
}
.brochurePreview.poster .back > div, .brochurePreview.simple .back > div {
  opacity: 0;
}
.brochurePreview.poster .bottom, .brochurePreview.poster .shadow, .brochurePreview.simple .bottom, .brochurePreview.simple .shadow {
  opacity: 0 !important;
}

/* Table tent */
@keyframes spinTableTent {
  0% {
    transform: translateZ(-100px) rotateX(0deg) rotateY(0deg);
  }
  100% {
    transform: translateZ(-100px) rotateX(0deg) rotateY(-360deg);
  }
}
.qrPreview .frame {
  width: 160px;
}
.qrPreview .frame img {
  width: 150px;
  height: 150px;
}

#printing {
  content: " ";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.4);
  z-index: 2;
}

.layoutContainer {
  display: flex;
  position: relative;
  width: 100%;
  flex-direction: row;
}
.layoutContainer .leftSide {
  width: 100%;
  height: 100vh;
}
.layoutContainer .rightSide {
  background-color: rgb(241, 240, 239);
  height: 100vh;
  width: 350px;
  padding-left: 16px;
}
.waitry-dark-theme .layoutContainer .rightSide {
  background-color: var(--an-surface2);
}
.layoutContainer .rightSide .tablesContainer {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}
.layoutContainer .squareTable {
  width: 100px;
  height: 100px;
  background-color: white;
  vertical-align: middle;
  text-align: center;
  line-height: 100px;
  color: #111827;
}
.waitry-dark-theme .layoutContainer .squareTable {
  background-color: var(--an-surface3);
  color: var(--an-text);
}

.layout-config {
  margin: 4px 0px 4px 0px !important;
}
.layout-config md-switch {
  margin: 2px 0px 2px 0px !important;
}

.layout-config-input {
  margin: 14px 0px 4px 0px !important;
}
.layout-config-input md-switch {
  margin: 2px 0px 2px 0px !important;
}

.filter-time-input {
  font-size: 13px;
  width: 35px;
  border: 1px solid rgba(0, 0, 0, 0.1);
}
.waitry-dark-theme .filter-time-input {
  border-color: var(--an-border);
}
.filter-time-input {
  border-radius: 4px;
  padding: 2px 4px;
  margin-left: 4px;
}
.filter-time-input:focus {
  outline: none;
  border-color: var(--brand-primary);
}

.filter-time-separator {
  margin: 0 8px;
}

.filter-period-option {
  font-size: 0.9rem;
}

.wf-ap-qr {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 12px 14px;
  margin: 4px 0 20px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-bg-subtle);
}
.wf-ap-qr__code {
  flex: none;
  width: 76px;
  height: 76px;
  padding: 5px;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 6px;
}
.wf-ap-qr__code img {
  width: 100%;
  height: 100%;
  display: block;
}
.wf-ap-qr__meta {
  flex: 1;
  min-width: 0;
}
.wf-ap-qr__title {
  margin: 0;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
}
.wf-ap-qr__desc {
  margin: 3px 0 8px;
  font-size: 11.5px;
  line-height: 1.4;
  color: var(--an-text-faint);
}
.wf-ap-qr__row {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.wf-ap-qr__link {
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.wf-ap-qr__pin {
  flex: none;
  padding: 2px 8px;
  border-radius: var(--an-radius-pill);
  background: var(--an-rose-soft);
  color: var(--an-rose);
  font-size: 11px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
.wf-ap-qr__copy {
  flex: none;
  margin: 0;
}
.wf-ap-qr__copy md-icon {
  color: var(--an-text-muted);
  font-size: 17px;
}

.wqr-dialog {
  width: min(1100px, 94vw);
  max-width: 94vw;
}
.wqr-dialog.wqr-dialog--compact {
  width: min(720px, 92vw);
}
.wqr-dialog.wqr-dialog--compact .wqr-stage {
  min-height: 300px;
}
.wqr-dialog .wqr-content {
  padding: 20px 28px 24px;
}
.wqr-dialog .wqr-layout {
  display: flex;
  gap: 32px;
  align-items: stretch;
}
.wqr-dialog .wqr-settings {
  flex: 0 0 46%;
  min-width: 0;
}
.wqr-dialog .wqr-preview {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
}
.wqr-dialog .wqr-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 0 14px;
}
.wqr-dialog .wqr-section-head h3 {
  margin: 0;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: -0.2px;
}
.wqr-dialog .wqr-help md-icon {
  color: var(--an-text-faint);
  font-size: 18px;
}
.wqr-dialog .wqr-count-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 12px;
  border-radius: var(--an-radius-pill);
  background: var(--an-rose-soft);
  color: var(--an-rose);
  font-size: 12px;
  font-weight: 600;
}
.wqr-dialog .wqr-count-chip md-icon {
  color: var(--an-rose);
  font-size: 14px;
  width: 14px;
  height: 14px;
  min-width: 14px;
  min-height: 14px;
  line-height: 14px;
}
.wqr-dialog .wqr-selects {
  display: flex;
  gap: 16px;
}
.wqr-dialog .wqr-selects md-input-container {
  flex: 1;
  margin: 0 0 10px;
}
.wqr-dialog .wqr-format-title {
  margin: 12px 0 10px;
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.4px;
}
.wqr-dialog .wqr-format-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}
.wqr-dialog .wqr-format-card {
  appearance: none;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  padding: 12px 8px 10px;
  background: var(--an-surface);
  border: 1.5px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  cursor: pointer;
  font-family: var(--font-sans);
  transition: border-color var(--duration-fast) var(--ease-default), box-shadow var(--duration-fast) var(--ease-default), transform var(--duration-fast) var(--ease-default);
}
.wqr-dialog .wqr-format-card:hover {
  border-color: var(--an-border-hover);
  transform: translateY(-1px);
  box-shadow: var(--an-shadow-sm);
}
.wqr-dialog .wqr-format-card:focus-visible {
  outline: 2px solid var(--an-rose);
  outline-offset: 2px;
}
.wqr-dialog .wqr-format-card.is-active {
  border-color: var(--an-rose);
  background: var(--an-rose-soft);
  box-shadow: var(--an-rose-glow);
}
.wqr-dialog .wqr-format-card.is-active .wqr-format-glyph,
.wqr-dialog .wqr-format-card.is-active .wqr-format-name {
  color: var(--an-rose);
}
.wqr-dialog .wqr-format-glyph {
  color: var(--an-text-muted);
  width: 30px;
  height: 30px;
  display: block;
}
.wqr-dialog .wqr-format-glyph svg {
  width: 100%;
  height: 100%;
  display: block;
}
.wqr-dialog .wqr-format-name {
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text);
  text-align: center;
  line-height: 1.25;
}
.wqr-dialog .wqr-format-dims {
  font-size: 10.5px;
  color: var(--an-text-faint);
  font-variant-numeric: tabular-nums;
}
.wqr-dialog .wqr-options {
  margin-top: 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 4px 20px;
}
.wqr-dialog .wqr-options md-checkbox {
  margin: 4px 0;
}
.wqr-dialog .wqr-options .wqr-layouts-select {
  flex: 1 1 100%;
  margin: 0;
}
.wqr-dialog .wqr-success {
  margin-top: 18px;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  border-radius: var(--an-radius-sm);
  background: var(--an-emerald-soft);
  border: 1px solid rgba(16, 185, 129, 0.25);
}
.wqr-dialog .wqr-success > md-icon {
  color: var(--an-emerald);
  flex: none;
}
.wqr-dialog .wqr-success .wqr-success-txt {
  flex: 1;
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
}
.wqr-dialog .wqr-success .wqr-download-btn {
  margin: 0;
}
.wqr-dialog .wqr-stage {
  position: relative;
  flex: 1;
  min-height: 400px;
  border-radius: var(--an-radius);
  border: 1px solid var(--an-border-light);
  background: radial-gradient(120% 90% at 50% 0%, var(--an-surface) 0%, var(--an-surface2) 100%);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  touch-action: none;
}
.wqr-dialog .wqr-stage.wqr-stage--tent, .wqr-dialog .wqr-stage.wqr-stage--double {
  cursor: grab;
}
.wqr-dialog .wqr-stage.wqr-stage--tent:active, .wqr-dialog .wqr-stage.wqr-stage--double:active {
  cursor: grabbing;
}
.wqr-dialog .wqr-floor {
  position: absolute;
  left: 50%;
  bottom: 48px;
  width: 340px;
  height: 60px;
  transform: translateX(-50%);
  border-radius: 50%;
  background: radial-gradient(50% 50% at 50% 50%, rgba(0, 0, 0, 0.1) 0%, rgba(0, 0, 0, 0) 70%);
  pointer-events: none;
}
.wqr-dialog .brochurePreview {
  position: relative;
  z-index: 1;
}
.wqr-dialog .brochurePreview .tableTentScene {
  margin: 40px auto 0;
  perspective: 1000px;
}
.wqr-dialog .brochurePreview .tableTentScene:hover {
  transform: none;
  transition: none;
}
.wqr-dialog .brochurePreview .tableTent.wqr-tent-js {
  animation: none;
}
.wqr-dialog .brochurePreview .tableTent.wqr-tent-js .side.front > div,
.wqr-dialog .brochurePreview .tableTent.wqr-tent-js .side.back > div {
  width: 340px;
}
.wqr-dialog .brochurePreview .tableTent.wqr-tent-js .side .content svg,
.wqr-dialog .brochurePreview .tableTent.wqr-tent-js .side .qr,
.wqr-dialog .brochurePreview .tableTent.wqr-tent-js .side .pin,
.wqr-dialog .brochurePreview .tableTent.wqr-tent-js .side .pinSec,
.wqr-dialog .brochurePreview .tableTent.wqr-tent-js .side .tableNumber,
.wqr-dialog .brochurePreview .tableTent.wqr-tent-js .side .logo {
  transform: none;
}
.wqr-dialog .brochurePreview .tableTent.wqr-tent-js .side {
  border: none;
  border-radius: 3px;
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.06);
}
.wqr-dialog .brochurePreview .tableTent.wqr-tent-js .side.bottom {
  background: #e9e9e9;
  box-shadow: none;
}
.wqr-dialog .brochurePreview .tableTent.wqr-tent-js .side.shadow {
  background: rgba(0, 0, 0, 0.16);
  box-shadow: 0 0 34px 34px rgba(0, 0, 0, 0.16);
}
.wqr-dialog .brochurePreview.double .side > div,
.wqr-dialog .brochurePreview.poster .side > div,
.wqr-dialog .brochurePreview.simple .side > div {
  transform: scale(0.588);
  transform-origin: top left;
}
.wqr-dialog .wqr-qr-pane {
  width: 100%;
  align-self: stretch;
  padding: 20px 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.wqr-dialog .wqr-slider-row {
  display: flex;
  align-items: center;
  gap: 12px;
}
.wqr-dialog .wqr-slider-row md-slider-container {
  flex: 1;
}
.wqr-dialog .wqr-slider-row .wqr-slider-label {
  font-size: 12.5px;
  font-weight: 600;
  color: var(--an-text-muted);
  white-space: nowrap;
}
.wqr-dialog .wqr-slider-row .wqr-slider-value {
  font-size: 13px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: var(--an-text);
  min-width: 66px;
  text-align: right;
}
.wqr-dialog .wqr-qr-grid {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
  overflow: auto;
}
.wqr-dialog .wqr-qr-card {
  background: #fff;
  border-radius: 6px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  box-shadow: var(--an-shadow-sm);
  padding: 8px;
  text-align: center;
  transition: width var(--duration-fast) var(--ease-default);
}
.wqr-dialog .wqr-qr-card .wqr-qr-card-title {
  font-size: 10px;
  font-weight: 700;
  color: #111;
  line-height: 1.3;
  padding-bottom: 6px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}
.wqr-dialog .wqr-qr-card img {
  width: 100%;
  height: auto;
  display: block;
  margin: 6px auto 0;
}
.wqr-dialog .wqr-qr-card .wqr-qr-card-pin {
  margin-top: 6px;
  padding-top: 5px;
  border-top: 1px solid rgba(0, 0, 0, 0.08);
  font-size: 10.5px;
  font-weight: 700;
  color: #111;
  font-variant-numeric: tabular-nums;
}
.wqr-dialog .wqr-qr-more {
  flex: none;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--an-surface);
  border: 1.5px dashed var(--an-border-strong);
  color: var(--an-text-muted);
  font-size: 13px;
  font-weight: 700;
}
.wqr-dialog .wqr-sticker-pane {
  padding: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.wqr-dialog .wqr-sticker-pane .wqr-sticker-rotor {
  width: 420px;
  max-width: 100%;
  transform: rotate(-90deg);
  filter: drop-shadow(0 10px 18px rgba(0, 0, 0, 0.12));
}
.wqr-dialog .wqr-sticker-pane .wqr-sticker-rotor > div {
  margin: 0 auto;
}
.wqr-dialog .wqr-hint {
  margin-top: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  color: var(--an-text-faint);
  font-size: 12px;
}
.wqr-dialog .wqr-hint md-icon {
  color: var(--an-text-faint);
  font-size: 15px;
  width: 15px;
  height: 15px;
  min-width: 15px;
  min-height: 15px;
}
.wqr-dialog #printing {
  backdrop-filter: blur(3px);
}
@media (max-width: 960px) {
  .wqr-dialog .wqr-layout {
    flex-direction: column;
  }
  .wqr-dialog .wqr-settings {
    flex-basis: auto;
  }
  .wqr-dialog .wqr-stage {
    min-height: 340px;
  }
  .wqr-dialog .wqr-format-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

.clients-page-wrap {
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
}

.appcc-quick-actions.cc-actions {
  grid-template-columns: repeat(2, minmax(0, 200px));
  padding-top: var(--space-xl);
}
@media (max-width: 599px) {
  .appcc-quick-actions.cc-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: var(--space-md);
  }
}

.input-client-search {
  margin: 14px 0px 0px 0px;
  flex: 1 1 auto;
  min-width: 240px;
}
.input-client-search input {
  font-size: 18px;
}

.cno-search-row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 8px;
}
.cno-search-row .input-client-search {
  flex: 1 1 240px;
  min-width: 200px;
}
.cno-search-row .cno-search-btn {
  flex: 0 0 auto;
  width: 40px;
  min-width: 40px;
  margin: 14px 0 0 0;
  padding-top: 22px;
}
.cno-search-row .cno-search-btn .md-button.md-icon-button {
  margin: 0;
  height: 40px;
  width: 40px;
}
.cno-search-row .cno-search-check {
  align-self: center;
  margin: 14px 0 0;
  padding: 0;
  border: none;
  background: none;
}
.waitry-dark-theme .cno-search-row .cno-search-check {
  border: none;
  background: none;
}

.clients-filter-group {
  display: flex;
  align-items: center;
  gap: 4px;
  white-space: nowrap;
}
.clients-filter-group > label {
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: rgba(255, 255, 255, 0.6);
  flex-shrink: 0;
}

.clients-filter-date md-datepicker {
  margin: 0 !important;
  padding: 0 8px !important;
  height: 32px !important;
  display: inline-flex !important;
  align-items: center !important;
  background: rgba(255, 255, 255, 0.12) !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  border-radius: 16px !important;
  transition: all 0.2s ease !important;
}
.clients-filter-date md-datepicker:hover {
  background: rgba(255, 255, 255, 0.18) !important;
  border-color: rgba(255, 255, 255, 0.3) !important;
}
.clients-filter-date md-datepicker button {
  display: none !important;
}
.clients-filter-date md-datepicker .md-datepicker-input-container {
  border-bottom: none !important;
  border: none !important;
  background: transparent !important;
  margin: 0 !important;
  padding: 0 !important;
  height: 100% !important;
  display: inline-flex !important;
  align-items: center !important;
  box-shadow: none !important;
}
.clients-filter-date md-datepicker .md-datepicker-input-container.md-datepicker-focused {
  border: none !important;
  box-shadow: none !important;
}
.clients-filter-date md-datepicker .md-datepicker-input {
  height: 100% !important;
  font-size: 12px !important;
  color: #fff !important;
  min-width: 80px;
  max-width: 85px;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  line-height: 30px !important;
}
.clients-filter-date md-datepicker .md-datepicker-input::placeholder {
  color: rgba(255, 255, 255, 0.55) !important;
}
.clients-filter-date md-datepicker .md-datepicker-triangle-button {
  display: none !important;
}
.clients-filter-date md-datepicker .md-errors-spacer {
  display: none !important;
}

.clients-premium-select {
  margin: 0 !important;
  padding: 0 8px !important;
  height: 32px !important;
  min-width: 110px;
  max-width: 220px;
  display: inline-flex;
  align-items: center;
  background: var(--an-bg);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
}
.clients-premium-select .md-select-value {
  border: none !important;
  border-bottom: none !important;
  background: transparent !important;
  box-shadow: none !important;
  height: 32px !important;
  line-height: 30px !important;
  padding: 0 20px 0 0 !important;
  font-size: 13px !important;
  color: var(--an-text) !important;
  font-weight: 500 !important;
  min-height: auto !important;
}
.clients-premium-select .md-select-value span,
.clients-premium-select .md-select-value span:first-child,
.clients-premium-select .md-select-value span:not(.md-select-icon) {
  color: var(--an-text) !important;
  font-size: 13px !important;
}
.clients-premium-select .md-select-value .md-text {
  color: var(--an-text) !important;
  font-size: 13px !important;
}
.clients-premium-select .md-select-icon {
  color: var(--an-text-muted) !important;
  width: 18px;
  transform: translate3d(0, -1px, 0);
}

.clients-search-premium {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  position: relative;
  background: var(--an-bg) !important;
  border: 1px solid var(--an-border) !important;
  border-radius: var(--an-radius-sm) !important;
  height: 32px;
  min-width: 180px;
  max-width: 260px;
  padding: 0 10px !important;
  overflow: hidden;
  box-sizing: border-box;
  flex-shrink: 0;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.clients-search-premium > i {
  font-size: 15px;
  width: 15px;
  height: 15px;
  color: var(--an-text-muted) !important;
  margin-right: 6px;
  flex-shrink: 0;
}
.clients-search-premium > input {
  flex: 1 1 auto;
  border: none !important;
  border-bottom: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  outline: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  font-family: var(--font-sans) !important;
  font-size: 13px !important;
  color: var(--an-text) !important;
  min-width: 0;
}
.clients-search-premium > input::placeholder {
  color: var(--an-placeholder) !important;
}
.clients-search-premium > button.clients-search-clear-btn {
  background: transparent;
  border: none;
  padding: 2px;
  margin-left: 4px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  flex-shrink: 0;
}
.clients-search-premium > button.clients-search-clear-btn i {
  font-size: 13px;
  color: var(--an-text-faint) !important;
  transition: color 0.2s ease;
}
.clients-search-premium > button.clients-search-clear-btn:hover i {
  color: var(--an-text) !important;
}
.clients-search-premium:focus-within {
  border-color: var(--an-border-hover) !important;
  box-shadow: 0 0 0 2px var(--an-bg-active);
  background: var(--an-surface) !important;
}

.clients-btn-export i {
  color: var(--an-text-muted);
}
.clients-btn-export:hover i {
  color: var(--an-text);
}

.clients-kpi-banner {
  padding: 16px 24px 0;
  animation: clientsBannerIn 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  flex-shrink: 0;
}

@keyframes clientsBannerIn {
  from {
    opacity: 0;
    transform: translateY(-6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.clients-kpi-headline {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 16px;
  margin-bottom: 12px;
  background: rgba(108, 99, 255, 0.03);
  border: 1px solid rgba(108, 99, 255, 0.1);
  border-radius: 12px;
  flex-wrap: wrap;
  font-size: 0.83rem;
  color: #4b5563;
}
.waitry-dark-theme .clients-kpi-headline {
  color: var(--an-text-muted);
}
.clients-kpi-headline .clients-kpi-headline-stat {
  display: flex;
  align-items: center;
  gap: 5px;
  font-weight: 500;
}
.clients-kpi-headline .clients-kpi-headline-stat i {
  font-size: 15px;
  opacity: 0.7;
}
.clients-kpi-headline .clients-kpi-headline-stat strong {
  font-weight: 800;
  color: #111827;
  font-size: 0.92rem;
}
.waitry-dark-theme .clients-kpi-headline .clients-kpi-headline-stat strong {
  color: var(--an-text);
}
.clients-kpi-headline .clients-kpi-headline-stat--gold strong {
  color: #b45309;
}
.clients-kpi-headline .clients-kpi-headline-stat--green strong {
  color: #059669;
}
.clients-kpi-headline .clients-kpi-headline-stat--muted strong {
  color: #6366f1;
}
.clients-kpi-headline .clients-kpi-headline-sep {
  color: #d1d5db;
  font-weight: 300;
}

.clients-segments-bar {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 24px 10px;
  overflow-x: auto;
  flex-shrink: 0;
  -webkit-overflow-scrolling: touch;
}
.clients-segments-bar::-webkit-scrollbar {
  height: 0;
}

.clients-seg-chip-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  height: 18px;
  padding: 0 5px;
  border-radius: 9px;
  background: rgba(0, 0, 0, 0.1);
  font-size: 0.7rem;
  font-weight: 700;
  line-height: 1;
}
.clients-seg-chip-count--gold {
  background: rgba(245, 158, 11, 0.2);
  color: #92400e;
}
.clients-seg-chip--active .clients-seg-chip-count--gold {
  background: rgba(255, 255, 255, 0.2);
  color: #fff;
}
.clients-seg-chip-count--registered {
  background: rgba(139, 92, 246, 0.15);
  color: #7c3aed;
}
.clients-seg-chip--active .clients-seg-chip-count--registered {
  background: rgba(255, 255, 255, 0.25);
  color: #fff;
}
.clients-seg-chip-count--anonymous {
  background: rgba(220, 53, 69, 0.15);
  color: #dc3545;
}
.clients-seg-chip--active .clients-seg-chip-count--anonymous {
  background: rgba(255, 255, 255, 0.25);
  color: #fff;
}
.clients-seg-chip--active .clients-seg-chip-count {
  background: rgba(255, 255, 255, 0.25);
  color: #fff;
}

.clients-table-area {
  flex: 1;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-height: 0;
  padding: 0;
}

.clients-badge {
  background: rgba(255, 255, 255, 0.16);
  color: #fff;
  font-size: 11px;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: 12px;
  margin-left: 8px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  line-height: 1;
}

.clients-toolbar-search {
  position: relative;
  background: rgba(255, 255, 255, 0.1);
  border: 1.5px solid rgba(255, 255, 255, 0.12);
  border-radius: 20px;
  padding: 0 12px;
  height: 34px;
  width: 170px;
  margin-left: 20px;
  transition: all 0.24s cubic-bezier(0.16, 1, 0.3, 1);
  box-sizing: border-box;
}
.clients-toolbar-search i {
  font-size: 16px;
  color: rgba(255, 255, 255, 0.65);
  margin-right: 6px;
}
.clients-toolbar-search input {
  border: none !important;
  outline: none !important;
  background: transparent !important;
  box-shadow: none !important;
  width: 100%;
  height: 100% !important;
  font-size: 13px;
  color: #fff !important;
  padding: 0 !important;
}
.clients-toolbar-search input::placeholder {
  color: rgba(255, 255, 255, 0.55) !important;
}
.clients-toolbar-search:focus-within {
  width: 250px;
  background: rgba(255, 255, 255, 0.18);
  border-color: rgba(255, 255, 255, 0.45);
  box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.06);
}

.clients-search-clear-btn {
  border: none;
  background: transparent;
  color: rgba(255, 255, 255, 0.6);
  font-size: 16px;
  cursor: pointer;
  padding: 0 4px;
  line-height: 1;
}
.clients-search-clear-btn:hover {
  color: #fff;
}

.clients-toolbar-filters {
  display: flex;
  align-items: center;
  gap: 12px;
  box-sizing: border-box;
}
.clients-toolbar-filters md-input-container {
  margin: 0 !important;
  padding: 0 !important;
  height: 38px;
  display: flex;
  align-items: center;
}
.clients-toolbar-filters md-input-container .md-errors-spacer {
  display: none !important;
}
.clients-toolbar-filters md-input-container md-select {
  margin: 0 !important;
  padding: 0 !important;
  height: 38px;
  min-width: 135px;
  max-width: 240px;
}
.clients-toolbar-filters md-input-container md-select .md-select-value {
  border-bottom: none !important;
  height: 38px !important;
  padding: 0 14px !important;
  border-radius: var(--an-radius-sm) !important;
  background: var(--an-surface) !important;
  border: 1px solid var(--an-border-strong) !important;
  font-size: 13px !important;
  color: var(--an-text) !important;
  font-weight: 500 !important;
  min-height: auto !important;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}
.clients-toolbar-filters md-input-container md-select .md-select-value span,
.clients-toolbar-filters md-input-container md-select .md-select-value span:first-child,
.clients-toolbar-filters md-input-container md-select .md-select-value span:not(.md-select-icon) {
  color: var(--an-text) !important;
  font-size: 13px;
}
.clients-toolbar-filters md-input-container md-select .md-select-value .md-text {
  color: var(--an-text) !important;
  font-size: 13px !important;
}
.clients-toolbar-filters md-input-container md-select .md-select-value:hover {
  border-color: var(--an-border-strong) !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04);
}
.clients-toolbar-filters md-input-container md-select .md-select-icon {
  color: var(--an-text-muted, #6b7280) !important;
  margin-right: 4px;
}
.clients-toolbar-filters md-input-container md-datepicker {
  margin: 0 !important;
  padding: 0 12px !important;
  height: 38px !important;
  display: inline-flex !important;
  align-items: center !important;
  background: var(--an-background, #f9fafb) !important;
  border: 1.5px solid var(--an-border, rgba(0, 0, 0, 0.08)) !important;
  border-radius: 20px !important;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
}
.clients-toolbar-filters md-input-container md-datepicker:hover {
  background: #fff !important;
  border-color: var(--an-rose, #e80032) !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04) !important;
}
.waitry-dark-theme .clients-toolbar-filters md-input-container md-datepicker:hover {
  background: var(--an-surface2) !important;
}
.clients-toolbar-filters md-input-container md-datepicker button {
  display: none !important;
}
.clients-toolbar-filters md-input-container md-datepicker .md-datepicker-input-container {
  border-bottom: none !important;
  border: none !important;
  background: transparent !important;
  margin: 0 !important;
  padding: 0 !important;
  height: 100% !important;
  display: inline-flex !important;
  align-items: center !important;
  box-shadow: none !important;
}
.clients-toolbar-filters md-input-container md-datepicker .md-datepicker-input-container.md-datepicker-focused {
  border: none !important;
  box-shadow: none !important;
}
.clients-toolbar-filters md-input-container md-datepicker .md-datepicker-input {
  height: 100% !important;
  font-size: 13px !important;
  color: var(--an-text, #1f2937) !important;
  min-width: 85px;
  max-width: 90px;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  line-height: 36px !important;
}
.clients-toolbar-filters md-input-container md-datepicker .md-datepicker-input::placeholder {
  color: var(--an-placeholder) !important;
}
.clients-toolbar-filters md-input-container md-datepicker .md-datepicker-triangle-button {
  display: none !important;
}

.clients-col-avatar {
  width: 48px;
  padding: 6px 8px 6px 16px !important;
  cursor: pointer;
}

.clients-col-name {
  min-width: 120px;
  max-width: 200px;
  cursor: pointer;
}

.clients-col-email {
  min-width: 150px;
  max-width: 220px;
}

.clients-col-visit {
  white-space: nowrap;
  min-width: 100px;
}

.clients-col-visits {
  width: 60px;
}

.clients-col-rating {
  width: 90px;
}

.clients-col-loyalty {
  min-width: 140px;
}

.clients-col-spent {
  white-space: nowrap;
  min-width: 90px;
}

.clients-col-action {
  width: 52px;
  text-align: center;
}

.clients-avatar {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background-size: cover;
  background-position: center;
  flex-shrink: 0;
}
.clients-avatar--default {
  background: rgba(232, 0, 50, 0.06);
  display: flex;
  align-items: center;
  justify-content: center;
}
.clients-avatar--default i {
  font-size: 20px;
  color: rgba(232, 0, 50, 0.4);
}

.clients-name-wrap {
  display: flex;
  align-items: center;
  gap: 5px;
  font-weight: 600;
}

.clients-member-dot {
  color: #f59e0b;
  font-size: 12px;
  --an-icon-size: 12px;
  line-height: 1;
}

.clients-email-text {
  display: block;
  max-width: 200px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #6b7280;
  font-size: 12px;
}

.clients-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  height: 22px;
  padding: 0 6px;
  border-radius: 11px;
  font-size: 11px;
  font-weight: 700;
}
.clients-badge--visits {
  background: rgba(99, 102, 241, 0.08);
  color: #4f46e5;
}

.clients-stars {
  display: flex;
  gap: 1px;
  line-height: 1;
}

.star {
  font-size: 15px;
  line-height: 1;
}
.star--filled {
  color: #fbbf24;
}
.star--empty {
  color: #d1d5db;
}

.clients-loy-member-wrap {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.clients-loy-pts {
  font-size: 13px;
  color: var(--an-text-muted);
  font-weight: 500;
  white-space: nowrap;
}

.clients-tier-dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  margin-right: 6px;
  vertical-align: middle;
}

.clients-detail-btn.md-icon-button {
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  min-height: 32px !important;
  line-height: 32px !important;
  padding: 0 !important;
}

.clients-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 60px 24px;
  color: #9ca3af;
  gap: 12px;
}
.clients-empty i {
  font-size: 48px;
  opacity: 0.3;
}
.clients-empty p {
  font-size: 0.9rem;
  margin: 0;
}

.clients-table-pager-sticky {
  flex-shrink: 0;
  padding: 12px 0 16px 0;
  display: flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
}
.clients-table-pager-sticky .table-pager {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 8px 16px;
  background: var(--an-surface, #fff);
  border: 1.5px solid var(--an-border, rgba(0, 0, 0, 0.08));
  border-radius: 20px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
  box-sizing: border-box;
  min-width: 320px;
}
.clients-table-pager-sticky .table-pager-info {
  font-size: 13px;
  color: var(--an-text-muted, #6b7280);
  font-weight: 600;
}
.clients-table-pager-sticky .table-pager-nav {
  display: flex;
  align-items: center;
  gap: 8px;
}
.clients-table-pager-sticky .table-pager-btn {
  border: 1.5px solid var(--an-border, rgba(0, 0, 0, 0.08));
  background: var(--an-surface, #fff);
  color: var(--an-text, #1f2937);
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.18s ease;
  padding: 0;
}
.clients-table-pager-sticky .table-pager-btn i {
  font-size: 14px;
  font-weight: bold;
}
.clients-table-pager-sticky .table-pager-btn:hover:not([disabled]) {
  background: var(--an-background, #f3f4f6);
  border-color: var(--an-text-muted, #9ca3af);
}
.waitry-dark-theme .clients-table-pager-sticky .table-pager-btn:hover:not([disabled]) {
  background: var(--an-surface2);
}
.clients-table-pager-sticky .table-pager-btn[disabled] {
  opacity: 0.4;
  cursor: not-allowed;
}

md-dialog.cp-dialog {
  width: min(1320px, 96vw);
  height: min(920px, 94vh);
  max-width: none;
  max-height: none;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: var(--an-bg);
}

.cp-dialog .cp-body {
  display: flex;
  flex-direction: row;
  flex: 1;
  min-height: 0;
  padding: 0;
  overflow: hidden;
}

.cp-aside {
  width: 248px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  background: var(--an-surface);
  border-right: 1px solid var(--an-border);
  overflow-y: auto;
}
.cp-aside .rpt-sidenav {
  width: auto;
  min-height: 0;
  position: static;
  border-right: none;
  background: transparent;
  padding: 8px 10px 16px;
}

.cp-identity {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 8px;
  padding: 20px 16px 16px;
  border-bottom: 1px solid var(--an-border);
}
.cp-identity__name {
  font-size: 16px;
  font-weight: 700;
  color: var(--an-text);
  line-height: 1.25;
  word-break: break-word;
}
.cp-identity__badges {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 6px;
}
.cp-identity__since {
  font-size: 12px;
  color: var(--an-text-muted);
}
.cp-identity__contact {
  display: flex;
  gap: 4px;
}
.cp-identity__contact .md-icon-button {
  margin: 0;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
}

.cp-main {
  flex: 1;
  min-width: 0;
  overflow-y: auto;
  font-size: 13px;
  color: var(--an-text);
}

.cp-grid.mkt-dashboard-grid {
  padding: 20px 20px 28px;
}

.cp-notice {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 16px 20px 0;
  padding: 10px 14px;
  border-radius: var(--an-radius-sm);
  background: var(--an-sky-soft);
  color: var(--an-text);
  font-size: 13px;
}

.cp-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.cp-kpis .mkt-kpi-value {
  font-size: 22px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.cp-empty {
  padding: 20px 18px;
  margin: 0;
  color: var(--an-text-muted);
  font-size: 13px;
}

.cp-hint-top {
  margin: 0 0 10px;
}

.cp-strike {
  text-decoration: line-through;
}

.cp-num {
  text-align: right !important;
  font-variant-numeric: tabular-nums;
}

.cp-list .cp-pos {
  color: var(--an-emerald);
}

.cp-list .cp-neg {
  color: var(--an-rose);
}

.cp-code {
  font-family: monospace;
  letter-spacing: 0.5px;
}

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

md-icon.cp-inline-icon {
  font-size: 15px !important;
  width: 15px !important;
  height: 15px !important;
  min-width: 15px !important;
  min-height: 15px !important;
  margin-right: 6px;
  vertical-align: -2px;
  color: var(--an-text-muted);
}

.mkt-bar-row.cp-bar-row {
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) 84px;
}
.mkt-bar-row.cp-bar-row .mkt-bar-meta {
  text-align: right;
}
.mkt-bar-row.cp-bar-row .mkt-bar-name {
  display: flex;
  align-items: center;
  gap: 8px;
}

.cp-thumb {
  width: 28px;
  height: 28px;
  min-width: 28px;
  border-radius: 6px;
  object-fit: cover;
  background: var(--an-surface2);
}
.cp-thumb--lg {
  width: 44px;
  height: 44px;
  min-width: 44px;
  border-radius: 8px;
}

md-icon.cp-thumb--empty {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 15px !important;
  color: var(--an-text-faint);
}

.cp-rank {
  width: 18px;
  text-align: right;
  font-size: 12px;
  font-weight: 700;
  color: var(--an-text-muted);
}

.cp-months {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  align-items: end;
  gap: 8px;
  height: 190px;
}
.cp-months__col {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  height: 100%;
  gap: 4px;
}
.cp-months__val {
  font-size: 10px;
  color: var(--an-text-muted);
  font-variant-numeric: tabular-nums;
}
.cp-months__bar {
  width: 100%;
  max-width: 34px;
  min-height: 2px;
  border-radius: 6px 6px 2px 2px;
  background: linear-gradient(180deg, var(--an-emerald), var(--an-emerald-soft));
}
.cp-months__lbl {
  font-size: 11px;
  color: var(--an-text-muted);
  text-transform: capitalize;
}

.cp-heat {
  display: grid;
  grid-template-columns: 44px repeat(4, minmax(0, 1fr));
  gap: 4px;
}
.cp-heat__head, .cp-heat__row {
  font-size: 11px;
  color: var(--an-text-muted);
  display: flex;
  align-items: center;
}
.cp-heat__head {
  justify-content: center;
}
.cp-heat__row {
  text-transform: capitalize;
}
.cp-heat__cell {
  position: relative;
  height: 28px;
  border-radius: 6px;
  background: var(--an-surface2);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 600;
  color: var(--an-text);
  overflow: hidden;
  isolation: isolate;
}
.cp-heat__cell::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: var(--an-orange);
  opacity: calc(var(--cp-heat, 0) * 0.8);
}

.cp-facts {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.cp-fact {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  font-size: 13px;
}
.cp-fact > span {
  color: var(--an-text-muted);
  flex-shrink: 0;
}
.cp-fact > strong {
  font-weight: 600;
  text-align: right;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 6px;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.cp-list {
  display: flex;
  flex-direction: column;
}
.cp-list__row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--an-border);
}
.cp-list__row:last-child {
  border-bottom: none;
}
.cp-list__row--top {
  align-items: flex-start;
}
.cp-list__main {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.cp-list__end {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
  text-align: right;
}
.cp-list__actions {
  display: flex;
  gap: 2px;
}
.cp-list__actions .md-icon-button {
  margin: 0;
}
.cp-list md-icon.cp-list__icon {
  color: var(--an-text-muted);
}

.cp-punch-track {
  margin: 4px 0;
  max-width: 360px;
}

.cp-stars {
  display: flex;
  gap: 2px;
  color: var(--an-amber);
  font-size: 15px;
  padding-top: 2px;
}

.cp-note {
  white-space: pre-wrap;
  color: var(--an-text);
  line-height: 1.45;
}

.cp-note--muted {
  font-size: 12px;
  color: var(--an-text-muted);
}

.cp-note-edit {
  width: 100%;
  box-sizing: border-box;
  margin-top: 6px;
  padding: 8px 10px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
  color: var(--an-text);
  font: inherit;
  resize: vertical;
}

.cp-note-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}

.cp-tier-now {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
}

.cp-tier-next {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 12px;
}

.cp-section {
  padding: 16px 0 24px;
}

.cp-orders-filters {
  padding: 0 20px;
}

.cp-orders {
  margin-top: 12px;
}
.cp-orders .catalog-table col.col-date {
  width: 130px;
}
.cp-orders .catalog-table col.col-channel {
  width: 190px;
}
.cp-orders .catalog-table col.col-payment {
  width: 150px;
}
.cp-orders .catalog-table col.col-total {
  width: 110px;
}
.cp-orders .catalog-table col.col-status {
  width: 130px;
}

.cp-order-row {
  cursor: pointer;
}
.cp-order-row:focus-visible {
  outline: 2px solid var(--an-primary);
  outline-offset: -2px;
}

.cp-mini-badge {
  margin-left: 6px;
  padding: 1px 6px;
}

.cp-more {
  display: flex;
  justify-content: center;
  padding-top: 12px;
}

.cp-products .catalog-table col.col-rank {
  width: 52px;
}
.cp-products .catalog-table col.col-share {
  width: 26%;
}
.cp-products .catalog-table col.col-num {
  width: 100px;
}
.cp-products .catalog-table col.col-money {
  width: 120px;
}

.cp-product {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}
.cp-product__text {
  min-width: 0;
}
.cp-product .catalog-thumb {
  position: relative;
}

.cp-share {
  display: flex;
  align-items: center;
  gap: 10px;
}
.cp-share .mkt-bar-track {
  flex: 1;
}
.cp-share .catalog-item-desc {
  width: 44px;
  text-align: right;
  font-variant-numeric: tabular-nums;
}

.cp-subhead {
  padding: 14px 18px 6px;
  border-top: 1px solid var(--an-border);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  color: var(--an-text-muted);
}

.cp-ladder {
  display: flex;
  flex-direction: column;
  padding: 8px 12px 12px;
}
.cp-ladder__row {
  display: flex;
  gap: 12px;
  padding: 10px 8px;
  border-radius: var(--an-radius-sm);
  position: relative;
}
.cp-ladder__row:not(:last-child)::after {
  content: "";
  position: absolute;
  left: 19px;
  top: 34px;
  bottom: -10px;
  width: 2px;
  background: var(--an-border);
}
.cp-ladder__row--current {
  background: var(--an-surface2);
}
.cp-ladder__row--ahead {
  opacity: 0.7;
}
.cp-ladder__mark {
  width: 24px;
  min-width: 24px;
  display: flex;
  justify-content: center;
  padding-top: 2px;
  position: relative;
  z-index: 1;
}
.cp-ladder__mark md-icon {
  font-size: 18px !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
}
.cp-ladder__row--reached .cp-ladder__mark md-icon {
  color: var(--an-emerald) !important;
}
.cp-ladder__row--current .cp-ladder__mark md-icon {
  color: var(--an-amber) !important;
}
.cp-ladder__dot {
  width: 10px;
  height: 10px;
  margin-top: 4px;
  border-radius: 50%;
  border: 2px solid var(--an-border-strong);
  background: var(--an-surface);
}
.cp-ladder__body {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.cp-ladder__head {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.cp-ladder__benefits {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.cp-ladder__progress {
  display: flex;
  align-items: center;
  gap: 10px;
}
.cp-ladder__progress .mkt-bar-track {
  flex: 1;
}

.cp-chip {
  font-size: 11px;
  padding: 2px 8px;
  border-radius: var(--an-radius-pill);
  background: var(--an-surface2);
  color: var(--an-text-muted);
  border: 1px solid var(--an-border);
}

.cp-timeline {
  display: flex;
  flex-direction: column;
  padding: 6px 18px 16px;
}
.cp-timeline__item {
  display: flex;
  gap: 12px;
  padding: 8px 0;
  position: relative;
}
.cp-timeline__item:not(:last-child)::after {
  content: "";
  position: absolute;
  left: 4px;
  top: 22px;
  bottom: -8px;
  width: 2px;
  background: var(--an-border);
}
.cp-timeline__dot {
  width: 10px;
  height: 10px;
  min-width: 10px;
  margin-top: 6px;
  border-radius: 50%;
  position: relative;
  z-index: 1;
}
.cp-timeline__body {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}
.cp-timeline__line {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}
.cp-timeline__arrow {
  color: var(--an-text-muted);
  --an-icon-size: 13px;
}

.cp-movements {
  border: none;
  border-radius: 0;
  box-shadow: none;
}
.cp-movements col.col-date {
  width: 110px;
}
.cp-movements col.col-order {
  width: 90px;
}
.cp-movements col.col-points {
  width: 90px;
}
.cp-movements col.col-balance {
  width: 110px;
}

.cp-link {
  cursor: pointer;
  color: var(--an-primary);
  font-weight: 600;
}
.cp-link:hover {
  text-decoration: underline;
}

.cp-map-card .mkt-card-inner {
  height: 100%;
}

.cp-map {
  flex: 1;
  min-height: 460px;
  background: var(--an-surface2);
}

.cp-map-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  padding: 10px 16px;
  font-size: 12px;
  color: var(--an-text-muted);
  border-top: 1px solid var(--an-border);
}
.cp-map-legend span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.cp-map-legend__dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #94A3B8;
  border: 2px solid var(--an-surface);
  box-shadow: 0 0 0 1px var(--an-border);
}
.cp-map-legend__dot--orders {
  width: 14px;
  height: 14px;
  background: var(--an-primary);
}
.cp-map-legend__venue {
  width: 0;
  height: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 10px solid #6C63FF;
}

.cp-address-list {
  max-height: 560px;
  overflow-y: auto;
}

.cp-address {
  cursor: pointer;
  align-items: flex-start;
  transition: background 0.15s;
}
.cp-address:hover {
  background: var(--an-surface2);
}
.cp-address--selected {
  background: var(--an-primary-soft);
}
.cp-address:focus-visible {
  outline: 2px solid var(--an-primary);
  outline-offset: -2px;
}
.cp-address__count {
  width: 32px;
  min-width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 700;
  background: var(--an-surface2);
  color: var(--an-text-muted);
  border: 1px solid var(--an-border);
}
.cp-address__count--active {
  background: var(--an-primary);
  color: #fff;
  border-color: transparent;
}
.cp-address__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}
.cp-address__orders {
  color: var(--an-text);
  font-weight: 600;
}
.cp-address__badges {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 2px;
}
.cp-address__badges:empty {
  display: none;
}

@media (max-width: 1100px) {
  .cp-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 760px) {
  md-dialog.cp-dialog {
    width: 100vw;
    height: 100vh;
    border-radius: 0;
  }
  .cp-dialog .cp-body {
    flex-direction: column;
    overflow-y: auto;
  }
  .cp-aside {
    width: 100%;
    border-right: none;
    border-bottom: 1px solid var(--an-border);
    overflow: visible;
  }
  .cp-aside .rpt-sidenav {
    flex-direction: row;
    overflow-x: auto;
    padding: 8px;
  }
  .cp-aside .rpt-sidenav > div {
    display: flex;
    gap: 2px;
  }
  .cp-aside .rpt-sidenav__section {
    display: none;
  }
  .cp-aside .rpt-sidenav__pill {
    width: auto;
    white-space: nowrap;
  }
  .cp-main {
    overflow: visible;
  }
  .cp-orders .catalog-table {
    min-width: 760px;
  }
}
.waitry-icon {
  height: 24px;
  width: 24px;
  margin: auto;
  fill: white;
}

.notif {
  padding-top: 0px !important;
}

.notifications-container {
  border-radius: 6px;
}

.notifications-title-container {
  margin-left: 16px;
  display: flex;
}

.notifications-title {
  font-family: var(--font-sans);
  font-style: normal;
  font-weight: bold;
  font-size: 14px;
  line-height: 16px;
  margin: 16px 0px;
}

.notification-indicator {
  border-radius: 20px;
  line-height: 18px;
  width: 29px;
  font-weight: 400;
  height: 14px;
  text-align: center;
  font-size: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 7px;
}

.toolbar-badge {
  position: absolute;
  top: 6px;
  margin-bottom: 0;
  transform: scale(0.85);
  pointer-events: none;
  z-index: 2;
}

.toolbar-badge-right {
  right: 0px;
}

.toolbar-badge-left {
  left: 0px;
}

.toolbar-action-btn {
  background-color: var(--an-surface2) !important;
  color: var(--an-text) !important;
  border: none !important;
  box-shadow: none !important;
  transition: background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), transform 0.1s ease !important;
}
.toolbar-action-btn md-icon {
  color: var(--an-text) !important;
}
.toolbar-action-btn:hover:not([disabled]) {
  background-color: var(--an-surface3) !important;
}
.toolbar-venue-branded .toolbar-action-btn {
  background-color: rgba(255, 255, 255, 0.15) !important;
  color: rgba(255, 255, 255, 0.87) !important;
}
.toolbar-venue-branded .toolbar-action-btn:hover:not([disabled]) {
  background-color: rgba(255, 255, 255, 0.25) !important;
}
.toolbar-action-btn.md-icon-button {
  border-radius: 50% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.toolbar-action-btn.md-icon-button md-icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  margin: 0 !important;
}
.toolbar-action-btn:active {
  transform: scale(0.96) !important;
}

.toolbar-avatar-wrap {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.toolbar-avatar-img {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  object-fit: cover;
  background: white;
  display: block;
}

.toolbar-avatar-fallback {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
}

.toolbar-chevron {
  position: absolute;
  bottom: -3px;
  right: -3px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.35);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  line-height: 1;
  font-weight: 700;
  color: white !important;
  pointer-events: none;
  transform: rotate(90deg);
  letter-spacing: 0;
  padding-top: 1px;
}

.notification-red {
  background-color: #ec4e36;
  color: white;
}

.notification-yellow {
  background-color: #EEB301;
  color: white;
}

.notification-tabs-container {
  display: flex;
  padding-left: 16px;
  border-bottom: 1px solid #E7E7E7;
}

.notification-tab {
  display: flex;
  align-items: center;
  cursor: pointer;
  color: rgba(0, 0, 0, 0.54);
}

.notification-tab-red {
  color: #ec4e36;
  border-bottom: 2px solid #ec4e36;
  font-weight: bold;
}

.notification-tab-yellow {
  color: #EEB301;
  border-bottom: 2px solid #EEB301;
  font-weight: bold;
}

.notification-tab-text {
  display: flex;
  margin-right: 6px;
  font-family: var(--font-sans);
  font-size: 14px;
  line-height: 16px;
  margin-bottom: 7px;
  margin-right: 8px;
}

.system-new-tag {
  color: white;
  padding: 3px;
  font-size: 12px !important;
  border-radius: 9999px;
  padding-right: 7px;
  padding-left: 7px;
}

.bug {
  background-color: #ec4e36;
}

.feature {
  background-color: #497fe4;
}

.improvement {
  background-color: #7ac142;
}

.title-system-new {
  font-size: 14px !important;
  font-weight: 700 !important;
  font-family: var(--font-sans);
  line-height: 14px;
  color: rgba(0, 0, 0, 0.87);
}

.notification-list-container .notification-container {
  background-color: #FFFFFF;
  padding: 0px;
  border-bottom: 1px solid #E7E7E7;
  min-height: 0px !important;
}
.notification-list-container .notification-container div.md-button {
  padding: 0px !important;
  min-height: 0px !important;
}
.notification-list-container .notification-container .message-container {
  display: flex;
  align-items: center;
  padding: 16px 16px;
}
.notification-list-container .notification-container .message-container .icon-container {
  width: 30px;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  flex-shrink: 0;
  margin-right: 16px;
}
.notification-list-container .notification-container .message-container .icon-red {
  background-color: rgba(238, 93, 70, 0.1);
}
.notification-list-container .notification-container .message-container .icon-yellow {
  background-color: rgba(238, 179, 1, 0.1);
}
.notification-list-container .notification-container .message-container .text-container {
  display: flex;
  flex-wrap: wrap;
  flex-grow: 1;
}
.notification-list-container .notification-container .message-container .text-container .first-line-container {
  display: flex;
  width: 100%;
  justify-content: space-between;
  margin-bottom: 2px;
}
.notification-list-container .notification-container .message-container .text-container .second-line-container {
  display: flex;
  width: 100%;
}
.notification-list-container .notification-container .message-container .text-container .text-bold {
  font-size: 12px;
  font-weight: 500;
  font-family: var(--font-sans);
  line-height: 14px;
  color: rgba(0, 0, 0, 0.87);
}
.notification-list-container .notification-container .message-container .text-container .text-gray {
  font-size: 12px;
  font-weight: 400;
  font-family: var(--font-sans);
  line-height: 14px;
  text-align: right;
  color: rgba(0, 0, 0, 0.54);
}
.notification-list-container .notification-container .message-container .text-container .text-gray-l {
  font-size: 14px;
  font-weight: 400;
  font-family: var(--font-sans);
  line-height: 18px;
  text-align: left;
  color: rgba(0, 0, 0, 0.54);
}
.notification-list-container .notification-container .message-container .text-container .text-gray-link {
  font-size: 13px;
  font-weight: 400;
  font-family: var(--font-sans);
  line-height: 14px;
  text-align: left;
  color: rgba(0, 0, 0, 0.54);
}
.notification-list-container .notification-container .message-container .text-container .first-line-container-system-new {
  display: flex;
  width: 100%;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 5px;
}
.notification-list-container .notification-container .message-container .text-container .second-line-container-system-new {
  display: flex;
  flex-direction: column;
  justify-content: start;
  width: 100%;
}

.notification-container::before {
  min-height: 0px !important;
}

md-list-item.notification-container > .md-no-style:before {
  content: "";
  min-height: 0px !important;
  visibility: hidden;
  display: inline-block;
}

.none {
  display: none;
}

.venue-switcher-menu {
  padding: 0 !important;
  min-width: 320px;
  max-height: 440px;
  overflow-y: auto;
  border-radius: 12px !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1) !important;
}
.venue-switcher-menu::-webkit-scrollbar {
  width: 6px;
}
.venue-switcher-menu::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.15);
  border-radius: 4px;
}
.venue-switcher-menu .venue-switcher-search {
  padding: 10px 14px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.06);
  background: #ffffff;
  position: sticky;
  top: 0;
  z-index: 2;
  cursor: default;
}
.venue-switcher-menu .venue-switcher-search .venue-switcher-search-box {
  background: #f4f4f5;
  border: 1px solid transparent;
  border-radius: 8px;
  padding: 4px 12px;
  transition: all 0.2s ease;
}
.venue-switcher-menu .venue-switcher-search .venue-switcher-search-box:focus-within {
  background: #ffffff;
  border-color: rgba(236, 78, 54, 0.3);
  box-shadow: 0 0 0 3px rgba(236, 78, 54, 0.1);
}
.venue-switcher-menu .venue-switcher-search .venue-switcher-search-box md-icon {
  color: #A1A1AA;
  width: 18px;
  height: 18px;
  min-height: 18px;
  min-width: 18px;
  font-size: 18px;
  margin: 0 8px 0 0;
}
.venue-switcher-menu .venue-switcher-search .venue-switcher-search-box input {
  width: 100%;
  border: none !important;
  box-shadow: none !important;
  outline: none;
  padding: 6px 0;
  font-size: 14px;
  background: transparent;
  color: #3F3F46;
}
.venue-switcher-menu .venue-switcher-search .venue-switcher-search-box input::placeholder {
  color: rgba(0, 0, 0, 0.6);
}
.venue-switcher-menu md-menu-item {
  margin: 4px 8px !important;
  border-radius: 8px;
  min-height: auto;
}
.venue-switcher-menu md-menu-item .md-button {
  margin: 0;
  padding: 0;
}
.venue-switcher-menu md-menu-item .venue-switcher-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 8px 12px;
  width: 100%;
  text-align: left;
  cursor: pointer;
  background: transparent;
  border: none;
  border-radius: 8px;
  transition: all 0.2s ease;
  outline: none;
}
.venue-switcher-menu md-menu-item .venue-switcher-item:hover {
  background-color: rgba(0, 0, 0, 0.04);
}
.venue-switcher-menu md-menu-item .venue-switcher-item.active {
  background-color: rgba(236, 78, 54, 0.06);
}
.venue-switcher-menu md-menu-item .venue-switcher-item.active .venue-name {
  color: #ec4e36 !important;
}
.venue-switcher-menu md-menu-item .venue-switcher-item.active .venue-check {
  background: rgba(236, 78, 54, 0.1);
  border: 1px solid rgba(236, 78, 54, 0.2);
  color: #ec4e36;
}
.venue-switcher-menu md-menu-item .venue-switcher-item .venue-img {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  object-fit: cover;
  flex-shrink: 0;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}
.venue-switcher-menu md-menu-item .venue-switcher-item .venue-info {
  flex: 1;
  min-width: 0;
}
.venue-switcher-menu md-menu-item .venue-switcher-item .venue-info .venue-title-row {
  display: flex;
  align-items: center;
  gap: 6px;
}
.venue-switcher-menu md-menu-item .venue-switcher-item .venue-info .venue-title-row .venue-name {
  font-size: 14px;
  font-weight: 600;
  color: #1a1a2e;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 170px;
  transition: color 0.2s ease;
}
.venue-switcher-menu md-menu-item .venue-switcher-item .venue-info .venue-title-row .venue-id {
  font-size: 10px;
  background: #f4f4f5;
  border: 1px solid #e4e4e7;
  padding: 2px 6px;
  border-radius: 6px;
  color: #71717a;
  font-weight: 500;
  flex-shrink: 0;
}
.venue-switcher-menu md-menu-item .venue-switcher-item .venue-info .venue-title-row .venue-check {
  font-size: 10px;
  padding: 2px 6px;
  border-radius: 6px;
  font-weight: 700;
  flex-shrink: 0;
  margin-left: auto;
}
.venue-switcher-menu md-menu-item .venue-switcher-item .venue-info .venue-meta {
  font-size: 12px;
  color: #71717a;
  margin-top: 2px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 220px;
}
.venue-switcher-menu md-menu-item .venue-switcher-item .venue-info .venue-meta .venue-dot {
  margin: 0 4px;
  opacity: 0.5;
  font-size: 10px;
}

.waitry-dark-theme .notification-list-container .notification-container {
  background-color: var(--an-surface) !important;
  border-bottom: 1px solid var(--an-border) !important;
}
.waitry-dark-theme .notification-list-container .notification-container .message-container .icon-red {
  background-color: rgba(240, 101, 80, 0.15) !important;
}
.waitry-dark-theme .notification-list-container .notification-container .message-container .icon-yellow {
  background-color: rgba(251, 191, 36, 0.15) !important;
}
.waitry-dark-theme .notification-list-container .notification-container .message-container .text-bold {
  color: var(--an-text) !important;
}
.waitry-dark-theme .notification-list-container .notification-container .message-container .text-gray, .waitry-dark-theme .notification-list-container .notification-container .message-container .text-gray-l, .waitry-dark-theme .notification-list-container .notification-container .message-container .text-gray-link {
  color: var(--an-text-muted) !important;
}
.waitry-dark-theme .notification-tabs-container {
  border-bottom: 1px solid var(--an-border) !important;
}
.waitry-dark-theme .notification-tab {
  color: var(--an-text-muted) !important;
}
.waitry-dark-theme .notification-tab-red {
  color: var(--an-rose) !important;
  border-bottom-color: var(--an-rose) !important;
}
.waitry-dark-theme .notification-tab-yellow {
  color: var(--an-amber) !important;
  border-bottom-color: var(--an-amber) !important;
}
.waitry-dark-theme .title-system-new {
  color: var(--an-text) !important;
}
.waitry-dark-theme .venue-switcher-menu {
  background-color: var(--an-surface) !important;
  border: 1px solid var(--an-border) !important;
  box-shadow: var(--an-shadow-lg) !important;
}
.waitry-dark-theme .venue-switcher-menu::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.12) !important;
}
.waitry-dark-theme .venue-switcher-menu .venue-switcher-search {
  background: var(--an-surface) !important;
  border-bottom: 1px solid var(--an-border) !important;
}
.waitry-dark-theme .venue-switcher-menu .venue-switcher-search .venue-switcher-search-box {
  background: var(--an-surface2) !important;
}
.waitry-dark-theme .venue-switcher-menu .venue-switcher-search .venue-switcher-search-box:focus-within {
  background: var(--an-surface) !important;
  border-color: rgba(240, 101, 80, 0.4) !important;
  box-shadow: 0 0 0 3px rgba(240, 101, 80, 0.15) !important;
}
.waitry-dark-theme .venue-switcher-menu .venue-switcher-search .venue-switcher-search-box md-icon {
  color: var(--an-text-faint) !important;
}
.waitry-dark-theme .venue-switcher-menu .venue-switcher-search .venue-switcher-search-box input {
  color: var(--an-text) !important;
}
.waitry-dark-theme .venue-switcher-menu .venue-switcher-search .venue-switcher-search-box input::placeholder {
  color: var(--an-placeholder) !important;
}
.waitry-dark-theme .venue-switcher-menu md-menu-item .venue-switcher-item:hover {
  background-color: var(--an-surface2) !important;
}
.waitry-dark-theme .venue-switcher-menu md-menu-item .venue-switcher-item.active {
  background-color: rgba(240, 101, 80, 0.12) !important;
}
.waitry-dark-theme .venue-switcher-menu md-menu-item .venue-switcher-item.active .venue-name {
  color: var(--an-rose) !important;
}
.waitry-dark-theme .venue-switcher-menu md-menu-item .venue-switcher-item.active .venue-check {
  background: rgba(240, 101, 80, 0.15) !important;
  border-color: rgba(240, 101, 80, 0.25) !important;
  color: var(--an-rose) !important;
}
.waitry-dark-theme .venue-switcher-menu md-menu-item .venue-switcher-item .venue-info .venue-title-row .venue-name {
  color: var(--an-text) !important;
}
.waitry-dark-theme .venue-switcher-menu md-menu-item .venue-switcher-item .venue-info .venue-title-row .venue-id {
  background: var(--an-surface2) !important;
  border-color: var(--an-border) !important;
  color: var(--an-text-muted) !important;
}
.waitry-dark-theme .venue-switcher-menu md-menu-item .venue-switcher-item .venue-info .venue-meta {
  color: var(--an-text-muted) !important;
}

.mise-topbar-btn {
  position: relative;
}
.mise-topbar-btn md-icon {
  background: linear-gradient(135deg, #ec4e36 0%, #f06543 50%, #eb8258 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #ec4e36 !important;
  transition: transform 0.2s ease, filter 0.2s ease;
}
.mise-topbar-btn:hover:not([disabled]) md-icon {
  transform: scale(1.1) rotate(5deg);
  filter: drop-shadow(0 2px 4px rgba(236, 78, 54, 0.3));
}
.waitry-dark-theme .mise-topbar-btn md-icon {
  background: linear-gradient(135deg, var(--an-rose) 0%, var(--an-orange) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: var(--an-rose) !important;
}
.waitry-dark-theme .mise-topbar-btn:hover:not([disabled]) md-icon {
  filter: drop-shadow(0 2px 6px rgba(240, 101, 80, 0.5));
}

/* --- Extracted inline styles --- */
.toolbar-notif-menu {
  width: 350px;
  border-radius: 6px !important;
}

.system-new-desc {
  margin-bottom: 5px;
}

.system-new-empty-icon {
  font-size: 16px;
}

.notification-tab-container {
  margin-right: 20px;
}

.waitry-icon-contents {
  display: contents;
}

.venue-pill-container {
  border-radius: 24px;
  padding: 4px 16px;
  margin: 0 4px;
  height: 42px;
  box-sizing: border-box;
  transition: all 0.2s ease;
}

.toolbar-menu-contents {
  display: contents;
}

.toolbar-pill-trigger {
  cursor: pointer;
  outline: none;
}

.toolbar-pill-text-col {
  margin-right: 10px;
}

.toolbar-venue-name,
.toolbar-venue-address {
  display: block;
  max-width: 160px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.toolbar-venue-name {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
}

.toolbar-venue-address {
  font-size: 10px;
  opacity: 0.7;
  line-height: 1.2;
}

.toolbar-avatar-img {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  object-fit: cover;
}

.toolbar-avatar-fallback {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--an-border-strong);
}

.toolbar-avatar-fallback-icon {
  margin: 0;
  font-size: 14px;
  --an-icon-size: 14px;
  width: 14px;
  height: 14px;
}

.toolbar-chevron {
  font-size: 14px;
  margin-left: 4px;
}

.toolbar-pill-btn {
  margin: 0 4px;
  padding: 0 12px 0 16px;
  border-radius: 24px;
  text-transform: none;
}

.toolbar-user-name {
  font-size: 15px;
  font-weight: 500;
  line-height: 1.2;
}

.toolbar-user-role {
  font-size: 11px;
  opacity: 0.7;
  line-height: 1.2;
}

.toolbar-user-icon-fallback {
  margin: 0;
}

.toolbar-theme-btn {
  display: block;
  width: 100%;
}

.support-chat-btn .support-icon-wrapper {
  position: relative;
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.support-chat-btn .support-icon-wrapper md-icon {
  position: absolute !important;
  top: 0;
  left: 0;
  width: 24px !important;
  height: 24px !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1), opacity 0.3s ease !important;
}
.support-chat-btn .support-icon-wrapper .support-icon-headset {
  opacity: 1;
  transform: rotate(0deg) scale(1);
}
.support-chat-btn .support-icon-wrapper .support-icon-close {
  opacity: 0;
  transform: rotate(90deg) scale(0);
}
.support-chat-btn.support-chat-open .support-icon-wrapper .support-icon-headset {
  opacity: 0;
  transform: rotate(-90deg) scale(0);
}
.support-chat-btn.support-chat-open .support-icon-wrapper .support-icon-close {
  opacity: 1;
  transform: rotate(0deg) scale(1);
}

#crisp-chatbox [data-id=bubble],
.crisp-client [data-id=bubble],
.crisp-client iframe:not([data-id=chat]),
.crisp-client .cc-tlhd,
.crisp-client .cc-1yy,
#crisp-chatbox [data-maximized],
#crisp-chatbox [data-pop],
#crisp-chatbox .cc-13wro,
.crisp-client #crisp-chatbox > div > div[role=button],
.crisp-client #crisp-chatbox div[data-pop],
.crisp-client #crisp-chatbox div[data-maximized],
.crisp-client #crisp-chatbox div[aria-label*=chat i][role=button],
.crisp-client #crisp-chatbox div[aria-label*=Chat i][role=button],
#crisp-chatbox > div > div[role=button],
#crisp-chatbox div[data-pop],
#crisp-chatbox div[data-maximized],
#gleap-frame-container,
#gleap-button-container,
.gb-frame,
#live-chat-widget {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  transform: scale(0) !important;
}

#crisp-chatbox div:has(> [role=dialog]),
#crisp-chatbox div:has(> [aria-label="Chat window"]),
#crisp-chatbox .cc-w7v18 {
  top: 84px !important;
  bottom: auto !important;
  right: 20px !important;
}

.md-open-menu-container:has(.user-profile-menu) {
  border-radius: 20px !important;
  overflow: hidden !important;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25) !important;
  height: auto !important;
  max-height: none !important;
}

.user-profile-menu {
  padding: 0 !important;
  width: 320px !important;
  max-width: 320px !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  background: var(--an-surface) !important;
  border: 1px solid var(--an-border) !important;
  height: auto !important;
  max-height: none !important;
}
.user-profile-menu .user-menu-header {
  position: relative;
  height: 200px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-color: var(--an-surface2);
}
.user-profile-menu .user-menu-header:not(.has-banner) {
  background: linear-gradient(135deg, #ec4e36 0%, #f06543 50%, #eb8258 100%);
}
.waitry-dark-theme .user-profile-menu .user-menu-header:not(.has-banner) {
  background: linear-gradient(135deg, #1e1b4b 0%, #311042 100%);
}
.user-profile-menu .user-menu-header .user-menu-header-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 10%, rgba(0, 0, 0, 0.4) 50%, rgba(0, 0, 0, 0.85) 100%);
  z-index: 1;
}
.user-profile-menu .user-menu-header .user-menu-header-content {
  position: relative;
  z-index: 2;
  height: 100%;
  padding: 20px;
  box-sizing: border-box;
}
.user-profile-menu .user-menu-header .user-menu-header-content .user-menu-avatar-wrap {
  margin-bottom: 10px;
  position: relative;
}
.user-profile-menu .user-menu-header .user-menu-header-content .user-menu-avatar-wrap .user-menu-avatar {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  object-fit: cover;
  border: 2.5px solid #ffffff;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
  display: block;
}
.user-profile-menu .user-menu-header .user-menu-header-content .user-menu-avatar-wrap .user-menu-avatar-fallback {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.2);
  border: 2.5px solid #ffffff;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
}
.user-profile-menu .user-menu-header .user-menu-header-content .user-menu-avatar-wrap .user-menu-avatar-fallback md-icon {
  color: #ffffff;
  font-size: 28px;
  width: 28px;
  height: 28px;
  min-width: 28px;
  min-height: 28px;
  margin: 0;
}
.user-profile-menu .user-menu-header .user-menu-header-content .user-menu-name {
  font-family: var(--font-sans);
  font-size: 17px;
  font-weight: 700;
  color: #ffffff !important;
  margin: 0;
  line-height: 1.2;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}
.user-profile-menu .user-menu-header .user-menu-header-content .user-menu-role {
  font-family: var(--font-sans);
  font-size: 10px;
  font-weight: 700;
  color: #ffffff !important;
  background: rgba(255, 255, 255, 0.2);
  padding: 4px 8px;
  border-radius: 12px;
  margin: 6px 0 2px 0;
  line-height: 1;
  backdrop-filter: blur(4px);
  border: 1px solid rgba(255, 255, 255, 0.3);
  display: inline-block;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.user-profile-menu .user-menu-header .user-menu-header-content .user-menu-email {
  font-family: var(--font-sans);
  font-size: 12px;
  color: rgba(255, 255, 255, 0.8) !important;
  margin: 4px 0 0 0;
  line-height: 1.2;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 280px;
}
.user-profile-menu .user-menu-items {
  padding: 10px 10px 16px 10px !important;
}
.user-profile-menu .user-menu-items md-menu-item {
  margin: 4px 0 !important;
  min-height: 48px !important;
  height: 48px !important;
}
.user-profile-menu .user-menu-items md-menu-item .user-menu-item-btn {
  width: 100% !important;
  text-align: left !important;
  border-radius: 12px !important;
  padding: 0 16px !important;
  margin: 0 !important;
  min-height: 48px !important;
  height: 48px !important;
  line-height: 48px !important;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
  text-transform: none !important;
  font-weight: 600 !important;
}
.user-profile-menu .user-menu-items md-menu-item .user-menu-item-btn:hover {
  background-color: var(--an-surface2) !important;
  transform: translateX(6px);
}
.user-profile-menu .user-menu-items md-menu-item .user-menu-item-btn:hover .user-menu-item-icon {
  color: #ec4e36 !important;
  transform: scale(1.1);
}
.waitry-dark-theme .user-profile-menu .user-menu-items md-menu-item .user-menu-item-btn:hover .user-menu-item-icon {
  color: var(--an-rose) !important;
}
.user-profile-menu .user-menu-items md-menu-item .user-menu-item-btn .user-menu-item-icon {
  margin: 0 14px 0 0 !important;
  font-size: 20px !important;
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  min-height: 20px !important;
  color: var(--an-text-muted);
  transition: all 0.2s ease;
}
.user-profile-menu .user-menu-items md-menu-item .user-menu-item-btn .user-menu-item-text {
  font-family: var(--font-sans);
  font-size: 14px;
  color: var(--an-text);
  font-weight: 600;
}
.user-profile-menu .user-menu-items md-menu-item .user-menu-item-btn .theme-toggle-container {
  width: 100%;
}
.user-profile-menu .user-menu-items md-menu-item .user-menu-item-btn .theme-toggle-container .theme-toggle-switch {
  margin: 0;
}
.user-profile-menu .user-menu-items md-menu-item .user-menu-item-btn.logout-btn:hover {
  background-color: rgba(236, 78, 54, 0.08) !important;
}
.user-profile-menu .user-menu-items md-menu-item .user-menu-item-btn.logout-btn:hover .user-menu-item-icon {
  color: #ec4e36 !important;
}
.user-profile-menu .user-menu-items md-menu-item .user-menu-item-btn.logout-btn:hover .user-menu-item-text {
  color: #ec4e36 !important;
}
.user-profile-menu .user-menu-items .user-menu-divider {
  margin: 8px 16px !important;
  border-top-color: var(--an-border) !important;
}

.tb-setup {
  display: inline-flex;
  align-items: center;
  height: 34px;
  margin: 0 4px;
  padding: 0 2px 0 0;
  border-radius: 17px;
  background: var(--an-surface2);
  color: var(--an-text);
  transition: background 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.tb-setup:hover {
  background: var(--an-surface3);
}
.tb-setup__open {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 34px;
  padding: 0 8px 0 4px;
  border: none;
  outline: none;
  background: transparent;
  color: inherit;
  font-family: var(--font-sans);
  cursor: pointer;
  border-radius: 17px 0 0 17px;
}
.tb-setup__open:focus-visible {
  box-shadow: inset 0 0 0 2px var(--an-primary);
}
.tb-setup__ring {
  position: relative;
  flex: 0 0 auto;
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
}
.tb-setup__ring-svg {
  position: absolute;
  inset: 0;
  width: 28px;
  height: 28px;
  transform: rotate(-90deg);
}
.tb-setup__ring-track {
  stroke: var(--an-border-strong);
}
.tb-setup__ring-fill {
  stroke: var(--an-primary);
  transition: stroke-dasharray var(--duration-slow) var(--ease-default);
}
.tb-setup__ring-icon {
  position: relative;
  --an-icon-size: 13px;
  color: var(--an-primary);
}
.tb-setup__text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  line-height: 1.15;
  text-align: left;
}
.tb-setup__label {
  font-size: 12px;
  font-weight: 600;
  white-space: nowrap;
  color: inherit;
}
.tb-setup__meta {
  font-size: 10.5px;
  font-weight: 500;
  white-space: nowrap;
  opacity: 0.65;
  font-variant-numeric: tabular-nums;
}
.tb-setup__pct {
  font-size: 12.5px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  padding: 2px 7px;
  border-radius: 9px;
  background: var(--an-primary-soft);
  color: var(--an-primary);
}
.tb-setup__hide {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  margin-right: 3px;
  padding: 0;
  border: none;
  outline: none;
  border-radius: 50%;
  background: transparent;
  color: inherit;
  opacity: 0.6;
  cursor: pointer;
  transition: opacity 0.15s ease, background 0.15s ease;
}
.tb-setup__hide i {
  font-size: 14px;
  color: inherit;
}
.tb-setup__hide:hover {
  opacity: 1;
  background: rgba(128, 128, 128, 0.18);
}
.tb-setup__hide:focus-visible {
  opacity: 1;
  box-shadow: 0 0 0 2px var(--an-primary);
}

@media (max-width: 1200px) {
  .tb-setup__text {
    display: none;
  }
  .tb-setup__open {
    gap: 6px;
    padding-right: 6px;
  }
}
@media (max-width: 599px) {
  .tb-setup {
    display: none;
  }
}
md-toolbar.toolbar-venue-branded .tb-setup {
  background: rgba(255, 255, 255, 0.15);
  color: inherit;
}
md-toolbar.toolbar-venue-branded .tb-setup:hover {
  background: rgba(255, 255, 255, 0.25);
}
md-toolbar.toolbar-venue-branded .tb-setup .tb-setup__ring-track {
  stroke: rgba(255, 255, 255, 0.3);
}
md-toolbar.toolbar-venue-branded .tb-setup .tb-setup__ring-fill,
md-toolbar.toolbar-venue-branded .tb-setup .tb-setup__ring-icon {
  stroke: currentColor;
  color: currentColor;
}
md-toolbar.toolbar-venue-branded .tb-setup .tb-setup__pct {
  background: rgba(255, 255, 255, 0.22);
  color: inherit;
}
md-toolbar.toolbar-venue-branded .tb-setup .tb-setup__hide:hover {
  background: rgba(255, 255, 255, 0.25);
}

.user-menu-item-badge {
  flex: 0 0 auto;
  align-self: center;
  line-height: 1.5;
  font-size: 11.5px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  padding: 2px 7px;
  border-radius: 9px;
  background: var(--an-primary-soft);
  color: var(--an-primary);
}

.status-booking {
  height: 28px !important;
  font-weight: 700;
  font-size: 12px;
  padding: 6px 12px;
  line-height: 28px;
  border-radius: 14px;
  white-space: nowrap;
  width: auto;
}

.status-booking.badge-assertive {
  background-color: #ef473a;
  color: #fff;
}

.status-booking.badge-warning {
  background-color: #ffd240;
  color: #000;
}

.status-booking.badge-balanced {
  background-color: #16C57A;
  color: #fff;
}

.status-booking.badge-neutral {
  background-color: #CCCCCC;
  color: #fff;
}

.status-booking.badge-pending {
  background-color: #0099E6;
  color: #fff;
}

.bookingSideView,
.bookingSideView.md-locked-open,
.bookingSideView.md-closed.md-locked-open-add-active {
  min-width: 60% !important;
}
.bookingSideView .md-toolbar-tools div,
.bookingSideView.md-locked-open .md-toolbar-tools div,
.bookingSideView.md-closed.md-locked-open-add-active .md-toolbar-tools div {
  padding-right: 10px;
}

.booking-profile-pic {
  flex: none;
  height: 40px;
  width: 40px;
}

.md-avatar {
  border-radius: 50%;
  box-sizing: content-box;
  margin-bottom: 8px;
  margin-right: 16px;
  margin-top: 8px;
}

.flex-center {
  display: flex;
  align-items: center;
}

.gap-20 {
  gap: 20px;
}

.fc-button {
  box-shadow: none;
  color: #000;
  border: 0px;
  background-image: none;
}
.waitry-dark-theme .fc-button {
  background-color: var(--an-surface2);
  color: var(--an-text);
}

.fc-state-active {
  color: #fff;
  background-color: #ec4e36 !important;
}

.calendar {
  margin: 0px 16px;
}

.waitry-dark-theme .fc-unthemed th,
.waitry-dark-theme .fc-unthemed td,
.waitry-dark-theme .fc-unthemed thead,
.waitry-dark-theme .fc-unthemed tbody,
.waitry-dark-theme .fc-unthemed .fc-divider,
.waitry-dark-theme .fc-unthemed .fc-row,
.waitry-dark-theme .fc-unthemed .fc-content,
.waitry-dark-theme .fc-unthemed .fc-popover {
  border-color: var(--an-border);
}
.waitry-dark-theme .fc-unthemed .fc-popover {
  background-color: var(--an-surface2);
}
.waitry-dark-theme .fc-unthemed .fc-divider,
.waitry-dark-theme .fc-unthemed .fc-popover .fc-header {
  background: var(--an-surface3);
}
.waitry-dark-theme .fc-unthemed .fc-popover .fc-header .fc-close {
  color: var(--an-text-muted);
}
.waitry-dark-theme .fc-unthemed .fc-today {
  background: var(--an-primary-soft);
}

.web-editor-layout {
  margin-top: 0 !important;
}

.web-editor-panel {
  flex: 0 0 360px;
  width: 360px;
  box-sizing: border-box;
  margin-top: 57px;
  min-height: calc(100vh - 121px);
  padding-bottom: 96px;
  background: var(--an-surface);
  border-right: 1px solid var(--an-border);
}

.web-editor-savebar {
  position: fixed;
  bottom: 0;
  width: 360px;
  box-sizing: border-box;
  padding: 24px 16px 16px;
  background: linear-gradient(to bottom, transparent, var(--an-surface) 40%);
  z-index: 100;
}
.web-editor-savebar .md-button {
  width: 100%;
  margin: 0;
}

.wed-section {
  border-bottom: 1px solid var(--an-border);
}
.wed-section__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  min-height: 52px;
  padding: 0 16px;
  margin: 0;
  border: 0;
  background: none;
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 600;
  color: var(--an-text);
  text-align: left;
  cursor: pointer;
}
.wed-section__head:hover {
  background: var(--an-bg-subtle);
}
.wed-section__head:focus-visible {
  outline: 2px solid var(--an-border-strong);
  outline-offset: -2px;
}
.wed-section__chevron {
  --an-icon-size: 18px;
  color: var(--an-text-muted);
  transition: transform var(--duration-fast) var(--ease-default);
}
.wed-section--open .wed-section__chevron {
  transform: rotate(180deg);
}
.wed-section__body {
  padding: 4px 16px 20px;
}

.wed-form {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.wed-form md-input-container,
.wed-form [md-color-picker] {
  width: 100%;
  margin: 0;
}

.wed-intro {
  margin: 0;
}

.wed-group-title {
  margin-top: 8px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-faint);
}

.wed-links {
  margin-top: -8px;
}
.wed-links .hint {
  margin-top: 2px;
}

.wed-link {
  color: var(--an-primary);
  font-weight: 600;
  text-decoration: none;
  word-break: break-all;
}
.wed-link:hover {
  text-decoration: underline;
}

.wed-error {
  margin-top: 6px;
  font-size: 12px;
  color: var(--an-rose);
}

.wed-affix__box {
  display: flex;
  align-items: stretch;
  height: 40px;
  box-sizing: border-box;
  overflow: hidden;
  background: var(--an-surface);
  border: 1px solid var(--an-border-strong);
  border-radius: var(--an-radius-sm);
  box-shadow: var(--an-shadow-xs);
  transition: border-color var(--duration-fast) var(--ease-default), box-shadow var(--duration-fast) var(--ease-default);
}
.wed-affix__box:focus-within {
  border-color: var(--an-text);
  box-shadow: 0 0 0 2px var(--an-surface), 0 0 0 4px var(--an-border-strong);
}
.md-input-invalid .wed-affix__box {
  border-color: var(--an-rose);
}

.wed-affix__text {
  order: 1;
  display: flex;
  align-items: center;
  padding: 0 10px;
  font-size: 13px;
  color: var(--an-text-muted);
  white-space: nowrap;
  background: var(--an-surface2);
}
.wed-affix__text:first-child {
  border-right: 1px solid var(--an-border);
}
.wed-affix__text:last-child {
  order: 3;
  border-left: 1px solid var(--an-border);
}

.wed-affix.wed-affix .wed-affix__box.wed-affix__box input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]):not(.md-datepicker-input) {
  order: 2;
  flex: 1 1 auto;
  min-width: 0;
  width: auto;
  height: 38px !important;
  padding: 0 10px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

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

.wed-template {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 8px;
  margin: 0;
  border: 1px solid var(--an-border);
  border-radius: 10px;
  background: var(--an-surface);
  box-shadow: var(--an-shadow-sm);
  cursor: pointer;
  font-family: var(--font-sans);
  transition: box-shadow var(--duration-fast) var(--ease-default), border-color var(--duration-fast) var(--ease-default);
}
.wed-template img {
  width: 100%;
  aspect-ratio: 6/5;
  object-fit: cover;
  border-radius: 6px;
  background: var(--an-surface2);
}
.wed-template:hover {
  box-shadow: var(--an-shadow-md);
}
.wed-template:focus-visible {
  outline: 2px solid var(--an-border-strong);
  outline-offset: 2px;
}
.wed-template--active {
  border-color: var(--an-rose);
  box-shadow: 0 0 0 1px var(--an-rose);
}

.wed-template__name {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
  text-align: center;
}

/* total width */
.scroll-light::-webkit-scrollbar {
  background-color: #FAFAFA;
  width: 16px;
}

/* background of the scrollbar except button or resizer */
.scroll-light::-webkit-scrollbar-track {
  background-color: #FAFAFA;
}

/* scrollbar itself */
.scroll-light::-webkit-scrollbar-thumb {
  background-color: #babac0;
  border-radius: 16px;
  border: 4px solid #FAFAFA;
}

/* set button(top and bottom of the scrollbar) */
.scroll-light::-webkit-scrollbar-button {
  display: none;
}

.preview-siteweb {
  position: fixed;
  right: 0;
  top: 121px;
  width: calc(100% - 424px);
  height: calc(100vh - 121px);
  display: flex;
  justify-content: center;
}

#moduleSurvey .graphContainer md-card-title {
  min-height: 100px;
}
#moduleSurvey .graphContainer .flex.chart md-icon,
#moduleSurvey .graphContainer .flex.tabledata md-icon {
  font-size: 8rem;
  height: 8rem;
  width: 8rem;
}
#moduleSurvey .graphContainer .flex.chart,
#moduleSurvey .graphContainer .flex.tabledata {
  min-height: 200px;
}

.note-modal-backdrop {
  display: none !important;
}

.layout-selected {
  outline: rgb(236, 78, 54) auto 1px !important;
}

.campaign-toolbar-title {
  margin-left: 8px;
}

.campaign-btn-new {
  margin-right: 16px !important;
  font-weight: 500 !important;
}

.menu-action-icon {
  margin-right: 8px;
  flex-shrink: 0;
}

/* ==========================================================================
   MARKETING CAMPAIGNS UI OVERHAUL
   ========================================================================== */
.marketing-page-wrap {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  height: 100%;
  min-height: 0;
}
.marketing-page-wrap .marketing-table-area {
  flex: 1;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-height: 0;
  padding: 0;
  position: relative;
}
.marketing-page-wrap .marketing-table-area .ng-table-pager {
  display: none !important;
}
.marketing-page-wrap .marketing-table-area .clients-table th {
  text-shadow: none !important;
}
.marketing-page-wrap .marketing-table-scroll {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 16px 16px 80px 16px;
}
.marketing-page-wrap .marketing-table-pager-sticky {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: var(--an-bg);
  z-index: 10;
}

.marketing-kpi-banner {
  margin-top: 16px;
  margin-bottom: 8px;
}

.campaign-col-name {
  width: 28%;
  min-width: 140px;
}

.campaign-col-trigger {
  width: 32%;
  min-width: 160px;
}

.campaign-col-audience {
  width: 8%;
  text-align: center;
}

.campaign-col-channels {
  width: 8%;
  text-align: center;
}

.campaign-col-status {
  width: 16%;
}

.campaign-row td {
  padding-top: 14px !important;
  padding-bottom: 14px !important;
  vertical-align: middle !important;
}
.campaign-row.campaign-row--disabled {
  opacity: 0.5;
}

.campaign-name-cell {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.campaign-name-primary {
  font-size: 14px;
  font-weight: 600;
  color: var(--an-text, #1f2937);
  line-height: 1.3;
}

.campaign-name-secondary {
  font-size: 12px;
  color: var(--an-text-muted, #6b7280);
  opacity: 0.75;
  line-height: 1.3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 260px;
}

.campaign-trigger-cell {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.campaign-trigger-icon-wrap {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: rgba(232, 0, 50, 0.08);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 1px;
}
.campaign-trigger-icon-wrap md-icon {
  font-size: 16px !important;
  color: #e80032 !important;
  opacity: 0.85;
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  min-height: 16px !important;
  line-height: 16px !important;
}

.campaign-trigger-body {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}

.campaign-trigger-type {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text, #1f2937);
  line-height: 1.3;
}

.campaign-trigger-detail {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 11.5px;
  color: var(--an-text-muted, #6b7280);
  opacity: 0.8;
  line-height: 1.3;
}
.campaign-trigger-detail i {
  font-size: 12px;
  flex-shrink: 0;
}

.campaign-audience-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text, #1f2937);
  min-width: 36px;
}

.campaign-audience-na {
  display: block;
  text-align: center;
  color: var(--an-text-muted, #9ca3af);
  font-size: 14px;
}

.campaign-channels-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}

.campaign-channel-dot {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 8px;
  border: 1.5px solid var(--an-border, rgba(0, 0, 0, 0.1));
  background: var(--an-surface, rgba(255, 255, 255, 0.05));
  opacity: 0.3;
  transition: opacity 0.18s ease, border-color 0.18s ease, background 0.18s ease;
}
.campaign-channel-dot i {
  font-size: 14px;
  color: var(--an-text, #374151);
}
.campaign-channel-dot.campaign-channel-dot--on {
  opacity: 1;
  background: rgba(232, 0, 50, 0.08);
  border-color: rgba(232, 0, 50, 0.25);
}
.campaign-channel-dot.campaign-channel-dot--on i {
  color: #e80032;
}

.campaign-status-cell {
  display: flex;
  flex-direction: column;
  gap: 4px;
  align-items: flex-start;
}

.campaign-status-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px 4px 7px;
  border-radius: 20px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  white-space: nowrap;
  border: 1.5px solid transparent;
}
.campaign-status-pill--active {
  background: rgba(16, 185, 129, 0.1);
  color: #059669;
  border-color: rgba(16, 185, 129, 0.2);
}
.campaign-status-pill--active .campaign-status-dot {
  background: #10b981;
  box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.15);
}
.campaign-status-pill--inactive {
  background: rgba(156, 163, 175, 0.08);
  color: var(--an-text-muted, #6b7280);
  border-color: rgba(156, 163, 175, 0.15);
}
.campaign-status-pill--inactive .campaign-status-dot {
  background: #9ca3af;
}

.campaign-status-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  flex-shrink: 0;
}

.campaign-sent-meta {
  font-size: 11px;
  color: var(--an-text-muted, #6b7280);
  opacity: 0.75;
  line-height: 1.3;
}

/* ==========================================================================
   CONTENT CMS UI OVERHAUL
   ========================================================================== */
.content-table td {
  padding-top: 12px !important;
  padding-bottom: 12px !important;
  vertical-align: middle !important;
}
.content-table tr.is-inactive {
  opacity: 0.7;
}
.content-table tr.is-inactive .content-table__img-wrap {
  filter: grayscale(0.5) opacity(0.8);
}
.content-table__img-wrap {
  width: 64px;
  height: 44px;
  border-radius: 6px;
  overflow: hidden;
  background: #f3f4f6;
}
.waitry-dark-theme .content-table__img-wrap {
  background: var(--an-surface2);
}
.content-table__img-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(0, 0, 0, 0.06);
}
.content-table__img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.content-table__img-wrap .no-image {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #f9fafb, #e5e7eb);
}
.waitry-dark-theme .content-table__img-wrap .no-image {
  background: linear-gradient(135deg, var(--an-surface2), var(--an-surface3));
}
.content-table__img-wrap .no-image i {
  font-size: 16px;
  color: #9ca3af;
}
.content-table__type-badge {
  display: inline-block;
  background: rgba(107, 114, 128, 0.08);
  color: #374151;
  font-size: 11px;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 12px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  border: 1px solid rgba(107, 114, 128, 0.15);
}
.waitry-dark-theme .content-table__type-badge {
  color: var(--an-text-muted);
}
.content-table__status-pill {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 8px;
  border-radius: 12px;
  font-size: 10.5px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  border: 1px solid transparent;
}
.content-table__status-pill i, .content-table__status-pill md-icon {
  font-size: 12px;
  width: 12px;
  height: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: inherit;
}
.content-table__status-pill--active {
  background: rgba(16, 185, 129, 0.08);
  color: #059669;
  border-color: rgba(16, 185, 129, 0.2);
}
.content-table__status-pill--inactive {
  background: rgba(156, 163, 175, 0.08);
  color: #6b7280;
  border-color: rgba(156, 163, 175, 0.2);
}
.content-table__dates-wrap {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.content-table__dates-wrap .date-item {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  color: #6b7280;
}
.content-table__dates-wrap .date-item md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  min-width: 14px;
  min-height: 14px;
  line-height: 14px;
  color: #9ca3af;
  margin: 0;
}
.content-table__actions {
  display: flex;
  gap: 4px;
  justify-content: flex-end;
}
.content-table__actions md-button {
  margin: 0;
  width: 36px;
  height: 36px;
}
.content-table__actions md-button md-icon {
  color: #6b7280;
}
.content-table__actions md-button:hover md-icon {
  color: #111827;
}
.waitry-dark-theme .content-table__actions md-button:hover md-icon {
  color: var(--an-text);
}
.content-table__actions md-button.btn-active md-icon {
  color: #10b981;
}
.content-table__actions md-button.btn-inactive md-icon {
  color: #9ca3af;
}

.catalog-grid-wrap--mt {
  margin-top: 16px;
}

.promo-table-img-cell {
  width: 80px;
}

.promo-table-name {
  font-weight: 600;
  color: var(--an-text);
  font-size: 14px;
  display: block;
}

.promo-table-desc {
  color: var(--an-text-muted);
  font-size: 12px;
  margin-top: 2px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 300px;
  display: block;
}

.promo-table-type-icon {
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  margin-right: 4px;
  vertical-align: middle;
}

.promo-table-no-date {
  color: var(--an-text-faint);
  font-size: 12px;
}

.date-item--targeted {
  color: #a855f7 !important;
}
.date-item--targeted .promo-table-targeted-icon,
.date-item--targeted md-icon {
  color: #a855f7 !important;
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
}

.cw-page {
  background: var(--an-bg, #f4f6f9);
}

.cw-steps {
  padding: 14px 28px;
  max-width: 1180px;
  margin: 0 auto;
  width: 100%;
  box-sizing: border-box;
  background: transparent;
  border-bottom: none;
  position: static;
}

.cw-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: 20px;
  max-width: 1180px;
  margin: 0 auto;
  padding: 4px 28px 90px;
  align-items: start;
}
@media (max-width: 1000px) {
  .cw-grid {
    grid-template-columns: 1fr;
  }
}

.cw-main {
  display: flex;
  flex-direction: column;
  gap: 14px;
  min-width: 0;
}

.cw-aside {
  display: flex;
  flex-direction: column;
  gap: 14px;
  position: sticky;
  top: 12px;
  background: transparent;
  padding: 0;
}
@media (max-width: 1000px) {
  .cw-aside {
    position: static;
  }
}

.cw-field-row {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}
.cw-field-row.cw-field-row--center {
  align-items: center;
  gap: 10px;
}

.cw-field {
  display: flex;
  flex-direction: column;
  margin-bottom: 14px;
  min-width: 0;
}
.cw-field.cw-field--grow {
  flex: 1;
  min-width: 200px;
}
.cw-field.cw-field--time {
  width: 130px;
}
.cw-field.cw-field--num {
  width: 130px;
}

.cw-input {
  height: 40px;
  padding: 0 14px;
  border: 1px solid var(--an-border-strong, #cbd5e1);
  border-radius: 9px;
  background: var(--an-surface, #fff);
  color: var(--an-text, #1e293b);
  font-size: 13.5px;
  font-family: inherit;
  outline: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
  box-sizing: border-box;
  width: 100%;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.02) inset;
}
.cw-input:hover {
  border-color: rgba(var(--an-primary-rgb, 73, 127, 228), 0.4);
}
.cw-input:focus {
  border-color: var(--an-primary, #497fe4);
  box-shadow: 0 0 0 3px rgba(var(--an-primary-rgb, 73, 127, 228), 0.15), 0 1px 2px rgba(0, 0, 0, 0.02) inset;
  background: var(--an-surface);
}
.cw-input::placeholder {
  color: var(--an-placeholder);
}
.cw-input:disabled {
  opacity: 0.6;
  background: var(--an-surface2, #f8fafc);
  box-shadow: none;
  cursor: not-allowed;
}

textarea.cw-input,
.cw-textarea {
  height: auto;
  min-height: 84px;
  padding: 10px 12px;
  resize: vertical;
  line-height: 1.5;
}

.cw-select {
  margin: 0;
  width: 100%;
}
.cw-select .md-select-value {
  border-bottom: none !important;
  border: 1.5px solid var(--an-border, #e2e8f0);
  border-radius: 9px;
  padding: 7px 12px;
  min-height: 38px;
  background: var(--an-surface, #fff);
  font-size: 13.5px;
}
.cw-select.md-input-focused .md-select-value {
  border-color: var(--an-primary, #497fe4);
}

.cw-datepicker .md-datepicker-input-container {
  border-bottom: none;
  border: 1px solid var(--an-border-strong, #cbd5e1);
  border-radius: 9px;
  padding: 3px 8px;
  background: var(--an-surface, #fff);
  margin-left: 0;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.02) inset;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.cw-datepicker .md-datepicker-input-container:hover {
  border-color: rgba(var(--an-primary-rgb, 73, 127, 228), 0.4);
}
.cw-datepicker.md-datepicker-focused .md-datepicker-input-container {
  border-color: var(--an-primary, #497fe4);
  box-shadow: 0 0 0 3px rgba(var(--an-primary-rgb, 73, 127, 228), 0.15), 0 1px 2px rgba(0, 0, 0, 0.02) inset;
}

.cw-hint {
  font-size: 12px;
  color: var(--an-text-muted, #64748b);
  line-height: 1.5;
  margin: 2px 0 0;
}

.cw-type-grid {
  grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
  margin-bottom: 14px;
}

.cw-type-desc {
  font-size: 11px;
  line-height: 1.4;
  color: var(--an-text-muted, #64748b);
}

.cw-schedule {
  background: var(--an-surface, #fff);
  border: 1px dashed var(--an-border-strong, #cbd5e1);
  border-radius: 12px;
  padding: 16px 20px 4px;
  margin-top: 6px;
}

.cw-day-pills {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin: 4px 0 14px;
}

.cw-day-pill {
  border: 1.5px solid var(--an-border, #e2e8f0);
  background: var(--an-surface, #fff);
  color: var(--an-text-muted, #64748b);
  border-radius: 18px;
  padding: 6px 14px;
  font-size: 12.5px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.15s ease;
  text-transform: capitalize;
}
.cw-day-pill:hover {
  border-color: var(--an-primary, #497fe4);
}
.cw-day-pill.cw-day-pill--on {
  background: var(--an-primary, #497fe4);
  border-color: var(--an-primary, #497fe4);
  color: #fff;
  box-shadow: 0 2px 8px rgba(var(--an-primary-rgb, 73, 127, 228), 0.3);
}

.cw-reach {
  text-align: center;
  padding: 20px 0 12px;
  border-top: 1px solid var(--an-border, #eef0f3);
  margin-top: 12px;
}
.cw-reach .cw-reach-num {
  font-size: 42px;
  font-weight: 800;
  font-family: "Outfit", sans-serif;
  color: var(--an-primary, #497fe4);
  line-height: 1.1;
  letter-spacing: -0.02em;
  text-shadow: 0 2px 10px rgba(var(--an-primary-rgb, 73, 127, 228), 0.15);
}
.cw-reach .cw-reach-lbl {
  font-size: 11px;
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: 0.08em;
  color: var(--an-text-muted, #64748b);
  margin-top: 6px;
}

.cw-reach-channels {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-top: 10px;
}

.cw-reach-channel {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12.5px;
  color: var(--an-text-muted, #64748b);
  background: var(--an-surface2, #f8fafc);
  border-radius: 8px;
  padding: 7px 10px;
}
.cw-reach-channel i {
  font-size: 15px;
}
.cw-reach-channel .cw-reach-channel-val {
  font-weight: 700;
  color: var(--an-text, #1e293b);
}

.cw-header-switch {
  margin: 0;
  transform: scale(0.8);
}

.cw-ghost-btn {
  border: 1.5px solid var(--an-border, #e2e8f0) !important;
  border-radius: 9px !important;
  text-transform: none !important;
  font-size: 13px !important;
  color: var(--an-text, #334155) !important;
  background: var(--an-surface, #fff) !important;
  min-height: 34px;
  line-height: 34px;
}
.cw-ghost-btn md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
}

.cw-save-btn,
.cw-next-btn {
  border-radius: 9px !important;
  text-transform: none !important;
}

.cw-channels {
  display: flex;
  gap: 10px;
  max-width: 1180px;
  margin: 0 auto;
  width: 100%;
  box-sizing: border-box;
  padding: 4px 28px 14px;
  overflow-x: auto;
}

.cw-channel-pill {
  display: flex;
  align-items: center;
  gap: 10px;
  background: var(--an-surface, #fff);
  border: 1.5px solid var(--an-border, #e2e8f0);
  border-radius: 12px;
  padding: 9px 12px;
  min-width: 165px;
  cursor: pointer;
  transition: all 0.15s ease;
  user-select: none;
}
.cw-channel-pill > i {
  font-size: 20px;
  color: var(--an-text-muted, #64748b);
}
.cw-channel-pill .cw-channel-pill-meta {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-width: 0;
}
.cw-channel-pill .cw-channel-pill-name {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text, #1e293b);
  white-space: nowrap;
}
.cw-channel-pill .cw-channel-pill-state {
  font-size: 10.5px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--an-text-faint, #9ca3af);
}
.cw-channel-pill .cw-channel-switch {
  margin: 0;
  transform: scale(0.75);
}
.cw-channel-pill .cw-channel-lock {
  font-size: 14px;
  color: var(--an-text-faint, #9ca3af);
}
.cw-channel-pill:hover {
  border-color: var(--an-primary, #497fe4);
}
.cw-channel-pill.cw-channel-pill--active {
  border-color: var(--an-primary, #497fe4);
  box-shadow: 0 0 0 3px rgba(var(--an-primary-rgb, 73, 127, 228), 0.14);
}
.cw-channel-pill.cw-channel-pill--on > i {
  color: var(--an-primary, #497fe4);
}
.cw-channel-pill.cw-channel-pill--locked {
  opacity: 0.65;
}

.cw-email-meta {
  display: flex;
  align-items: flex-end;
  gap: 14px;
  max-width: 1180px;
  margin: 0 auto;
  width: 100%;
  box-sizing: border-box;
  padding: 0 28px 12px;
}
.cw-email-meta .cw-field {
  margin-bottom: 0;
}
.cw-email-meta .cw-ghost-btn {
  margin-bottom: 2px;
}

.cw-checklist {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.cw-check {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 10px;
  border-radius: 8px;
  font-size: 13.5px;
  color: var(--an-text-muted, #64748b);
}
.cw-check i {
  font-size: 18px;
  color: #f59e0b;
}
.cw-check.cw-check--ok {
  color: var(--an-text, #1e293b);
}
.cw-check.cw-check--ok i {
  color: #22c55e;
}

.cw-channel-summary {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.cw-channel-row {
  display: flex;
  align-items: center;
  gap: 12px;
  border: 1px solid var(--an-border, #eef0f3);
  border-radius: 10px;
  padding: 10px 14px;
}
.cw-channel-row .cw-channel-row-icon i {
  font-size: 20px;
  color: var(--an-primary, #497fe4);
}
.cw-channel-row .cw-channel-row-meta {
  display: flex;
  flex-direction: column;
}
.cw-channel-row .cw-channel-row-name {
  font-size: 13.5px;
  font-weight: 600;
  color: var(--an-text, #1e293b);
}
.cw-channel-row .cw-channel-row-detail {
  font-size: 12px;
  color: var(--an-text-muted, #64748b);
}

.cw-empty-channels {
  text-align: center;
  padding: 18px;
  font-size: 13px;
  color: var(--an-text-faint, #9ca3af);
}

.cw-launch-card {
  background: linear-gradient(150deg, var(--an-primary, #497fe4), #5e60ce);
  border-radius: 16px;
  padding: 26px 22px;
  color: #fff;
  box-shadow: 0 10px 30px rgba(var(--an-primary-rgb, 73, 127, 228), 0.35);
}
.cw-launch-card.cw-launch-card--blocked {
  background: linear-gradient(150deg, #64748b, #475569);
  box-shadow: none;
}
.cw-launch-card .cw-launch-reach {
  text-align: center;
  margin-bottom: 16px;
}
.cw-launch-card .cw-launch-reach .cw-launch-reach-num {
  display: block;
  font-size: 40px;
  font-weight: 800;
  font-family: "Outfit", sans-serif;
  line-height: 1.1;
}
.cw-launch-card .cw-launch-reach .cw-launch-reach-lbl {
  font-size: 11.5px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  opacity: 0.85;
}
.cw-launch-card .cw-launch-rows {
  border-top: 1px solid rgba(255, 255, 255, 0.25);
  padding-top: 12px;
  margin-bottom: 12px;
}
.cw-launch-card .cw-launch-row {
  display: flex;
  justify-content: space-between;
  font-size: 13px;
  padding: 3px 0;
  opacity: 0.95;
}
.cw-launch-card .cw-launch-warn {
  display: flex;
  align-items: center;
  gap: 8px;
  background: rgba(0, 0, 0, 0.18);
  border-radius: 8px;
  padding: 8px 12px;
  font-size: 12.5px;
  margin-bottom: 12px;
}
.cw-launch-card .cw-launch-warn i {
  font-size: 16px;
}
.cw-launch-card .cw-launch-btn {
  width: 100%;
  background: #fff !important;
  color: var(--an-primary, #497fe4) !important;
  border-radius: 10px !important;
  font-weight: 700;
  text-transform: none !important;
  height: 44px;
}
.cw-launch-card .cw-launch-btn md-icon {
  color: var(--an-primary, #497fe4) !important;
  margin-right: 6px;
}
.cw-launch-card .cw-launch-btn[disabled] {
  opacity: 0.55;
}
.cw-launch-card .cw-launch-note {
  font-size: 11.5px;
  text-align: center;
  opacity: 0.8;
  margin: 10px 0 0;
  line-height: 1.45;
}

.cw-footer {
  background: var(--an-surface, #fff);
  border-top: 1px solid var(--an-border, #e2e8f0);
  padding: 8px 28px;
  position: sticky;
  bottom: 0;
  z-index: 5;
}

.cw-footer-progress {
  display: flex;
  gap: 6px;
}

.cw-footer-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--an-border-strong, #cbd5e1);
  transition: background 0.2s ease;
}
.cw-footer-dot.cw-footer-dot--on {
  background: var(--an-primary, #497fe4);
}

.campaign-wizard-body {
  background: transparent;
}

.campaign-wizard-inner {
  max-width: 1040px;
  margin: 0 auto;
  padding: 20px 24px 80px;
}

.campaign-btn-secondary {
  border: 1px solid rgba(255, 255, 255, 0.4);
  border-radius: 18px;
  text-transform: none;
}

.campaign-editor-shell {
  position: relative;
  min-height: 480px;
  display: flex;
}
.campaign-editor-shell grapes-editor {
  display: flex;
  flex: 1;
  min-height: 0;
}
.campaign-editor-shell .grapes-editor-root {
  flex: 1;
  min-height: 480px;
}
.campaign-editor-shell .gjs-one-bg {
  background-color: #ffffff;
}
.waitry-dark-theme .campaign-editor-shell .gjs-one-bg {
  background-color: var(--an-surface2);
}
.campaign-editor-shell .gjs-two-color {
  color: #4b5563;
}
.campaign-editor-shell .gjs-three-bg {
  background-color: var(--an-accent, #3f51b5);
  color: #fff;
}
.campaign-editor-shell .gjs-four-color,
.campaign-editor-shell .gjs-four-color-h:hover {
  color: var(--an-accent, #3f51b5);
}
.campaign-editor-shell .gjs-pn-panel {
  border-color: rgba(0, 0, 0, 0.06);
}
.campaign-editor-shell .gjs-block {
  border-radius: 10px;
  border: 1px solid rgba(0, 0, 0, 0.08);
  box-shadow: none;
  transition: border-color 0.15s ease, transform 0.15s ease;
}
.campaign-editor-shell .gjs-block:hover {
  border-color: var(--an-accent, #3f51b5);
  transform: translateY(-1px);
}
.campaign-editor-shell .gjs-merge-select {
  max-width: 130px;
  font-size: 12px;
}

.campaign-legacy-banner {
  background: #fff8e1;
}
.waitry-dark-theme .campaign-legacy-banner {
  background: rgba(245, 158, 11, 0.18);
}
.campaign-legacy-banner {
  border: 1px solid rgba(245, 158, 11, 0.2666666667);
  border-radius: 10px;
  margin: 10px 16px;
  padding: 8px 14px;
  gap: 10px;
  font-size: 13px;
  color: #92400e;
}
.campaign-legacy-banner i {
  font-size: 18px;
}

.campaign-phone-preview {
  display: flex;
  justify-content: flex-start;
  margin-top: 8px;
}

.campaign-phone-frame {
  width: 280px;
  min-height: 140px;
  border: 2px solid rgba(0, 0, 0, 0.15);
  border-radius: 24px;
  background: linear-gradient(160deg, #eef1f8, #dfe4f0);
  padding: 28px 12px 12px;
}
.waitry-dark-theme .campaign-phone-frame {
  border-color: var(--an-border);
  background: linear-gradient(160deg, var(--an-surface2), var(--an-bg));
}

.campaign-push-bubble {
  background: rgba(255, 255, 255, 0.92);
  border-radius: 12px;
  padding: 10px 12px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}
.waitry-dark-theme .campaign-push-bubble {
  background: var(--an-surface);
  box-shadow: var(--an-shadow-sm);
}
.campaign-push-bubble .campaign-push-bubble-title {
  font-size: 12.5px;
  font-weight: 700;
  color: #111827;
}
.waitry-dark-theme .campaign-push-bubble .campaign-push-bubble-title {
  color: var(--an-text);
}
.campaign-push-bubble .campaign-push-bubble-body {
  font-size: 12px;
  color: #4b5563;
  margin-top: 2px;
}
.waitry-dark-theme .campaign-push-bubble .campaign-push-bubble-body {
  color: var(--an-text-muted);
}

.campaign-wallet-notif {
  display: flex;
  gap: 10px;
  align-items: flex-start;
}
.campaign-wallet-notif .campaign-wallet-notif-icon {
  flex-shrink: 0;
  width: 28px;
  height: 28px;
  border-radius: 7px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--an-rose);
  color: #fff;
  font-size: 16px;
}
.campaign-wallet-notif .campaign-wallet-notif-text {
  min-width: 0;
}
.campaign-wallet-notif .campaign-push-bubble-body {
  overflow-wrap: anywhere;
}

.campaign-merge-tags {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin: 2px 0 12px;
}

.campaign-merge-tag {
  border: 1px solid var(--an-border);
  background: var(--an-surface2);
  color: var(--an-text);
  border-radius: var(--an-radius-pill);
  padding: 3px 10px;
  font-size: 12px;
  font-family: inherit;
  cursor: pointer;
  transition: border-color 0.15s;
}
.campaign-merge-tag:hover:not([disabled]) {
  border-color: var(--an-border-hover);
}
.campaign-merge-tag[disabled] {
  cursor: default;
  opacity: 0.5;
}

.sms-counter {
  font-size: 12px;
  color: var(--an-text-muted);
  margin: -6px 0 12px 2px;
}

.campaign-channel-locked {
  text-align: center;
  padding: 60px 20px;
  color: var(--an-text-muted);
}
.campaign-channel-locked i {
  font-size: 44px;
  color: var(--an-text-faint, #9ca3af);
}
.campaign-channel-locked h3 {
  margin: 14px 0 4px;
}
.campaign-channel-locked p {
  max-width: 440px;
  margin: 0 auto 16px;
}

.campaign-channel-locked--compact {
  padding: 24px;
}

.campaign-channels-page .campaign-wizard-inner .wf-section-header {
  margin-top: 32px;
}

.campaign-channels-page .campaign-wizard-inner > .wf-section-header:first-child {
  margin-top: 0;
}

.wa-connected-icon {
  color: #10B981;
}

.campaign-wallet-interval {
  width: 150px;
  margin: 0;
  flex-shrink: 0;
}

.campaign-perf-cell {
  display: flex;
  gap: 12px;
}

.campaign-perf-stat {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 12.5px;
  color: var(--an-text-muted);
}
.campaign-perf-stat i {
  font-size: 14px;
}

.campaign-channel-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 12px;
}

.campaign-channel-card {
  display: flex;
  align-items: center;
  gap: 14px;
  background: #fff;
}
.waitry-dark-theme .campaign-channel-card {
  background: var(--an-surface);
}
.campaign-channel-card {
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 12px;
  padding: 16px;
}
.campaign-channel-card .campaign-channel-card-icon i {
  font-size: 28px;
  color: var(--an-accent, #3f51b5);
}
.campaign-channel-card .campaign-channel-card-name {
  font-weight: 600;
  margin-bottom: 4px;
}

.wa-connect-card {
  margin-bottom: 16px;
}
.wa-connect-card .wa-connect-hint {
  font-size: 12.5px;
  color: var(--an-text-muted);
  margin: 4px 0 0;
}

.wa-quality-badge {
  display: inline-block;
  margin-left: 10px;
  font-size: 11.5px;
  color: var(--an-text-muted);
}

.wa-status-badge {
  display: inline-block;
  padding: 3px 10px;
  border-radius: 12px;
  font-size: 11.5px;
  font-weight: 600;
}
.wa-status-badge.wa-status-badge--approved {
  background: #d1fae5;
  color: #065f46;
}
.waitry-dark-theme .wa-status-badge.wa-status-badge--approved {
  background: rgba(5, 150, 105, 0.2);
}
.wa-status-badge.wa-status-badge--pending {
  background: #fef3c7;
  color: #92400e;
}
.waitry-dark-theme .wa-status-badge.wa-status-badge--pending {
  background: rgba(217, 119, 6, 0.2);
}
.wa-status-badge.wa-status-badge--rejected {
  background: #fee2e2;
  color: #991b1b;
}
.waitry-dark-theme .wa-status-badge.wa-status-badge--rejected {
  background: rgba(220, 38, 38, 0.2);
}

.wa-var-chip {
  display: inline-flex;
  align-items: center;
  background: #eef2ff;
  color: #4338ca;
  border-radius: 10px;
  padding: 3px 10px;
  font-size: 12px;
  font-weight: 600;
  margin-right: 10px;
  white-space: nowrap;
}

.wa-var-row {
  margin: -6px 0 6px;
}
.wa-var-row .wa-var-hint {
  font-size: 12px;
  color: var(--an-text-faint, #9ca3af);
}

.wa-samples-block {
  background: #fafafa;
}
.waitry-dark-theme .wa-samples-block {
  background: var(--an-surface2);
}
.wa-samples-block {
  border: 1px solid rgba(0, 0, 0, 0.06);
  border-radius: 10px;
  padding: 10px 14px;
  margin-bottom: 12px;
}

.wa-phone-frame {
  background: #e5ddd5;
  width: 300px;
}

.wa-preview-bubble {
  background: #ffffff;
  border-radius: 8px;
  border-top-left-radius: 0;
  padding: 8px 10px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.12);
  max-width: 240px;
}
.wa-preview-bubble .wa-preview-header {
  font-weight: 700;
  font-size: 13px;
  margin-bottom: 4px;
}
.wa-preview-bubble .wa-preview-body {
  font-size: 12.5px;
  color: #111b21;
  white-space: pre-wrap;
}
.wa-preview-bubble .wa-preview-footer {
  font-size: 11px;
  color: #8696a0;
  margin-top: 4px;
}

.wa-preview-buttons {
  margin-top: 6px;
  max-width: 240px;
}
.wa-preview-buttons .wa-preview-button {
  background: #ffffff;
  border-radius: 8px;
  text-align: center;
  color: #00a5f4;
  font-size: 12.5px;
  font-weight: 600;
  padding: 7px 0;
  margin-top: 3px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.12);
}

.wa-review-note {
  font-size: 11.5px;
  color: var(--an-text-faint, #9ca3af);
  max-width: 280px;
  text-align: center;
  margin-top: 14px;
}

.waitry-dark-theme .note-editor.note-frame,
.waitry-dark-theme .note-editor.note-airframe {
  border-color: var(--an-border);
  color: var(--an-text);
}
.waitry-dark-theme .note-toolbar {
  background-color: var(--an-surface2);
  border-color: var(--an-border);
  color: var(--an-text);
}
.waitry-dark-theme .note-editor .note-editing-area .note-editable {
  background-color: var(--an-surface);
  color: var(--an-text);
}
.waitry-dark-theme .note-editor .note-editing-area .note-editable[contenteditable=false] {
  background-color: rgba(255, 255, 255, 0.04);
}
.waitry-dark-theme .note-placeholder {
  color: var(--an-text-faint);
}
.waitry-dark-theme .note-btn {
  color: var(--an-text);
  background-color: var(--an-surface2);
  border-color: var(--an-border);
}
.waitry-dark-theme .note-btn:hover,
.waitry-dark-theme .note-btn:focus,
.waitry-dark-theme .note-btn.focus,
.waitry-dark-theme .note-btn:active,
.waitry-dark-theme .note-btn.active {
  color: var(--an-text);
  background-color: var(--an-surface3);
  border-color: var(--an-border-strong);
}
.waitry-dark-theme .note-btn.disabled,
.waitry-dark-theme .note-btn[disabled] {
  background-color: var(--an-surface2);
  color: var(--an-text-faint);
}
.waitry-dark-theme .note-dropdown-menu {
  background: var(--an-surface2);
  border-color: var(--an-border);
  color: var(--an-text);
}
.waitry-dark-theme .note-dropdown-item:hover {
  background-color: var(--an-surface3);
}
.waitry-dark-theme .note-modal-content {
  background: var(--an-surface);
  border-color: var(--an-border);
  color: var(--an-text);
}
.waitry-dark-theme .note-modal-header {
  border-color: var(--an-border);
}
.waitry-dark-theme .note-modal-title {
  color: var(--an-text);
}
.waitry-dark-theme .note-modal .note-help-block {
  color: var(--an-text-muted);
}
.waitry-dark-theme .note-input {
  background: var(--an-surface2);
  border-color: var(--an-border);
  color: var(--an-text);
}
.waitry-dark-theme .note-popover {
  background: var(--an-surface2);
  border-color: var(--an-border);
}
.waitry-dark-theme .note-popover-content {
  background-color: var(--an-surface2);
  color: var(--an-text);
}

.promo-wizard-dialog {
  max-width: 960px;
  width: 90vw;
}
.promo-wizard-dialog md-toolbar.wf-toolbar {
  background: var(--an-surface) !important;
  color: var(--an-text) !important;
  border-bottom: 1px solid var(--an-border);
  box-shadow: none;
}
.promo-wizard-dialog md-toolbar.wf-toolbar h2 {
  color: var(--an-text);
  font-size: 16px;
  font-weight: 700;
}
.promo-wizard-dialog md-toolbar.wf-toolbar .wf-cancel-btn md-icon {
  color: var(--an-text-muted) !important;
}

.promo-wizard-steps {
  display: flex;
  align-items: center;
  padding: 12px 24px;
  background: var(--an-surface);
}
@supports (backdrop-filter: blur(24px)) {
  .promo-wizard-steps {
    background: rgba(255, 255, 255, 0.85);
    backdrop-filter: blur(24px);
  }
  .waitry-dark-theme .promo-wizard-steps {
    background: rgba(30, 41, 59, 0.85);
  }
}
.promo-wizard-steps {
  border-bottom: 1px solid var(--an-border);
  position: sticky;
  top: 0;
  z-index: 10;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);
}

.promo-wizard-step {
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  opacity: 0.4;
  transition: opacity 0.2s ease;
}
.promo-wizard-step.active {
  opacity: 1;
}
.promo-wizard-step.done {
  opacity: 1;
  cursor: pointer;
}

.promo-wizard-step-dot {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--an-surface2);
  border: 2px solid var(--an-border-strong);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 700;
  color: var(--an-text-muted);
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
  flex-shrink: 0;
}
.promo-wizard-step-dot md-icon {
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  color: inherit !important;
  line-height: 1 !important;
}
.promo-wizard-step.active .promo-wizard-step-dot {
  background: var(--an-primary, #497fe4);
  border-color: var(--an-primary, #497fe4);
  color: #fff;
}
.promo-wizard-step.done .promo-wizard-step-dot {
  background: #22c55e;
  border-color: #22c55e;
  color: #fff;
}

.promo-wizard-step-label {
  font-size: 13px;
  font-weight: 500;
  color: var(--an-text-muted);
}
.promo-wizard-step.active .promo-wizard-step-label {
  color: var(--an-text);
  font-weight: 600;
}
@media (max-width: 600px) {
  .promo-wizard-step-label {
    display: none;
  }
}

.promo-wizard-step-connector {
  flex: 1;
  height: 2px;
  background: var(--an-border);
  margin: 0 8px;
  border-radius: 2px;
  transition: background 0.3s ease;
}
.promo-wizard-step-connector.active {
  background: var(--an-primary, #497fe4);
}

md-dialog-content.promo-wizard-content {
  background: var(--an-bg);
  min-height: 420px;
  max-height: 64vh;
  overflow-y: auto;
  padding: 0 !important;
}
md-dialog-content.promo-wizard-content::-webkit-scrollbar {
  width: 4px;
}
md-dialog-content.promo-wizard-content::-webkit-scrollbar-thumb {
  background: var(--an-border-strong);
  border-radius: 2px;
}

.promo-wizard-step-panel {
  padding: 20px 24px 16px;
  animation: promo-fadein 0.22s ease;
}

@keyframes promo-fadein {
  from {
    opacity: 0;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.promo-tpl-group-label {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--an-text-muted);
  margin-bottom: 12px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--an-border);
}
.promo-tpl-group-label md-icon {
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  color: #f59e0b !important;
}

.promo-tpl-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  gap: 10px;
  margin-bottom: 8px;
}

.promo-tpl-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 18px 12px 16px;
  border-radius: 14px;
  border: 1.5px solid transparent;
  background: var(--an-surface2);
  cursor: pointer;
  transition: border-color 0.2s ease, background 0.2s ease, transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.2s ease;
  user-select: none;
  text-align: center;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.02);
}
.promo-tpl-card:hover {
  border-color: rgba(var(--an-primary-rgb, 73, 127, 228), 0.3);
  background: var(--an-surface);
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.04);
}
.promo-tpl-card.selected {
  border-color: var(--an-primary, #497fe4);
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.04);
  box-shadow: 0 4px 14px rgba(var(--an-primary-rgb, 73, 127, 228), 0.12), 0 0 0 1px var(--an-primary, #497fe4) inset;
}
.promo-tpl-card.selected .promo-tpl-card-icon md-icon {
  color: var(--an-primary, #497fe4) !important;
}
.promo-tpl-card.selected .promo-tpl-card-icon {
  background: var(--an-surface);
  border-color: rgba(var(--an-primary-rgb, 73, 127, 228), 0.2);
}
.promo-tpl-card--popular {
  background: var(--an-surface);
}

.promo-tpl-card-icon {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.15s ease;
}
.promo-tpl-card-icon md-icon {
  font-size: 22px !important;
  width: 22px !important;
  height: 22px !important;
  color: var(--an-text-muted) !important;
  transition: color 0.15s ease;
}

.promo-tpl-card-label {
  font-size: 12px;
  font-weight: 600;
  line-height: 1.35;
  color: var(--an-text);
}

.promo-tpl-more-row {
  display: flex;
  justify-content: center;
  margin: 8px 0 4px;
}
.promo-tpl-more-row .promo-tpl-more-btn {
  font-size: 12px !important;
  color: var(--an-primary, #497fe4) !important;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.promo-tpl-more-row .promo-tpl-more-btn md-icon {
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  color: var(--an-primary, #497fe4) !important;
}

.promo-wizard-configure {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.promo-section-card {
  border-radius: 14px;
  border: 1px solid var(--an-border);
  background: var(--an-surface);
  overflow: hidden;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
}
.promo-section-card--targeting {
  border-color: rgba(var(--an-primary-rgb, 73, 127, 228), 0.35);
  box-shadow: 0 4px 16px rgba(var(--an-primary-rgb, 73, 127, 228), 0.08);
}

.promo-section-header {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 20px;
  font-size: 14px;
  font-weight: 600;
  color: var(--an-text);
  background: transparent;
  border-bottom: 1px solid var(--an-border);
}
.promo-section-header .promo-section-icon-wrap {
  width: 28px;
  height: 28px;
  border-radius: 8px;
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.promo-section-header .promo-section-icon-wrap md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  color: var(--an-primary, #497fe4) !important;
}
.promo-section-header md-icon:not(.promo-section-icon-wrap md-icon) {
  font-size: 18px !important;
  width: 18px !important;
  height: 18px !important;
  color: var(--an-primary, #497fe4) !important;
}
.promo-section-header--collapsible {
  cursor: pointer;
  user-select: none;
  transition: background 0.12s ease;
}
.promo-section-header--collapsible:hover {
  background: var(--an-surface3);
}

.promo-section-body {
  padding: 16px;
  background: var(--an-surface);
}
.promo-section-body md-input-container label {
  color: var(--an-text-muted);
}
.promo-section-body md-input-container input, .promo-section-body md-input-container textarea {
  color: var(--an-text);
}

.pwiz-label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--an-text-muted);
  margin-bottom: 6px;
  display: block;
}

.pwiz-no-margin-input {
  margin: 0 !important;
  padding: 0 !important;
}

.promo-targeting-help,
.promo-targeting-empty {
  color: var(--an-text-muted);
  font-size: 11.5px;
  margin: 2px 0 10px;
  line-height: 1.5;
}

.pwiz-audience-setup {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.pwiz-audience-setup .pwiz-outline-btn {
  margin: 0 !important;
}

.wf-hint.pwiz-field-error {
  margin: 4px 0 0;
}

.wf-color-dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  margin-right: 6px;
  vertical-align: middle;
}

.wf-restrict-panel {
  max-height: 200px;
  overflow-y: auto;
  border: 1px solid var(--an-border);
  border-radius: 8px;
  padding: 4px 8px;
  background: var(--an-surface2);
}

.promo-tier-table {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-bottom: 8px;
}

.promo-tier-row {
  display: flex;
  align-items: center;
  gap: 12px;
}
.promo-tier-row--header {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--an-text-muted);
  padding: 4px 0;
}
.promo-tier-row md-input-container {
  margin: 0 !important;
  padding: 0 !important;
}

.promo-tier-col {
  flex: 1;
  min-width: 0;
}
.promo-tier-col--action {
  flex: 0 0 40px;
}

.promo-review-card {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 12px;
  overflow: hidden;
}

.promo-review-header {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 18px 20px 14px;
  border-bottom: 1px solid var(--an-border);
  background: var(--an-surface2);
}

.promo-review-icon {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  background: linear-gradient(135deg, var(--an-primary, #497fe4) 0%, #818cf8 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.promo-review-icon md-icon {
  font-size: 24px !important;
  width: 24px !important;
  height: 24px !important;
  color: #fff !important;
}

.promo-review-name {
  font-size: 17px;
  font-weight: 700;
  margin: 0 0 4px;
  color: var(--an-text);
}

.promo-review-type-badge {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.04em;
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.12);
  color: var(--an-primary, #497fe4);
  padding: 2px 10px;
  border-radius: 20px;
  display: inline-block;
}

.promo-review-desc {
  padding: 10px 20px;
  color: var(--an-text-muted);
  font-size: 13px;
  border-bottom: 1px solid var(--an-border);
}

.promo-review-rows {
  padding: 4px 0;
}

.promo-review-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 9px 20px;
  border-bottom: 1px solid var(--an-border-light);
  font-size: 13px;
  transition: background 0.12s ease;
}
.promo-review-row:hover {
  background: var(--an-bg-subtle);
}
.promo-review-row:last-child {
  border-bottom: none;
}

.promo-review-row-label {
  color: var(--an-text-muted);
  font-weight: 500;
}

.promo-review-row-val {
  font-weight: 600;
  color: var(--an-text);
}

.promo-review-code {
  font-family: monospace;
  font-size: 14px;
  letter-spacing: 0.1em;
  color: var(--an-primary, #497fe4) !important;
}

.promo-review-badge {
  font-size: 11.5px;
  font-weight: 700;
  padding: 2px 10px;
  border-radius: 20px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.promo-review-badge--yes {
  background: rgba(34, 197, 94, 0.12);
  color: #16a34a;
}
.promo-review-badge--no {
  background: var(--an-surface2);
  color: var(--an-text-muted);
}

.promo-review-qr {
  padding: 16px 20px;
  display: flex;
  justify-content: center;
  border-top: 1px solid var(--an-border);
}
.promo-review-qr img {
  border-radius: 8px;
}

md-dialog-actions.promo-wizard-actions {
  background: var(--an-surface);
  border-top: 1px solid var(--an-border);
  padding: 10px 20px;
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}

.pwiz-mt-8 {
  margin-top: 8px;
}

.pwiz-mt-12 {
  margin-top: 12px;
}

.pwiz-cancel-btn {
  width: auto !important;
  padding: 0 16px !important;
  border-radius: var(--an-radius-pill) !important;
}

.pwiz-info-callout {
  gap: 8px;
  padding: 10px 12px;
  border-radius: var(--an-radius-sm);
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  color: var(--an-text-muted);
  font-size: 13px;
  line-height: 1.45;
}

.pwiz-info-callout md-icon {
  flex-shrink: 0;
  font-size: 18px;
  color: var(--an-text-muted);
}

.pwiz-punch-no-expiry {
  margin: 0 0 10px;
}

.wf-promo-count-display {
  font-size: 30px;
  font-weight: 700;
  color: var(--an-primary, #497fe4);
  line-height: 1;
  padding: 8px 0;
}

.wf-promo-code-block {
  gap: 4px;
}

.wf-promo-qr-block {
  gap: 4px;
}
.wf-promo-qr-block img {
  max-height: 80px;
}

.wf-promo-pending-label {
  font-size: 12px;
  color: var(--an-text-muted);
}

.promo-type-badge {
  margin: 4px 0 6px;
}
.promo-type-badge .promo-type-badge-inner {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 11px;
  font-weight: 600;
  padding: 2px 9px 2px 7px;
  border-radius: 20px;
  border: 1px solid;
  background: color-mix(in srgb, currentColor 13%, transparent);
  border-color: color-mix(in srgb, currentColor 33%, transparent);
  letter-spacing: 0.3px;
  text-transform: uppercase;
  white-space: nowrap;
}
.promo-type-badge .promo-type-badge-inner i {
  font-size: 12px;
  line-height: 1;
}

.promo-type-badge-inline {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  font-weight: 600;
  margin-bottom: 3px;
  line-height: 1.4;
}
.promo-type-badge-inline i {
  font-size: 13px;
}

.pwiz-step1-heading {
  margin-bottom: 20px;
}
.pwiz-step1-heading .pwiz-step1-title {
  font-size: 17px;
  font-weight: 700;
  color: var(--an-text);
  margin: 0 0 4px;
}
.pwiz-step1-heading .pwiz-step1-sub {
  font-size: 13px;
  color: var(--an-text-muted);
  margin: 0;
}

.pwiz-no-selection-hint {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--an-text-faint);
  font-size: 12px;
  justify-content: center;
  padding: 12px 0 4px;
}
.pwiz-no-selection-hint md-icon {
  font-size: 15px !important;
  width: 15px !important;
  height: 15px !important;
  color: var(--an-text-faint) !important;
}

.pwiz-active-tpl-banner {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 14px;
  border-radius: 10px;
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.07);
  border: 1px solid rgba(var(--an-primary-rgb, 73, 127, 228), 0.2);
  margin-bottom: 4px;
}
.pwiz-active-tpl-banner .pwiz-active-tpl-icon {
  width: 36px;
  height: 36px;
  border-radius: 9px;
  background: var(--an-primary, #497fe4);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.pwiz-active-tpl-banner .pwiz-active-tpl-icon md-icon {
  font-size: 18px !important;
  width: 18px !important;
  height: 18px !important;
  color: #fff !important;
}
.pwiz-active-tpl-banner .pwiz-active-tpl-info {
  flex: 1;
  min-width: 0;
}
.pwiz-active-tpl-banner .pwiz-active-tpl-info .pwiz-active-tpl-label {
  font-size: 13px;
  font-weight: 700;
  color: var(--an-primary, #497fe4);
}
.pwiz-active-tpl-banner .pwiz-active-tpl-info .pwiz-active-tpl-hint {
  font-size: 11.5px;
  color: var(--an-text-muted);
}
.pwiz-active-tpl-banner .pwiz-change-btn {
  color: var(--an-primary, #497fe4) !important;
  width: 32px !important;
  height: 32px !important;
  min-height: 32px !important;
}
.pwiz-active-tpl-banner .pwiz-change-btn md-icon {
  font-size: 16px !important;
  color: var(--an-primary, #497fe4) !important;
}

.pwiz-switch-row {
  display: flex;
  align-items: center;
  margin: 0;
}
.pwiz-switch-row md-switch {
  margin: 0 !important;
}

.pwiz-toggle-row {
  display: flex;
  align-items: center;
  padding: 6px 0;
}
.pwiz-toggle-row md-switch, .pwiz-toggle-row md-checkbox {
  margin: 0 !important;
}

.pwiz-toggle-grid {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin-top: 6px;
}

.pwiz-stat-row {
  margin: 12px 0 4px;
}

.pwiz-stat-card {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  padding: 10px 20px;
  border-radius: 10px;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
}
.pwiz-stat-card .pwiz-stat-val {
  font-size: 28px;
  font-weight: 800;
  color: var(--an-primary, #497fe4);
  line-height: 1;
}
.pwiz-stat-card .pwiz-stat-label {
  font-size: 11px;
  color: var(--an-text-muted);
  margin-top: 4px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-weight: 600;
}

.pwiz-code-block {
  margin-top: 14px;
  padding: 14px 16px;
  border-radius: 10px;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
}
.pwiz-code-block .pwiz-code-label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--an-text-muted);
  margin-bottom: 10px;
}
.pwiz-code-block .pwiz-code-input input {
  font-family: "SF Mono", "Fira Code", monospace !important;
  letter-spacing: 0.14em;
  font-weight: 700;
  font-size: 15px;
}

.pwiz-qr-wrap {
  display: flex;
  align-items: center;
  gap: 4px;
}
.pwiz-qr-wrap img {
  border-radius: 6px;
  border: 1px solid var(--an-border);
}

.pwiz-discount-type-selector {
  display: flex;
  gap: 6px;
  margin-top: 4px;
}

.pwiz-type-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  border-radius: 8px;
  border: 1.5px solid var(--an-border);
  background: var(--an-surface);
  color: var(--an-text-muted);
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
  user-select: none;
}
.pwiz-type-chip md-icon {
  font-size: 15px !important;
  width: 15px !important;
  height: 15px !important;
  color: inherit !important;
}
.pwiz-type-chip:hover {
  border-color: var(--an-border-strong);
  color: var(--an-text);
}
.pwiz-type-chip.active {
  border-color: var(--an-primary, #497fe4);
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.1);
  color: var(--an-primary, #497fe4);
  font-weight: 600;
}

.pwiz-buy-n-visual {
  display: flex;
  align-items: flex-end;
  gap: 16px;
  padding: 12px 16px;
  border-radius: 10px;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  margin-bottom: 10px;
}

.pwiz-buy-n-block {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 1;
}
.pwiz-buy-n-block md-input-container {
  width: 100%;
  margin: 0 !important;
}
.pwiz-buy-n-block md-input-container input {
  text-align: center;
  font-size: 22px !important;
  font-weight: 800 !important;
  color: var(--an-text) !important;
}

.pwiz-buy-n-sep {
  display: flex;
  align-items: center;
  padding-bottom: 20px;
  color: var(--an-text-muted);
}
.pwiz-buy-n-sep md-icon {
  font-size: 20px !important;
  width: 20px !important;
  height: 20px !important;
  color: var(--an-text-muted) !important;
}

.pwiz-buy-n-caption {
  font-size: 11px;
  font-weight: 600;
  color: var(--an-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin-top: 6px;
}
.pwiz-buy-n-caption--free {
  color: #22c55e;
}

.pwiz-tier-table {
  border: 1px solid var(--an-border);
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 10px;
}

.pwiz-tier-header {
  display: flex;
  align-items: center;
  padding: 8px 12px;
  background: var(--an-surface2);
  border-bottom: 1px solid var(--an-border);
}

.pwiz-tier-row {
  display: flex;
  align-items: center;
  padding: 4px 12px;
  border-bottom: 1px solid var(--an-border-light);
  transition: background 0.12s ease;
}
.pwiz-tier-row:last-child {
  border-bottom: none;
}
.pwiz-tier-row:hover {
  background: var(--an-bg-subtle);
}

.pwiz-tier-cell {
  flex: 1;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 4px;
}
.pwiz-tier-cell--label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--an-text-muted);
}
.pwiz-tier-cell--action {
  flex: 0 0 40px;
  justify-content: center;
}
.pwiz-tier-cell md-input-container {
  margin: 0 !important;
  padding: 0 !important;
  flex: 1;
}
.pwiz-tier-cell md-input-container input {
  font-size: 15px;
  font-weight: 600;
}

.pwiz-tier-pct {
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text-muted);
  flex-shrink: 0;
}

.pwiz-tier-remove {
  width: 30px !important;
  height: 30px !important;
  min-height: 30px !important;
  color: var(--an-rose, #F43F5E) !important;
  opacity: 0.6;
  transition: opacity 0.15s ease;
  margin: 0 !important;
}
.pwiz-tier-remove:hover {
  opacity: 1;
}
.pwiz-tier-remove md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  color: var(--an-rose, #F43F5E) !important;
}

.pwiz-tier-empty {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 20px;
  color: var(--an-text-faint);
  font-size: 13px;
}
.pwiz-tier-empty md-icon {
  font-size: 18px !important;
  width: 18px !important;
  height: 18px !important;
  color: var(--an-text-faint) !important;
}

.pwiz-add-tier-btn {
  border: 1.5px dashed var(--an-border-strong) !important;
  border-radius: 8px !important;
  color: var(--an-primary, #497fe4) !important;
  font-size: 13px !important;
  padding: 0 14px !important;
  min-height: 36px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px;
  background: transparent !important;
  transition: background 0.15s ease, border-color 0.15s ease !important;
}
.pwiz-add-tier-btn:hover {
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.06) !important;
  border-color: var(--an-primary, #497fe4) !important;
}
.pwiz-add-tier-btn md-icon {
  font-size: 15px !important;
  width: 15px !important;
  height: 15px !important;
  color: var(--an-primary, #497fe4) !important;
}

.pwiz-outline-btn {
  border: 1px solid var(--an-border-strong) !important;
  border-radius: 8px !important;
  color: var(--an-text) !important;
  background: var(--an-surface) !important;
  font-size: 13px !important;
  min-height: 34px !important;
  padding: 0 12px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  transition: background 0.12s ease, border-color 0.12s ease !important;
}
.pwiz-outline-btn:hover {
  background: var(--an-surface2) !important;
  border-color: var(--an-border-hover) !important;
}
.pwiz-outline-btn md-icon {
  font-size: 15px !important;
  width: 15px !important;
  height: 15px !important;
}

.pwiz-danger-btn {
  color: var(--an-rose, #F43F5E) !important;
  border: 1px solid rgba(244, 63, 94, 0.25) !important;
  border-radius: 8px !important;
  background: rgba(244, 63, 94, 0.06) !important;
  font-size: 12px !important;
  min-height: 32px !important;
  padding: 0 10px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
}
.pwiz-danger-btn md-icon {
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  color: var(--an-rose, #F43F5E) !important;
}

.pwiz-danger-icon {
  color: var(--an-rose, #F43F5E) !important;
  opacity: 0.6;
}
.pwiz-danger-icon:hover {
  opacity: 1;
}
.pwiz-danger-icon md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  color: var(--an-rose, #F43F5E) !important;
}

.pwiz-scope-items {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.pwiz-scope-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 7px 10px;
  border-radius: 8px;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  transition: background 0.12s ease;
}
.pwiz-scope-item:hover {
  background: var(--an-surface3);
}

.pwiz-scope-thumb {
  width: 32px;
  height: 32px;
  border-radius: 6px;
  object-fit: cover;
  flex-shrink: 0;
  background: var(--an-border);
}

.pwiz-scope-item-name {
  flex: 1;
  font-size: 13px;
  font-weight: 500;
  color: var(--an-text);
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.pwiz-scope-item-type {
  color: var(--an-text-muted);
  font-weight: 400;
  font-size: 12px;
}

.pwiz-scope-remove {
  flex-shrink: 0;
  width: 28px !important;
  height: 28px !important;
  min-height: 28px !important;
  color: var(--an-text-muted) !important;
  margin: 0 !important;
  opacity: 0.5;
  transition: opacity 0.15s ease, color 0.15s ease !important;
}
.pwiz-scope-remove:hover {
  opacity: 1;
  color: var(--an-rose, #F43F5E) !important;
}
.pwiz-scope-remove md-icon {
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
}

.pwiz-scope-empty {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 16px 12px;
  color: var(--an-text-faint);
  font-size: 13px;
  border: 1.5px dashed var(--an-border);
  border-radius: 8px;
}
.pwiz-scope-empty md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  color: var(--an-text-faint) !important;
}

.pwiz-schedule-grid {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin-bottom: 16px;
}

.pwiz-schedule-row {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 6px 8px;
  border-radius: 8px;
  transition: background 0.12s ease;
}
.pwiz-schedule-row:hover {
  background: var(--an-bg-subtle);
}

.pwiz-schedule-day {
  flex: 0 0 120px;
  display: flex;
  align-items: center;
  padding-top: 10px;
}
.pwiz-schedule-day md-checkbox {
  margin: 0 !important;
}

.pwiz-schedule-times {
  flex: 1;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px;
}

.pwiz-time-input {
  width: 80px !important;
  margin: 0 !important;
  padding: 0 !important;
}
.pwiz-time-input input {
  font-size: 13px;
}

.pwiz-time-sep {
  color: var(--an-text-muted);
  font-weight: 600;
  font-size: 14px;
  padding: 0 2px;
  padding-top: 12px;
}

.pwiz-time-add,
.pwiz-time-remove {
  width: 28px !important;
  height: 28px !important;
  min-height: 28px !important;
  margin: 0 !important;
  margin-top: 10px !important;
}
.pwiz-time-add md-icon,
.pwiz-time-remove md-icon {
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
}

.pwiz-time-add {
  color: var(--an-primary, #497fe4) !important;
}

.pwiz-time-remove {
  color: var(--an-rose, #F43F5E) !important;
}

.pwiz-schedule-extra {
  display: flex;
  align-items: center;
  gap: 4px;
}

.pwiz-restrict-section {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--an-border-light);
}

.pwiz-restrict-header md-checkbox {
  margin: 0 !important;
}

.pwiz-restrict-list {
  max-height: 180px;
  overflow-y: auto;
  margin-top: 8px;
  padding: 8px 12px;
  border-radius: 8px;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
}
.pwiz-restrict-list .pwiz-restrict-item md-checkbox {
  margin: 4px 0 !important;
}

.pwiz-targeting-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.1);
  color: var(--an-primary, #497fe4);
  padding: 2px 8px;
  border-radius: 20px;
  margin-right: 8px;
}

.pwiz-targeting-block {
  padding: 10px 0;
  border-bottom: 1px solid var(--an-border-light);
}
.pwiz-targeting-block:last-child {
  border-bottom: none;
}

.pwiz-targeting-row {
  display: flex;
  align-items: center;
  gap: 12px;
}
.pwiz-targeting-row md-switch {
  margin: 0 !important;
  flex-shrink: 0;
}

.pwiz-targeting-icon {
  width: 36px;
  height: 36px;
  border-radius: 9px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.pwiz-targeting-icon md-icon {
  font-size: 18px !important;
  width: 18px !important;
  height: 18px !important;
  color: #fff !important;
}
.pwiz-targeting-icon--gold {
  background: linear-gradient(135deg, #f59e0b, #d97706);
}
.pwiz-targeting-icon--blue {
  background: linear-gradient(135deg, #3b82f6, #2563eb);
}

.pwiz-targeting-content {
  flex: 1;
  min-width: 0;
}

.pwiz-targeting-title {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
}

.pwiz-targeting-hint {
  font-size: 11.5px;
  color: var(--an-text-muted);
  margin-top: 2px;
  line-height: 1.4;
}

.pwiz-targeting-tiers {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid var(--an-border-light);
}
.pwiz-targeting-tiers .pwiz-targeting-tiers-label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--an-text-muted);
  margin-bottom: 8px;
}

.pwiz-tier-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 6px;
}

.pwiz-tier-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 12px;
  border-radius: 20px;
  border: 1.5px solid var(--an-border);
  background: var(--an-surface2);
  color: var(--an-text-muted);
  font-size: 12.5px;
  font-weight: 500;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
  user-select: none;
}
.pwiz-tier-chip:hover {
  border-color: var(--an-border-strong);
  color: var(--an-text);
}
.pwiz-tier-chip.active {
  border-color: #f59e0b;
  background: rgba(245, 158, 11, 0.1);
  color: #d97706;
  font-weight: 600;
}

.pwiz-translation-card {
  padding: 12px;
  border-radius: 8px;
  border: 1px solid var(--an-border);
  background: var(--an-surface2);
  margin-bottom: 8px;
}

.pwiz-section-hint {
  color: var(--an-text-muted);
  font-size: 12px;
  margin: 0 0 12px;
  line-height: 1.5;
}

.pwiz-back-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  color: var(--an-text-muted) !important;
  font-size: 13px !important;
}
.pwiz-back-btn md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
}

.pwiz-publish-btn {
  background: linear-gradient(135deg, #22c55e 0%, #16a34a 100%) !important;
  color: #fff !important;
}
.pwiz-publish-btn:hover {
  background: linear-gradient(135deg, #16a34a 0%, #15803d 100%) !important;
}
.pwiz-publish-btn md-icon {
  color: #fff !important;
}
.pwiz-publish-btn.wf-save-btn[disabled] {
  background: var(--an-surface2) !important;
  color: var(--an-text-faint) !important;
  box-shadow: none;
}
.pwiz-publish-btn.wf-save-btn[disabled] md-icon, .pwiz-publish-btn.wf-save-btn[disabled] span {
  color: var(--an-text-faint) !important;
}

.pwiz-block-reason {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  max-width: 420px;
  margin-right: 8px;
  font-size: 12px;
  line-height: 1.35;
  color: var(--an-text-muted);
}
.pwiz-block-reason md-icon {
  flex-shrink: 0;
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  min-width: 16px;
  min-height: 16px;
  color: #d97706 !important;
}

.pwiz-toolbar-icon {
  margin-right: 10px;
  color: var(--an-primary) !important;
}

.pwiz-switch-row--offset {
  padding-left: 4px;
}

.pwiz-bngm-discount-row {
  margin-top: 8px;
}

.pwiz-toggle-row--spaced {
  margin-bottom: 12px;
}

.pwiz-scope-search-row {
  margin-bottom: 12px;
}

.pwiz-tab-folder-icon {
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  margin-right: 4px;
}

.pwiz-tab-body-inner {
  padding: 12px 0 8px;
}

.pwiz-group-controls-row {
  margin-bottom: 8px;
}

.pwiz-limit-row {
  margin-top: 8px;
}

.pwiz-pending-label {
  color: var(--an-text-muted);
  font-size: 12px;
}

.pwiz-targeting-lock-icon {
  font-size: 12px !important;
  width: 12px !important;
  height: 12px !important;
}

.pwiz-segment-select {
  margin-top: 8px;
}

.pwiz-membership-seg {
  display: flex;
  gap: 8px;
  margin-top: 12px;
  flex-wrap: wrap;
}
.pwiz-membership-seg__opt {
  flex: 1 1 0;
  min-width: 96px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding: 13px 10px;
  border-radius: 12px;
  border: 1.5px solid var(--an-border-light);
  background: var(--an-surface2, #f7f8fa);
  color: var(--an-text-muted);
  font-size: 12.5px;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  cursor: pointer;
  outline: none;
  -webkit-appearance: none;
  appearance: none;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease, box-shadow 0.15s ease, transform 0.1s ease;
}
.pwiz-membership-seg__opt md-icon, .pwiz-membership-seg__opt i {
  font-size: 22px !important;
  width: 22px;
  height: 22px;
  color: var(--an-text-muted);
  transition: color 0.15s ease;
}
.pwiz-membership-seg__opt:hover:not(.is-active) {
  border-color: var(--an-border-strong, rgba(0, 0, 0, 0.16));
  background: var(--an-surface, #fff);
}
.pwiz-membership-seg__opt:active {
  transform: scale(0.97);
}
.pwiz-membership-seg__opt.is-active {
  border-color: var(--seg-accent, #497fe4);
  background: var(--seg-accent-soft, rgba(73, 127, 228, 0.1));
  color: var(--seg-accent, #497fe4);
  box-shadow: 0 3px 10px var(--seg-accent-shadow, rgba(73, 127, 228, 0.18));
}
.pwiz-membership-seg__opt.is-active md-icon, .pwiz-membership-seg__opt.is-active i {
  color: var(--seg-accent, #497fe4);
}
.pwiz-membership-seg__opt--any.is-active {
  --seg-accent: #6b7280;
  --seg-accent-soft: rgba(107, 114, 128, .12);
  --seg-accent-shadow: rgba(107, 114, 128, .2);
}
.pwiz-membership-seg__opt--member.is-active {
  --seg-accent: #d97706;
  --seg-accent-soft: rgba(245, 158, 11, .15);
  --seg-accent-shadow: rgba(245, 158, 11, .26);
}
.pwiz-membership-seg__opt--non_member.is-active {
  --seg-accent: #2563eb;
  --seg-accent-soft: rgba(59, 130, 246, .12);
  --seg-accent-shadow: rgba(59, 130, 246, .22);
}

.pwiz-buy-n-caption--free {
  color: #22c55e;
  font-weight: 700;
}

.pwiz-targeting-icon--gold {
  background: linear-gradient(135deg, #f59e0b, #d97706);
}

.pwiz-targeting-icon--blue {
  background: linear-gradient(135deg, #3b82f6, #2563eb);
}

.pwiz-tier-cell--label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--an-text-muted);
}

.pwiz-tier-cell--action {
  flex: 0 0 40px;
  justify-content: center;
}

.pwiz-tier-input {
  margin: 0 !important;
  padding: 0 !important;
  width: 100%;
}
.pwiz-tier-input input {
  font-size: 15px;
  font-weight: 600;
  color: var(--an-text);
}

:root {
  --ptype-blue: #3b82f6;
  --ptype-emerald: #10b981;
  --ptype-violet: #8b5cf6;
  --ptype-rose: #f43f5e;
  --ptype-amber: #f59e0b;
  --ptype-cyan: #0891b2;
  --ptype-teal: #0d9488;
  --ptype-indigo: #6366f1;
  --ptype-yellow: #ca8a04;
  --ptype-orange: #ea580c;
  --ptype-sky: #0284c7;
  --ptype-purple: #a855f7;
  --ptype-pink: #db2777;
  --ptype-red: #ef4444;
  --ptype-lime: #65a30d;
  --ptype-warmgold: #d4a017;
}

.waitry-dark-theme {
  --ptype-blue: #60a5fa;
  --ptype-emerald: #34d399;
  --ptype-violet: #a78bfa;
  --ptype-rose: #fb7185;
  --ptype-amber: #fbbf24;
  --ptype-cyan: #22d3ee;
  --ptype-teal: #2dd4bf;
  --ptype-indigo: #818cf8;
  --ptype-yellow: #facc15;
  --ptype-orange: #fb923c;
  --ptype-sky: #38bdf8;
  --ptype-purple: #c084fc;
  --ptype-pink: #f472b6;
  --ptype-red: #f87171;
  --ptype-lime: #a3e635;
  --ptype-warmgold: #e8b84a;
}

.pwiz-punch-preview {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 16px 0 20px;
}

.pwiz-punch-dot-track {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
}

.pwiz-punch-dot {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border: 2.5px solid var(--ptype-warmgold);
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.2s, transform 0.2s;
}
.pwiz-punch-dot:first-child {
  background: var(--ptype-warmgold);
  transform: scale(1.1);
}

.pwiz-punch-preview-label {
  font-size: 12px;
  color: var(--an-text-muted);
  text-align: center;
}
.pwiz-punch-preview-label strong {
  color: var(--ptype-warmgold);
  font-weight: 700;
  margin-left: 4px;
}

.pwiz-punch-controls {
  margin-top: 8px;
}

.grecaptcha-badge {
  left: 15px;
  right: initial !important;
  width: 70px !important;
  overflow: hidden !important;
  transition: all 0.3s ease !important;
}
.grecaptcha-badge:hover {
  width: 256px !important;
}

body:not(.signup-bk) .grecaptcha-badge {
  display: none !important;
}

.iconoir-gift-solid::before {
  -webkit-mask-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='24' height='24' stroke-width='1.5' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20 12V21.4C20 21.7314 19.7314 22 19.4 22H4.6C4.26863 22 4 21.7314 4 21.4V12' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M21.4 7H2.6C2.26863 7 2 7.26863 2 7.6V11.4C2 11.7314 2.26863 12 2.6 12H21.4C21.7314 12 22 11.7314 22 11.4V7.6C22 7.26863 21.7314 7 21.4 7Z' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12 22V7' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12 7H7.5C6.83696 7 6.20107 6.73661 5.73223 6.26777C5.26339 5.79893 5 5.16304 5 4.5C5 3.83696 5.26339 3.20107 5.73223 2.73223C6.20107 2.26339 6.83696 2 7.5 2C11 2 12 7 12 7Z' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12 7H16.5C17.163 7 17.7989 6.73661 18.2678 6.26777C18.7366 5.79893 19 5.16304 19 4.5C19 3.83696 18.7366 3.20107 18.2678 2.73223C17.7989 2.26339 17.163 2 16.5 2C13 2 12 7 12 7Z' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml;charset=utf-8,%3Csvg width='24' height='24' stroke-width='1.5' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20 12V21.4C20 21.7314 19.7314 22 19.4 22H4.6C4.26863 22 4 21.7314 4 21.4V12' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M21.4 7H2.6C2.26863 7 2 7.26863 2 7.6V11.4C2 11.7314 2.26863 12 2.6 12H21.4C21.7314 12 22 11.7314 22 11.4V7.6C22 7.26863 21.7314 7 21.4 7Z' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12 22V7' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12 7H7.5C6.83696 7 6.20107 6.73661 5.73223 6.26777C5.26339 5.79893 5 5.16304 5 4.5C5 3.83696 5.26339 3.20107 5.73223 2.73223C6.20107 2.26339 6.83696 2 7.5 2C11 2 12 7 12 7Z' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12 7H16.5C17.163 7 17.7989 6.73661 18.2678 6.26777C18.7366 5.79893 19 5.16304 19 4.5C19 3.83696 18.7366 3.20107 18.2678 2.73223C17.7989 2.26339 17.163 2 16.5 2C13 2 12 7 12 7Z' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

#moduleLoyalty .graphContainer .flex.chart md-icon, #moduleLoyalty .graphContainer .flex.tabledata md-icon {
  font-size: 8rem;
  height: 8rem;
  width: 8rem;
}
#moduleLoyalty .graphContainer .flex.chart, #moduleLoyalty .graphContainer .flex.tabledata {
  min-height: 250px;
}
#moduleLoyalty .statValue > md-progress-circular {
  margin-top: 21px;
  margin-bottom: 21px;
}
#moduleLoyalty .table-avatar {
  width: 30px;
  height: 30px;
  border-radius: 100%;
  margin-top: -10px;
  margin-bottom: -10px;
  margin-right: 15px;
}

.promoFree .md-datepicker-input-container {
  width: 70%;
}

.kpi {
  position: relative;
}
.kpi .metric {
  font-size: 30px;
  margin-top: 10px;
  margin-bottom: 10px;
  position: relative;
  line-height: 30px;
}
.kpi .metric.metric-progress {
  padding-left: 40px;
}
.kpi .metric.metric-progress md-progress-circular {
  position: absolute;
  left: 0;
  top: 0px;
}
.kpi .metric.metric-progress.large {
  padding-left: 60px;
  font-size: 40px;
  line-height: 46px;
}
.kpi .metric md-icon {
  font-size: 30px;
  margin-top: -10px;
  margin-right: 5px;
}
.kpi .legend {
  font-size: 14px;
  text-transform: uppercase;
  color: rgba(0, 0, 0, 0.5);
}
.waitry-dark-theme .kpi .legend {
  color: var(--an-text-faint);
}
.kpi .description {
  font-size: 12px;
  color: rgba(0, 0, 0, 0.8);
}
.waitry-dark-theme .kpi .description {
  color: var(--an-text);
}
.kpi .chart {
  height: 180px;
  margin-top: 20px;
}
.kpi md-button, .kpi .md-button {
  margin: 0;
}
.kpi .md-avatar {
  width: 40px;
}
.kpi .rating md-icon {
  color: #e6b43e;
  font-size: 16px;
  width: 16px;
  height: 16px;
  min-width: 16px;
  min-height: 16px;
}
.kpi p {
  font-size: 13px;
  color: #444;
}
.waitry-dark-theme .kpi p {
  color: var(--an-text-muted);
}

#loyaltyOverviewModule {
  padding: 0;
}
#loyaltyOverviewModule:has(.loy-empty-state:not(.ng-hide)) {
  padding-bottom: 0 !important;
}

.loy-skeleton-wrap {
  padding: 20px;
}
.loy-skeleton-wrap .loy-hero-skeleton {
  height: 160px;
  border-radius: var(--an-radius);
  background: var(--an-surface2);
  margin-bottom: 20px;
}
.loy-skeleton-wrap .loy-kpi-skeleton-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.loy-skeleton-wrap .loy-kpi-skeleton-row .loy-kpi-skeleton {
  height: 100px;
  border-radius: var(--an-radius);
  background: var(--an-surface2);
}

.loy-empty-state {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1;
  padding: 40px 20px;
  margin: 0 !important;
}

.loy-empty-inner {
  text-align: center;
  max-width: 560px;
}

.loy-empty-icon-wrap {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 160px;
  height: 160px;
  margin-bottom: 32px;
}

.loy-empty-rings {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.loy-ring {
  position: absolute;
  border-radius: 50%;
  border: 1.5px solid var(--an-rose);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  animation: loy-ring-pulse 3s ease-in-out infinite;
}
.loy-ring.loy-ring--1 {
  width: 80px;
  height: 80px;
  opacity: 0.35;
  animation-delay: 0s;
}
.loy-ring.loy-ring--2 {
  width: 120px;
  height: 120px;
  opacity: 0.2;
  animation-delay: 0.6s;
}
.loy-ring.loy-ring--3 {
  width: 160px;
  height: 160px;
  opacity: 0.1;
  animation-delay: 1.2s;
}

@keyframes loy-ring-pulse {
  0%, 100% {
    transform: translate(-50%, -50%) scale(1);
    opacity: 0.25;
  }
  50% {
    transform: translate(-50%, -50%) scale(1.08);
    opacity: 0.4;
  }
}
.loy-empty-icon {
  font-size: 52px;
  --an-icon-size: 52px;
  color: var(--an-rose);
  display: block;
  position: relative;
  z-index: 1;
  line-height: 1;
}

.loy-empty-headline {
  font-size: 26px;
  font-weight: 800;
  margin: 0 0 12px;
  color: var(--an-text, #111);
  letter-spacing: -0.02em;
}

.loy-empty-sub {
  color: var(--an-text2, #666);
  font-size: 15px;
  margin: 0 0 28px;
  line-height: 1.6;
}

.loy-empty-features {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
  margin-bottom: 32px;
}

.loy-feat-pill {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 7px 14px;
  border-radius: 99px;
  border: 1.5px solid var(--an-border);
  background: var(--an-surface);
  font-size: 13px;
  color: var(--an-text2, #555);
}
.loy-feat-pill i {
  font-size: 16px;
  color: var(--an-rose);
}

.loy-empty-cta {
  background: var(--an-rose) !important;
  color: #fff !important;
  border-radius: 99px !important;
  padding: 0 28px;
  height: 44px;
  font-size: 15px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: transform 0.18s, box-shadow 0.18s;
  box-shadow: 0 4px 20px rgba(232, 0, 50, 0.3);
}
.loy-empty-cta:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 28px rgba(232, 0, 50, 0.4);
}
.loy-empty-cta i {
  font-size: 18px;
}

.loy-dashboard {
  padding: 20px;
}

.loy-hero {
  position: relative;
  border-radius: var(--an-radius);
  background: linear-gradient(135deg, #1a0a0d 0%, #2d0d14 40%, #1a0a0d 100%);
  overflow: hidden;
  margin-bottom: 20px;
  padding: 28px 32px;
}

.loy-hero-glow {
  position: absolute;
  top: -60px;
  left: -60px;
  width: 300px;
  height: 300px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(232, 0, 50, 0.25) 0%, transparent 70%);
  pointer-events: none;
}

.loy-hero-content {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  flex-wrap: wrap;
}

.loy-hero-left {
  display: flex;
  align-items: flex-start;
  gap: 20px;
}

.loy-hero-badge {
  width: 56px;
  height: 56px;
  border-radius: 16px;
  background: rgba(232, 0, 50, 0.2);
  border: 1.5px solid rgba(232, 0, 50, 0.4);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.loy-hero-badge i {
  font-size: 28px;
  width: 28px;
  height: 28px;
  line-height: 28px;
  color: var(--an-rose);
  display: flex !important;
  align-items: center;
  justify-content: center;
}

.loy-hero-text {
  flex: 1;
}

.loy-hero-status {
  margin-bottom: 8px;
}

.loy-status-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 3px 12px 3px 8px;
  border-radius: 99px;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.loy-status-pill.loy-status-pill--active {
  background: rgba(16, 185, 129, 0.15);
  color: #10b981;
  border: 1px solid rgba(16, 185, 129, 0.3);
}
.loy-status-pill.loy-status-pill--inactive {
  background: rgba(255, 255, 255, 0.08);
  color: rgba(255, 255, 255, 0.5);
  border: 1px solid rgba(255, 255, 255, 0.15);
}
.loy-status-pill i {
  font-size: 14px;
}

.loy-hero-name {
  font-size: 26px;
  font-weight: 800;
  color: #fff;
  margin: 0 0 6px;
  letter-spacing: -0.02em;
}

.loy-hero-desc {
  font-size: 14px;
  color: rgba(255, 255, 255, 0.55);
  margin: 0;
  max-width: 460px;
}

.loy-hero-right {
  display: flex;
  align-items: center;
  gap: 24px;
}

.loy-welcome-pts {
  text-align: center;
}
.loy-welcome-pts .loy-welcome-pts-value {
  font-size: 40px;
  font-weight: 900;
  color: var(--an-rose);
  line-height: 1;
  letter-spacing: -0.03em;
}
.loy-welcome-pts .loy-welcome-pts-label {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: rgba(255, 255, 255, 0.4);
  margin-top: 4px;
}

.loy-btn-toggle {
  background: rgba(255, 255, 255, 0.08) !important;
  color: rgba(255, 255, 255, 0.7) !important;
  border: 1.5px solid rgba(255, 255, 255, 0.15) !important;
  border-radius: var(--an-radius-sm) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  transition: all 0.18s;
}
.loy-btn-toggle:hover {
  background: rgba(232, 0, 50, 0.2) !important;
  border-color: rgba(232, 0, 50, 0.4) !important;
  color: #fff !important;
}
.loy-btn-toggle i {
  font-size: 16px;
}

.loy-kpi-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin-bottom: 20px;
}
@media (max-width: 1024px) {
  .loy-kpi-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 600px) {
  .loy-kpi-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-bottom: 12px;
  }
}

.loy-kpi-card {
  background: var(--an-surface);
  border: 1.5px solid var(--an-border);
  border-radius: var(--an-radius);
  padding: 20px;
  display: flex;
  gap: 16px;
  align-items: flex-start;
  transition: transform 0.18s, box-shadow 0.18s, border-color 0.18s;
}
.loy-kpi-card.loy-kpi-card--clickable {
  cursor: pointer;
}
.loy-kpi-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.07);
  border-color: var(--an-border-strong);
}

.loy-kpi-icon-wrap {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.loy-kpi-icon-wrap i {
  font-size: 22px;
}

.loy-kpi-card--members .loy-kpi-icon-wrap {
  background: rgba(99, 102, 241, 0.1);
}
.loy-kpi-card--members .loy-kpi-icon-wrap i {
  color: #6366f1;
}

.loy-kpi-card--points .loy-kpi-icon-wrap {
  background: rgba(245, 158, 11, 0.1);
}
.loy-kpi-card--points .loy-kpi-icon-wrap i {
  color: #f59e0b;
}

.loy-kpi-card--redeems .loy-kpi-icon-wrap {
  background: rgba(232, 0, 50, 0.1);
}
.loy-kpi-card--redeems .loy-kpi-icon-wrap i {
  color: var(--an-rose);
}

.loy-kpi-card--rate .loy-kpi-icon-wrap {
  background: rgba(16, 185, 129, 0.1);
}
.loy-kpi-card--rate .loy-kpi-icon-wrap i {
  color: #10b981;
}

.loy-kpi-body {
  flex: 1;
}

.loy-kpi-value {
  font-size: 28px;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: var(--an-text, #111);
  line-height: 1;
  margin-bottom: 4px;
}

.loy-kpi-label {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--an-text2, #888);
  margin-bottom: 8px;
}

.loy-kpi-sub {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  color: var(--an-text2, #888);
}
.loy-kpi-sub i {
  font-size: 14px;
}

.loy-bottom-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
@media (max-width: 800px) {
  .loy-bottom-row {
    grid-template-columns: 1fr;
  }
}

.loy-detail-card, .loy-recent-card {
  background: var(--an-surface);
  border: 1.5px solid var(--an-border);
  border-radius: var(--an-radius);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.loy-card-header {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 16px 20px;
  border-bottom: 1px solid var(--an-border);
}
.loy-card-header i {
  font-size: 18px;
  color: var(--an-rose);
}
.loy-card-header h3 {
  margin: 0;
  font-size: 15px;
  font-weight: 700;
}

.loy-view-all-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  font-size: 13px !important;
  color: var(--an-rose) !important;
  margin: 0 !important;
}
.loy-view-all-btn i {
  font-size: 15px;
}

.loy-card-body {
  padding: 16px 20px;
  flex: 1;
}

.loy-card-footer {
  padding: 12px 20px;
  border-top: 1px solid var(--an-border);
}

.loy-action-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-size: 13px !important;
  border: 1.5px solid var(--an-border) !important;
  border-radius: var(--an-radius-sm) !important;
}
.loy-action-btn i {
  font-size: 16px;
  color: var(--an-rose);
}

.loy-detail-item {
  margin-bottom: 14px;
}
.loy-detail-item:last-child {
  margin-bottom: 0;
}

.loy-detail-label {
  display: block;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--an-text2, #888);
  margin-bottom: 4px;
}

.loy-detail-value {
  font-size: 14px;
  color: var(--an-text, #111);
  line-height: 1.5;
}

.loy-cta-preview {
  display: inline-block;
  padding: 5px 16px;
  border-radius: 99px;
  background: rgba(232, 0, 50, 0.08);
  color: var(--an-rose);
  font-size: 13px;
  font-weight: 600;
  border: 1px solid rgba(232, 0, 50, 0.2);
}

.loy-redeem-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px solid var(--an-border);
}
.loy-redeem-row:last-child {
  border-bottom: none;
}

.loy-redeem-avatar {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--an-surface2);
  border: 1.5px solid var(--an-border);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.loy-redeem-avatar i {
  font-size: 18px;
  color: var(--an-text2, #888);
}

.loy-redeem-info {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.loy-redeem-info .loy-redeem-member {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text, #111);
}
.loy-redeem-info .loy-redeem-item {
  font-size: 12px;
  color: var(--an-text2, #888);
}

.loy-redeem-right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
}

.loy-redeem-pts {
  font-size: 13px;
  font-weight: 700;
  color: var(--an-rose);
}

.loy-redeem-status {
  font-size: 11px;
  padding: 2px 8px;
  border-radius: 99px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.loy-redeem-status.loy-status--delivered {
  background: rgba(16, 185, 129, 0.1);
  color: #10b981;
}
.loy-redeem-status.loy-status--accepted {
  background: rgba(59, 130, 246, 0.1);
  color: #3b82f6;
}
.loy-redeem-status.loy-status--request {
  background: rgba(245, 158, 11, 0.1);
  color: #f59e0b;
}
.loy-redeem-status.loy-status--canceled {
  background: rgba(156, 163, 175, 0.1);
  color: #9ca3af;
}

.loy-card-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 32px 20px;
}
.loy-card-empty i {
  font-size: 32px;
  color: var(--an-border-strong);
  margin-bottom: 8px;
}
.loy-card-empty p {
  font-size: 13px;
  color: var(--an-text2, #888);
  margin: 0;
}

.loyalty-program-form-dialog {
  background: var(--an-surface) !important;
  border-radius: var(--an-radius) !important;
  overflow: hidden;
  max-height: 90vh !important;
  display: flex !important;
  flex-direction: column !important;
}

.lpf-section {
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.lpf-section .wf-section-header {
  margin-bottom: 0;
}

.loyalty-form-toolbar {
  background: var(--an-surface) !important;
  color: var(--an-text, #111) !important;
  border-bottom: 1.5px solid var(--an-border) !important;
  box-shadow: none !important;
}

.loyalty-form-title-wrap {
  display: flex;
  align-items: center;
  gap: 10px;
}
.loyalty-form-title-wrap .loyalty-form-icon {
  font-size: 22px;
  color: var(--an-rose);
}
.loyalty-form-title-wrap h2 {
  margin: 0;
  font-size: 17px;
  font-weight: 700;
}

.loyalty-form-actions {
  border-top: 1.5px solid var(--an-border) !important;
  padding: 12px 20px !important;
}

.loy-dashboard .loyalty-form-body,
.loyalty-form-body {
  padding: 24px 28px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.lpf-field-group {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.lpf-field-group.lpf-field-group--half {
  flex: 1;
}
.lpf-field-group.lpf-field-group--third {
  flex: 1;
  min-width: 0;
}

.lpf-input-with-unit {
  position: relative;
  display: flex;
  align-items: center;
}
.lpf-input-with-unit .lpf-input {
  padding-right: 36px;
}

.lpf-unit {
  position: absolute;
  right: 12px;
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text-faint);
  pointer-events: none;
  letter-spacing: 0.3px;
}

.lpf-color-row {
  display: flex;
  align-items: center;
  gap: var(--space-md);
}

.lpf-color-swatch {
  position: relative;
  width: 38px;
  height: 38px;
  border-radius: var(--an-radius-sm);
  cursor: pointer;
  box-shadow: inset 0 0 0 2px var(--an-surface), inset 0 0 0 3px var(--an-border-strong), var(--an-shadow-xs);
  overflow: hidden;
  transition: transform var(--duration-fast) var(--ease-spring);
}
.lpf-color-swatch:hover {
  transform: scale(1.05);
}
.lpf-color-swatch input[type=color] {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
  border: 0;
  padding: 0;
}

.lpf-color-hex {
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text-muted);
  letter-spacing: 0.5px;
}

.loy-tier-manual-flag {
  font-size: 11px;
  font-style: italic;
  color: var(--an-text-faint);
}

.loy-tier-progress {
  font-size: 12px;
  color: var(--an-text-muted);
}
.loy-tier-progress strong {
  color: var(--an-text);
}

.loy-tier-history-toggle {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: var(--an-primary);
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  user-select: none;
}
.loy-tier-history-toggle:hover {
  text-decoration: underline;
}
.loy-tier-history-toggle i {
  font-size: 12px;
}

.loy-tier-history {
  margin-top: var(--space-sm);
  padding: var(--space-md);
  background: var(--an-bg-subtle);
  border-radius: var(--an-radius-sm);
  border: 1px solid var(--an-border);
}

.loy-tier-history-empty {
  font-size: 12px;
  font-style: italic;
  color: var(--an-text-faint);
  margin: 0;
  text-align: center;
}

.loy-tier-history-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
}

.loy-tier-history-item {
  display: flex;
  gap: var(--space-md);
  position: relative;
}
.loy-tier-history-item:not(:last-child)::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 16px;
  bottom: -16px;
  width: 1px;
  background: var(--an-border-strong);
}

.loy-tier-history-dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  margin-top: 4px;
  flex-shrink: 0;
  box-shadow: 0 0 0 3px var(--an-bg-subtle), var(--an-shadow-xs);
}

.loy-tier-history-body {
  flex: 1;
  min-width: 0;
}

.loy-tier-history-line {
  display: flex;
  align-items: center;
  gap: var(--space-xs);
  flex-wrap: wrap;
}

.loy-tier-history-prev, .loy-tier-history-cur {
  letter-spacing: 0.2px;
}

.loy-tier-history-prev {
  opacity: 0.7;
}

.loy-tier-history-arrow {
  font-size: 12px;
  --an-icon-size: 12px;
  color: var(--an-text-faint);
}

.loy-tier-history-cleared {
  font-size: 11px;
  font-style: italic;
  color: var(--an-text-faint);
}

.loy-tier-history-meta {
  font-size: 11px;
  color: var(--an-text-muted);
  margin-top: 2px;
}

.loy-tier-history-type {
  font-style: italic;
  color: var(--an-text-faint);
}

.loy-tier-history-reason {
  font-size: 12px;
  color: var(--an-text);
  margin-top: 2px;
}

.lpf-row {
  display: flex;
  gap: 16px;
}

.lpf-label {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text, #333);
  display: flex;
  align-items: center;
  gap: 6px;
}
.lpf-label i {
  font-size: 15px;
  color: var(--an-rose);
}

.lpf-input {
  color: var(--an-text, #111);
  width: 100%;
}
.lpf-input.lpf-textarea {
  resize: vertical;
  min-height: 76px;
}
.lpf-input.lpf-input--number {
  width: 90px;
  text-align: center;
  font-weight: 700;
  font-size: 22px;
}

.lpf-points-row {
  display: flex;
  align-items: center;
  gap: 10px;
}

.lpf-points-badge {
  padding: 4px 12px;
  border-radius: 99px;
  background: rgba(232, 0, 50, 0.08);
  color: var(--an-rose);
  font-size: 13px;
  font-weight: 700;
  border: 1px solid rgba(232, 0, 50, 0.2);
}

.lpf-helper {
  font-size: 12px;
  color: var(--an-text2, #888);
  margin: 0;
}

.lpf-toggle-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 16px;
  border: 1.5px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface2);
}
.lpf-toggle-row .lpf-switch {
  margin: 0;
}

.lpf-toggle-info .lpf-label {
  margin-bottom: 3px;
}
.lpf-toggle-info .lpf-helper {
  margin: 0;
}

.lpf-btn-cancel {
  color: var(--an-text, #111) !important;
  text-transform: none !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  border: 1.5px solid var(--an-border) !important;
  border-radius: var(--an-radius-sm) !important;
  padding: 0 18px !important;
}
.lpf-btn-cancel:hover {
  background: var(--an-surface2) !important;
}

.lpf-btn-save {
  background: var(--an-rose) !important;
  color: #fff !important;
  border-radius: var(--an-radius-sm) !important;
  padding: 0 24px !important;
  font-weight: 600 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  transition: transform 0.18s, box-shadow 0.18s, background-color 0.18s !important;
}
.lpf-btn-save span, .lpf-btn-save i, .lpf-btn-save .md-button-wrapper {
  color: #fff !important;
}
.lpf-btn-save:hover:not([disabled]) {
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(232, 0, 50, 0.3) !important;
}
.lpf-btn-save[disabled] {
  opacity: 1 !important;
  background: #e5e7eb !important;
  color: #9ca3af !important;
  box-shadow: none !important;
  cursor: not-allowed !important;
}
.lpf-btn-save[disabled] span, .lpf-btn-save[disabled] i, .lpf-btn-save[disabled] .md-button-wrapper {
  color: #9ca3af !important;
}

.lpf-datepicker {
  width: 100%;
  background: transparent !important;
  border: none !important;
  border-bottom: 1.5px solid var(--an-border) !important;
  border-radius: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
  height: auto !important;
}
.lpf-datepicker .md-datepicker-input-container {
  width: 100% !important;
  border: none !important;
  background: transparent !important;
  margin-left: 0 !important;
  padding: 0 !important;
  height: auto !important;
}
.lpf-datepicker .md-datepicker-input {
  min-width: 0 !important;
  width: 100% !important;
  background: transparent !important;
  border: none !important;
}
.lpf-datepicker .md-datepicker-button {
  margin-left: 0 !important;
  margin-right: 8px !important;
  color: var(--an-rose) !important;
}

#loyaltyLevelsModule {
  padding: 20px;
}
#loyaltyLevelsModule .ll-loading {
  min-height: 200px;
}
#loyaltyLevelsModule .ll-layout {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
#loyaltyLevelsModule .ll-form-card {
  background: var(--an-surface);
  border: 1.5px solid var(--an-border);
  border-radius: var(--an-radius);
  box-shadow: var(--an-shadow-md);
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 20px;
  animation: ll-fade-in 0.25s ease-out;
}
#loyaltyLevelsModule .ll-form-card .ll-form-card-header {
  display: flex;
  align-items: center;
  gap: 12px;
  border-bottom: 1px solid var(--an-border);
  padding-bottom: 16px;
  margin-bottom: 8px;
}
#loyaltyLevelsModule .ll-form-card .ll-form-card-header md-icon {
  font-size: 24px;
  color: var(--an-rose);
  margin: 0;
}
#loyaltyLevelsModule .ll-form-card .ll-form-card-header h3 {
  margin: 0;
  font-size: 18px;
  font-weight: 700;
  color: var(--an-text);
}
#loyaltyLevelsModule .ll-form-card .ll-form-card-header .md-icon-button {
  margin: 0;
  color: var(--an-text2);
}
#loyaltyLevelsModule .ll-form-card .ll-form-card-header .md-icon-button:hover {
  color: var(--an-rose);
}
#loyaltyLevelsModule .ll-form-card .ll-form {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
#loyaltyLevelsModule .ll-form-card .ll-form-section-header {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--an-text2);
  border-bottom: 1px dashed var(--an-border);
  padding-bottom: 8px;
  margin-top: 12px;
}
#loyaltyLevelsModule .ll-form-card .ll-form-section-header md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  color: var(--an-rose);
  margin: 0;
}
#loyaltyLevelsModule .ll-form-card .ll-form-actions {
  margin-top: 12px;
  border-top: 1px solid var(--an-border);
  padding-top: 16px;
}
#loyaltyLevelsModule .ll-tiers-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 20px;
  width: 100%;
}
#loyaltyLevelsModule .ll-tiers-grid:has(.ll-empty-state) {
  display: block;
}
#loyaltyLevelsModule .ll-tier-card {
  background: var(--an-surface);
  border: 1.5px solid var(--an-border);
  border-radius: var(--an-radius);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  position: relative;
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
  box-shadow: var(--an-shadow-xs);
}
#loyaltyLevelsModule .ll-tier-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--an-shadow-md);
  border-color: var(--an-border-strong);
}
#loyaltyLevelsModule .ll-tier-card.ll-tier-card--inactive {
  opacity: 0.6;
  background: var(--an-surface2);
}
#loyaltyLevelsModule .ll-tier-card.ll-tier-card--inactive .ll-tier-card-bar {
  opacity: 0.5;
}
#loyaltyLevelsModule .ll-tier-card .ll-tier-card-bar {
  height: 6px;
  width: 100%;
}
#loyaltyLevelsModule .ll-tier-card .ll-tier-card-body {
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  flex: 1;
}
#loyaltyLevelsModule .ll-tier-card .ll-tier-card-header {
  display: flex;
  align-items: center;
  gap: 12px;
}
#loyaltyLevelsModule .ll-tier-card .ll-tier-card-header .ll-tier-card-badge {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 13px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
  flex-shrink: 0;
}
#loyaltyLevelsModule .ll-tier-card .ll-tier-card-header .ll-tier-card-name {
  margin: 0;
  font-size: 16px;
  font-weight: 700;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  flex: 1;
}
#loyaltyLevelsModule .ll-tier-card .ll-tier-card-header .ll-tier-card-controls {
  display: flex;
  gap: 2px;
}
#loyaltyLevelsModule .ll-tier-card .ll-tier-card-header .ll-tier-card-controls .md-icon-button {
  margin: 0;
  width: 32px;
  height: 32px;
  min-width: 32px;
  min-height: 32px;
  line-height: 32px;
  padding: 0;
}
#loyaltyLevelsModule .ll-tier-card .ll-tier-card-header .ll-tier-card-controls .md-icon-button md-icon {
  font-size: 16px;
  color: var(--an-text2);
}
#loyaltyLevelsModule .ll-tier-card .ll-tier-card-header .ll-tier-card-controls .md-icon-button:hover:not([disabled]) md-icon {
  color: var(--an-rose);
}
#loyaltyLevelsModule .ll-tier-card .ll-tier-card-desc {
  margin: 0;
  font-size: 13px;
  line-height: 1.5;
  color: var(--an-text2);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  height: 39px;
}
#loyaltyLevelsModule .ll-tier-card .ll-tier-card-desc.ll-tier-card-desc--empty {
  font-style: italic;
  color: var(--an-text-faint);
}
#loyaltyLevelsModule .ll-tier-card .ll-tier-card-info-item {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: var(--an-text2);
}
#loyaltyLevelsModule .ll-tier-card .ll-tier-card-info-item md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  margin: 0;
  color: var(--an-text-faint);
}
#loyaltyLevelsModule .ll-tier-card .ll-tier-card-info-item .ll-tier-card-info-label {
  font-weight: 500;
}
#loyaltyLevelsModule .ll-tier-card .ll-tier-card-info-item .ll-tier-card-info-val {
  color: var(--an-text);
  font-weight: 600;
}
#loyaltyLevelsModule .ll-tier-card .ll-tier-card-benefits {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  min-height: 28px;
  margin-top: 4px;
}
#loyaltyLevelsModule .ll-tier-card .ll-tier-card-benefits .ll-benefit-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 10px;
  border-radius: 99px;
  font-size: 11px;
  font-weight: 600;
  background: rgba(var(--an-primary-rgb), 0.08);
  color: var(--an-primary);
  border: 1px solid rgba(var(--an-primary-rgb), 0.15);
}
#loyaltyLevelsModule .ll-tier-card .ll-tier-card-benefits .ll-benefit-badge md-icon {
  font-size: 12px;
  width: 12px;
  height: 12px;
  margin: 0;
  color: inherit;
}
#loyaltyLevelsModule .ll-tier-card .ll-tier-card-benefits .ll-benefit-badge.ll-benefit-badge--delivery {
  background: rgba(16, 185, 129, 0.08);
  color: #10b981;
  border-color: rgba(16, 185, 129, 0.15);
}
#loyaltyLevelsModule .ll-tier-card .ll-tier-card-benefits .ll-benefit-badge.ll-benefit-badge--none {
  background: var(--an-surface2);
  color: var(--an-text-faint);
  border-color: var(--an-border);
  font-style: italic;
}
#loyaltyLevelsModule .ll-tier-card .ll-tier-card-actions {
  margin-top: auto;
  padding-top: 14px;
  border-top: 1px solid var(--an-border);
  display: flex;
  align-items: center;
}
#loyaltyLevelsModule .ll-tier-card .ll-tier-card-actions .md-button {
  margin: 0;
  text-transform: none;
  font-weight: 600;
  border-radius: var(--an-radius-sm);
}
#loyaltyLevelsModule .ll-tier-card .ll-tier-card-actions .md-button.md-button-sm {
  padding: 0 12px;
  min-height: 28px;
  line-height: 28px;
  font-size: 12px;
}
#loyaltyLevelsModule .ll-tier-card .ll-tier-card-actions .md-button md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  margin-right: 4px;
}
#loyaltyLevelsModule .ll-empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 48px 24px;
  background: var(--an-surface);
  border: 1.5px dashed var(--an-border-strong);
  border-radius: var(--an-radius);
  max-width: 500px;
  margin: 40px auto;
  animation: ll-fade-in 0.3s ease-out;
}
#loyaltyLevelsModule .ll-empty-state .ll-empty-icon {
  font-size: 48px;
  width: 48px;
  height: 48px;
  color: var(--an-text-faint);
  margin-bottom: 16px;
}
#loyaltyLevelsModule .ll-empty-state h3 {
  margin: 0 0 8px;
  font-size: 16px;
  font-weight: 700;
  color: var(--an-text);
}
#loyaltyLevelsModule .ll-empty-state p {
  margin: 0 0 20px;
  font-size: 13px;
  color: var(--an-text2);
  line-height: 1.6;
}
#loyaltyLevelsModule .ll-empty-state .md-button {
  margin: 0;
  text-transform: none;
  font-weight: 600;
}
#loyaltyLevelsModule .ll-empty-state .md-button md-icon {
  font-size: 16px;
  margin-right: 4px;
}

@keyframes ll-fade-in {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (max-width: 599px) {
  .loy-dashboard {
    padding: 0;
  }
  .loy-hero {
    padding: 20px;
    margin-bottom: 12px;
  }
  .loy-kpi-card {
    flex-direction: column;
    gap: 8px;
    padding: 12px;
  }
  .loy-kpi-card:hover {
    transform: none;
  }
  .loy-kpi-icon-wrap {
    width: 32px;
    height: 32px;
    border-radius: 9px;
  }
  .loy-kpi-icon-wrap i {
    font-size: 16px;
  }
  .loy-kpi-value {
    font-size: 20px;
  }
}
/* ─────────────────────────────────────────────────────────────────────
   Loyalty Wallet Card Designer
   Scaffold styles — preview mocks and form panes are fleshed out in
   subsequent steps. This file only owns the top-level layout for now.
   ───────────────────────────────────────────────────────────────────── */
/* ════════════════════════════════════════════════════════════════════
   TOOLBAR BUTTON OVERRIDES
   The global toolbar modernization rule applies !important overrides
   to all .md-button inside md-toolbar.toolbar-small.md-hue-3, which
   breaks the md-raised md-primary (red Save) button.
   We restore the correct appearance using lwd-btn-* anchor classes.
   ════════════════════════════════════════════════════════════════════ */
/* Save button — restore md-primary red */
md-toolbar .lwd-btn-save.md-raised.md-primary {
  background-color: var(--an-rose, #E13E2B) !important;
  color: #fff !important;
  border-radius: 8px !important;
  padding: 0 16px !important;
  min-height: 34px !important;
  line-height: 34px !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  box-shadow: 0 2px 8px rgba(225, 62, 43, 0.3) !important;
  transition: opacity 150ms ease, box-shadow 150ms ease !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}
md-toolbar .lwd-btn-save.md-raised.md-primary md-icon,
md-toolbar .lwd-btn-save.md-raised.md-primary i[class*=iconoir-] {
  color: #fff !important;
  font-size: 16px !important;
  margin-right: 0 !important;
}
md-toolbar .lwd-btn-save.md-raised.md-primary span {
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}
md-toolbar .lwd-btn-save.md-raised.md-primary:hover:not([disabled]) {
  opacity: 0.9;
  box-shadow: 0 4px 14px rgba(225, 62, 43, 0.4) !important;
}
md-toolbar .lwd-btn-save.md-raised.md-primary[disabled] {
  background-color: var(--an-border) !important;
  color: var(--an-text-faint) !important;
  box-shadow: none !important;
  cursor: default;
}
md-toolbar .lwd-btn-save.md-raised.md-primary[disabled] md-icon,
md-toolbar .lwd-btn-save.md-raised.md-primary[disabled] i[class*=iconoir-] {
  color: var(--an-text-faint) !important;
}
md-toolbar .lwd-btn-save.md-raised.md-primary[disabled] span {
  color: var(--an-text-faint) !important;
}

/* Send-test button — subtle ghost style, consistent with toolbar */
md-toolbar .lwd-btn-send {
  color: var(--an-text-muted) !important;
  border: 1px solid var(--an-border) !important;
  border-radius: 8px !important;
  padding: 0 12px !important;
  min-height: 34px !important;
  line-height: 34px !important;
  font-size: 13px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}
md-toolbar .lwd-btn-send md-icon,
md-toolbar .lwd-btn-send i[class*=iconoir-] {
  color: var(--an-text-muted) !important;
  font-size: 16px !important;
  margin-right: 0 !important;
}
md-toolbar .lwd-btn-send span {
  color: var(--an-text-muted) !important;
  font-size: 13px !important;
}
md-toolbar .lwd-btn-send:hover {
  background: var(--an-bg-active) !important;
  color: var(--an-text) !important;
}
md-toolbar .lwd-btn-send:hover md-icon, md-toolbar .lwd-btn-send:hover i[class*=iconoir-] {
  color: var(--an-text) !important;
}
md-toolbar .lwd-btn-send:hover span {
  color: var(--an-text) !important;
}

#loyaltyWalletDesignModule {
  background: #f5f6f8;
  height: 100%;
  padding: 0;
}
.waitry-dark-theme #loyaltyWalletDesignModule {
  background: var(--an-bg);
}
#loyaltyWalletDesignModule {
  /* Toolbar dirty-state pip — pulses gently to draw attention */
}
#loyaltyWalletDesignModule .lwd-dirty-dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #ffb84d;
  margin-left: 8px;
  vertical-align: middle;
  animation: lwd-pulse 1.6s ease-in-out infinite;
  box-shadow: 0 0 0 0 rgba(255, 184, 77, 0.7);
}
#loyaltyWalletDesignModule {
  /* Validation banner */
}
#loyaltyWalletDesignModule .lwd-validation {
  margin: 16px 24px 0;
  padding: 12px 16px;
  border-radius: 10px;
  display: flex;
  gap: 12px;
  align-items: flex-start;
  font-size: 13px;
}
#loyaltyWalletDesignModule .lwd-validation > i {
  font-size: 20px;
  flex-shrink: 0;
  line-height: 1.2;
}
#loyaltyWalletDesignModule .lwd-validation-body {
  flex: 1;
}
#loyaltyWalletDesignModule .lwd-validation-msg {
  line-height: 1.5;
}
#loyaltyWalletDesignModule .lwd-validation-msg--warn {
  color: #8a6500;
}
#loyaltyWalletDesignModule .lwd-validation--error {
  background: #fef2f2;
  border: 1px solid #fecaca;
  color: #991b1b;
}
#loyaltyWalletDesignModule .lwd-validation--warn {
  background: #fff7e6;
  border: 1px solid #ffe4a1;
  color: #8a6500;
}
#loyaltyWalletDesignModule {
  /* No-program empty state */
}
#loyaltyWalletDesignModule .lwd-no-program {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: calc(100% - 60px);
  padding: 40px 20px;
}
#loyaltyWalletDesignModule .lwd-no-program-inner {
  text-align: center;
  max-width: 440px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}
#loyaltyWalletDesignModule .lwd-no-program-inner h2 {
  font-size: 22px;
  margin: 0 0 8px;
  color: #2a2f37;
  font-weight: 700;
  margin-top: 8px;
}
.waitry-dark-theme #loyaltyWalletDesignModule .lwd-no-program-inner h2 {
  color: var(--an-text-muted);
}
#loyaltyWalletDesignModule .lwd-no-program-inner p {
  color: #6b7280;
  margin: 0 0 24px;
  line-height: 1.6;
  font-size: 14px;
}
#loyaltyWalletDesignModule {
  /* Decorative wallet card illustration in the no-program empty state */
}
#loyaltyWalletDesignModule .lwd-no-program-card {
  position: relative;
  width: 220px;
  height: 136px;
  border-radius: 14px;
  background: linear-gradient(135deg, #E13E2B 0%, #c1311f 100%);
  box-shadow: 0 16px 40px rgba(225, 62, 43, 0.35), 0 4px 12px rgba(0, 0, 0, 0.15);
  padding: 14px;
  margin-bottom: 20px;
  overflow: hidden;
  animation: lwd-card-float 4s ease-in-out infinite;
  transform-origin: center bottom;
  /* Shiny top-right highlight */
}
#loyaltyWalletDesignModule .lwd-no-program-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.18) 0%, transparent 60%);
  border-radius: inherit;
}
#loyaltyWalletDesignModule .lwd-no-program-card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
}
#loyaltyWalletDesignModule .lwd-no-program-card-logo {
  width: 28px;
  height: 28px;
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.3);
}
#loyaltyWalletDesignModule .lwd-no-program-card-dots {
  display: flex;
  gap: 5px;
}
#loyaltyWalletDesignModule .lwd-no-program-card-dots span {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.4);
}
#loyaltyWalletDesignModule .lwd-no-program-card-strip {
  height: 28px;
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.15);
  margin-bottom: 10px;
}
#loyaltyWalletDesignModule .lwd-no-program-card-fields {
  display: flex;
  gap: 8px;
  margin-bottom: 10px;
}
#loyaltyWalletDesignModule .lwd-no-program-card-field {
  height: 12px;
  border-radius: 3px;
  background: rgba(255, 255, 255, 0.25);
  flex: 1;
}
#loyaltyWalletDesignModule .lwd-no-program-card-field--sm {
  flex: 0 0 40%;
}
#loyaltyWalletDesignModule .lwd-no-program-card-barcode {
  height: 14px;
  border-radius: 3px;
  background: rgba(255, 255, 255, 0.2);
  width: 70%;
  margin: 0 auto;
}
#loyaltyWalletDesignModule .lwd-no-program-lock {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 48px;
  color: rgba(255, 255, 255, 0.22);
  pointer-events: none;
}
@keyframes lwd-card-float {
  0% {
    transform: translateY(0px) rotate(-1deg);
  }
  50% {
    transform: translateY(-8px) rotate(1deg);
  }
  100% {
    transform: translateY(0px) rotate(-1deg);
  }
}
#loyaltyWalletDesignModule .lwd-layout {
  display: flex;
  flex-direction: row;
  gap: 24px;
  padding: 24px;
  min-height: calc(100% - 48px);
  align-items: flex-start;
}
@media (max-width: 1100px) {
  #loyaltyWalletDesignModule .lwd-layout {
    flex-direction: column;
    padding: 16px;
    gap: 16px;
  }
}
@media (max-width: 599px) {
  #loyaltyWalletDesignModule .lwd-layout {
    padding: 12px;
  }
}
#loyaltyWalletDesignModule .lwd-form-pane {
  flex: 0 0 45%;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
  padding: 20px;
  min-height: 600px;
  max-height: calc(100vh - 120px);
  overflow-y: auto;
}
.waitry-dark-theme #loyaltyWalletDesignModule .lwd-form-pane {
  background: var(--an-surface);
}
@media (max-width: 1100px) {
  #loyaltyWalletDesignModule .lwd-form-pane {
    flex: none;
    box-sizing: border-box;
    width: 100%;
    min-height: 0;
    max-height: none;
    overflow-y: visible;
  }
}
#loyaltyWalletDesignModule .lwd-preview-pane {
  flex: 1;
  border-radius: 12px;
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 20px;
  transition: background 200ms ease;
  position: sticky;
  top: 12px;
}
@media (max-width: 1100px) {
  #loyaltyWalletDesignModule .lwd-preview-pane {
    position: static;
    flex: none;
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
  }
}
@media (max-width: 599px) {
  #loyaltyWalletDesignModule .lwd-preview-pane {
    padding: 12px;
  }
}
#loyaltyWalletDesignModule .lwd-preview-pane.lwd-preview-bg--light {
  background: #eef0f3;
}
#loyaltyWalletDesignModule .lwd-preview-pane.lwd-preview-bg--dark {
  background: #1c1f24;
}
#loyaltyWalletDesignModule .lwd-preview-pane {
  /* Keep tab/chip text legible on the dark preview background */
}
#loyaltyWalletDesignModule .lwd-preview-pane.lwd-preview-bg--dark .lwd-platform-tabs {
  background: rgba(255, 255, 255, 0.08);
}
#loyaltyWalletDesignModule .lwd-preview-pane.lwd-preview-bg--dark .lwd-platform-tabs .lwd-tab {
  color: #d9dde3;
}
#loyaltyWalletDesignModule .lwd-preview-pane.lwd-preview-bg--dark .lwd-platform-tabs .lwd-tab--active {
  color: #1c1f24;
  background: #fff;
}
#loyaltyWalletDesignModule .lwd-preview-pane.lwd-preview-bg--dark .lwd-tier-chip {
  background: rgba(255, 255, 255, 0.08);
  color: #d9dde3;
  border-color: rgba(255, 255, 255, 0.18);
}
#loyaltyWalletDesignModule .lwd-preview-pane.lwd-preview-bg--dark .lwd-tier-chip--active {
  background: #fff;
  color: #1c1f24;
}
#loyaltyWalletDesignModule .lwd-preview-controls {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}
#loyaltyWalletDesignModule .lwd-platform-tabs {
  display: inline-flex;
  background: rgba(0, 0, 0, 0.06);
  border-radius: 999px;
  padding: 4px;
}
#loyaltyWalletDesignModule .lwd-platform-tabs .lwd-tab {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  border: none;
  background: transparent;
  border-radius: 999px;
  cursor: pointer;
  font-size: 13px;
  font-weight: 500;
  color: inherit;
}
#loyaltyWalletDesignModule .lwd-platform-tabs .lwd-tab--active {
  background: #fff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.12);
}
.waitry-dark-theme #loyaltyWalletDesignModule .lwd-platform-tabs .lwd-tab--active {
  background: var(--an-surface-brighter, #fff);
}
#loyaltyWalletDesignModule .lwd-tier-chips {
  display: inline-flex;
  gap: 6px;
  flex-wrap: wrap;
}
#loyaltyWalletDesignModule .lwd-tier-chips .lwd-tier-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.7);
  cursor: pointer;
  font-size: 12px;
}
#loyaltyWalletDesignModule .lwd-tier-chips .lwd-tier-chip--active {
  background: #fff;
  border-color: #333;
  font-weight: 600;
}
.waitry-dark-theme #loyaltyWalletDesignModule .lwd-tier-chips .lwd-tier-chip--active {
  background: var(--an-surface-brighter, #fff);
}
#loyaltyWalletDesignModule .lwd-tier-chips .lwd-tier-chip .lwd-tier-chip-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #bbb;
}
#loyaltyWalletDesignModule .lwd-preview-stage {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px 32px;
}
#loyaltyWalletDesignModule {
  /* ════════════════════════════════════════════════════════════════
     APPLE WALLET MOCK
     Approximates the iOS .pkpass storeCard rendering at ~340px wide.
     Uses a 3D flip to reveal backFields.
     ════════════════════════════════════════════════════════════════ */
}
#loyaltyWalletDesignModule .lwd-apple-wrap {
  width: 340px;
  min-height: 440px;
  height: auto;
  perspective: 1400px;
  position: relative;
}
#loyaltyWalletDesignModule .lwd-apple-wrap--flipped .lwd-apple-card--front {
  transform: rotateY(180deg);
}
#loyaltyWalletDesignModule .lwd-apple-wrap--flipped .lwd-apple-card--back {
  transform: rotateY(360deg);
}
#loyaltyWalletDesignModule .lwd-apple-card {
  position: absolute;
  inset: 0;
  border-radius: 14px;
  padding: 14px;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.32);
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, sans-serif;
  backface-visibility: hidden;
  transition: transform 700ms cubic-bezier(0.6, 0.05, 0.4, 0.95);
  display: flex;
  flex-direction: column;
  cursor: pointer;
  overflow: hidden;
}
#loyaltyWalletDesignModule .lwd-apple-card--front {
  transform: rotateY(0deg);
}
#loyaltyWalletDesignModule .lwd-apple-card--back {
  transform: rotateY(180deg);
}
#loyaltyWalletDesignModule .lwd-apple-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  min-height: 36px;
}
#loyaltyWalletDesignModule .lwd-apple-logo {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  flex: 1;
}
#loyaltyWalletDesignModule .lwd-apple-logo img {
  width: 28px;
  height: 28px;
  object-fit: contain;
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.12);
}
#loyaltyWalletDesignModule .lwd-apple-logo-text {
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.02em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#loyaltyWalletDesignModule .lwd-apple-header-fields {
  display: flex;
  gap: 12px;
  text-align: right;
}
#loyaltyWalletDesignModule .lwd-apple-field {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
#loyaltyWalletDesignModule .lwd-apple-field .lwd-apple-field-label {
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  opacity: 0.85;
}
#loyaltyWalletDesignModule .lwd-apple-field .lwd-apple-field-value {
  font-size: 14px;
  font-weight: 600;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#loyaltyWalletDesignModule .lwd-apple-field--header .lwd-apple-field-value {
  font-size: 18px;
}
#loyaltyWalletDesignModule .lwd-apple-strip {
  margin: 10px -14px;
  height: 96px;
  background-size: cover;
  background-position: center;
  background-color: rgba(0, 0, 0, 0.18);
  display: flex;
  align-items: flex-end;
  padding: 10px 14px;
}
#loyaltyWalletDesignModule .lwd-apple-primary .lwd-apple-field-label {
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  opacity: 0.85;
}
#loyaltyWalletDesignModule .lwd-apple-primary .lwd-apple-primary-value {
  font-size: 28px;
  font-weight: 700;
  line-height: 1.1;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.25);
}
#loyaltyWalletDesignModule .lwd-apple-aux-row {
  display: flex;
  gap: 18px;
  flex-wrap: wrap;
  margin: 8px 0;
}
#loyaltyWalletDesignModule .lwd-apple-field--secondary,
#loyaltyWalletDesignModule .lwd-apple-field--auxiliary {
  flex: 1 1 80px;
  min-width: 70px;
}
#loyaltyWalletDesignModule .lwd-apple-field--secondary .lwd-apple-field-value,
#loyaltyWalletDesignModule .lwd-apple-field--auxiliary .lwd-apple-field-value {
  font-size: 13px;
}
#loyaltyWalletDesignModule .lwd-apple-barcode {
  margin-top: auto;
  background: #fff;
  color: #000;
  border-radius: 6px;
  padding: 10px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
}
#loyaltyWalletDesignModule .lwd-apple-barcode-img {
  width: 110px;
  height: auto;
  min-height: 60px;
}
#loyaltyWalletDesignModule .lwd-apple-barcode-alt {
  font-family: -apple-system, "SF Mono", Menlo, monospace;
  font-size: 11px;
  letter-spacing: 0.04em;
}
#loyaltyWalletDesignModule .lwd-apple-flip-hint {
  position: absolute;
  bottom: 6px;
  right: 10px;
  font-size: 9px;
  opacity: 0.55;
  display: inline-flex;
  align-items: center;
  gap: 3px;
}
#loyaltyWalletDesignModule .lwd-apple-back-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
  overflow-y: auto;
  height: 100%;
}
#loyaltyWalletDesignModule .lwd-apple-back-item {
  border-bottom: 1px solid rgba(255, 255, 255, 0.18);
  padding-bottom: 8px;
}
#loyaltyWalletDesignModule .lwd-apple-back-item .lwd-apple-field-label {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  opacity: 0.85;
  margin-bottom: 3px;
}
#loyaltyWalletDesignModule .lwd-apple-back-item .lwd-apple-back-value {
  font-size: 13px;
  line-height: 1.4;
}
#loyaltyWalletDesignModule .lwd-apple-back-empty {
  opacity: 0.7;
  font-size: 12px;
  font-style: italic;
  text-align: center;
  margin-top: 40px;
}
#loyaltyWalletDesignModule {
  /* ════════════════════════════════════════════════════════════════
     GOOGLE WALLET MOCK
     Approximates the Android Wallet LoyaltyObject card.
     ════════════════════════════════════════════════════════════════ */
}
#loyaltyWalletDesignModule .lwd-google-card {
  width: 340px;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.32);
  font-family: "Google Sans", Roboto, "Segoe UI", sans-serif;
}
#loyaltyWalletDesignModule .lwd-google-hero {
  height: 110px;
  background-color: rgba(0, 0, 0, 0.15);
  background-size: cover;
  background-position: center;
}
#loyaltyWalletDesignModule .lwd-google-body {
  padding: 14px 16px 18px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
#loyaltyWalletDesignModule .lwd-google-header {
  display: flex;
  align-items: center;
  gap: 12px;
}
#loyaltyWalletDesignModule .lwd-google-logo {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.18);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 18px;
  overflow: hidden;
  flex-shrink: 0;
}
#loyaltyWalletDesignModule .lwd-google-logo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#loyaltyWalletDesignModule .lwd-google-titles {
  flex: 1;
  min-width: 0;
}
#loyaltyWalletDesignModule .lwd-google-program {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  opacity: 0.85;
}
#loyaltyWalletDesignModule .lwd-google-account {
  font-size: 16px;
  font-weight: 600;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#loyaltyWalletDesignModule .lwd-google-tier-chip {
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  background: rgba(255, 255, 255, 0.18);
  white-space: nowrap;
}
#loyaltyWalletDesignModule .lwd-google-points-row {
  display: flex;
  gap: 20px;
  padding: 8px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.15);
  border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}
#loyaltyWalletDesignModule .lwd-google-points {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
#loyaltyWalletDesignModule .lwd-google-points-label {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  opacity: 0.85;
}
#loyaltyWalletDesignModule .lwd-google-points-value {
  font-size: 26px;
  font-weight: 700;
  line-height: 1;
}
#loyaltyWalletDesignModule .lwd-google-points--secondary .lwd-google-points-value {
  font-size: 20px;
}
#loyaltyWalletDesignModule .lwd-google-modules {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
#loyaltyWalletDesignModule .lwd-google-module-label {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  opacity: 0.85;
  margin-bottom: 2px;
}
#loyaltyWalletDesignModule .lwd-google-module-body {
  font-size: 13px;
  line-height: 1.4;
}
#loyaltyWalletDesignModule .lwd-google-barcode {
  background: #fff;
  color: #000;
  border-radius: 8px;
  padding: 12px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  margin-top: 4px;
}
#loyaltyWalletDesignModule .lwd-google-barcode-img {
  width: 130px;
  height: auto;
  min-height: 60px;
}
#loyaltyWalletDesignModule .lwd-google-barcode-alt {
  font-family: Roboto, "SF Mono", Menlo, monospace;
  font-size: 11px;
  letter-spacing: 0.04em;
}
#loyaltyWalletDesignModule {
  /* ════════════════════════════════════════════════════════════════
     SHARED BARCODE GRAPHICS
     Pure CSS approximations so the preview doesn't need to call the
     server. The real pass uses the actual QR/PDF417/Code128 encoding.
     ════════════════════════════════════════════════════════════════ */
}
#loyaltyWalletDesignModule .lwd-barcode-qr {
  background-image: linear-gradient(#000 0 0), linear-gradient(#000 0 0), linear-gradient(#000 0 0), repeating-conic-gradient(#000 0% 25%, #fff 0% 50%);
  background-size: 18px 18px, 18px 18px, 18px 18px, 6px 6px;
  background-position: 0 0, calc(100% - 0px) 0, 0 calc(100% - 0px), 0 0;
  background-repeat: no-repeat, no-repeat, no-repeat, repeat;
}
#loyaltyWalletDesignModule .lwd-barcode-pdf417 {
  height: 60px !important;
  background: repeating-linear-gradient(90deg, #000 0 2px, #fff 2px 4px, #000 4px 5px, #fff 5px 8px);
}
#loyaltyWalletDesignModule .lwd-barcode-code128 {
  height: 50px !important;
  background: repeating-linear-gradient(90deg, #000 0 2px, #fff 2px 5px, #000 5px 6px, #fff 6px 9px);
}
#loyaltyWalletDesignModule {
  /* ════════════════════════════════════════════════════════════════
     SKELETON PULSE ANIMATION
     Used by .sk-pulse on loading placeholder shapes.
     ════════════════════════════════════════════════════════════════ */
}
@keyframes lwd-sk-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.45;
  }
}
#loyaltyWalletDesignModule .lwd-skeleton-wrap {
  display: flex;
  gap: 24px;
  padding: 24px;
}
#loyaltyWalletDesignModule .lwd-skeleton-form {
  flex: 0 0 45%;
  height: 600px;
  border-radius: 12px;
  background: #e6e8eb;
  animation: lwd-sk-pulse 1.4s ease-in-out infinite;
}
.waitry-dark-theme #loyaltyWalletDesignModule .lwd-skeleton-form {
  background: var(--an-surface3);
}
#loyaltyWalletDesignModule .lwd-skeleton-preview {
  flex: 1;
  height: 600px;
  border-radius: 12px;
  background: #e6e8eb;
  animation: lwd-sk-pulse 1.4s ease-in-out 0.2s infinite;
}
.waitry-dark-theme #loyaltyWalletDesignModule .lwd-skeleton-preview {
  background: var(--an-surface3);
}
#loyaltyWalletDesignModule .lwd-placeholder {
  color: #8a8f99;
  font-style: italic;
  font-size: 14px;
  text-align: center;
  padding: 40px 16px;
}
#loyaltyWalletDesignModule {
  /* ════════════════════════════════════════════════════════════════
     FORM PANE — accordion sections
     ════════════════════════════════════════════════════════════════ */
}
#loyaltyWalletDesignModule .lwd-section {
  border: 1px solid #e6e8eb;
  border-radius: 10px;
  margin-bottom: 12px;
  overflow: hidden;
  background: #fff;
}
.waitry-dark-theme #loyaltyWalletDesignModule .lwd-section {
  background: var(--an-surface2);
}
#loyaltyWalletDesignModule .lwd-section--open {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}
#loyaltyWalletDesignModule .lwd-section-head {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  cursor: pointer;
  user-select: none;
  background: #fafbfc;
  border-bottom: 1px solid transparent;
}
.waitry-dark-theme #loyaltyWalletDesignModule .lwd-section-head {
  background: var(--an-surface3);
}
#loyaltyWalletDesignModule .lwd-section-head h3 {
  margin: 0;
  font-size: 14px;
  font-weight: 600;
  flex: 1;
  color: #2a2f37;
}
.waitry-dark-theme #loyaltyWalletDesignModule .lwd-section-head h3 {
  color: var(--an-text-muted);
}
#loyaltyWalletDesignModule .lwd-section-head i {
  color: #6b7280;
  font-size: 18px;
}
#loyaltyWalletDesignModule .lwd-section-head .lwd-section-caret {
  font-size: 16px;
}
#loyaltyWalletDesignModule .lwd-section--open .lwd-section-head {
  border-bottom-color: #e6e8eb;
}
#loyaltyWalletDesignModule .lwd-section-body {
  padding: 16px 14px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
#loyaltyWalletDesignModule .lwd-field-row {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
#loyaltyWalletDesignModule .lwd-label {
  font-size: 12px;
  font-weight: 600;
  color: #4a4f57;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.waitry-dark-theme #loyaltyWalletDesignModule .lwd-label {
  color: var(--an-text-muted);
}
#loyaltyWalletDesignModule .lwd-label-sm {
  font-size: 11px;
  font-weight: 600;
  color: #6b7280;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
#loyaltyWalletDesignModule .lwd-help {
  font-size: 11px;
  color: #8a8f99;
  margin: 0;
}
#loyaltyWalletDesignModule .lwd-input {
  width: 100%;
  padding: 8px 10px;
  border: 1px solid #d4d7dc;
  border-radius: 6px;
  font-size: 13px;
  background: #fff;
  outline: none;
  transition: border-color 150ms;
}
.waitry-dark-theme #loyaltyWalletDesignModule .lwd-input {
  background: var(--an-surface3);
}
#loyaltyWalletDesignModule .lwd-input:focus {
  border-color: #2196f3;
}
#loyaltyWalletDesignModule .lwd-input--hex {
  width: 80px;
  font-family: "SF Mono", Menlo, monospace;
}
#loyaltyWalletDesignModule .lwd-input--key {
  width: 130px;
  font-family: "SF Mono", Menlo, monospace;
  font-size: 12px;
}
#loyaltyWalletDesignModule .lwd-select {
  width: 180px;
}
#loyaltyWalletDesignModule .lwd-toggle-row {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}
#loyaltyWalletDesignModule {
  /* Asset thumbnails */
}
#loyaltyWalletDesignModule .lwd-asset-row {
  display: flex;
  align-items: center;
  gap: 12px;
}
#loyaltyWalletDesignModule .lwd-asset-thumb {
  width: 64px;
  height: 64px;
  border-radius: 8px;
  background: #f1f3f5;
  border: 1px dashed #c8ccd2;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background-size: cover;
  background-position: center;
}
.waitry-dark-theme #loyaltyWalletDesignModule .lwd-asset-thumb {
  background: var(--an-surface3);
}
#loyaltyWalletDesignModule .lwd-asset-thumb img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
#loyaltyWalletDesignModule .lwd-asset-thumb i {
  color: #b0b5bd;
  font-size: 28px;
}
#loyaltyWalletDesignModule .lwd-asset-thumb--strip {
  width: 120px;
  height: 40px;
  border-radius: 6px;
}
#loyaltyWalletDesignModule .lwd-asset-thumb--empty {
  background: #f7f8fa;
}
.waitry-dark-theme #loyaltyWalletDesignModule .lwd-asset-thumb--empty {
  background: var(--an-surface3);
}
#loyaltyWalletDesignModule .lwd-asset-actions {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}
#loyaltyWalletDesignModule {
  /* Color pickers */
}
#loyaltyWalletDesignModule .lwd-field-row--colors {
  flex-direction: row;
  gap: 18px;
  flex-wrap: wrap;
}
#loyaltyWalletDesignModule .lwd-color {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
#loyaltyWalletDesignModule .lwd-color input[type=color] {
  width: 44px;
  height: 36px;
  border: 1px solid #d4d7dc;
  border-radius: 6px;
  cursor: pointer;
  background: #fff;
  padding: 2px;
}
.waitry-dark-theme #loyaltyWalletDesignModule .lwd-color input[type=color] {
  background: var(--an-surface3);
}
#loyaltyWalletDesignModule .lwd-color-picker-row {
  display: flex;
  align-items: center;
  gap: 6px;
}
#loyaltyWalletDesignModule .lwd-eyedrop-btn {
  align-self: flex-start;
}
#loyaltyWalletDesignModule .lwd-secondary-row {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
}
#loyaltyWalletDesignModule {
  /* Field-group tabs */
}
#loyaltyWalletDesignModule .lwd-field-tabs {
  display: flex;
  gap: 4px;
  flex-wrap: wrap;
  border-bottom: 1px solid #e6e8eb;
  margin-bottom: 4px;
}
#loyaltyWalletDesignModule .lwd-field-tab {
  padding: 8px 12px;
  background: transparent;
  border: none;
  border-bottom: 2px solid transparent;
  cursor: pointer;
  font-size: 12px;
  font-weight: 500;
  color: #6b7280;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
#loyaltyWalletDesignModule .lwd-field-tab--active {
  color: #2196f3;
  border-bottom-color: #2196f3;
}
#loyaltyWalletDesignModule .lwd-field-tab-count {
  font-size: 10px;
  background: #eef0f3;
  border-radius: 999px;
  padding: 1px 6px;
  color: #6b7280;
}
.waitry-dark-theme #loyaltyWalletDesignModule .lwd-field-tab-count {
  background: var(--an-surface3);
}
#loyaltyWalletDesignModule .lwd-field-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
#loyaltyWalletDesignModule .lwd-field-item {
  border: 1px solid #e6e8eb;
  border-radius: 8px;
  padding: 10px;
  background: #fbfcfd;
}
.waitry-dark-theme #loyaltyWalletDesignModule .lwd-field-item {
  background: var(--an-surface3);
}
#loyaltyWalletDesignModule .lwd-field-item-head {
  display: flex;
  gap: 6px;
  align-items: center;
  margin-bottom: 8px;
}
#loyaltyWalletDesignModule .lwd-field-handle {
  color: #b0b5bd;
  cursor: grab;
  user-select: none;
}
#loyaltyWalletDesignModule {
  /* The row's identity. The pass field's `key` used to live here as an
     editable input — it is plumbing (Apple needs it unique, nobody needs to
     read it), so it is generated now and the row is titled by its label. */
}
#loyaltyWalletDesignModule .lwd-field-name {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text, #2b3038);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#loyaltyWalletDesignModule .lwd-field-name--untitled {
  font-weight: 500;
  font-style: italic;
  color: #8a8f99;
}
#loyaltyWalletDesignModule .lwd-field-item-body {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  align-items: flex-start;
}
#loyaltyWalletDesignModule .lwd-field-col {
  flex: 1 1 200px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
#loyaltyWalletDesignModule .lwd-token-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-top: 4px;
}
#loyaltyWalletDesignModule .lwd-token-chip {
  font-family: "SF Mono", Menlo, monospace;
  font-size: 10px;
  padding: 2px 6px;
  border: 1px solid #d4d7dc;
  border-radius: 4px;
  background: #fff;
  cursor: pointer;
  color: #4a4f57;
}
.waitry-dark-theme #loyaltyWalletDesignModule .lwd-token-chip {
  color: var(--an-text-muted);
  background: var(--an-surface-brighter, #fff);
}
#loyaltyWalletDesignModule .lwd-token-chip:hover {
  background: #eef6fd;
  border-color: #2196f3;
  color: #2196f3;
}
.waitry-dark-theme #loyaltyWalletDesignModule .lwd-token-chip:hover {
  background: var(--an-primary-soft);
}
#loyaltyWalletDesignModule .lwd-field-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  align-items: center;
  margin-top: 8px;
}
#loyaltyWalletDesignModule {
  /* Why the two buttons above just went grey. A disabled control with no
     explanation reads as a bug — Apple's group maxima are the reason. */
}
#loyaltyWalletDesignModule .lwd-limit-note {
  flex: 1 1 100%;
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 2px 0 0;
  font-size: 12px;
  color: #8a8f99;
}
#loyaltyWalletDesignModule .lwd-limit-note i {
  font-size: 14px;
}
#loyaltyWalletDesignModule {
  /* A preset already present in the group: offered, but visibly spent. */
}
#loyaltyWalletDesignModule .lwd-preset-used {
  margin-left: auto;
  color: var(--an-primary, #2196f3);
  font-size: 16px;
}
#loyaltyWalletDesignModule {
  /* A value the server generates — shown, never typed (NFC payload). */
}
#loyaltyWalletDesignModule .lwd-generated-value {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  padding: 8px 10px;
  border: 1px dashed #d4d7dc;
  border-radius: 8px;
  background: #f7f8fa;
  font-size: 12px;
  color: #6b7280;
}
.waitry-dark-theme #loyaltyWalletDesignModule .lwd-generated-value {
  background: var(--an-surface3);
  border-color: var(--an-border-strong);
  color: var(--an-text-muted);
}
#loyaltyWalletDesignModule .lwd-generated-value i {
  font-size: 14px;
}
#loyaltyWalletDesignModule .lwd-generated-value code {
  font-family: "SF Mono", Menlo, monospace;
  font-size: 11px;
  padding: 2px 6px;
  border-radius: 4px;
  background: #eef0f3;
  color: #4a4f57;
}
.waitry-dark-theme #loyaltyWalletDesignModule .lwd-generated-value code {
  background: var(--an-surface2);
  color: var(--an-text);
}
#loyaltyWalletDesignModule .lwd-empty {
  text-align: center;
  color: #8a8f99;
  font-style: italic;
  font-size: 12px;
  padding: 18px 10px;
}
#loyaltyWalletDesignModule {
  /* Radios, textareas, contact grid, link rows, NFC */
}
#loyaltyWalletDesignModule .lwd-radio-row {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
  align-items: center;
}
#loyaltyWalletDesignModule .lwd-radio-col {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
#loyaltyWalletDesignModule .lwd-textarea {
  font-family: inherit;
  line-height: 1.4;
  resize: vertical;
  min-height: 60px;
}
#loyaltyWalletDesignModule .lwd-inline-input {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  max-width: 200px;
}
#loyaltyWalletDesignModule .lwd-inline-input .lwd-input {
  flex: 1;
}
#loyaltyWalletDesignModule .lwd-inline-input .lwd-unit {
  color: #6b7280;
  font-size: 12px;
}
#loyaltyWalletDesignModule .lwd-place-list {
  display: flex;
  flex-direction: column;
  gap: 2px;
  max-height: 200px;
  overflow-y: auto;
  border: 1px solid #e6e8eb;
  border-radius: 8px;
  padding: 6px 10px;
  background: #fff;
}
.waitry-dark-theme #loyaltyWalletDesignModule .lwd-place-list {
  background: var(--an-surface3);
}
#loyaltyWalletDesignModule .lwd-place-check {
  margin: 2px 0;
}
#loyaltyWalletDesignModule .lwd-place-check .lwd-place-addr {
  display: block;
  font-size: 11px;
  color: #8a8f99;
  margin-left: 4px;
}
#loyaltyWalletDesignModule .lwd-contact-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px;
}
#loyaltyWalletDesignModule .lwd-link-item {
  display: flex;
  gap: 8px;
  align-items: center;
  margin-bottom: 6px;
}
#loyaltyWalletDesignModule .lwd-link-item .lwd-input {
  flex: 1;
}
#loyaltyWalletDesignModule .lwd-link-item .lwd-input--label {
  max-width: 140px;
  flex: 0 0 140px;
}
#loyaltyWalletDesignModule .lwd-nfc-row {
  gap: 8px;
}
#loyaltyWalletDesignModule .lwd-nfc-row .lwd-input {
  max-width: 320px;
}
#loyaltyWalletDesignModule {
  /* Tier overrides */
}
#loyaltyWalletDesignModule .lwd-tier-count {
  font-size: 11px;
  background: #eef0f3;
  border-radius: 999px;
  padding: 2px 8px;
  color: #6b7280;
  margin-right: 4px;
}
.waitry-dark-theme #loyaltyWalletDesignModule .lwd-tier-count {
  background: var(--an-surface3);
}
#loyaltyWalletDesignModule {
  /* Punch card block. The preview stamps mirror Helper\PunchStampImage in waitry_api. */
}
#loyaltyWalletDesignModule .lwd-select--wide {
  width: 100%;
  max-width: 360px;
}
#loyaltyWalletDesignModule .lwd-punch-options {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
#loyaltyWalletDesignModule .lwd-stamp-icons {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
#loyaltyWalletDesignModule .lwd-stamp-icon {
  width: 40px;
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
  color: var(--an-text-muted);
  cursor: pointer;
  transition: border-color 150ms, color 150ms, background 150ms;
}
#loyaltyWalletDesignModule .lwd-stamp-icon i {
  font-size: 20px;
}
#loyaltyWalletDesignModule .lwd-stamp-icon img {
  width: 24px;
  height: 24px;
  object-fit: contain;
}
#loyaltyWalletDesignModule .lwd-stamp-icon:hover:not([disabled]) {
  border-color: var(--an-border-hover);
  color: var(--an-text);
}
#loyaltyWalletDesignModule .lwd-stamp-icon--active, #loyaltyWalletDesignModule .lwd-stamp-icon--active:hover:not([disabled]) {
  border-color: var(--an-rose);
  color: var(--an-rose);
  background: color-mix(in srgb, var(--an-rose) 10%, transparent);
}
#loyaltyWalletDesignModule .lwd-stamp-icon[disabled] {
  opacity: 0.4;
  cursor: not-allowed;
}
#loyaltyWalletDesignModule .lwd-punch-empty {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  padding: 10px 12px;
  border-radius: var(--an-radius-sm);
  background: var(--an-surface2);
  font-size: 12px;
  color: var(--an-text-muted);
}
#loyaltyWalletDesignModule .lwd-punch-empty i {
  font-size: 16px;
}
#loyaltyWalletDesignModule .lwd-punch-empty a {
  color: var(--an-rose);
  font-weight: 600;
}
#loyaltyWalletDesignModule .lwd-apple-strip,
#loyaltyWalletDesignModule .lwd-google-hero {
  position: relative;
}
#loyaltyWalletDesignModule .lwd-stamps {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
}
#loyaltyWalletDesignModule .lwd-stamps--banner::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
}
#loyaltyWalletDesignModule .lwd-stamp {
  position: absolute;
  aspect-ratio: 1;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  container-type: inline-size;
  color: var(--lwd-stamp-fg);
  border: 2px solid color-mix(in srgb, var(--lwd-stamp-fg) 57%, transparent);
}
#loyaltyWalletDesignModule .lwd-stamp i {
  font-size: 52cqi;
  opacity: 0.5;
}
#loyaltyWalletDesignModule .lwd-stamp img {
  width: 66%;
  height: 66%;
  object-fit: contain;
  filter: grayscale(1);
  opacity: 0.3;
}
#loyaltyWalletDesignModule .lwd-stamp--reward {
  border-color: color-mix(in srgb, var(--lwd-stamp-fg) 80%, transparent);
}
#loyaltyWalletDesignModule .lwd-stamp--reward i {
  opacity: 0.8;
}
#loyaltyWalletDesignModule .lwd-stamp--filled {
  background: var(--lwd-stamp-fg);
  border-color: var(--lwd-stamp-fg);
  color: var(--lwd-stamp-bg);
}
#loyaltyWalletDesignModule .lwd-stamp--filled i {
  opacity: 1;
}
#loyaltyWalletDesignModule .lwd-stamp--filled img {
  filter: none;
  opacity: 1;
}
#loyaltyWalletDesignModule .lwd-stamp-bar {
  position: absolute;
  left: 7%;
  right: 4%;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  gap: 5%;
  color: var(--lwd-stamp-fg);
}
#loyaltyWalletDesignModule .lwd-stamp-bar i {
  font-size: 26px;
  opacity: 0.6;
}
#loyaltyWalletDesignModule .lwd-stamp-bar-track {
  flex: 1;
  height: 14px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--lwd-stamp-fg) 30%, transparent);
  overflow: hidden;
}
#loyaltyWalletDesignModule .lwd-stamp-bar-fill {
  display: block;
  height: 100%;
  border-radius: 999px;
  background: var(--lwd-stamp-fg);
}
#loyaltyWalletDesignModule .lwd-tier-override {
  border: 1px solid #e6e8eb;
  border-radius: 8px;
  margin-bottom: 8px;
  background: #fbfcfd;
  overflow: hidden;
}
.waitry-dark-theme #loyaltyWalletDesignModule .lwd-tier-override {
  background: var(--an-surface3);
}
#loyaltyWalletDesignModule .lwd-tier-override-head {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  cursor: pointer;
  user-select: none;
  background: #fff;
}
.waitry-dark-theme #loyaltyWalletDesignModule .lwd-tier-override-head {
  background: var(--an-surface-brighter, #fff);
}
#loyaltyWalletDesignModule .lwd-tier-override-badge {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 13px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
}
#loyaltyWalletDesignModule .lwd-tier-override-titles {
  flex: 1;
  min-width: 0;
}
#loyaltyWalletDesignModule .lwd-tier-override-name {
  font-size: 13px;
  font-weight: 600;
  color: #2a2f37;
}
.waitry-dark-theme #loyaltyWalletDesignModule .lwd-tier-override-name {
  color: var(--an-text-muted);
}
#loyaltyWalletDesignModule .lwd-tier-override-sub {
  font-size: 11px;
  color: #8a8f99;
}
#loyaltyWalletDesignModule .lwd-tier-override-on {
  color: #2196f3;
  font-weight: 600;
}
#loyaltyWalletDesignModule .lwd-tier-override-off {
  color: #8a8f99;
}
#loyaltyWalletDesignModule .lwd-tier-override-switch {
  margin: 0 4px 0 0;
}
#loyaltyWalletDesignModule .lwd-tier-override-body {
  padding: 12px;
  border-top: 1px solid #e6e8eb;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
#loyaltyWalletDesignModule .lwd-tier-override-actions {
  display: flex;
  justify-content: flex-end;
}
#loyaltyWalletDesignModule .lwd-tier-benefits {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  color: #2a2f37;
  background: #fff7e6;
  border: 1px solid #ffe4a1;
  border-radius: 6px;
  padding: 6px 10px;
  align-self: flex-start;
}
#loyaltyWalletDesignModule .lwd-tier-benefits i {
  color: #d18800;
  font-size: 16px;
}
#loyaltyWalletDesignModule .lwd-coming-soon {
  font-size: 11px;
  color: #b0b5bd;
  text-align: center;
  margin: 16px 0 0;
  font-style: italic;
}

/* ════════════════════════════════════════════════════════════════════
   SEND-TEST-PASS DIALOG
   ════════════════════════════════════════════════════════════════════ */
.lwd-test-dialog {
  max-width: 560px;
  width: 90vw;
}
.lwd-test-dialog .lwd-test-loading {
  text-align: center;
  padding: 40px 20px;
  color: #6b7280;
}
.lwd-test-dialog .lwd-test-loading md-progress-circular {
  margin: 0 auto 12px;
}
.lwd-test-dialog .lwd-test-intro {
  color: #6b7280;
  font-size: 13px;
  margin: 0 0 18px;
}
.lwd-test-dialog .lwd-test-section + .lwd-test-section {
  margin-top: 20px;
}
.lwd-test-dialog .lwd-test-h3 {
  margin: 0 0 4px;
  font-size: 14px;
  font-weight: 600;
  color: #2a2f37;
  display: flex;
  align-items: center;
  gap: 8px;
}
.waitry-dark-theme .lwd-test-dialog .lwd-test-h3 {
  color: var(--an-text-muted);
}
.lwd-test-dialog .lwd-test-h3 i {
  color: #2196f3;
  font-size: 18px;
}
.lwd-test-dialog .lwd-test-help {
  font-size: 12px;
  color: #8a8f99;
  margin: 0 0 10px;
}
.lwd-test-dialog .lwd-test-email-row {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.lwd-test-dialog .lwd-test-email-row input {
  flex: 1;
  min-width: 200px;
  padding: 8px 10px;
  border: 1px solid #d4d7dc;
  border-radius: 6px;
  font-size: 13px;
}
.lwd-test-dialog .lwd-test-qr-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
@media (max-width: 480px) {
  .lwd-test-dialog .lwd-test-qr-grid {
    grid-template-columns: 1fr;
  }
}
.lwd-test-dialog .lwd-test-qr-card {
  background: #f7f8fa;
  border: 1px solid #e6e8eb;
  border-radius: 10px;
  padding: 14px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}
.waitry-dark-theme .lwd-test-dialog .lwd-test-qr-card {
  background: var(--an-surface2);
}
.lwd-test-dialog .lwd-test-qr-head {
  font-weight: 600;
  font-size: 13px;
  color: #2a2f37;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.waitry-dark-theme .lwd-test-dialog .lwd-test-qr-head {
  color: var(--an-text-muted);
}
.lwd-test-dialog .lwd-test-qr {
  width: 180px;
  height: 180px;
  background: #fff;
  border-radius: 8px;
  padding: 4px;
}
.lwd-test-dialog .lwd-test-link {
  font-size: 12px;
  color: #2196f3;
  text-decoration: none;
}
.lwd-test-dialog .lwd-test-link:hover {
  text-decoration: underline;
}
.lwd-test-dialog .lwd-test-empty {
  text-align: center;
  padding: 24px;
  color: #b0b5bd;
}
.lwd-test-dialog .lwd-test-empty i {
  font-size: 32px;
  display: block;
  margin-bottom: 8px;
}

@keyframes lwd-pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(255, 184, 77, 0.6);
  }
  70% {
    box-shadow: 0 0 0 8px rgba(255, 184, 77, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(255, 184, 77, 0);
  }
}
.sk-pulse {
  animation: lwd-sk-pulse 1.4s ease-in-out infinite;
}

.lwd-hidden-file-input {
  display: none;
}

:root {
  --ref-bg: #f7f8fc;
  --ref-card-bg: #ffffff;
  --ref-card-border: #e8eaee;
  --ref-card-shadow: 0 2px 12px rgba(0,0,0,.07);
  --ref-text-primary: #1a1f36;
  --ref-text-secondary: #697386;
  --ref-accent: #5c6bc0;
  --ref-accent-light: rgba(92, 107, 192, .12);
  --ref-strip-radius: 4px;
  --ref-chip-active-bg: #5c6bc0;
  --ref-chip-active-text:#ffffff;
  --ref-chip-bg: #eef0f8;
  --ref-chip-text: #697386;
  --ref-empty-ring: rgba(92, 107, 192, .15);
}

.waitry-dark-theme {
  --ref-bg: #161b2e;
  --ref-card-bg: #1f2740;
  --ref-card-border: #2c3456;
  --ref-card-shadow: 0 2px 16px rgba(0,0,0,.35);
  --ref-text-primary: #e8ecff;
  --ref-text-secondary: #8a96c0;
  --ref-accent: #7986cb;
  --ref-accent-light: rgba(121, 134, 203, .15);
  --ref-chip-active-bg: #7986cb;
  --ref-chip-bg: #2c3456;
  --ref-chip-text: #8a96c0;
  --ref-empty-ring: rgba(121, 134, 203, .18);
}

#referralOverviewModule,
#referralEventsModule {
  background: var(--ref-bg);
  min-height: 100%;
}

#referralOverviewModule:has(.ref-empty-state:not(.ng-hide)) {
  padding-bottom: 0 !important;
}

.ref-filter-bar {
  display: flex;
  align-items: center;
  padding: 4px 20px 0;
  gap: 8px;
}
.ref-filter-bar .ref-status-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.ref-filter-bar .ref-status-chips md-chip {
  background: var(--ref-chip-bg) !important;
  color: var(--ref-chip-text) !important;
  font-size: 12px;
  font-weight: 500;
  cursor: pointer;
  border-radius: 20px;
  padding: 4px 14px;
  transition: background 0.2s, color 0.2s, transform 0.15s;
}
.ref-filter-bar .ref-status-chips md-chip:hover {
  transform: translateY(-1px);
}
.ref-filter-bar .ref-status-chips md-chip.ref-chip--active {
  background: var(--ref-chip-active-bg) !important;
  color: var(--ref-chip-active-text) !important;
}

.ref-skeleton-wrap {
  padding: 20px;
}
.ref-skeleton-wrap .ref-skeleton-card,
.ref-skeleton-wrap .ref-skeleton-row {
  background: var(--ref-card-border);
  border-radius: 12px;
  margin-bottom: 12px;
}
.ref-skeleton-wrap .ref-skeleton-card {
  height: 120px;
}
.ref-skeleton-wrap .ref-skeleton-row {
  height: 48px;
}

.ref-empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  flex: 1;
  padding: 60px 20px;
  text-align: center;
  margin: 0 !important;
}
.ref-empty-state .ref-empty-inner {
  max-width: 480px;
}
.ref-empty-state .ref-empty-icon-wrap {
  position: relative;
  width: 100px;
  height: 100px;
  margin: 0 auto 28px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ref-empty-state .ref-empty-rings {
  position: absolute;
  inset: 0;
}
.ref-empty-state .ref-ring {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 2px solid var(--ref-empty-ring);
  animation: refRingPulse 2.4s ease-out infinite;
}
.ref-empty-state .ref-ring--1 {
  animation-delay: 0s;
}
.ref-empty-state .ref-ring--2 {
  animation-delay: 0.6s;
}
.ref-empty-state .ref-ring--3 {
  animation-delay: 1.2s;
}
.ref-empty-state .ref-empty-icon {
  font-size: 38px !important;
  width: 38px !important;
  height: 38px !important;
  color: var(--ref-accent);
  position: relative;
  z-index: 1;
}
.ref-empty-state .ref-empty-headline {
  font-size: 22px;
  font-weight: 700;
  color: var(--ref-text-primary);
  margin: 0 0 10px;
}
.ref-empty-state .ref-empty-sub {
  font-size: 14px;
  color: var(--ref-text-secondary);
  margin: 0 0 28px;
  line-height: 1.6;
}
.ref-empty-state .ref-empty-features {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin-bottom: 32px;
}
.ref-empty-state .ref-feat-pill {
  display: flex;
  align-items: center;
  gap: 6px;
  background: var(--ref-accent-light);
  color: var(--ref-accent);
  border-radius: 20px;
  padding: 6px 14px;
  font-size: 13px;
  font-weight: 500;
}
.ref-empty-state .ref-feat-pill i {
  font-size: 15px;
}
.ref-empty-state .ref-empty-cta {
  background: var(--ref-accent) !important;
  color: #fff !important;
  border-radius: 8px;
  font-weight: 600;
  padding: 10px 24px;
  box-shadow: 0 4px 16px rgba(92, 107, 192, 0.35);
}
.ref-empty-state .ref-empty-cta i {
  margin-right: 6px;
}
.ref-empty-state .ref-empty-cta:hover {
  box-shadow: 0 6px 20px rgba(92, 107, 192, 0.5);
  transform: translateY(-1px);
}
.ref-empty-state--compact {
  padding: 40px 20px;
}
.ref-empty-state--compact i {
  font-size: 48px;
  color: var(--ref-text-secondary);
}
.ref-empty-state--compact p {
  color: var(--ref-text-secondary);
  margin: 12px 0 0;
  font-size: 14px;
}

@keyframes refRingPulse {
  0% {
    transform: scale(0.7);
    opacity: 0.7;
  }
  100% {
    transform: scale(1.8);
    opacity: 0;
  }
}
.ref-program-count {
  padding: 16px 20px 8px;
  font-size: 13px;
  color: var(--ref-text-secondary);
  font-weight: 500;
}
.ref-program-count span:first-child {
  color: var(--ref-accent);
  font-weight: 700;
  font-size: 16px;
}

.ref-program-list {
  padding: 0 20px 40px;
}

.ref-program-card {
  display: flex;
  background: var(--ref-card-bg);
  border: 1px solid var(--ref-card-border);
  border-radius: 12px;
  box-shadow: var(--ref-card-shadow);
  margin-bottom: 14px;
  overflow: hidden;
  transition: box-shadow 0.2s, transform 0.15s;
}
.ref-program-card:hover {
  box-shadow: 0 6px 24px rgba(0, 0, 0, 0.13);
  transform: translateY(-1px);
}
.ref-program-card .ref-card-strip {
  width: 5px;
  flex-shrink: 0;
  border-radius: var(--ref-strip-radius) 0 0 var(--ref-strip-radius);
}
.ref-program-card .ref-card-body {
  flex: 1;
  padding: 16px 20px;
}

.ref-card-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 10px;
}
.ref-card-header .ref-card-title-area {
  flex: 1;
}
.ref-card-header .ref-card-name {
  font-size: 16px;
  font-weight: 700;
  color: var(--ref-text-primary);
  margin: 4px 0 2px;
}
.ref-card-header .ref-card-desc {
  font-size: 13px;
  color: var(--ref-text-secondary);
  margin: 0;
}
.ref-card-header .ref-card-actions {
  display: flex;
  align-items: center;
  gap: 2px;
  flex-shrink: 0;
}
.ref-card-header .ref-card-actions .ref-btn-activate md-icon {
  color: #4caf50;
}
.ref-card-header .ref-card-actions .ref-btn-pause md-icon {
  color: #ff9800;
}
.ref-card-header .ref-card-actions .ref-btn-archive md-icon {
  color: #9e9e9e;
}

.ref-status-badge {
  display: inline-block;
  border-radius: 12px;
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  padding: 3px 10px;
  margin-bottom: 4px;
}

.ref-card-rewards {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 10px;
}

.ref-reward-chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 12px;
  border-radius: 16px;
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
  vertical-align: middle;
}
.ref-reward-chip i {
  font-size: 13px;
  line-height: 1;
  display: flex;
  align-items: center;
}
.ref-reward-chip .ref-reward-label {
  font-weight: 400;
  opacity: 0.7;
  line-height: 1;
}
.ref-reward-chip .ref-reward-value {
  font-weight: 700;
  line-height: 1;
}
.ref-reward-chip--referrer {
  background: rgba(76, 175, 80, 0.12);
  color: #388e3c;
}
.waitry-dark-theme .ref-reward-chip--referrer {
  background: rgba(76, 175, 80, 0.18);
  color: #81c784;
}
.ref-reward-chip--referee {
  background: rgba(33, 150, 243, 0.12);
  color: #1565c0;
}
.waitry-dark-theme .ref-reward-chip--referee {
  background: rgba(33, 150, 243, 0.18);
  color: #64b5f6;
}
.ref-reward-chip--single {
  background: var(--ref-accent-light);
  color: var(--ref-accent);
}

.ref-card-meta {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}
.ref-card-meta .ref-meta-item {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  color: var(--ref-text-secondary);
}
.ref-card-meta .ref-meta-item i {
  font-size: 13px;
}

.ref-events-filters {
  background: var(--ref-card-bg);
  border-bottom: 1px solid var(--ref-card-border);
  padding: 8px 20px;
}
.ref-events-filters .ref-filter-row {
  gap: 12px;
}

.ref-event-count {
  padding: 12px 20px 4px;
  font-size: 13px;
  color: var(--ref-text-secondary);
}
.ref-event-count span:first-child {
  color: var(--ref-accent);
  font-weight: 700;
  font-size: 16px;
}

.ref-events-table {
  padding: 0 20px 40px;
}
.ref-events-table .waitry-table {
  width: 100%;
  border-collapse: collapse;
  background: var(--ref-card-bg);
  border-radius: 12px;
  overflow: hidden;
  box-shadow: var(--ref-card-shadow);
}
.ref-events-table .waitry-table thead tr {
  background: var(--ref-accent-light);
}
.ref-events-table .waitry-table thead tr th {
  padding: 10px 14px;
  text-align: left;
  font-size: 11px;
  font-weight: 700;
  color: var(--ref-text-secondary);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.ref-events-table .waitry-table tbody tr {
  border-bottom: 1px solid var(--ref-card-border);
  transition: background 0.15s;
}
.ref-events-table .waitry-table tbody tr:hover {
  background: var(--ref-accent-light);
}
.ref-events-table .waitry-table tbody tr:last-child {
  border-bottom: none;
}
.ref-events-table .waitry-table tbody tr td {
  padding: 10px 14px;
  font-size: 13px;
  color: var(--ref-text-primary);
  vertical-align: middle;
}

.ref-ev-id {
  font-family: monospace;
  color: var(--ref-text-secondary) !important;
  font-size: 11px !important;
}

.ref-event-status-badge {
  display: inline-block;
  border-radius: 10px;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 3px 9px;
}

.ref-block-reason {
  margin-left: 4px;
  color: #f44336;
  cursor: help;
  vertical-align: middle;
}

.ref-source-badge {
  font-size: 11px;
  background: var(--ref-chip-bg);
  color: var(--ref-chip-text);
  padding: 2px 8px;
  border-radius: 10px;
}

.ref-ev-actions {
  white-space: nowrap;
}
.ref-ev-actions .ref-btn-approve md-icon {
  color: #4caf50;
}
.ref-ev-actions .ref-btn-revoke md-icon {
  color: #f44336;
}

#referralProgramFormDialog {
  width: 780px;
  max-width: 96vw;
}
#referralProgramFormDialog .ref-form-tabs--no-anim md-tab-content {
  transition: none !important;
  animation: none !important;
}
#referralProgramFormDialog .ref-form-tabs--no-anim md-tabs-canvas,
#referralProgramFormDialog .ref-form-tabs--no-anim md-tabs-content-wrapper {
  transition: none !important;
}
#referralProgramFormDialog .ref-tab-content {
  padding: 20px 24px 24px;
}
#referralProgramFormDialog .rff-info-banner {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 16px;
  border-radius: 8px;
  margin-bottom: 20px;
  font-size: 13px;
  line-height: 1.5;
}
#referralProgramFormDialog .rff-info-banner i {
  font-size: 18px;
  flex-shrink: 0;
  margin-top: 1px;
}
#referralProgramFormDialog .rff-info-banner p {
  margin: 0;
}
#referralProgramFormDialog .rff-info-banner--green {
  background: rgba(76, 175, 80, 0.1);
  color: #2e7d32;
}
#referralProgramFormDialog .rff-info-banner--green i {
  color: #43a047;
}
#referralProgramFormDialog .rff-info-banner--blue {
  background: rgba(33, 150, 243, 0.1);
  color: #1565c0;
}
#referralProgramFormDialog .rff-info-banner--blue i {
  color: #1e88e5;
}
#referralProgramFormDialog .rff-info-banner--purple {
  background: rgba(156, 39, 176, 0.1);
  color: #6a1b9a;
}
#referralProgramFormDialog .rff-info-banner--purple i {
  color: #8e24aa;
}
#referralProgramFormDialog .rff-info-banner--red {
  background: rgba(244, 67, 54, 0.1);
  color: #b71c1c;
}
#referralProgramFormDialog .rff-info-banner--red i {
  color: #e53935;
}
#referralProgramFormDialog .rff-info-banner--amber {
  background: rgba(255, 152, 0, 0.1);
  color: #e65100;
}
#referralProgramFormDialog .rff-info-banner--amber i {
  color: #fb8c00;
}
.waitry-dark-theme #referralProgramFormDialog .rff-info-banner--green {
  background: rgba(76, 175, 80, 0.15);
  color: #81c784;
}
.waitry-dark-theme #referralProgramFormDialog .rff-info-banner--green i {
  color: #66bb6a;
}
.waitry-dark-theme #referralProgramFormDialog .rff-info-banner--blue {
  background: rgba(33, 150, 243, 0.15);
  color: #64b5f6;
}
.waitry-dark-theme #referralProgramFormDialog .rff-info-banner--blue i {
  color: #42a5f5;
}
.waitry-dark-theme #referralProgramFormDialog .rff-info-banner--purple {
  background: rgba(156, 39, 176, 0.15);
  color: #ce93d8;
}
.waitry-dark-theme #referralProgramFormDialog .rff-info-banner--purple i {
  color: #ba68c8;
}
.waitry-dark-theme #referralProgramFormDialog .rff-info-banner--red {
  background: rgba(244, 67, 54, 0.15);
  color: #ef9a9a;
}
.waitry-dark-theme #referralProgramFormDialog .rff-info-banner--red i {
  color: #ef5350;
}
.waitry-dark-theme #referralProgramFormDialog .rff-info-banner--amber {
  background: rgba(255, 152, 0, 0.15);
  color: #ffcc80;
}
.waitry-dark-theme #referralProgramFormDialog .rff-info-banner--amber i {
  color: #ffa726;
}
#referralProgramFormDialog .rff-section {
  margin-bottom: 4px;
}
#referralProgramFormDialog .rff-section-header {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 13px;
  font-weight: 700;
  color: var(--ref-accent);
  margin-bottom: 4px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
#referralProgramFormDialog .rff-section-header i {
  font-size: 16px;
}
#referralProgramFormDialog .rff-section-label {
  font-size: 12px;
  font-weight: 700;
  color: var(--ref-text-secondary);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin: 0 0 12px;
}
#referralProgramFormDialog .rff-section-hint {
  font-size: 13px;
  color: var(--ref-text-secondary);
  margin: 0 0 14px;
  line-height: 1.5;
}
#referralProgramFormDialog .rff-divider {
  border: none;
  border-top: 1px solid var(--ref-card-border);
  margin: 18px 0;
}
#referralProgramFormDialog .rff-field {
  margin-bottom: 20px;
}
#referralProgramFormDialog .rff-field--half {
  flex: 0 0 calc(50% - 8px);
  min-width: 0;
}
#referralProgramFormDialog .rff-field--quarter {
  flex: 0 0 calc(25% - 8px);
  min-width: 0;
}
#referralProgramFormDialog .rff-row {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}
#referralProgramFormDialog .rff-label {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: var(--ref-text-primary);
  margin-bottom: 4px;
}
#referralProgramFormDialog .rff-required {
  color: #e53935;
  margin-left: 2px;
}
#referralProgramFormDialog .rff-hint {
  font-size: 12px;
  color: var(--ref-text-secondary);
  margin: 0 0 8px;
  line-height: 1.5;
}
#referralProgramFormDialog .rff-unit {
  font-size: 12px;
  color: var(--ref-text-secondary);
  margin-left: 6px;
}
#referralProgramFormDialog .rff-char-count {
  display: block;
  font-size: 11px;
  color: var(--ref-text-secondary);
  text-align: right;
  margin-top: 4px;
}
#referralProgramFormDialog .rff-input {
  display: block;
  width: 100%;
  padding: 9px 12px;
  font-size: 14px;
  line-height: 1.4;
  color: var(--ref-text-primary);
  background: var(--ref-card-bg);
  border: 1.5px solid var(--ref-card-border);
  border-radius: 8px;
  outline: none;
  transition: border-color 0.15s, box-shadow 0.15s;
  box-sizing: border-box;
  font-family: inherit;
}
#referralProgramFormDialog .rff-input::placeholder {
  color: var(--ref-text-secondary);
  opacity: 0.7;
}
#referralProgramFormDialog .rff-input:focus {
  border-color: var(--ref-accent);
  box-shadow: 0 0 0 3px var(--ref-accent-light);
}
#referralProgramFormDialog .rff-input--narrow {
  width: 140px;
}
#referralProgramFormDialog .rff-textarea {
  resize: vertical;
  min-height: 80px;
}
#referralProgramFormDialog .rff-select-container {
  padding: 0 !important;
  margin: 0 !important;
  min-width: 0 !important;
  width: 100% !important;
}
#referralProgramFormDialog .rff-select-container .md-select-value {
  border-bottom: none !important;
  background: var(--ref-card-bg);
  border: 1.5px solid var(--ref-card-border) !important;
  border-radius: 8px !important;
  padding: 8px 12px !important;
  font-size: 14px !important;
  color: var(--ref-text-primary) !important;
  transition: border-color 0.15s !important;
}
#referralProgramFormDialog .rff-select-container .md-select-value:focus, #referralProgramFormDialog .rff-select-container .md-select-value.md-select-focused {
  border-color: var(--ref-accent) !important;
  box-shadow: 0 0 0 3px var(--ref-accent-light) !important;
}
#referralProgramFormDialog .rff-select-container label {
  display: none !important;
}
#referralProgramFormDialog .rff-datepicker {
  width: 100% !important;
  background: var(--ref-card-bg) !important;
  border: 1.5px solid var(--ref-card-border) !important;
  border-radius: 8px !important;
  padding: 4px 12px !important;
  box-shadow: none !important;
  height: auto !important;
  box-sizing: border-box;
  transition: border-color 0.15s !important;
}
#referralProgramFormDialog .rff-datepicker:focus-within {
  border-color: var(--ref-accent) !important;
  box-shadow: 0 0 0 3px var(--ref-accent-light) !important;
}
#referralProgramFormDialog .rff-datepicker .md-datepicker-input-container {
  border: none !important;
  background: transparent !important;
  width: 100% !important;
}
#referralProgramFormDialog .rff-datepicker .md-datepicker-input {
  background: transparent !important;
  border: none !important;
  color: var(--ref-text-primary) !important;
  font-size: 14px !important;
  height: auto !important;
  padding: 4px 0 !important;
  line-height: 1.4 !important;
  font-family: inherit !important;
}
#referralProgramFormDialog .rff-datepicker .md-datepicker-button {
  margin: 0 4px 0 0 !important;
  color: var(--ref-accent) !important;
  min-height: 24px !important;
  min-width: 24px !important;
  width: 24px !important;
  height: 24px !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
#referralProgramFormDialog .rff-datepicker .md-datepicker-button md-icon {
  font-size: 18px !important;
  width: 18px !important;
  height: 18px !important;
}
#referralProgramFormDialog .rff-switches-group {
  display: flex;
  flex-direction: column;
  gap: 0;
}
#referralProgramFormDialog .rff-switch-field {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 12px 0;
  border-bottom: 1px solid var(--ref-card-border);
}
#referralProgramFormDialog .rff-switch-field:last-child {
  border-bottom: none;
}
#referralProgramFormDialog .rff-switch-info {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
#referralProgramFormDialog .rff-switch-label {
  font-size: 14px;
  font-weight: 600;
  color: var(--ref-text-primary);
}
#referralProgramFormDialog .rff-switch-desc {
  font-size: 12px;
  color: var(--ref-text-secondary);
  line-height: 1.4;
}
#referralProgramFormDialog .rff-switch {
  margin: 0 !important;
  flex-shrink: 0;
}
#referralProgramFormDialog .ref-tier-row {
  background: var(--ref-accent-light);
  border-radius: 10px;
  padding: 12px 16px;
  margin-bottom: 10px;
}
#referralProgramFormDialog .rff-tier-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
}
#referralProgramFormDialog .rff-tier-badge {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--ref-accent);
  background: var(--ref-accent-light);
  border: 1px solid var(--ref-accent);
  padding: 2px 10px;
  border-radius: 12px;
}
#referralProgramFormDialog .rff-tier-remove {
  color: var(--ref-text-secondary) !important;
}
#referralProgramFormDialog .rff-tier-remove md-icon {
  font-size: 18px;
}
#referralProgramFormDialog .rff-add-tier-btn {
  margin-top: 4px;
  color: var(--ref-accent) !important;
}

.ref-analytics-panel {
  display: flex;
  flex-direction: column;
  min-height: 60vh;
  padding-bottom: 40px;
}

.ref-analytics-toolbar {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  background: var(--ref-card-bg);
  border-bottom: 1px solid var(--ref-card-border);
  flex-wrap: wrap;
}
.ref-analytics-toolbar .ref-analytics-title {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 15px;
  font-weight: 700;
  color: var(--ref-text-primary);
}
.ref-analytics-toolbar .ref-analytics-title i {
  color: var(--ref-accent);
  font-size: 18px;
}
.ref-analytics-toolbar .ref-analytics-date {
  min-width: 110px;
  max-width: 150px;
  background: transparent !important;
  border: none !important;
  border-bottom: 1.5px solid var(--ref-card-border) !important;
  border-radius: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
  height: auto !important;
}
.ref-analytics-toolbar .ref-analytics-date .md-datepicker-input-container {
  border: none !important;
  background: transparent !important;
  margin: 0 !important;
  padding: 0 !important;
  height: auto !important;
  width: 100% !important;
}
.ref-analytics-toolbar .ref-analytics-date .md-datepicker-input-container.md-datepicker-focused {
  border: none !important;
  box-shadow: none !important;
}
.ref-analytics-toolbar .ref-analytics-date .md-datepicker-input {
  background: transparent !important;
  border: none !important;
  color: var(--ref-text-primary) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  height: auto !important;
  padding: 4px 0 !important;
  line-height: normal !important;
}
.ref-analytics-toolbar .ref-analytics-date .md-datepicker-button {
  margin: 0 4px 0 0 !important;
  color: var(--ref-accent) !important;
  min-height: 20px !important;
  min-width: 20px !important;
  width: 20px !important;
  height: 20px !important;
  line-height: 20px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
}
.ref-analytics-toolbar .ref-analytics-date .md-datepicker-button md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
}
.ref-analytics-toolbar .ref-date-sep {
  color: var(--ref-text-secondary);
  font-size: 13px;
}

.ref-groupby-toggle {
  display: flex;
  border: 1px solid var(--ref-card-border);
  border-radius: 8px;
  overflow: hidden;
  margin: 0 4px;
}
.ref-groupby-toggle .ref-groupby-btn {
  min-width: 52px;
  height: 32px;
  line-height: 32px;
  font-size: 12px;
  font-weight: 600;
  color: var(--ref-text-secondary);
  background: transparent;
  border-radius: 0;
  margin: 0;
  padding: 0 10px;
  min-height: unset;
  transition: background 0.2s, color 0.2s;
}
.ref-groupby-toggle .ref-groupby-btn.ref-groupby-btn--active {
  background: var(--ref-accent);
  color: #fff;
}

.ref-analytics-loading {
  display: flex;
  justify-content: center;
  padding: 60px 0;
}

.ref-analytics-error {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 40px;
  color: #f44336;
  font-size: 14px;
}
.ref-analytics-error i {
  font-size: 22px;
}

.ref-analytics-content {
  padding: 20px;
}

.ref-kpi-row {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  gap: 12px;
  margin-bottom: 24px;
}

.ref-kpi-tile {
  background: var(--ref-card-bg);
  border: 1px solid var(--ref-card-border);
  border-radius: 12px;
  box-shadow: var(--ref-card-shadow);
  padding: 16px 18px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  transition: transform 0.15s;
}
.ref-kpi-tile:hover {
  transform: translateY(-2px);
}
.ref-kpi-tile .ref-kpi-value {
  font-size: 26px;
  font-weight: 800;
  color: var(--ref-text-primary);
  line-height: 1;
}
.ref-kpi-tile .ref-kpi-label {
  font-size: 11px;
  font-weight: 600;
  color: var(--ref-text-secondary);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.ref-kpi-tile.ref-kpi-tile--accent {
  background: var(--ref-accent);
  border-color: transparent;
}
.ref-kpi-tile.ref-kpi-tile--accent .ref-kpi-value {
  color: #fff;
}
.ref-kpi-tile.ref-kpi-tile--accent .ref-kpi-label {
  color: rgba(255, 255, 255, 0.75);
}

.ref-charts-row {
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 16px;
  margin-bottom: 24px;
  align-items: start;
}
@media (max-width: 700px) {
  .ref-charts-row {
    grid-template-columns: 1fr;
  }
}

.ref-chart-card {
  background: var(--ref-card-bg);
  border: 1px solid var(--ref-card-border);
  border-radius: 12px;
  box-shadow: var(--ref-card-shadow);
  padding: 18px;
}
.ref-chart-card .ref-chart-title {
  font-size: 13px;
  font-weight: 700;
  color: var(--ref-text-secondary);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 14px;
}
.ref-chart-card .ref-chart-wrap canvas {
  max-height: 260px;
}
.ref-chart-card.ref-chart-card--wide .ref-chart-wrap canvas {
  max-height: 220px;
}

.ref-leaderboard {
  background: var(--ref-card-bg);
  border: 1px solid var(--ref-card-border);
  border-radius: 12px;
  box-shadow: var(--ref-card-shadow);
  overflow: hidden;
}
.ref-leaderboard .ref-leaderboard-title {
  padding: 14px 18px 10px;
  font-size: 13px;
  font-weight: 700;
  color: var(--ref-text-secondary);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  border-bottom: 1px solid var(--ref-card-border);
}

.ref-lb-table {
  width: 100%;
  border-collapse: collapse;
}
.ref-lb-table thead tr {
  background: var(--ref-accent-light);
}
.ref-lb-table thead tr th {
  padding: 9px 14px;
  text-align: left;
  font-size: 11px;
  font-weight: 700;
  color: var(--ref-text-secondary);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.ref-lb-table tbody tr {
  border-bottom: 1px solid var(--ref-card-border);
  transition: background 0.15s;
}
.ref-lb-table tbody tr:last-child {
  border-bottom: none;
}
.ref-lb-table tbody tr:hover {
  background: var(--ref-accent-light);
}
.ref-lb-table tbody tr.ref-lb-row--top {
  font-weight: 700;
}
.ref-lb-table tbody tr td {
  padding: 10px 14px;
  font-size: 13px;
  color: var(--ref-text-primary);
  vertical-align: middle;
}
.ref-lb-table .ref-lb-rank {
  font-size: 16px;
  width: 40px;
  text-align: center;
}
.ref-lb-table .ref-lb-num {
  text-align: right;
  font-weight: 600;
  min-width: 60px;
}
.ref-lb-table .ref-lb-num.ref-lb-num--accent {
  color: var(--ref-accent);
}

.ref-leaderboard-empty {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 32px;
  color: var(--ref-text-secondary);
  font-size: 14px;
}
.ref-leaderboard-empty i {
  font-size: 20px;
}

.ref-ev-tab-toggle {
  display: flex;
  border: 1px solid var(--ref-card-border);
  border-radius: 8px;
  overflow: hidden;
  margin-right: 4px;
}
.ref-ev-tab-toggle .ref-ev-tab-btn {
  min-width: 80px;
  height: 34px;
  line-height: 34px;
  font-size: 12px;
  font-weight: 600;
  color: var(--ref-text-secondary);
  background: transparent;
  border-radius: 0;
  margin: 0;
  padding: 0 12px;
  min-height: unset;
  display: flex;
  align-items: center;
  gap: 5px;
  transition: background 0.2s, color 0.2s;
}
.ref-ev-tab-toggle .ref-ev-tab-btn md-icon {
  font-size: 15px;
}
.ref-ev-tab-toggle .ref-ev-tab-btn.ref-ev-tab-btn--active {
  background: var(--ref-accent);
  color: #fff;
}
.ref-ev-tab-toggle .ref-ev-tab-btn.ref-ev-tab-btn--active md-icon {
  color: #fff;
}

.ref-audit-table .ref-audit-detail {
  font-size: 12px;
  color: var(--ref-text-secondary);
  max-width: 220px;
  word-break: break-word;
}
.ref-audit-table .ref-audit-flags {
  white-space: nowrap;
  display: flex;
  align-items: center;
  gap: 4px;
}

.ref-filter-select {
  min-width: 160px;
  margin: 4px 8px 0;
}
.ref-filter-select.ref-filter-select--wide {
  min-width: 200px;
}

.layoutPlans {
  border: 1px solid #ccc;
  position: relative;
  margin: 20px;
  background-color: #d7d7d7;
}

.layoutPlans::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(#fff 1px, transparent 1px), linear-gradient(90deg, #fff 1px, transparent 1px);
  background-size: 25px 25px;
}

.layoutsShapes {
  position: absolute;
  cursor: move;
}

.table-shape {
  width: 75px;
  height: 75px;
  background-color: rgb(250, 88, 88);
  position: absolute;
  cursor: move;
  border-radius: 6px;
}

.unassignedTables {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  margin-top: 20px;
  margin-left: 20px;
}

.handle {
  width: 100%;
  cursor: move;
}

.unassignedTable {
  width: 75px;
  height: 75px;
  background-color: rgb(27, 164, 228);
  color: #fff;
  text-align: center;
  margin-right: 20px;
  margin-bottom: 20px;
}

.unassignedTableCopy {
  position: fixed;
  width: 75px;
  height: 75px;
  background-color: rgba(27, 164, 228, 0.5);
  color: #fff;
  text-align: center;
  line-height: 50px;
  cursor: move;
}

.circle {
  border-radius: 50%;
}

.rectangle {
  width: 150px !important;
  height: 75px !important;
}

.verticalRectangle {
  width: 75px !important;
  height: 150px !important;
}

.svgShape {
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.context-menu {
  display: block;
  position: absolute;
  background-color: #fff;
  border: 1px solid #ccc;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
  padding: 5px;
  width: 100px;
}
.waitry-dark-theme .context-menu {
  background-color: var(--an-surface2);
  border-color: var(--an-border);
}

.context-menu ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.context-menu li {
  cursor: pointer;
  padding: 5px;
}

.context-menu li:hover {
  background-color: #eee;
}
.waitry-dark-theme .context-menu li:hover {
  background-color: var(--an-surface3);
}

.svg-data-shape {
  width: 192px;
  height: 192px;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}

.unsaved-change {
  font-size: 12px;
  font-weight: 600;
  text-align: center;
  line-height: 1;
  margin-right: 24px;
}

.max-customer {
  border: 1px #fa9999 solid;
  border-radius: 5px;
  padding: 2px 4px 2px 4px;
  margin-top: 3px;
}

.ai-input-wrapper {
  position: relative;
  display: block;
}
.ai-input-wrapper .ai-magic-btn {
  position: absolute;
  bottom: 2px;
  right: 2px;
  min-width: 24px;
  width: 24px;
  height: 24px;
  padding: 0;
  margin: 0;
  line-height: 24px;
  z-index: 10;
  background: transparent;
}
.ai-input-wrapper .ai-magic-btn md-icon {
  color: #B0BEC5;
  font-size: 16px;
  width: 16px;
  height: 16px;
  line-height: 16px;
  transition: all 0.3s ease;
}
.ai-input-wrapper .ai-magic-btn:hover, .ai-input-wrapper .ai-magic-btn:focus {
  background: transparent;
}
.ai-input-wrapper .ai-magic-btn:hover md-icon, .ai-input-wrapper .ai-magic-btn:focus md-icon {
  color: #7E57C2;
  transform: scale(1.15);
}
.ai-input-wrapper .ai-magic-btn.ai-loading md-icon {
  animation: ai-spin 1.5s linear infinite;
  color: #7E57C2;
}

@keyframes ai-spin {
  100% {
    transform: rotate(360deg);
  }
}
/* ============================================================
   WAITRY ANALYTICS — Premium Design System
   Covers: Marketing + Service dashboards
   ============================================================ */
/* -- Design tokens and dark theme now in common/_theme.scss -- */
/* -- Inter font import now in common/_theme.scss -- */
/* Shimmer used by chart-card-skeleton placeholders below (mirrors
   %wt-shimmer-base in common/_loading.scss — not @extend-ed directly since
   Dart Sass @use scoping would require namespacing every call site). */
/* ── Layout ── */
#moduleReport,
#moduleReportMarketing,
#moduleReportService {
  font-family: "Inter", sans-serif;
  background: var(--an-bg);
  min-height: 100%;
}

#moduleReport md-content,
#moduleReportMarketing md-content,
#moduleReportService md-content {
  background: var(--an-bg) !important;
  padding-top: 0 !important;
}

#moduleReport md-toolbar,
#moduleReportMarketing md-toolbar,
#moduleReportService md-toolbar {
  background: var(--an-surface) !important;
  border-bottom: 1px solid var(--an-border);
  box-shadow: none !important;
}

#moduleReport md-toolbar h2,
#moduleReportMarketing md-toolbar h2,
#moduleReportService md-toolbar h2 {
  font-family: "Inter", sans-serif;
  font-weight: 700;
  font-size: 18px;
  color: var(--an-text);
  letter-spacing: -0.3px;
}

/* ── Dashboard grid ── */
.mkt-dashboard {
  padding: 20px 20px 40px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.mkt-row {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

/* ── Card ── */
.mkt-card {
  background: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.4);
  border-radius: var(--an-radius);
  box-shadow: 0 4px 16px -2px rgba(0, 0, 0, 0.05), 0 2px 4px -2px rgba(0, 0, 0, 0.025);
  overflow: visible;
  animation: anFadeUp 0.4s ease both;
  display: flex;
  flex-direction: column;
  min-width: 0;
  transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  font-family: "Outfit", sans-serif;
}
.waitry-dark-theme .mkt-card {
  background: rgba(15, 17, 23, 0.75);
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 4px 16px -2px rgba(0, 0, 0, 0.2), 0 2px 4px -2px rgba(0, 0, 0, 0.1);
}

.mkt-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 32px -4px rgba(0, 0, 0, 0.1), 0 4px 16px -4px rgba(0, 0, 0, 0.05);
}
.waitry-dark-theme .mkt-card:hover {
  box-shadow: 0 12px 32px -4px rgba(0, 0, 0, 0.3), 0 4px 16px -4px rgba(0, 0, 0, 0.2);
}

.mkt-card-inner {
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* @keyframes anFadeUp — defined in _dashboard.scss, not duplicated here */
.mkt-card:nth-child(2) {
  animation-delay: 0.05s;
}

.mkt-card:nth-child(3) {
  animation-delay: 0.1s;
}

.mkt-card:nth-child(4) {
  animation-delay: 0.15s;
}

/* ── Card Header ── */
.mkt-card-header {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  padding: 12px 16px 10px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1px;
  text-transform: uppercase;
  border-bottom: 1px solid rgba(0, 0, 0, 0.03);
  color: var(--an-text);
  overflow: hidden;
  border-radius: var(--an-radius) var(--an-radius) 0 0;
}

.mkt-card-header md-icon {
  font-size: 18px !important;
  height: 18px !important;
  width: 18px !important;
  min-width: 18px !important;
  margin: 0 !important;
  opacity: 0.85;
}

.mkt-card-header--purple {
  border-left: 3px solid var(--an-violet);
}

.mkt-card-header--purple md-icon {
  color: var(--an-violet) !important;
}

.mkt-card-header--green {
  border-left: 3px solid var(--an-emerald);
}

.mkt-card-header--green md-icon {
  color: var(--an-emerald) !important;
}

.mkt-card-header--red {
  border-left: 3px solid var(--an-rose);
}

.mkt-card-header--red md-icon {
  color: var(--an-rose) !important;
}

.mkt-card-header--teal {
  border-left: 3px solid var(--an-sky);
}

.mkt-card-header--teal md-icon {
  color: var(--an-sky) !important;
}

.mkt-card-header--orange {
  border-left: 3px solid var(--an-orange);
}

.mkt-card-header--orange md-icon {
  color: var(--an-orange) !important;
}

.mkt-card-header--indigo {
  border-left: 3px solid var(--an-indigo);
}

.mkt-card-header--indigo md-icon {
  color: var(--an-indigo) !important;
}

.mkt-card-header--blue {
  border-left: 3px solid var(--an-sky);
}

.mkt-card-header--blue md-icon {
  color: var(--an-sky) !important;
}

.mkt-card-header--violet {
  border-left: 3px solid var(--an-violet);
}

.mkt-card-header--violet md-icon {
  color: var(--an-violet) !important;
}

.mkt-card-header--amber {
  border-left: 3px solid var(--an-amber);
}

.mkt-card-header--amber md-icon {
  color: var(--an-amber) !important;
}

/* ── Card Body ── */
.mkt-card-body {
  padding: 12px 16px;
  flex: 1;
  color: var(--an-text);
}

.mkt-card-body--dense {
  padding: 8px 12px;
}

.mkt-card-body .md-caption {
  color: var(--an-text-muted) !important;
}

/* ── Skeleton loader ── */
.mkt-skeleton {
  background: linear-gradient(90deg, var(--an-surface2) 25%, var(--an-surface) 50%, var(--an-surface2) 75%);
  background-size: 200% 100%;
  animation: anSkeleton 1.4s infinite;
  border-radius: 6px;
  height: 14px;
  margin: 6px 0;
}

/* @keyframes anSkeleton — defined in _dashboard.scss, not duplicated here */
/* ── Funnel Flow Pipeline ── */
.mkt-funnel-flow {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 24px;
}

.mkt-pipeline {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  width: 100%;
}

.mkt-pipe-step {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  flex: 1;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  padding: 16px 12px;
  position: relative;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.02);
  transition: transform 0.2s, box-shadow 0.2s;
  border-top: 3px solid var(--pipe-color);
  min-width: 0;
}

.mkt-pipe-step:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.06);
}

.mkt-pipe-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  color: var(--an-text-muted);
}

.mkt-pipe-header md-icon {
  font-size: 24px !important;
  width: 24px !important;
  height: 24px !important;
  color: var(--pipe-color) !important;
}

.mkt-pipe-header span {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-weight: 700;
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}

.mkt-pipe-val {
  font-size: 28px;
  font-weight: 800;
  line-height: 1;
  color: var(--an-text);
  letter-spacing: -0.5px;
}

.mkt-pipe-connector {
  flex: 0 0 32px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  padding-top: 36px;
  position: relative;
}

.mkt-pipe-line {
  width: 100%;
  height: 2px;
  background: var(--an-border);
  position: absolute;
  top: 48px;
  left: 0;
  z-index: 0;
}

.mkt-pipe-line::after {
  content: "";
  position: absolute;
  right: -4px;
  top: -3px;
  width: 8px;
  height: 8px;
  border-top: 2px solid var(--an-border);
  border-right: 2px solid var(--an-border);
  transform: rotate(45deg);
}

.mkt-pipe-drop {
  font-size: 9px;
  color: var(--an-text-muted);
  font-weight: 600;
  background: var(--an-surface2);
  padding: 4px 8px;
  border-radius: 12px;
  border: 1px solid var(--an-border);
  white-space: nowrap;
  z-index: 1;
  margin-top: 24px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.mkt-pipeline-summary {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 16px;
  padding-top: 20px;
  margin-top: 18px;
  border-top: 1px dashed var(--an-border);
}

.mkt-badge {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  border-radius: 20px;
  font-size: 14px;
  font-weight: 700;
}

.mkt-badge span:last-child {
  font-size: 12px;
  font-weight: 600;
  opacity: 0.8;
}

.mkt-badge--green {
  background: rgba(16, 185, 129, 0.15);
  color: var(--an-emerald);
}

.mkt-badge--red {
  background: rgba(244, 63, 94, 0.15);
  color: var(--an-rose);
}

.mkt-badge--gray {
  background: rgba(107, 114, 128, 0.12);
  color: var(--an-text-muted);
}

.mkt-badge--violet {
  background: rgba(108, 99, 255, 0.12);
  color: var(--an-indigo, #6C63FF);
}

.mkt-badge--amber {
  background: rgba(245, 158, 11, 0.14);
  color: var(--an-amber, #f59e0b);
}

/* ── Source Attribution Header KPIs ── */
.mkt-src-kpi-row {
  display: flex;
  align-items: stretch;
  gap: 0;
  border-bottom: 1px solid var(--an-border);
}

.mkt-src-kpi-cell {
  flex: 1;
  padding: 14px 18px;
  display: flex;
  flex-direction: column;
  gap: 3px;
  border-right: 1px solid var(--an-border);
}

.mkt-src-kpi-cell:last-child {
  border-right: none;
}

.mkt-src-kpi-val {
  font-size: 20px;
  font-weight: 800;
  letter-spacing: -0.5px;
  line-height: 1;
  color: var(--an-text);
}

.mkt-src-kpi-lbl {
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  color: var(--an-text-muted);
  font-weight: 700;
}

/* Source attribution rows */
.mkt-src-list {
  padding: 12px 18px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.mkt-src-row {
  display: grid;
  grid-template-columns: 180px 1fr 90px 80px 80px;
  align-items: center;
  gap: 12px;
}

.mkt-src-name {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.mkt-src-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
}

.mkt-src-track-wrap {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.mkt-src-track {
  flex: 1;
  height: 10px;
  background: var(--an-surface2);
  border-radius: 5px;
  overflow: hidden;
}

.mkt-src-share {
  flex-shrink: 0;
  min-width: 42px;
  text-align: right;
  font-size: 10px;
  font-weight: 700;
  color: var(--an-text-muted);
  font-variant-numeric: tabular-nums;
}

.mkt-src-fill {
  height: 100%;
  border-radius: 5px;
  transition: width 0.9s cubic-bezier(0.4, 0, 0.2, 1);
}

.mkt-src-stat {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 1px;
}

.mkt-src-stat-val {
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
}

.mkt-src-stat-lbl {
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  color: var(--an-text-muted);
  font-weight: 600;
}

.mkt-src-header-row {
  display: grid;
  grid-template-columns: 180px 1fr 90px 80px 80px;
  gap: 12px;
  padding: 0 18px 8px;
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  color: var(--an-text-muted);
  border-bottom: 1px solid var(--an-border);
  margin: 0 0 4px;
}

.mkt-src-header-row span {
  text-align: right;
}

.mkt-src-header-row span:nth-child(2) {
  text-align: left;
}

/* ============================================================
   REPORT LAYOUT — Sidenav + content (side-by-side)
   ============================================================ */
.rpt-layout {
  display: flex;
  flex-direction: row;
  width: 100%;
  min-height: calc(100vh - 64px - 48px);
  align-items: flex-start;
}

/* ── Left Sidenav ── */
.rpt-sidenav {
  width: 214px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 16px 10px;
  background: var(--an-surface);
  border-right: 1px solid var(--an-border);
  min-height: calc(100vh - 64px - 48px);
  box-sizing: border-box;
  position: sticky;
  top: 0;
  align-self: flex-start;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: none;
}
.rpt-sidenav::-webkit-scrollbar {
  display: none;
}

.rpt-sidenav__section {
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.9px;
  color: var(--an-text-muted);
  padding: 10px 10px 4px;
  white-space: nowrap;
}
.rpt-sidenav__section:first-child {
  padding-top: 2px;
}

.rpt-sidenav__pill {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 9px 12px;
  border-radius: 10px;
  cursor: pointer;
  border: none;
  background: transparent;
  text-align: left;
  width: 100%;
  transition: background 0.15s, color 0.15s;
  color: var(--an-text-muted);
  font-size: 13px;
  font-weight: 500;
  font-family: "Inter", sans-serif;
  white-space: nowrap;
  overflow: hidden;
}
.rpt-sidenav__pill md-icon {
  font-size: 17px !important;
  width: 17px !important;
  height: 17px !important;
  min-width: 17px !important;
  color: inherit;
  flex-shrink: 0;
}
.rpt-sidenav__pill:hover {
  background: var(--an-surface2);
  color: var(--an-text);
}
.rpt-sidenav__pill--active {
  background: rgba(108, 99, 255, 0.08);
  color: var(--an-violet);
  font-weight: 700;
}
.rpt-sidenav__pill--active md-icon {
  color: var(--an-violet) !important;
}

.rpt-sidenav__pill-text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  flex: 1;
}

/* ── Main content area ── */
.rpt-content {
  flex: 1;
  min-width: 0;
  overflow: visible;
  position: relative;
}

/* ── Horizontal topnav (kept for heatmap/legacy sections) ── */
.rpt-topnav {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0;
  padding: 0 16px;
  background: var(--an-surface);
  border-bottom: 1px solid var(--an-border);
  flex-shrink: 0;
  flex-wrap: wrap;
  min-height: 48px;
}

.rpt-topnav__group {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 2px;
  padding: 6px 0;
}

.rpt-topnav__label {
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  color: var(--an-text-muted);
  padding: 0 8px 0 4px;
  white-space: nowrap;
}

.rpt-topnav__divider {
  width: 1px;
  height: 24px;
  background: var(--an-border);
  margin: 0 8px;
  flex-shrink: 0;
}

.rpt-topnav__pill {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  border-radius: 8px;
  cursor: pointer;
  border: none;
  background: transparent;
  text-align: left;
  transition: background 0.15s, color 0.15s;
  color: var(--an-text-muted);
  font-size: 13px;
  font-weight: 500;
  font-family: "Inter", sans-serif;
  white-space: nowrap;
}
.rpt-topnav__pill md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  color: inherit;
  flex-shrink: 0;
}
.rpt-topnav__pill:hover {
  background: var(--an-surface2);
  color: var(--an-text);
}
.rpt-topnav__pill--active {
  background: rgba(108, 99, 255, 0.08);
  color: var(--an-violet);
  font-weight: 700;
}
.rpt-topnav__pill--active md-icon {
  color: var(--an-violet) !important;
}

.rpt-heatmap-panel {
  display: flex;
  flex-direction: row;
  background: var(--an-bg, #f4f6fb);
  height: calc(100vh - 64px - 48px);
  min-height: 500px;
  overflow: hidden;
  border-radius: 0 0 16px 16px;
}

.rpt-heatmap-sidebar {
  width: 320px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  border-right: 1px solid var(--an-border);
  background: var(--an-surface);
  height: 100%;
  box-sizing: border-box;
  box-shadow: 4px 0 24px rgba(0, 0, 0, 0.04);
}

.rpt-heatmap-kpis {
  display: flex;
  gap: 8px;
  padding: 12px;
  border-bottom: 1px solid var(--an-border);
  background: var(--an-surface2);
}

/* ── Zone capture panel (heatmap sidebar) ──
   How much of the mapped demand each CONFIGURED delivery zone catches.
   Sits between the KPI cards and the order list; scrolls with the sidebar
   rather than owning its own scroller, so a long zone list pushes the order
   list down instead of creating a nested scroll trap. */
.rpt-zone-capture {
  padding: 12px;
  border-bottom: 1px solid var(--an-border);
}

.rpt-zone-capture__head {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  color: var(--an-text-muted);
  margin-bottom: 10px;
}
.rpt-zone-capture__head md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  min-width: 14px;
  color: inherit;
}

.rpt-zone-capture__hint {
  font-size: 11px;
  line-height: 1.45;
  color: var(--an-text-muted);
}

.rpt-zone-capture__row {
  display: grid;
  grid-template-columns: 1fr 76px;
  grid-template-areas: "name meta" "track meta" "sub  sub";
  align-items: center;
  gap: 3px 8px;
  padding: 7px 0;
  border-bottom: 1px solid var(--an-border);
}
.rpt-zone-capture__row:last-child {
  border-bottom: none;
}

.rpt-zone-capture__name {
  grid-area: name;
  font-size: 12.5px;
  font-weight: 600;
  color: var(--an-text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.rpt-zone-capture__track {
  grid-area: track;
  height: 6px;
  border-radius: 3px;
  background: var(--an-surface2);
  overflow: hidden;
}

.rpt-zone-capture__fill {
  height: 100%;
  border-radius: 3px;
  background: var(--an-violet);
}

.rpt-zone-capture__meta {
  grid-area: meta;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  line-height: 1.2;
}

.rpt-zone-capture__orders {
  font-size: 14px;
  font-weight: 800;
  color: var(--an-text);
}

.rpt-zone-capture__rate {
  font-size: 10px;
  color: var(--an-text-muted);
}

.rpt-zone-capture__sub {
  grid-area: sub;
  font-size: 10.5px;
  color: var(--an-text-muted);
}

.rpt-heatmap-kpi-card {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 14px;
  padding: 14px 12px 12px;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.03), 0 1px 3px rgba(0, 0, 0, 0.04);
  min-width: 0;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  position: relative;
  overflow: hidden;
}
.rpt-heatmap-kpi-card::before {
  content: "";
  position: absolute;
  top: -20px;
  right: -20px;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  opacity: 0.08;
  background: currentColor;
}
.rpt-heatmap-kpi-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
}
.rpt-heatmap-kpi-card .rpt-kpi-num {
  font-size: 18px;
  font-weight: 800;
  color: var(--an-text);
  line-height: 1.2;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  letter-spacing: -0.5px;
}
.rpt-heatmap-kpi-card .rpt-kpi-lbl {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
  font-weight: 700;
  margin-top: 6px;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.rpt-heatmap-kpi-card:nth-child(1) {
  background: linear-gradient(145deg, rgba(108, 99, 255, 0.07) 0%, var(--an-surface) 70%);
  border-color: rgba(108, 99, 255, 0.2);
  color: var(--an-violet, #6c63ff);
}
.rpt-heatmap-kpi-card:nth-child(1) .rpt-kpi-num {
  color: var(--an-violet, #6c63ff);
}

.rpt-heatmap-kpi-card:nth-child(2) {
  background: linear-gradient(145deg, rgba(16, 185, 129, 0.07) 0%, var(--an-surface) 70%);
  border-color: rgba(16, 185, 129, 0.2);
  color: var(--an-emerald, #10b981);
}
.rpt-heatmap-kpi-card:nth-child(2) .rpt-kpi-num {
  color: var(--an-emerald, #10b981);
}

.rpt-heatmap-kpi-card:nth-child(3) {
  background: linear-gradient(145deg, rgba(245, 158, 11, 0.07) 0%, var(--an-surface) 70%);
  border-color: rgba(245, 158, 11, 0.2);
  color: var(--an-amber, #f59e0b);
}
.rpt-heatmap-kpi-card:nth-child(3) .rpt-kpi-num {
  color: var(--an-amber, #f59e0b);
}

.rpt-heatmap-warning-badge {
  margin: 12px 16px 4px;
  background: rgba(239, 68, 68, 0.08);
  border: 1px solid rgba(239, 68, 68, 0.2);
  color: var(--an-rose, #ef4444);
  border-radius: 6px;
  padding: 8px 12px;
  font-size: 11px;
  font-weight: 600;
}
.rpt-heatmap-warning-badge md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  margin: 0 8px 0 0 !important;
  color: inherit !important;
}

.rpt-heatmap-search {
  position: relative;
  padding: 12px 14px;
  border-bottom: 1px solid var(--an-border);
  display: flex;
  align-items: center;
  background: var(--an-surface);
}
.rpt-heatmap-search md-icon {
  position: absolute;
  left: 24px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--an-text-muted) !important;
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  pointer-events: none;
  margin: 0 !important;
  z-index: 1;
}
.rpt-heatmap-search input {
  width: 100%;
  height: 38px;
  border-radius: 10px;
  border: 1.5px solid var(--an-border);
  background: var(--an-surface2);
  color: var(--an-text);
  padding: 0 14px 0 42px !important;
  font-size: 13px;
  font-weight: 500;
  font-family: inherit;
  box-sizing: border-box;
  transition: border-color 0.2s, background 0.2s, box-shadow 0.2s;
}
.rpt-heatmap-search input::placeholder {
  color: var(--an-placeholder);
  font-weight: 400;
}
.rpt-heatmap-search input:focus {
  outline: none;
  border-color: var(--an-violet);
  background: var(--an-surface);
  box-shadow: 0 0 0 3px rgba(108, 99, 255, 0.12);
}

.rpt-heatmap-orders-list {
  flex: 1;
  overflow-y: auto;
  padding: 12px 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-height: 0;
}
.rpt-heatmap-orders-list::-webkit-scrollbar {
  width: 6px;
}
.rpt-heatmap-orders-list::-webkit-scrollbar-track {
  background: transparent;
}
.rpt-heatmap-orders-list::-webkit-scrollbar-thumb {
  background: var(--an-border);
  border-radius: 3px;
}
.rpt-heatmap-orders-list::-webkit-scrollbar-thumb:hover {
  background: var(--an-text-muted);
}

.rpt-heatmap-order-item {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 8px;
  padding: 12px;
  cursor: pointer;
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.rpt-heatmap-order-item:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04);
  border-color: var(--an-border-hover, #cbd5e1);
}
.rpt-heatmap-order-item--active {
  border-color: var(--an-violet) !important;
  background: rgba(108, 99, 255, 0.04) !important;
  box-shadow: 0 4px 12px rgba(108, 99, 255, 0.08) !important;
}
.rpt-heatmap-order-item .rpt-order-item-header {
  font-size: 12px;
  font-weight: 700;
  color: var(--an-text);
}
.rpt-heatmap-order-item .rpt-order-item-title {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-right: 8px;
}
.rpt-heatmap-order-item .rpt-order-item-amount {
  font-weight: 800;
  color: var(--an-text);
  flex-shrink: 0;
}
.rpt-heatmap-order-item .rpt-order-item-address {
  font-size: 11px;
  color: var(--an-text-muted);
  line-height: 1.3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.rpt-heatmap-order-item .rpt-order-item-footer {
  font-size: 10px;
  color: var(--an-text-faint, #94a3b8);
  margin-top: 4px;
}
.rpt-heatmap-order-item .rpt-order-item-badge {
  background: rgba(100, 116, 139, 0.08);
  color: var(--an-text-muted, #64748b);
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
  padding: 2px 6px;
  border-radius: 4px;
  letter-spacing: 0.5px;
}
.rpt-heatmap-order-item .rpt-order-item-badge--count {
  background: rgba(108, 99, 255, 0.1);
  color: var(--an-violet, #6c63ff);
}
.rpt-heatmap-order-item .rpt-order-item-badge--ticket {
  background: rgba(245, 158, 11, 0.1);
  color: #d97706;
}

.rpt-heatmap-zip-item {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 8px;
  padding: 10px 12px;
  cursor: pointer;
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-bottom: 6px;
}
.rpt-heatmap-zip-item:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.04);
  border-color: var(--an-border-hover, #cbd5e1);
}
.rpt-heatmap-zip-item.rpt-heatmap-order-item--active {
  border-color: var(--an-violet) !important;
  background: rgba(108, 99, 255, 0.04) !important;
  box-shadow: 0 4px 12px rgba(108, 99, 255, 0.08) !important;
}
.rpt-heatmap-zip-item .rpt-zip-item-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.rpt-heatmap-zip-item .rpt-zip-item-code {
  font-size: 14px;
  font-weight: 800;
  color: var(--an-violet, #6c63ff);
  letter-spacing: 0.5px;
}
.rpt-heatmap-zip-item .rpt-zip-item-count {
  font-size: 10px;
  font-weight: 700;
  color: var(--an-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.3px;
}
.rpt-heatmap-zip-item .rpt-zip-item-city {
  font-size: 11px;
  color: var(--an-text-muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.rpt-heatmap-zip-item .rpt-zip-item-stats {
  font-size: 12px;
  font-weight: 700;
  color: var(--an-text);
  margin-top: 2px;
}

.rpt-heatmap-empty {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 24px 16px;
  text-align: center;
  color: var(--an-text-muted);
}
.rpt-heatmap-empty md-icon {
  font-size: 40px !important;
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  margin: 0 auto 14px !important;
  opacity: 0.3;
  display: block !important;
}
.rpt-heatmap-empty p {
  font-size: 12px;
  font-weight: 500;
  margin: 0;
  line-height: 1.5;
  max-width: 180px;
}

.rpt-heatmap-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
  position: relative;
  overflow: hidden;
}

.rpt-heatmap-map-fullbleed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

/* ── Glassmorphic Map Floating Overlays ── */
.rpt-map-overlay {
  position: absolute;
  z-index: 10;
  background: rgba(255, 255, 255, 0.78);
  backdrop-filter: blur(20px) saturate(180%);
  -webkit-backdrop-filter: blur(20px) saturate(180%);
  border: 1px solid rgba(255, 255, 255, 0.6);
  border-radius: 16px;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 10px 30px -5px rgba(0, 0, 0, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.9);
}
.waitry-dark-theme .rpt-map-overlay {
  background: rgba(15, 23, 42, 0.78);
  border-color: rgba(255, 255, 255, 0.08);
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.2), 0 10px 30px -5px rgba(0, 0, 0, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.05);
}
.rpt-map-overlay--top-left {
  top: 16px;
  left: 16px;
  padding: 14px 16px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.rpt-map-overlay--top-right {
  top: 16px;
  right: 16px;
  padding: 8px 12px;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0;
}
.rpt-map-overlay--bottom-center {
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
  padding: 10px 18px;
  border-radius: 999px;
}
.rpt-map-overlay__title {
  font-size: 14px;
  font-weight: 800;
  color: var(--an-text);
  letter-spacing: -0.2px;
  display: flex;
  align-items: center;
  gap: 6px;
}
.rpt-map-overlay__title md-icon {
  color: var(--an-violet, #6c63ff) !important;
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  margin: 0 !important;
}

.rpt-map-divider {
  width: 1px;
  height: 24px;
  background: var(--an-border);
  margin: 0 10px;
}

.rpt-heatmap-controls__group {
  display: flex;
  align-items: center;
}
.rpt-heatmap-controls__group--data {
  width: 100%;
}
.rpt-heatmap-controls__group--data .mkt-toggle-btn {
  flex: 1;
  text-align: center;
}

.rpt-heatmap-layout-select {
  margin: 0 !important;
  padding: 0 !important;
}
.rpt-heatmap-layout-select .md-select-value {
  border-bottom: none !important;
  padding-bottom: 0 !important;
  font-size: 13px;
  font-weight: 600;
}
.rpt-heatmap-layout-select .md-errors-spacer {
  display: none !important;
}

.rpt-map-overlay .mkt-toggle-btn md-icon {
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  min-width: 14px !important;
  margin: 0 !important;
  color: inherit !important;
}

.rpt-heatmap-refresh-btn {
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 7px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.2s, transform 0.3s;
  margin-left: 2px;
}
.rpt-heatmap-refresh-btn md-icon {
  color: var(--an-text-muted) !important;
  transition: color 0.2s, transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  font-size: 17px !important;
  width: 17px !important;
  height: 17px !important;
  min-width: 17px !important;
  margin: 0 !important;
}
.rpt-heatmap-refresh-btn:hover {
  background: rgba(108, 99, 255, 0.08);
}
.rpt-heatmap-refresh-btn:hover md-icon {
  color: var(--an-violet) !important;
  transform: rotate(180deg);
}

.rpt-heatmap-legend-inner {
  display: flex;
  align-items: center;
  gap: 12px;
}

.rpt-heatmap-legend-label {
  font-size: 10px;
  font-weight: 800;
  color: var(--an-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.8px;
}

.hm-bar--compact {
  width: 120px;
  height: 6px;
  border-radius: 3px;
  margin: 0;
}

@media (max-width: 960px) {
  .rpt-heatmap-panel {
    flex-direction: column-reverse;
    height: calc(100vh - 64px - 48px);
    min-height: 500px;
    border-radius: 0;
  }
  .rpt-heatmap-sidebar {
    width: 100%;
    height: 260px;
    flex-shrink: 0;
    border-right: none;
    border-top: 1px solid var(--an-border);
    box-shadow: 0 -4px 24px rgba(0, 0, 0, 0.04);
  }
  .rpt-heatmap-content {
    flex: 1;
    min-height: 0;
  }
  .rpt-topnav {
    padding: 0 8px;
  }
  .rpt-topnav__pill span:not(md-icon) {
    display: none;
  }
  .rpt-topnav__label {
    display: none;
  }
  .rpt-topnav__divider {
    display: none;
  }
}
.rpt-sidenav__action {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 12px;
  border-radius: 10px;
  cursor: pointer;
  border: 1px solid var(--an-border);
  background: var(--an-surface2);
  width: 100%;
  text-align: left;
  margin-top: 8px;
  color: var(--an-text-muted);
  font-size: 12px;
  font-weight: 600;
  font-family: "Inter", sans-serif;
  transition: background 0.15s, border-color 0.15s, color 0.15s;
}
.rpt-sidenav__action md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  color: inherit;
  flex-shrink: 0;
}
.rpt-sidenav__action:hover {
  background: var(--an-surface);
  border-color: var(--an-violet);
  color: var(--an-violet);
}

.hm-reference {
  padding: 8px 16px;
  border-bottom: 1px solid var(--an-border);
  background: var(--an-surface);
}

.hm-bar {
  height: 6px;
  border-radius: 3px;
  margin: 0 8px;
}
.hm-bar, .hm-bar--count {
  background: linear-gradient(90deg, rgba(59, 130, 246, 0.4) 0%, rgba(168, 85, 247, 0.7) 50%, rgb(239, 68, 68) 100%);
}
.hm-bar--ticket {
  background: linear-gradient(90deg, rgba(16, 185, 129, 0.4) 0%, rgba(245, 158, 11, 0.7) 50%, rgb(239, 68, 68) 100%);
}
.hm-bar--zip {
  background: linear-gradient(90deg, rgba(20, 184, 166, 0.6) 0%, rgba(108, 99, 255, 0.8) 50%, rgb(236, 72, 153) 100%);
}

/* ── KPI chips ── */
.mkt-kpi-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  padding: 14px 18px;
}

.mkt-kpi-chip {
  border-radius: var(--an-radius-sm);
  padding: 12px 14px;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  transition: transform 0.2s, box-shadow 0.2s;
}

.mkt-kpi-chip:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
}

.mkt-kpi-value {
  font-size: 24px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.5px;
}

.mkt-kpi-label {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
  margin-top: 3px;
  font-weight: 600;
}

.mkt-kpi-sub {
  font-size: 11px;
  color: var(--an-text-muted);
  margin-top: 2px;
}

.sk-kpi-value {
  background: linear-gradient(90deg, var(--an-surface2) 25%, var(--an-surface3) 37%, var(--an-surface2) 63%);
  background-size: 1200px 100%;
  animation: wt-shimmer 1.6s ease-in-out infinite;
  border-radius: var(--an-radius-xs);
  display: inline-block;
  width: 46px;
  height: 24px;
  vertical-align: middle;
}

.mkt-kpi-chip--purple .mkt-kpi-value {
  color: var(--an-violet);
}

.mkt-kpi-chip--green .mkt-kpi-value {
  color: var(--an-emerald);
}

.mkt-kpi-chip--orange .mkt-kpi-value {
  color: var(--an-amber);
}

.mkt-kpi-chip--blue .mkt-kpi-value {
  color: var(--an-sky);
}

.mkt-kpi-chip--teal .mkt-kpi-value {
  color: #38B2AC;
}

/* ── Horizontal bar list ── */
.mkt-bar-list {
  padding: 14px 18px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.mkt-bar-row {
  display: grid;
  grid-template-columns: 130px 1fr 90px;
  align-items: center;
  gap: 10px;
}

.mkt-bar-name {
  font-size: 12px;
  font-weight: 500;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.mkt-bar-track {
  height: 8px;
  background: var(--an-surface2);
  border-radius: 4px;
  overflow: hidden;
}

.mkt-bar-fill {
  height: 100%;
  border-radius: 4px;
  transition: width 0.8s cubic-bezier(0.4, 0, 0.2, 1);
  width: 0;
  background: linear-gradient(90deg, var(--an-violet), #A78BFA);
}

.mkt-bar-fill--green {
  background: linear-gradient(90deg, var(--an-emerald), #34D399);
}

.mkt-bar-fill--red {
  background: linear-gradient(90deg, var(--an-rose), #FB7185);
}

.mkt-bar-fill--orange {
  background: linear-gradient(90deg, var(--an-orange), #FBB47A);
}

.mkt-bar-fill--blue {
  background: linear-gradient(90deg, var(--an-sky), #67E8F9);
}

.mkt-bar-fill--violet {
  background: linear-gradient(90deg, var(--an-violet), #A78BFA);
}

.mkt-bar-fill--kiosk {
  background: linear-gradient(90deg, #F6AD55, #FBD38D);
}

.mkt-bar-row--highlight {
  background: rgba(251, 211, 141, 0.07);
  border-radius: 6px;
  margin-inline: -8px;
  padding-inline: 8px;
}

.mkt-bar-list--scroll {
  max-height: 420px;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.mkt-card--self-start {
  align-self: start;
}

.sat-filter-bar {
  padding-left: 0;
  padding-right: 0;
  margin-bottom: 8px;
  gap: 8px;
  flex-wrap: wrap;
  overflow-x: visible;
}

.sat-filter-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
  margin-left: auto;
}

.sat-filter-label {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-weight: 600;
  color: var(--an-text-muted);
  margin-right: 4px;
  flex-shrink: 0;
}

.sat-mode-toggle {
  display: flex;
  align-items: center;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: 999px;
  padding: 3px;
  gap: 2px;
  flex-shrink: 0;
}

.sat-mode-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 14px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text-muted);
  background: transparent;
  border: none;
  cursor: pointer;
  transition: background 0.18s, color 0.18s;
  white-space: nowrap;
}
.sat-mode-btn md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  min-width: 14px;
  min-height: 14px;
  transition: color 0.18s;
}
.sat-mode-btn:hover {
  color: var(--an-text);
}
.sat-mode-btn--active {
  background: var(--an-surface);
  color: var(--an-text);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.15);
}
.sat-mode-btn#sat-mode-live.sat-mode-btn--active {
  background: rgba(16, 185, 129, 0.15);
  color: var(--an-emerald);
}
.sat-mode-btn#sat-mode-live.sat-mode-btn--active .sat-mode-dot {
  animation: satPulse 1.8s infinite;
}
.sat-mode-btn#sat-mode-historical.sat-mode-btn--active {
  background: rgba(108, 99, 255, 0.12);
  color: var(--an-violet);
}
.sat-mode-btn#sat-mode-historical.sat-mode-btn--active md-icon {
  color: var(--an-violet);
}

.sat-mode-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--an-emerald);
  flex-shrink: 0;
  box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.6);
  animation: none;
}

.sat-live-info {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  color: var(--an-text-muted);
  padding: 8px 4px 0;
}
.sat-live-info md-icon {
  font-size: 13px;
  width: 13px;
  height: 13px;
  min-width: 13px;
  min-height: 13px;
  color: var(--an-text-muted);
}

.sat-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  gap: 14px;
  padding: 14px 18px;
}

.sat-card {
  border-radius: var(--an-radius);
  padding: 16px 14px;
  color: var(--an-text);
  border: 1px solid var(--an-border);
  display: flex;
  flex-direction: column;
  gap: 2px;
  box-shadow: var(--an-shadow);
  transition: transform 0.2s, box-shadow 0.2s;
  background: var(--an-surface2);
}

.sat-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
}

.sat-card--low,
.sat-card--medium,
.sat-card--high {
  color: #fff;
  border-color: transparent;
}

.sat-card--low {
  background: linear-gradient(135deg, var(--an-emerald), #34D399);
}

.sat-card--medium {
  background: linear-gradient(135deg, var(--an-orange), #FBB47A);
}

.sat-card--high {
  background: linear-gradient(135deg, var(--an-rose), #FB7185);
}

.sat-card-venue {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  opacity: 0.8;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sat-card-name {
  font-size: 13px;
  font-weight: 600;
  opacity: 0.95;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sat-venue-tag {
  color: var(--an-text-muted);
  font-weight: 600;
}

.sat-card-value {
  font-size: 38px;
  font-weight: 800;
  letter-spacing: -1px;
  line-height: 1.1;
}

.sat-card-value--na {
  opacity: 0.7;
}

.sat-card-pct {
  font-size: 20px;
  font-weight: 700;
  margin-left: 1px;
}

.sat-card-level {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  font-weight: 700;
  opacity: 0.9;
}

.sat-card-meta {
  font-size: 11px;
  opacity: 0.85;
  margin-top: 2px;
}

.sat-card-metrics {
  display: flex;
  gap: 8px;
  margin-top: 8px;
}

.sat-card-metric {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 1px;
  padding: 5px 8px;
  border-radius: var(--an-radius-xs);
  background: rgba(255, 255, 255, 0.22);
}

.sat-card-metric-lbl {
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  opacity: 0.85;
  white-space: nowrap;
}

.sat-card-metric-val {
  font-size: 15px;
  font-weight: 800;
  letter-spacing: -0.3px;
}

.sat-card:not(.sat-card--low):not(.sat-card--medium):not(.sat-card--high) .sat-card-metric {
  background: var(--an-surface3);
}

.sat-card-mode {
  margin-top: 6px;
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  opacity: 0.75;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sat-live-dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--an-emerald);
  margin-right: 8px;
  box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.6);
  animation: satPulse 1.8s infinite;
}

.sat-live-time {
  font-size: 11px;
  color: var(--an-text-muted);
}

@keyframes satPulse {
  0% {
    box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.5);
  }
  70% {
    box-shadow: 0 0 0 7px rgba(16, 185, 129, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(16, 185, 129, 0);
  }
}
.sat-insights {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.sat-insight {
  display: flex;
  align-items: center;
  gap: 10px;
  flex: 1 1 200px;
  padding: 12px 14px;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
}

.sat-insight md-icon {
  color: var(--an-violet);
}

.sat-insight > div {
  display: flex;
  flex-direction: column;
}

.sat-insight-lbl {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
}

.sat-insight-val {
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text);
}

.sat-heatmap {
  padding: 12px 16px;
  overflow-x: auto;
}

.sat-heatmap-row {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-bottom: 4px;
}

.sat-heatmap-label {
  flex: 0 0 110px;
  width: 110px;
  font-size: 12px;
  font-weight: 500;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding-right: 6px;
}

.sat-heatmap-cell {
  flex: 1 1 0;
  min-width: 30px;
  height: 30px;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 600;
  color: #fff;
  background: var(--an-surface2);
}

.sat-heatmap-unit {
  font-style: normal;
  font-size: 0.72em;
  font-weight: 600;
  opacity: 0.75;
  margin-left: 1px;
}

.sat-heatmap-cell--head {
  background: transparent;
  color: var(--an-text-muted);
  font-weight: 600;
}

.sat-heatmap-cell--empty {
  background: var(--an-surface2);
  color: transparent;
}

.sat-heatmap-cell--low {
  background: rgba(16, 185, 129, 0.85);
}

.sat-heatmap-cell--medium {
  background: rgba(245, 158, 11, 0.9);
}

.sat-heatmap-cell--high {
  background: rgba(239, 68, 68, 0.92);
}

.sat-heatmap-row--head .sat-heatmap-label {
  flex: 0 0 110px;
}

.sat-tv-btn {
  gap: 6px;
}
.sat-tv-btn md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
}

body.tv-public-mode > div[ng-include] {
  display: none !important;
}

.sat-tv-root {
  height: 100vh;
  height: 100dvh;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
  background: var(--an-bg);
  color: var(--an-text);
  display: flex;
  flex-direction: column;
  padding: 22px 28px 28px;
  box-sizing: border-box;
  overflow-y: auto;
}

.sat-tv-header {
  display: flex;
  align-items: center;
  gap: 18px;
  padding-bottom: 18px;
  border-bottom: 1px solid var(--an-border);
  margin-bottom: 22px;
}

.sat-tv-logo {
  height: 52px;
  width: auto;
  max-width: 180px;
  object-fit: contain;
  border-radius: 6px;
}

.sat-tv-title {
  font-size: 30px;
  font-weight: 800;
  letter-spacing: -0.5px;
  margin: 0;
  color: var(--an-text);
}

.sat-tv-clock {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 17px;
  font-weight: 600;
  color: var(--an-text-muted);
  text-transform: capitalize;
}

.sat-tv-fsbtn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 999px;
  padding: 9px 18px;
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
  cursor: pointer;
  transition: all 0.15s ease;
}
.sat-tv-fsbtn:hover {
  border-color: var(--an-violet);
  color: var(--an-violet);
}

.sat-tv-body {
  flex: 1 0 auto;
  display: flex;
  flex-direction: column;
}

.sat-tv-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 22px;
  min-height: 0;
}

.sat-tv-hero {
  display: flex;
  align-items: center;
  gap: 26px;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  padding: 18px 26px;
  flex: 0 0 auto;
}

.sat-tv-hero-gauge {
  position: relative;
  width: 118px;
  height: 118px;
  flex: 0 0 auto;
}
.sat-tv-hero-gauge svg {
  width: 100%;
  height: 100%;
  transform: rotate(-90deg);
}

.sat-tv-ring-bg {
  fill: none;
  stroke: var(--an-surface2);
  stroke-width: 12;
}

.sat-tv-ring-fill {
  fill: none;
  stroke-width: 12;
  stroke-linecap: round;
  transition: stroke-dasharray 0.6s ease;
}

.sat-tv-hero-gauge--low .sat-tv-ring-fill {
  stroke: var(--an-emerald);
}

.sat-tv-hero-gauge--medium .sat-tv-ring-fill {
  stroke: var(--an-orange);
}

.sat-tv-hero-gauge--high .sat-tv-ring-fill {
  stroke: var(--an-rose);
}

.sat-tv-hero-pct {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 31px;
  font-weight: 800;
  letter-spacing: -1px;
  color: var(--an-text);
}
.sat-tv-hero-pct span {
  font-size: 16px;
  font-weight: 700;
  margin-left: 1px;
}

.sat-tv-hero-info {
  min-width: 0;
}

.sat-tv-hero-label {
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.7px;
  font-weight: 700;
  color: var(--an-text-muted);
}

.sat-tv-hero-seats {
  font-size: 34px;
  font-weight: 800;
  letter-spacing: -0.5px;
  color: var(--an-text);
  margin: 3px 0 5px;
}

.sat-tv-hero-sub {
  font-size: 13px;
  font-weight: 500;
  color: var(--an-text-muted);
}

.sat-tv-levels {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.sat-tv-level-chip {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 16px 10px 12px;
  min-width: 120px;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-left-width: 4px;
  border-radius: var(--an-radius-sm);
}

.sat-tv-level-chip--high {
  border-left-color: var(--an-rose);
}

.sat-tv-level-chip--medium {
  border-left-color: var(--an-orange);
}

.sat-tv-level-chip--low {
  border-left-color: var(--an-emerald);
}

.sat-tv-level-count {
  font-size: 26px;
  font-weight: 800;
  min-width: 22px;
  text-align: center;
  color: var(--an-text);
}

.sat-tv-level-txt {
  display: flex;
  flex-direction: column;
  line-height: 1.3;
}
.sat-tv-level-txt b {
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
}
.sat-tv-level-txt i {
  font-style: normal;
  font-size: 11px;
  color: var(--an-text-muted);
}

.sat-tv-groups {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 30px;
  flex: 0 0 auto;
}

.sat-tv-group {
  flex: 1 1 auto;
  min-width: 0;
}

.sat-tv-group-title {
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  color: var(--an-text-muted);
  margin-bottom: 8px;
}

.sat-tv-cards {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.sat-tv-card {
  flex: 1 1 230px;
  max-width: 350px;
  padding: 18px 18px 16px;
  gap: 7px;
}

.sat-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.sat-tv-card .sat-card-name {
  font-size: 17px;
}

.sat-card-levelpill {
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 3px 10px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.24);
  white-space: nowrap;
}

.sat-tv-card .sat-card-value {
  font-size: 52px;
  letter-spacing: -2px;
}

.sat-tv-card .sat-card-pct {
  font-size: 24px;
}

.sat-card-bar {
  height: 7px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.3);
  overflow: hidden;
}

.sat-card-bar-fill {
  height: 100%;
  border-radius: inherit;
  background: #fff;
  transition: width 0.6s ease;
}

.sat-tv-card .sat-card-meta {
  font-size: 14px;
  font-weight: 600;
  margin-top: 0;
}

.sat-tv-insights {
  padding: 0;
  flex-wrap: nowrap;
}

.sat-tv-insights .sat-insight {
  flex: 0 0 auto;
  padding: 8px 12px;
  gap: 8px;
}

.sat-tv-panel {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  padding: 16px 18px;
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.sat-tv-panel-head {
  display: flex;
  align-items: flex-start;
  gap: 18px;
  margin-bottom: 14px;
  flex: 0 0 auto;
}

.sat-tv-panel-title {
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-weight: 700;
  color: var(--an-text);
  flex: 0 0 auto;
}

.sat-tv-panel-hint {
  font-size: 13px;
  color: var(--an-text-muted);
  margin-top: 4px;
}

.sat-tv-panel .sat-heatmap {
  padding: 0;
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-height: 0;
}

.sat-tv-panel .sat-heatmap-row {
  flex: 1 1 0;
  min-height: 34px;
  margin-bottom: 0;
}

.sat-tv-panel .sat-heatmap-row--head {
  flex: 0 0 auto;
  margin-bottom: 6px;
}

.sat-tv-panel .sat-heatmap-cell {
  height: auto;
  align-self: stretch;
  font-size: 15px;
}

.sat-tv-panel .sat-heatmap-row--head .sat-heatmap-cell {
  align-self: center;
}

.sat-tv-panel .sat-heatmap-label {
  font-size: 14px;
  flex: 0 0 175px;
  width: 175px;
  display: flex;
  flex-direction: column;
  gap: 2px;
  white-space: normal;
}

.sat-tv-panel .sat-heatmap-row--head .sat-heatmap-label {
  flex: 0 0 175px;
  width: 175px;
}

.sat-heatmap-label-name {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sat-heatmap-avg {
  font-size: 11px;
  font-weight: 700;
  color: var(--an-text-muted);
}

.sat-heatmap-cell--nowhead {
  overflow: visible;
  color: var(--an-violet);
  font-weight: 800;
}

.sat-heatmap-now {
  white-space: nowrap;
}
.sat-heatmap-now i {
  font-style: normal;
  text-transform: uppercase;
  font-size: 10px;
  letter-spacing: 0.5px;
}

.sat-heatmap-cell--nowcol {
  box-shadow: inset 0 0 0 2px var(--an-violet);
}

.tv-share-field {
  margin: 10px 0 18px;
}

.tv-share-label {
  display: block;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-weight: 600;
  color: var(--an-text-muted);
  margin-bottom: 8px;
}

.sat-tv-theme-radios {
  margin-top: 4px;
}

.sat-tv-display-radios {
  margin-top: 4px;
}
.sat-tv-display-radios md-radio-button {
  margin-bottom: 12px;
}
.sat-tv-display-radios md-radio-button .md-label {
  display: block;
}
.sat-tv-display-radios md-radio-button:last-child {
  margin-bottom: 0;
}

.tv-radio-title {
  display: block;
  font-weight: 600;
}

.tv-radio-hint {
  display: block;
  font-size: 11px;
  line-height: 1.4;
  color: var(--an-text-muted);
  margin-top: 2px;
}

.sat-tv-theme-radios md-radio-button {
  margin-right: 24px;
  margin-bottom: 0;
}

.sat-tv-logo-theme-row {
  gap: 16px;
}

.sat-tv-theme-field {
  padding-left: 8px;
}

.sat-tv-logo-select-row {
  gap: 12px;
}

.sat-tv-logo-select-row md-select {
  margin: 0;
}

.sat-tv-logo-opt-img {
  width: 28px;
  height: 28px;
  object-fit: contain;
  border-radius: 4px;
  vertical-align: middle;
  margin-right: 8px;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
}

.sat-tv-logo-thumb {
  flex-shrink: 0;
  width: 52px;
  height: 52px;
  object-fit: contain;
  border-radius: 6px;
  border: 1px solid var(--an-border);
  background: var(--an-surface2);
  padding: 4px;
}

.sat-tv-dates {
  gap: 12px;
}

.sat-tv-dates md-datepicker {
  margin: 0;
}

.sat-tv-dates-sep {
  color: var(--an-text-muted);
  font-weight: 600;
}

.tv-share-url-input {
  width: 100%;
  box-sizing: border-box;
  padding: 10px 12px;
  font-size: 12px;
  font-family: monospace;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface2);
  color: var(--an-text);
}

.tv-share-hint {
  font-size: 11px;
  color: var(--an-text-muted);
  margin: 4px 0 12px 40px;
}

.tv-share-hint--error {
  color: var(--an-danger, #ef4444);
}

.sat-tv-link-invalid-hint {
  font-size: 13px;
  color: var(--an-text-muted);
  margin-top: -8px;
}

.occ-intro {
  font-size: 13px;
  line-height: 1.5;
  color: var(--an-text-muted);
  margin: 0 0 18px;
}

.occ-loading {
  display: flex;
  justify-content: center;
  padding: 40px 0;
}

.occ-settings-dialog {
  max-width: 1080px;
}
.occ-settings-dialog md-dialog-content {
  padding: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.occ-split {
  display: flex;
  align-items: stretch;
  flex: 1 1 auto;
  min-height: 0;
  height: 64vh;
  max-height: 640px;
}

.occ-rail {
  box-sizing: border-box;
  flex: 0 0 292px;
  min-width: 0;
  overflow-y: auto;
  padding: 10px 10px 16px;
  border-right: 1px solid var(--an-border);
  background: var(--an-surface2);
}

.occ-rail__search {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 10px;
  margin-bottom: 10px;
  height: 38px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-pill);
  background: var(--an-surface);
}
.occ-rail__search > md-icon {
  font-size: 16px;
  color: var(--an-text-faint);
}
.occ-rail__search > input {
  flex: 1;
  min-width: 0;
  border: 0;
  outline: 0;
  background: transparent;
  font-size: 13px;
  color: var(--an-text);
}
.occ-rail__search > input::placeholder {
  color: var(--an-placeholder);
}

.occ-rail__group + .occ-rail__group {
  margin-top: 14px;
}

.occ-rail__item {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  text-align: left;
  padding: 9px 10px;
  margin: 0 0 3px;
  border: 1px solid transparent;
  border-radius: var(--an-radius-sm);
  background: transparent;
  cursor: pointer;
  font: inherit;
  color: var(--an-text);
}
.occ-rail__item > md-icon {
  flex: 0 0 auto;
  font-size: 18px;
  color: var(--an-text-faint);
}
.occ-rail__item:hover {
  background: var(--an-surface3);
}
.occ-rail__item:focus-visible {
  outline: 2px solid var(--an-primary);
  outline-offset: 1px;
}

.occ-rail__item--on {
  background: var(--an-primary-soft);
  border-color: var(--an-primary);
}
.occ-rail__item--on > md-icon {
  color: var(--an-primary);
}
.occ-rail__item--on .occ-rail__name {
  color: var(--an-primary);
}
.occ-rail__item--on:hover {
  background: var(--an-primary-soft);
}

.occ-rail__item--venue {
  margin-bottom: 8px;
}
.occ-rail__item--venue > md-icon {
  color: var(--an-violet);
}
.occ-rail__item--venue .occ-rail__name {
  font-weight: 800;
}

.occ-rail__item--venue.occ-rail__item--on > md-icon {
  color: var(--an-primary);
}

.occ-rail__text {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 1px;
}

.occ-rail__name {
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.occ-rail__meta {
  font-size: 11px;
  line-height: 1.3;
  color: var(--an-text-muted);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.occ-rail__flag {
  flex: 0 0 auto;
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 2px 7px;
  border-radius: var(--an-radius-pill);
  background: var(--an-violet-soft);
  color: var(--an-violet);
  white-space: nowrap;
}

.occ-rail__label {
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  color: var(--an-text-faint);
  padding: 6px 10px 4px;
}

.occ-rail__more {
  display: flex;
  align-items: center;
  gap: 6px;
  width: 100%;
  text-align: left;
  padding: 7px 10px;
  margin-top: 2px;
  border: 0;
  border-radius: var(--an-radius-sm);
  background: transparent;
  cursor: pointer;
  font: inherit;
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text-muted);
}
.occ-rail__more > md-icon {
  font-size: 16px;
  color: var(--an-text-faint);
}
.occ-rail__more:hover {
  background: var(--an-surface3);
  color: var(--an-text);
}

.occ-rail__item--minor > md-icon {
  font-size: 16px;
}

.occ-rail__note {
  font-size: 11px;
  line-height: 1.45;
  color: var(--an-text-faint);
  padding: 2px 10px 6px;
}

.occ-rail__empty {
  font-size: 12px;
  color: var(--an-text-muted);
  padding: 14px 10px;
}

.occ-detail {
  box-sizing: border-box;
  flex: 1 1 auto;
  min-width: 0;
  overflow-y: auto;
  padding: 20px 24px 26px;
}

.occ-detail__head {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding-bottom: 14px;
  margin-bottom: 18px;
  border-bottom: 1px solid var(--an-border);
}
.occ-detail__head > md-icon {
  font-size: 22px;
  margin-top: 2px;
  color: var(--an-violet);
}

.occ-detail__head-text {
  flex: 1;
  min-width: 0;
}

.occ-detail__title {
  font-size: 17px;
  font-weight: 800;
  color: var(--an-text);
  line-height: 1.25;
}

.occ-detail__sub {
  font-size: 12px;
  color: var(--an-text-muted);
  margin-top: 3px;
  line-height: 1.45;
}

.occ-detail__actions {
  flex: 0 0 auto;
  display: flex;
  gap: 4px;
  align-self: center;
}

.occ-block + .occ-block {
  margin-top: 22px;
  padding-top: 20px;
  border-top: 1px solid var(--an-border-light);
}

.occ-block__title {
  font-size: 13px;
  font-weight: 800;
  color: var(--an-text);
  margin-bottom: 3px;
}

.occ-block__desc {
  font-size: 12px;
  line-height: 1.5;
  color: var(--an-text-muted);
  margin-bottom: 14px;
}

.occ-link-btn {
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 10px !important;
  font-size: 12px;
  font-weight: 700;
  text-transform: none;
  color: var(--an-primary) !important;
}

.occ-own {
  margin-bottom: 6px;
}

.occ-own__switch {
  margin: 0 0 2px;
}

.occ-follows {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 14px;
  margin-top: 12px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface2);
}
.occ-follows > md-icon {
  font-size: 18px;
  margin-top: 1px;
  color: var(--an-text-faint);
}

.occ-follows__text {
  flex: 1;
  min-width: 0;
}

.occ-follows__line {
  font-size: 13px;
  line-height: 1.45;
  color: var(--an-text);
}

.occ-follows .occ-link-btn {
  margin-left: -10px !important;
}

.occ-own-note {
  font-size: 12px;
  line-height: 1.5;
  color: var(--an-text-muted);
  margin-bottom: 4px;
}

.occ-field-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: 18px;
  align-items: start;
}
.occ-field-grid > md-input-container {
  grid-column: 1/-1;
  margin-top: 0;
  margin-bottom: 8px;
}
@media (min-width: 900px) {
  .occ-field-grid > .occ-col-6 {
    grid-column: span 6;
  }
  .occ-field-grid > .occ-col-12 {
    grid-column: span 12;
  }
}
.occ-field-grid md-input-container .md-caption {
  display: block;
  margin-top: 6px;
  line-height: 1.4;
  color: var(--an-text-faint);
}
.occ-field-grid > md-input-container:has(input[type=number]) {
  max-width: none !important;
}
.occ-field-grid > md-input-container:has(input[type=number]) input {
  max-width: 160px;
}
.occ-field-grid > md-input-container:has(input[type=number]) .md-caption {
  clear: both;
}

.occ-band-preview {
  display: flex;
  gap: 3px;
  margin: 2px 0 20px;
  height: 46px;
}

.occ-band {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 1px;
  min-width: 0;
  border-radius: var(--an-radius-xs);
  padding: 0 4px;
  overflow: hidden;
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  transition: flex-grow 0.25s ease;
  white-space: nowrap;
}
.occ-band i {
  font-style: normal;
  font-size: 10px;
  font-weight: 600;
  opacity: 0.85;
}

.occ-band--low {
  background: var(--an-emerald);
}

.occ-band--medium {
  background: var(--an-orange);
}

.occ-band--high {
  background: var(--an-rose);
}

.occ-pressure-check {
  margin-bottom: 0;
}

.occ-check-hint {
  font-size: 11px;
  line-height: 1.4;
  color: var(--an-text-muted);
  margin: 2px 0 0 30px;
}

@media (max-width: 860px) {
  .occ-split {
    flex-direction: column;
    height: auto;
    max-height: none;
  }
  .occ-settings-dialog md-dialog-content {
    overflow: auto;
  }
  .occ-rail {
    flex: 0 0 auto;
    width: 100%;
    max-height: 240px;
    border-right: 0;
    border-bottom: 1px solid var(--an-border);
  }
  .occ-detail {
    overflow: visible;
    padding: 18px 16px 22px;
  }
  .occ-detail__head {
    gap: 10px;
  }
  .occ-detail__title {
    font-size: 16px;
  }
}
.occ-obs-dialog {
  width: 520px;
  max-width: 96vw;
}
@media (max-width: 600px) {
  .occ-obs-dialog {
    width: 100vw;
    max-width: 100vw;
    max-height: 100vh;
    border-radius: 0;
  }
}

.occ-obs-body {
  padding-bottom: 8px;
}

.occ-obs-step {
  margin-bottom: 20px;
}

.occ-obs-step__label {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
  margin-bottom: 10px;
}

.occ-obs-step__num {
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: var(--an-violet);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.occ-obs-fold {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 10px 0 2px;
  padding: 6px 4px;
  background: none;
  border: none;
  cursor: pointer;
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text-muted);
}
.occ-obs-fold md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  min-width: 14px;
  min-height: 14px;
  transition: transform 0.15s ease;
}
.occ-obs-fold .occ-obs-fold__arrow--open {
  transform: rotate(90deg);
}
.occ-obs-fold:hover {
  color: var(--an-text);
}
.occ-obs-fold:focus-visible {
  outline: 2px solid var(--an-violet);
  outline-offset: 2px;
  border-radius: 4px;
}

.occ-obs-spaces {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.occ-obs-space {
  flex: 1 1 140px;
  min-height: 48px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1px;
  padding: 8px 12px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  background: var(--an-surface);
  color: var(--an-text);
  font-family: inherit;
  text-align: left;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease;
}
.occ-obs-space:hover {
  border-color: var(--an-border-hover);
}

.occ-obs-space--on {
  border-color: var(--an-violet);
  background: var(--an-violet-soft);
}

.occ-obs-space__venue {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  color: var(--an-text-faint);
}

.occ-obs-space__name {
  font-size: 13px;
  font-weight: 600;
}

.occ-obs-here {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 12px;
  margin-bottom: 20px;
  border-radius: var(--an-radius);
  background: var(--an-surface2);
}
.occ-obs-here > md-icon {
  font-size: 18px;
  color: var(--an-violet);
}

.occ-obs-here__name {
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
}

.occ-obs-states {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.occ-obs-state {
  display: flex;
  align-items: center;
  gap: 14px;
  width: 100%;
  min-height: 64px;
  padding: 12px 14px;
  border: 2px solid var(--an-border);
  border-radius: var(--an-radius);
  background: var(--an-surface);
  color: var(--an-text);
  font-family: inherit;
  text-align: left;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease;
}
.occ-obs-state > md-icon {
  flex: 0 0 auto;
  font-size: 26px;
  width: 26px;
  height: 26px;
  color: var(--an-text-muted);
}
.occ-obs-state:hover {
  border-color: var(--an-border-hover);
}

.occ-obs-state__text {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  flex: 1;
}

.occ-obs-state__name {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.2;
}

.occ-obs-state__hint {
  font-size: 12px;
  line-height: 1.35;
  color: var(--an-text-muted);
}

.occ-obs-state__tick {
  flex: 0 0 auto;
  font-size: 20px;
  --an-icon-size: 20px;
  width: 20px;
  height: 20px;
  opacity: 0;
  transition: opacity 0.15s ease;
}

.occ-obs-state--on .occ-obs-state__tick {
  opacity: 1;
}

.occ-obs-state--empty.occ-obs-state--on {
  border-color: var(--an-emerald);
  background: var(--an-emerald-soft);
}
.occ-obs-state--empty.occ-obs-state--on > md-icon, .occ-obs-state--empty.occ-obs-state--on .occ-obs-state__tick {
  color: var(--an-emerald);
}

.occ-obs-state--room.occ-obs-state--on {
  border-color: var(--an-orange);
  background: var(--an-orange-soft);
}
.occ-obs-state--room.occ-obs-state--on > md-icon, .occ-obs-state--room.occ-obs-state--on .occ-obs-state__tick {
  color: var(--an-orange);
}

.occ-obs-state--queue.occ-obs-state--on {
  border-color: var(--an-rose);
  background: var(--an-rose-soft);
}
.occ-obs-state--queue.occ-obs-state--on > md-icon, .occ-obs-state--queue.occ-obs-state--on .occ-obs-state__tick {
  color: var(--an-rose);
}

.occ-obs-note {
  margin-bottom: 0;
}
.occ-obs-note .md-caption {
  display: block;
  margin-top: 4px;
  color: var(--an-text-faint);
}

.occ-obs-actions {
  gap: 8px;
}

.occ-cal-intro {
  font-size: 13px;
  line-height: 1.5;
  color: var(--an-text-muted);
  margin: 0 0 16px;
}

.occ-cal-verdict {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
  padding: 18px 20px;
  border-radius: var(--an-radius);
  border: 1px solid var(--an-border);
  background: var(--an-surface2);
}

.occ-cal-verdict--pass {
  border-color: var(--an-emerald);
  background: var(--an-emerald-soft);
}

.occ-cal-verdict--fail {
  border-color: var(--an-rose);
  background: var(--an-rose-soft);
}

.occ-cal-verdict__rate {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 120px;
}

.occ-cal-verdict__num {
  font-size: 46px;
  font-weight: 800;
  line-height: 1;
  color: var(--an-text);
}
.occ-cal-verdict__num i {
  font-style: normal;
  font-size: 22px;
  font-weight: 700;
  margin-left: 2px;
}

.occ-cal-verdict__lbl {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
  margin-top: 6px;
  text-align: center;
}

.occ-cal-verdict__text {
  flex: 1 1 240px;
  min-width: 0;
}

.occ-cal-verdict__badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 15px;
  font-weight: 800;
  color: var(--an-text);
}
.occ-cal-verdict__badge > md-icon {
  font-size: 20px;
  width: 20px;
  height: 20px;
}

.occ-cal-verdict--pass .occ-cal-verdict__badge > md-icon {
  color: var(--an-emerald);
}

.occ-cal-verdict--fail .occ-cal-verdict__badge > md-icon {
  color: var(--an-rose);
}

.occ-cal-verdict__desc {
  font-size: 13px;
  line-height: 1.5;
  color: var(--an-text-muted);
  margin: 6px 0 0;
}

.occ-cal-danger {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 14px;
  padding: 14px 16px;
  border-radius: var(--an-radius);
  border: 1px solid var(--an-rose);
  background: var(--an-rose-soft);
}
.occ-cal-danger > md-icon {
  flex: 0 0 auto;
  font-size: 22px;
  width: 22px;
  height: 22px;
  color: var(--an-rose);
}

.occ-cal-danger--clear {
  border-color: var(--an-border);
  background: var(--an-surface2);
}
.occ-cal-danger--clear > md-icon {
  color: var(--an-emerald);
}

.occ-cal-danger__text {
  flex: 1;
  min-width: 0;
}

.occ-cal-danger__title {
  font-size: 14px;
  font-weight: 800;
  color: var(--an-text);
}

.occ-cal-danger__hint {
  font-size: 12px;
  line-height: 1.45;
  color: var(--an-text-muted);
  margin-top: 2px;
}

.occ-cal-danger__link {
  flex: 0 0 auto;
  border: 1px solid var(--an-rose);
  background: transparent;
  color: var(--an-rose);
  font-family: inherit;
  font-size: 12px;
  font-weight: 700;
  padding: 7px 14px;
  border-radius: var(--an-radius-pill);
  cursor: pointer;
}

.occ-cal-unmatched {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-top: 12px;
  padding: 12px 14px;
  border-radius: var(--an-radius);
  background: var(--an-surface2);
}
.occ-cal-unmatched > md-icon {
  flex: 0 0 auto;
  font-size: 18px;
  width: 18px;
  height: 18px;
  color: var(--an-text-muted);
}

.occ-cal-unmatched__title {
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
}

.occ-cal-unmatched__hint {
  font-size: 12px;
  line-height: 1.45;
  color: var(--an-text-muted);
  margin-top: 2px;
}

.occ-cal-count {
  font-size: 12px;
  color: var(--an-text-muted);
}

.occ-cal-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 14px;
}

.occ-cal-filters__n {
  margin-left: 6px;
  font-weight: 800;
  opacity: 0.7;
}

.occ-cal-table-wrap {
  overflow-x: auto;
}

.occ-cal-table {
  width: 100%;
  min-width: 640px;
  border-collapse: collapse;
  font-size: 13px;
}
.occ-cal-table th {
  text-align: left;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
  padding: 0 12px 8px;
  border-bottom: 1px solid var(--an-border);
  white-space: nowrap;
}
.occ-cal-table td {
  padding: 10px 12px;
  border-bottom: 1px solid var(--an-border-faint);
  color: var(--an-text);
  vertical-align: top;
}
.occ-cal-table tbody tr:last-child td {
  border-bottom: 0;
}

.occ-cal-row--dangerous td {
  background: var(--an-rose-soft);
}

.occ-cal-when {
  color: var(--an-text-muted);
  white-space: nowrap;
}

.occ-cal-note {
  font-size: 12px;
  line-height: 1.4;
  color: var(--an-text-muted);
  margin-top: 3px;
}

.occ-cal-verdict-tag, .occ-cal-said, .occ-cal-seen {
  display: inline-block;
  padding: 3px 10px;
  border-radius: var(--an-radius-pill);
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
}

.occ-cal-seen {
  background: var(--an-surface3);
  color: var(--an-text);
}

.occ-cal-seen--empty {
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
}

.occ-cal-seen--room {
  background: var(--an-orange-soft);
  color: var(--an-orange);
}

.occ-cal-seen--queue {
  background: var(--an-rose-soft);
  color: var(--an-rose);
}

.occ-cal-said {
  background: var(--an-surface3);
  color: var(--an-text);
}

.occ-cal-said--low {
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
}

.occ-cal-said--medium {
  background: var(--an-orange-soft);
  color: var(--an-orange);
}

.occ-cal-said--high {
  background: var(--an-rose-soft);
  color: var(--an-rose);
}

.occ-cal-said--none {
  background: transparent;
  color: var(--an-text-faint);
  font-style: italic;
}

.occ-cal-verdict-tag {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  background: var(--an-surface3);
  color: var(--an-text-muted);
}
.occ-cal-verdict-tag > md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  color: inherit;
}

.occ-cal-verdict-tag--match {
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
}

.occ-cal-verdict-tag--over {
  background: var(--an-amber-soft);
  color: var(--an-amber);
}

.occ-cal-verdict-tag--under {
  background: var(--an-orange-soft);
  color: var(--an-orange);
}

.occ-cal-verdict-tag--dangerous {
  background: var(--an-rose);
  color: #fff;
}

.occ-cal-verdict-tag--none {
  background: transparent;
  color: var(--an-text-faint);
  font-style: italic;
}

.occ-cal-blank {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 42px 20px;
}
.occ-cal-blank > md-icon {
  font-size: 40px;
  width: 40px;
  height: 40px;
  color: var(--an-violet);
  opacity: 0.75;
}
.occ-cal-blank h3 {
  font-size: 17px;
  font-weight: 800;
  color: var(--an-text);
  margin: 14px 0 0;
}
.occ-cal-blank p {
  font-size: 13px;
  line-height: 1.55;
  color: var(--an-text-muted);
  margin: 8px 0 0;
  max-width: 520px;
}

.occ-cal-blank__how {
  font-weight: 600;
  color: var(--an-text-secondary);
}

.occ-cal-blank__cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 18px;
  padding: 10px 20px;
  border: 0;
  border-radius: var(--an-radius-pill);
  background: var(--an-violet);
  color: #fff;
  font-family: inherit;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
}
.occ-cal-blank__cta md-icon {
  color: #fff !important;
  font-size: 18px;
  width: 18px;
  height: 18px;
}

.sat-sem {
  display: flex;
  flex-direction: column;
  gap: 20px;
  flex: 1 1 auto;
  min-height: 0;
}

.sat-sem-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 26px;
  align-items: center;
}

.sat-sem-legend-item {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  font-size: 16px;
  font-weight: 600;
  color: var(--an-text-muted);
}

.sat-sem-dot {
  width: 13px;
  height: 13px;
  min-width: 13px;
  border-radius: 50%;
  background: currentColor;
  display: inline-block;
}

.sat-sem-legend-item--low {
  color: var(--an-emerald);
}

.sat-sem-legend-item--medium {
  color: var(--an-orange);
}

.sat-sem-legend-item--high {
  color: var(--an-rose);
}

.sat-sem-legend-item > span {
  color: var(--an-text-muted);
}

.sat-sem-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 20px;
  flex: 1 1 auto;
  align-content: start;
}

.sat-sem-card {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 24px 24px 20px;
  border-radius: var(--an-radius);
  border: 2px solid var(--an-border);
  background: var(--an-surface);
  box-shadow: var(--an-shadow);
  min-height: 0;
}

.sat-sem-card-venue {
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: var(--an-text-muted);
}

.sat-sem-card-name {
  font-size: 26px;
  font-weight: 800;
  letter-spacing: -0.5px;
  line-height: 1.2;
  color: var(--an-text);
  margin-bottom: 10px;
}

.sat-sem-card-status {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 22px;
  font-weight: 800;
  letter-spacing: -0.2px;
}

.sat-sem-card-status--na {
  font-size: 15px;
  font-weight: 600;
  color: var(--an-text-muted);
}

.sat-sem-card-advice {
  font-size: 15px;
  font-weight: 500;
  color: var(--an-text-muted);
  line-height: 1.45;
}

.sat-sem-card-meter {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 6px;
  margin-top: 12px;
}

.sat-sem-card-meter-step {
  height: 8px;
  border-radius: 999px;
  background: var(--an-surface3);
  transition: background-color 0.6s ease;
}

.sat-sem-card--low {
  border-color: var(--an-emerald);
  background: rgba(16, 185, 129, 0.1);
  background: color-mix(in srgb, var(--an-emerald) 10%, var(--an-surface));
}
.sat-sem-card--low .sat-sem-card-status {
  color: var(--an-emerald);
}
.sat-sem-card--low .sat-sem-card-meter-step--on {
  background: var(--an-emerald);
}

.sat-sem-card--medium {
  border-color: var(--an-orange);
  background: rgba(249, 115, 22, 0.1);
  background: color-mix(in srgb, var(--an-orange) 10%, var(--an-surface));
}
.sat-sem-card--medium .sat-sem-card-status {
  color: var(--an-orange);
}
.sat-sem-card--medium .sat-sem-card-meter-step--on {
  background: var(--an-orange);
}

.sat-sem-card--high {
  border-color: var(--an-rose);
  background: rgba(236, 78, 54, 0.1);
  background: color-mix(in srgb, var(--an-rose) 10%, var(--an-surface));
}
.sat-sem-card--high .sat-sem-card-status {
  color: var(--an-rose);
}
.sat-sem-card--high .sat-sem-card-meter-step--on {
  background: var(--an-rose);
}

.sat-sem-empty {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  text-align: center;
  padding: 40px 24px;
}

.sat-sem-empty__title {
  font-size: 28px;
  font-weight: 800;
  letter-spacing: -0.5px;
  color: var(--an-text);
  text-wrap: balance;
}

.sat-sem-empty__hint {
  font-size: 17px;
  color: var(--an-text-muted);
  max-width: 46ch;
}

.sat-sem-foot {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 14px;
  color: var(--an-text-muted);
  flex: 0 0 auto;
}

@media (max-width: 767px) {
  .sat-tv-root {
    padding: 14px 14px 18px;
  }
  .sat-tv-header {
    gap: 10px;
    flex-wrap: wrap;
    padding-bottom: 12px;
    margin-bottom: 14px;
  }
  .sat-tv-title {
    font-size: 21px;
  }
  .sat-tv-logo {
    height: 34px;
    max-width: 110px;
  }
  .sat-tv-clock {
    font-size: 13px;
  }
  .sat-tv-fsbtn {
    display: none;
  }
  .sat-sem {
    gap: 14px;
  }
  .sat-sem,
  .sat-sem-cards {
    flex: 0 0 auto;
  }
  .sat-sem-cards {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  .sat-sem-card {
    padding: 16px 16px 14px;
    gap: 4px;
  }
  .sat-sem-card-name {
    font-size: 20px;
    margin-bottom: 6px;
  }
  .sat-sem-card-status {
    font-size: 18px;
  }
  .sat-sem-card-advice {
    font-size: 14px;
  }
  .sat-sem-legend {
    gap: 14px;
  }
  .sat-sem-legend-item {
    font-size: 13px;
  }
  .sat-tv-content {
    gap: 14px;
  }
  .sat-tv-hero {
    flex-wrap: wrap;
    gap: 14px 16px;
    padding: 14px 16px;
  }
  .sat-tv-hero > span[flex] {
    display: none;
  }
  .sat-tv-hero-gauge {
    width: 84px;
    height: 84px;
  }
  .sat-tv-hero-pct {
    font-size: 22px;
  }
  .sat-tv-hero-pct span {
    font-size: 12px;
  }
  .sat-tv-hero-info {
    flex: 1 1 0;
  }
  .sat-tv-hero-label {
    font-size: 11px;
  }
  .sat-tv-hero-seats {
    font-size: 24px;
  }
  .sat-tv-hero-sub {
    font-size: 12px;
  }
  .sat-tv-levels {
    flex: 1 1 100%;
    flex-wrap: nowrap;
    gap: 8px;
  }
  .sat-tv-level-chip {
    flex: 1 1 0;
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
    padding: 8px 10px;
  }
  .sat-tv-level-count {
    font-size: 20px;
    min-width: 0;
    text-align: left;
    line-height: 1.1;
  }
  .sat-tv-level-txt {
    min-width: 0;
  }
  .sat-tv-level-txt b {
    font-size: 12px;
  }
  .sat-tv-level-txt i {
    display: none;
  }
  .sat-tv-groups {
    gap: 14px;
  }
  .sat-tv-cards {
    gap: 10px;
  }
  .sat-tv-card {
    flex-basis: 100%;
    max-width: none;
    padding: 14px 14px 12px;
    gap: 5px;
  }
  .sat-tv-card .sat-card-value {
    font-size: 38px;
  }
  .sat-tv-card .sat-card-meta {
    font-size: 13px;
  }
  .sat-tv-panel {
    flex: 0 0 auto;
    padding: 14px;
  }
  .sat-tv-panel-head {
    flex-direction: column;
    gap: 10px;
  }
  .sat-tv-insights {
    flex-wrap: wrap;
  }
  .sat-tv-panel .sat-heatmap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .sat-tv-panel .sat-heatmap-row {
    flex: 0 0 auto;
    height: 38px;
    min-height: 0;
    min-width: max-content;
  }
  .sat-tv-panel .sat-heatmap-cell {
    flex: 0 0 44px;
    min-width: 44px;
    font-size: 12px;
  }
  .sat-tv-panel .sat-heatmap-label,
  .sat-tv-panel .sat-heatmap-row--head .sat-heatmap-label {
    flex: 0 0 116px;
    width: 116px;
    font-size: 12px;
    position: sticky;
    left: 0;
    z-index: 1;
    align-self: stretch;
    justify-content: center;
    background: var(--an-surface);
  }
  .sat-heatmap-now {
    white-space: normal;
    display: block;
    text-align: center;
    line-height: 1.15;
    font-size: 11px;
  }
}
@media (max-height: 500px) {
  .sat-tv-root {
    padding: 12px 18px 16px;
  }
  .sat-tv-header {
    gap: 12px;
    padding-bottom: 10px;
    margin-bottom: 12px;
  }
  .sat-tv-title {
    font-size: 21px;
  }
  .sat-tv-logo {
    height: 34px;
    max-width: 110px;
  }
  .sat-tv-clock {
    font-size: 13px;
  }
  .sat-tv-fsbtn {
    display: none;
  }
}
.mkt-bar-meta {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.mkt-bar-qty {
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
}

.mkt-bar-rev {
  font-size: 11px;
  color: var(--an-text-muted);
}

/* ── Legend modifiers ── */
.mkt-legend-label--bold {
  font-weight: 700;
  color: var(--an-text);
}

.mkt-legend-pct--highlight {
  color: #F6AD55;
  font-weight: 800;
}

/* ── Donut centre overlay ── */
.mkt-donut-centre {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  pointer-events: none;
}
.mkt-donut-centre__value {
  font-size: 20px;
  font-weight: 700;
  color: var(--an-text);
  line-height: 1;
}
.mkt-donut-centre__label {
  font-size: 10px;
  color: var(--an-text-muted);
  margin-top: 2px;
  text-transform: uppercase;
  letter-spacing: 0.3px;
  font-weight: 600;
}

/* ── Legend footer row ── */
.mkt-legend-row--footer {
  margin-top: 10px;
  border-top: 1px solid var(--an-border);
  padding-top: 8px;
}

.mkt-legend-footer-text {
  font-size: 11px;
  color: var(--an-text-muted);
  line-height: 1.4;
}

/* ── In-store comparison list ── */
.kiosk-compare-list {
  padding: 10px 16px 14px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.kiosk-compare-row {
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding: 7px 8px;
  border-radius: 6px;
  border-left: 2px solid transparent;
  transition: background 0.15s, border-color 0.15s;
}
.kiosk-compare-row--active {
  background: rgba(251, 211, 141, 0.07);
  border-left-color: #F6AD55;
}
.kiosk-compare-row:hover {
  background: var(--an-surface2);
}

.kiosk-compare-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
}

.kiosk-compare-label {
  display: flex;
  align-items: center;
  gap: 7px;
  min-width: 0;
  flex: 1;
}
.kiosk-compare-label span {
  font-size: 12px;
  font-weight: 500;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.kiosk-compare-name--bold {
  font-weight: 700 !important;
}

.kiosk-compare-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
}

.kiosk-compare-bar-wrap {
  height: 4px;
  background: var(--an-surface2);
  border-radius: 2px;
  overflow: hidden;
  margin: 0 0 2px;
}

.kiosk-compare-bar {
  height: 100%;
  border-radius: 2px;
  transition: width 0.8s cubic-bezier(0.4, 0, 0.2, 1);
  width: 0;
}

.kiosk-compare-meta {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 1px;
  flex-shrink: 0;
}

.kiosk-compare-orders {
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
  white-space: nowrap;
  line-height: 1.2;
}

.kiosk-compare-orders--empty {
  opacity: 0.35;
}

.kiosk-compare-pct {
  font-size: 11px;
  color: var(--an-text-muted);
  white-space: nowrap;
  line-height: 1.2;
}

/* ── Kiosk per-access-point list ── */
.kiosk-ap-list {
  padding: 12px 20px 16px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.kiosk-ap-row {
  display: grid;
  grid-template-columns: 32px 1fr 2fr auto;
  align-items: center;
  gap: 10px;
  padding: 6px 4px;
  border-radius: 6px;
  transition: background 0.12s;
}
.kiosk-ap-row:hover {
  background: var(--an-surface2);
}
.kiosk-ap-row:nth-child(1) .kiosk-ap-rank {
  color: #F6AD55;
  font-weight: 800;
}
.kiosk-ap-row:nth-child(2) .kiosk-ap-rank {
  color: var(--an-text-muted);
  font-weight: 700;
}
.kiosk-ap-row:nth-child(3) .kiosk-ap-rank {
  color: var(--an-text-muted);
  font-weight: 700;
}

.kiosk-ap-rank {
  font-size: 11px;
  font-weight: 700;
  color: var(--an-text-muted);
  text-align: center;
  min-width: 28px;
}

.kiosk-ap-info {
  min-width: 0;
  overflow: hidden;
}

.kiosk-ap-name {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.kiosk-ap-layout {
  font-size: 10px;
  color: var(--an-text-muted);
  margin-top: 1px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.kiosk-ap-bar-wrap {
  height: 6px;
  background: var(--an-surface2);
  border-radius: 3px;
  overflow: hidden;
}

.kiosk-ap-bar {
  height: 100%;
  background: linear-gradient(90deg, #FBD38D, #F6AD55);
  border-radius: 3px;
  transition: width 0.9s cubic-bezier(0.4, 0, 0.2, 1);
  width: 0;
}

.kiosk-ap-count {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 1px;
  min-width: 48px;
}

.kiosk-ap-times {
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text);
  line-height: 1;
}

.kiosk-ap-orders-lbl {
  font-size: 10px;
  color: var(--an-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.3px;
}

/* ── Donut ── */
.mkt-donut-container {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 32px;
  padding: 32px 24px;
}

.mkt-donut-wrap {
  position: relative;
  width: 150px;
  height: 150px;
  flex-shrink: 0;
}
.mkt-donut-wrap canvas {
  max-width: 100%;
  display: block;
}

.mkt-donut-svg {
  width: 100%;
  height: 100%;
  overflow: visible;
}

.mkt-donut-legend {
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1;
  min-width: 140px;
  justify-content: center;
}

.mkt-legend-row {
  display: flex;
  align-items: center;
  gap: 8px;
}

.mkt-legend-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
}

.mkt-legend-label {
  font-size: 13px;
  font-weight: 500;
  color: var(--an-text);
  flex: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.mkt-legend-pct {
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text-muted);
}

/* ── Promo table ── */
.mkt-promo-table {
  padding: 14px 18px;
}

.mkt-promo-header {
  display: grid;
  grid-template-columns: 1fr 60px 80px;
  gap: 8px;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  color: var(--an-text-muted);
  padding-bottom: 8px;
  border-bottom: 1px solid var(--an-border);
  margin-bottom: 8px;
}

.mkt-promo-row {
  display: grid;
  grid-template-columns: 1fr 60px 80px;
  gap: 8px;
  align-items: center;
  padding: 7px 0;
  border-bottom: 1px solid var(--an-border);
}

.mkt-promo-row:last-child {
  border-bottom: none;
}

.mkt-promo-name {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.mkt-promo-name span {
  font-size: 12px;
  font-weight: 500;
  color: var(--an-text);
}

.mkt-mini-bar {
  height: 3px;
  background: var(--an-surface2);
  border-radius: 2px;
  overflow: hidden;
}

.mkt-mini-bar-fill {
  height: 100%;
  background: linear-gradient(90deg, var(--an-amber), var(--an-orange));
  border-radius: 2px;
  transition: width 0.8s ease;
}

.mkt-promo-usage {
  font-size: 13px;
  font-weight: 700;
  color: var(--an-amber);
  text-align: right;
}

.mkt-promo-rev {
  font-size: 13px;
  font-weight: 700;
  color: var(--an-emerald);
  text-align: right;
}

/* ── Product combinations ── */
.mkt-combo-grid {
  padding: 14px 18px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.mkt-combo-chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: 20px;
  padding: 5px 12px;
  color: var(--an-text);
  font-weight: 500;
  transition: transform 0.2s, background 0.2s;
  cursor: default;
}

.mkt-combo-chip:hover {
  background: rgba(108, 99, 255, 0.15);
  border-color: var(--an-violet);
  transform: scale(1.03);
}

.mkt-combo-sep {
  color: var(--an-violet);
  font-weight: 800;
}

.mkt-combo-count {
  font-size: 10px;
  color: var(--an-text-muted);
  font-weight: 600;
}

/* ── Heatmap ── */
.mkt-heatmap-wrap {
  padding: 14px 18px;
  overflow-x: auto;
}

.mkt-heatmap-hours {
  display: flex;
  gap: 0;
  margin-bottom: 4px;
  padding-left: 44px;
}

.mkt-heatmap-corner {
  width: 0;
}

.mkt-heatmap-hour-label {
  flex: 1;
  font-size: 9px;
  color: var(--an-text-muted);
  font-weight: 600;
  text-align: left;
  min-width: 42px;
}

.mkt-heatmap-row {
  display: flex;
  align-items: center;
  gap: 3px;
  margin-bottom: 3px;
  overflow: visible;
}

.mkt-heatmap-day {
  width: 40px;
  font-size: 10px;
  color: var(--an-text-muted);
  font-weight: 600;
  flex-shrink: 0;
  text-align: right;
  padding-right: 6px;
}

.mkt-heatmap-cell {
  flex: 1;
  height: 20px;
  border-radius: 3px;
  background: var(--an-violet);
  min-width: 18px;
  transition: transform 0.15s, opacity 0.15s;
  cursor: pointer;
}

.mkt-heatmap-cell:hover {
  transform: scale(1.25);
  z-index: 10;
  position: relative;
  opacity: 1 !important;
}

.mkt-heatmap-cell[data-tooltip] {
  position: relative;
}

.mkt-heatmap-cell[data-tooltip]::after {
  content: attr(data-tooltip);
  position: absolute;
  bottom: calc(100% + 8px);
  left: 50%;
  transform: translateX(-50%);
  background: rgba(30, 20, 60, 0.92);
  color: #fff;
  font-family: "Inter", sans-serif;
  font-size: 11px;
  font-weight: 600;
  white-space: nowrap;
  padding: 5px 10px;
  border-radius: 6px;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.12s ease;
  z-index: 100;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
  letter-spacing: 0.2px;
}

.mkt-heatmap-cell[data-tooltip]:hover::after {
  opacity: 1;
}

.mkt-heatmap-cell[data-tooltip]:nth-last-child(-n+4)::after {
  left: auto;
  right: 0;
  transform: none;
}

.mkt-heatmap-legend {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 18px 0;
}

.mkt-heatmap-legend-bar {
  height: 6px;
  flex: 1;
  border-radius: 3px;
  background: linear-gradient(90deg, var(--an-surface2), var(--an-violet));
}

.mkt-heatmap-legend span {
  font-size: 9px;
  color: var(--an-text-muted);
}

/* ── Revenue bars (vertical) ── */
.mkt-revenue-bars {
  display: flex;
  align-items: flex-end;
  gap: 2px;
  height: 120px;
  padding: 0 18px 14px;
}

.mkt-rev-col {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  height: 100%;
  position: relative;
}

.mkt-rev-bar-wrap {
  width: 100%;
  display: flex;
  align-items: flex-end;
  height: 100px;
}

.mkt-rev-bar {
  width: 100%;
  background: linear-gradient(180deg, var(--an-emerald), rgba(16, 185, 129, 0.5));
  border-radius: 3px 3px 0 0;
  transition: height 0.8s cubic-bezier(0.4, 0, 0.2, 1);
  min-height: 2px;
}

.mkt-rev-bar:hover {
  filter: brightness(1.3);
}

.mkt-rev-hour {
  font-size: 8px;
  color: var(--an-text-muted);
  position: absolute;
  bottom: -14px;
  white-space: nowrap;
}

/* ── Empty states ── */
.mkt-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 40px 20px;
  color: var(--an-text-muted);
  text-align: center;
  background: var(--an-surface2);
  border-radius: var(--an-radius-sm);
  margin: 16px;
  border: 1px dashed var(--an-border);
}

.mkt-empty md-icon {
  font-size: 32px !important;
  width: 32px !important;
  height: 32px !important;
  color: var(--an-text-muted) !important;
  opacity: 0.3;
  margin: 0;
}

.mkt-empty p {
  font-size: 13px;
  font-weight: 500;
  margin: 0;
  max-width: 200px;
  line-height: 1.4;
  opacity: 0.8;
}

/* ── Loading ── */
.mkt-loading {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 160px;
}

.mkt-loading md-progress-circular path {
  stroke: var(--an-violet) !important;
}

/* ── Responsive ── */
@media (max-width: 960px) {
  .mkt-dashboard {
    padding: 12px 12px 32px;
  }
  .mkt-row {
    flex-direction: column;
  }
  .mkt-card {
    width: 100% !important;
    flex: none !important;
  }
  .mkt-pipeline {
    flex-direction: column;
    gap: 8px;
  }
  .mkt-pipe-step {
    width: 100%;
    flex-direction: row;
    justify-content: space-between;
    padding: 16px;
    border-top: none;
    border-left: 3px solid var(--pipe-color);
  }
  .mkt-pipe-header {
    flex-direction: row;
    gap: 12px;
  }
  .mkt-pipe-connector {
    flex-direction: row;
    width: 100%;
    height: 32px;
    padding: 0 16px;
    align-items: center;
    justify-content: center;
  }
  .mkt-pipe-line {
    width: 2px;
    height: 100%;
    top: 0;
    left: 50%;
  }
  .mkt-pipe-line::after {
    top: auto;
    bottom: -4px;
    right: -3px;
    border-top: none;
    border-right: 2px solid var(--an-border);
    border-bottom: 2px solid var(--an-border);
  }
  .mkt-pipe-drop {
    margin-top: 0;
  }
  .mkt-kpi-grid {
    grid-template-columns: 1fr 1fr;
  }
  .mkt-bar-row {
    grid-template-columns: 100px 1fr 80px;
  }
}
@media (max-width: 600px) {
  .mkt-kpi-grid {
    grid-template-columns: 1fr 1fr;
  }
  .mkt-bar-row {
    grid-template-columns: 80px 1fr 70px;
  }
}
/* ── Compact conv strip (KPI page) ── */
.conv-compact-strip {
  padding: 16px 8px;
  flex-wrap: wrap;
  gap: 8px;
}

.conv-stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  padding: 12px 16px;
  flex: 1;
  min-width: 110px;
}

.conv-stat-icon {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 4px;
  transition: transform 0.2s;
}

.conv-stat-icon:hover {
  transform: scale(1.1);
}

.conv-stat-icon md-icon {
  font-size: 20px !important;
  height: 20px !important;
  width: 20px !important;
}

.conv-stat-val {
  font-size: 26px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.5px;
}

.conv-stat-label {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  color: rgba(0, 0, 0, 0.45);
  font-weight: 600;
  text-align: center;
}
.waitry-dark-theme .conv-stat-label {
  color: var(--an-text-faint);
}

/* ── View Toggle Buttons (in card headers) ── */
.mkt-view-toggle {
  display: flex;
  gap: 2px;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: 6px;
  padding: 2px;
  margin-left: 6px;
}

.mkt-toggle-btn {
  background: transparent;
  border: none;
  border-radius: 4px;
  padding: 3px 8px;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
  cursor: pointer;
  transition: all 0.15s ease;
  white-space: nowrap;
}
.mkt-toggle-btn:hover {
  color: var(--an-text);
  background: rgba(0, 0, 0, 0.04);
}
.waitry-dark-theme .mkt-toggle-btn:hover {
  background: rgba(255, 255, 255, 0.08);
}
.mkt-toggle-btn--active {
  background: var(--an-surface) !important;
  color: var(--an-violet) !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

/* ── Phase 2: Data Tables ── */
.mkt-table-wrap {
  overflow-x: auto;
  width: 100%;
  padding-top: 4px;
}

.mkt-table-wrap::-webkit-scrollbar {
  height: 6px;
}

.mkt-table-wrap::-webkit-scrollbar-track {
  background: var(--an-surface2);
}

.mkt-table-wrap::-webkit-scrollbar-thumb {
  background: var(--an-border);
  border-radius: 3px;
}

.mkt-table-wrap::-webkit-scrollbar-thumb:hover {
  background: rgba(0, 0, 0, 0.15);
}
.waitry-dark-theme .mkt-table-wrap::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.2);
}

.mkt-data-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
  color: var(--an-text);
  margin-bottom: 0;
}

.mkt-data-table th {
  text-align: left;
  padding: 12px 18px;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-weight: 700;
  color: var(--an-text-muted);
  border-bottom: 1px solid var(--an-border);
  white-space: nowrap;
}

.mkt-data-table td {
  padding: 12px 18px;
  border-bottom: 1px solid var(--an-border);
  vertical-align: middle;
}

.mkt-data-table tbody tr:last-child td {
  border-bottom: none;
}

.mkt-data-table tbody tr:hover td {
  background: rgba(108, 99, 255, 0.05);
}

.mkt-data-table .align-right {
  text-align: right;
}

.mkt-data-table .align-center {
  text-align: center;
}

.mkt-data-table .col-gain {
  color: var(--an-emerald);
  font-weight: 700;
}

.mkt-data-table .col-loss {
  color: var(--an-rose);
  font-weight: 700;
}

/* ── Phase 2: Chart Wrapper ── */
.mkt-chart-wrap {
  width: 100%;
  padding: 10px 14px 14px;
  height: 175px !important;
  max-height: 175px !important;
  position: relative;
  overflow: visible;
  box-sizing: border-box;
  /* When also .mkt-card-body, prevent flex:1 from growing it */
  flex: 0 0 175px !important;
}

/* The inner angular-material flex container must not grow */
.mkt-chart-wrap .chart,
.mkt-card-body.mkt-chart-wrap > div {
  position: relative !important;
  height: 151px !important;
  width: 100% !important;
  min-height: 0 !important;
  flex: 0 0 151px !important;
}

.mkt-chart-wrap canvas {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
}

/* Taller charts for full-width 12-column cards */
.mkt-col-12 .mkt-chart-wrap {
  height: 220px !important;
  max-height: 220px !important;
  flex: 0 0 220px !important;
}

.mkt-col-12 .mkt-chart-wrap .chart,
.mkt-col-12 .mkt-card-body.mkt-chart-wrap > div {
  height: 196px !important;
  flex: 0 0 196px !important;
}

/* Medium height for 8/7-column charts */
.mkt-col-8 .mkt-chart-wrap,
.mkt-col-7 .mkt-chart-wrap {
  height: 195px !important;
  max-height: 195px !important;
  flex: 0 0 195px !important;
}

.mkt-col-8 .mkt-chart-wrap .chart,
.mkt-col-8 .mkt-card-body.mkt-chart-wrap > div,
.mkt-col-7 .mkt-chart-wrap .chart,
.mkt-col-7 .mkt-card-body.mkt-chart-wrap > div {
  height: 171px !important;
  flex: 0 0 171px !important;
}

/* ── Chart Card Skeleton (chart-card-skeleton directive) ──────────────────
   Shimmer placeholders shown while a card's data is loading, shaped like
   the content about to appear. See app/common/directives/chart-card-skeleton.js */
chart-card-skeleton {
  display: block;
  width: 100%;
}

.sk-chart-skel {
  padding: 14px 18px;
  height: 100%;
  box-sizing: border-box;
}

.sk-chart-skel__header {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 16px 10px;
  margin: -14px -18px 12px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.03);
}

.sk-chart-skel__header-dot {
  background: linear-gradient(90deg, var(--an-surface2) 25%, var(--an-surface3) 37%, var(--an-surface2) 63%);
  background-size: 1200px 100%;
  animation: wt-shimmer 1.6s ease-in-out infinite;
  border-radius: var(--an-radius-xs);
  width: 18px;
  height: 18px;
  border-radius: 5px;
  flex-shrink: 0;
}

/* type="kpi-row" */
.sk-chart-kpis {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 10px;
}

.sk-chart-kpis__tile {
  border-radius: var(--an-radius-sm);
  padding: 12px 14px;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
}

/* type="chart" — fills a .mkt-chart-wrap canvas area */
.sk-chart-canvas {
  display: flex;
  align-items: flex-end;
  gap: 8px;
  width: 100%;
  height: 150px;
  padding: 10px 4px 0;
  box-sizing: border-box;
}

.sk-chart-canvas__bar {
  background: linear-gradient(90deg, var(--an-surface2) 25%, var(--an-surface3) 37%, var(--an-surface2) 63%);
  background-size: 1200px 100%;
  animation: wt-shimmer 1.6s ease-in-out infinite;
  border-radius: var(--an-radius-xs);
  flex: 1;
  min-width: 6px;
  border-radius: 4px 4px 0 0;
}

/* type="bars" */
.sk-chart-bars {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.sk-chart-bars__row {
  display: grid;
  grid-template-columns: 90px 1fr 44px;
  align-items: center;
  gap: 10px;
}

.sk-chart-bars__track {
  background: linear-gradient(90deg, var(--an-surface2) 25%, var(--an-surface3) 37%, var(--an-surface2) 63%);
  background-size: 1200px 100%;
  animation: wt-shimmer 1.6s ease-in-out infinite;
  border-radius: var(--an-radius-xs);
  height: 8px;
  border-radius: 4px;
}

/* type="donut" */
.sk-chart-donut {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 32px;
  padding: 20px 24px;
  flex-wrap: wrap;
}

.sk-chart-donut__ring {
  background: linear-gradient(90deg, var(--an-surface2) 25%, var(--an-surface3) 37%, var(--an-surface2) 63%);
  background-size: 1200px 100%;
  animation: wt-shimmer 1.6s ease-in-out infinite;
  border-radius: var(--an-radius-xs);
  width: 120px;
  height: 120px;
  border-radius: 50%;
  flex-shrink: 0;
  -webkit-mask: radial-gradient(circle, transparent 36px, #000 37px);
  mask: radial-gradient(circle, transparent 36px, #000 37px);
}

.sk-chart-donut__legend {
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1;
  min-width: 120px;
  justify-content: center;
}

/* type="matrix" — heatmap / cohort table (thin rows of cells, not a
   square grid — a cohort/heatmap table is wide and short, not N×N) */
.sk-chart-matrix {
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.sk-chart-matrix__row {
  display: flex;
  align-items: center;
  gap: 5px;
}

.sk-chart-matrix__label {
  background: linear-gradient(90deg, var(--an-surface2) 25%, var(--an-surface3) 37%, var(--an-surface2) 63%);
  background-size: 1200px 100%;
  animation: wt-shimmer 1.6s ease-in-out infinite;
  border-radius: var(--an-radius-xs);
  width: 64px;
  height: 26px;
  flex-shrink: 0;
  border-radius: 4px;
}

.sk-chart-matrix__cell {
  background: linear-gradient(90deg, var(--an-surface2) 25%, var(--an-surface3) 37%, var(--an-surface2) 63%);
  background-size: 1200px 100%;
  animation: wt-shimmer 1.6s ease-in-out infinite;
  border-radius: var(--an-radius-xs);
  height: 26px;
  flex: 1;
  min-width: 24px;
  border-radius: 3px;
}

/* type="stack" — stacked vertical bar columns */
.sk-chart-stack {
  display: flex;
  align-items: flex-end;
  gap: 10px;
  width: 100%;
  height: 150px;
  padding: 10px 4px 0;
  box-sizing: border-box;
}

.sk-chart-stack__col {
  background: linear-gradient(90deg, var(--an-surface2) 25%, var(--an-surface3) 37%, var(--an-surface2) 63%);
  background-size: 1200px 100%;
  animation: wt-shimmer 1.6s ease-in-out infinite;
  border-radius: var(--an-radius-xs);
  flex: 1;
  min-width: 10px;
  border-radius: 4px 4px 0 0;
}

/* type="funnel" — tapering-width rows */
.sk-chart-funnel {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  padding: 10px 0;
}

/* type="card" — generic fallback */
.sk-chart-card {
  padding-top: 2px;
}

.waitry-dark-theme .sk-chart-skel__header-dot,
.waitry-dark-theme .sk-chart-canvas__bar,
.waitry-dark-theme .sk-chart-bars__track,
.waitry-dark-theme .sk-chart-donut__ring,
.waitry-dark-theme .sk-chart-matrix__cell,
.waitry-dark-theme .sk-chart-stack__col,
.waitry-dark-theme .sk-kpi-value {
  background: linear-gradient(90deg, var(--an-surface2) 25%, var(--an-surface3) 37%, var(--an-surface2) 63%);
  background-size: 1200px 100%;
}

/* ── Phase 2: Flow Nodes (KDS) ── */
.mkt-flow-container {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 24px;
}

.mkt-flow-row {
  display: flex;
  align-items: center;
  gap: 16px;
  overflow-x: auto;
}

.mkt-flow-group {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 140px;
}

.mkt-flow-node {
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  padding: 10px 14px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
  transition: transform 0.2s;
  position: relative;
}

.mkt-flow-node:hover {
  transform: translateY(-2px);
  border-color: var(--an-violet);
}

.mkt-flow-title {
  font-size: 11px;
  text-transform: uppercase;
  color: var(--an-text-muted);
  font-weight: 700;
  letter-spacing: 0.5px;
  margin-bottom: 4px;
}

.mkt-flow-time {
  font-size: 16px;
  font-weight: 800;
  color: var(--an-text);
}

.mkt-flow-line {
  height: 2px;
  flex: 1;
  min-width: 30px;
  background: var(--an-border);
  position: relative;
}

.mkt-flow-line::after {
  content: "";
  position: absolute;
  right: -4px;
  top: -3px;
  border-width: 4px;
  border-style: solid;
  border-color: transparent transparent transparent var(--an-border);
}

/* ── Phase 3: Dashboard CSS Grid ── */
.mkt-dashboard-grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 16px;
  padding: 20px 20px 60px;
  max-width: var(--an-content-max-width);
  margin: 0 auto;
  align-content: start;
}

.mkt-col-12 {
  grid-column: span 12;
}

.mkt-col-8 {
  grid-column: span 8;
}

.mkt-col-7 {
  grid-column: span 7;
}

.mkt-col-6 {
  grid-column: span 6;
}

.mkt-col-5 {
  grid-column: span 5;
}

.mkt-col-4 {
  grid-column: span 4;
}

.mkt-col-3 {
  grid-column: span 3;
}

.mkt-dashboard-grid > [ng-show] {
  display: contents;
}

@media (max-width: 1200px) {
  .mkt-col-4, .mkt-col-3 {
    grid-column: span 6;
  }
}
@media (max-width: 960px) {
  .mkt-dashboard-grid {
    gap: 12px;
  }
  .mkt-col-8, .mkt-col-7, .mkt-col-6, .mkt-col-5, .mkt-col-4, .mkt-col-3 {
    grid-column: span 12;
  }
}
/* ============================================================
   FUNNEL V4 — Responsive Stage Grid + SVG Background
   ============================================================ */
.mkt-streamgraph-wrap {
  padding: 24px 20px 0;
  overflow: visible; /* allow drop badges to extend */
}

/* Micro-header between blocks — gives the dense card internal hierarchy
   (stage flow → recovery cards → rates) instead of five rows glued together */
.mkt-sg-sub-head {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 22px 4px 0;
  font-size: 10.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  color: var(--an-text-muted);
}
.mkt-sg-sub-head md-icon, .mkt-sg-sub-head [class*=iconoir-] {
  font-size: 14px;
  width: 14px;
  height: 14px;
  min-width: 14px;
  min-height: 14px;
  color: var(--an-text-muted);
}

/* ── 3-column stage grid with SVG background ── */
.mkt-sg-stage-grid {
  position: relative;
  display: grid;
  /* One row, always — a funnel that wraps is not a funnel.
     This used to be `repeat(var(--sg-cols, 3), …)` with the count fed from the
     controller via ng-style. AngularJS's ng-style writes through
     element.style[prop], which SILENTLY IGNORES custom properties (they need
     setProperty), so --sg-cols was never set and the fallback of 3 applied.
     Any venue with checkout instrumentation has 4 stages, so the fourth wrapped
     onto a second row on every load.
     grid-auto-flow: column removes the dependency entirely: N stages produce N
     equal columns whatever N is. minmax(0,1fr) keeps a wide card from growing
     its column, which would shift card centres off the ribbon anchors. */
  grid-auto-flow: column;
  grid-auto-columns: minmax(0, 1fr);
  background: rgba(108, 99, 255, 0.03);
  border-radius: 12px;
  /* overflow must stay visible — drop badges and last-card overflow would be clipped otherwise */
}

/* The SVG is absolutely positioned to fill the stage grid */
.mkt-sg-svg-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  pointer-events: none;
  border-radius: 12px; /* clip the ribbon to the container's rounded corners */
}

/* Each column cell — the card sits inside, centered */
.mkt-sg-stage {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 30px 16px;
}

/* ── Stage Cards ── */
.mkt-sg-card {
  position: relative;
  background: rgba(255, 255, 255, 0.88);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(0, 0, 0, 0.07);
  border-radius: 14px;
  padding: 16px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  width: min-content; /* shrink to content, never overflow parent col */
  min-width: 110px;
  max-width: calc(100% - 24px); /* always fits inside the column with 12px each side */
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.07), 0 1px 4px rgba(0, 0, 0, 0.04);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.waitry-dark-theme .mkt-sg-card {
  background: rgba(28, 28, 40, 0.88);
  border-color: rgba(255, 255, 255, 0.1);
}

.mkt-sg-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
}

.mkt-sg-icon {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-bottom: 8px;
}

.mkt-sg-icon md-icon {
  font-size: 20px !important;
  width: 20px !important;
  height: 20px !important;
}

.mkt-sg-val {
  font-size: 26px;
  font-weight: 800;
  letter-spacing: -0.5px;
  color: var(--an-text);
  margin-bottom: 2px;
  line-height: 1;
}

.mkt-sg-label {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
}

/* Drop-off badge — top-right of card */
.mkt-sg-drop {
  position: absolute;
  top: -10px;
  right: -10px;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 10px;
  padding: 3px 7px;
  font-size: 10px;
  font-weight: 700;
  color: var(--an-text-muted);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  white-space: nowrap;
}

.mkt-sg-drop--red {
  color: var(--an-rose);
  background: rgba(244, 63, 94, 0.05);
  border-color: rgba(244, 63, 94, 0.2);
}

/* ── Loss cards (below the stage grid): where the funnel bled, per gap ── */
.mkt-sg-loss-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 14px;
  padding: 12px 0 4px;
}

/* Neutral surface, not a red-tinted alarm: this row reads as "sales to
   recover", and a wall of rose-washed cards made the whole funnel feel like
   a failure report. The accent now lives ONLY in the icon bubble and the
   figures; the card itself stays calm. */
.mkt-sg-loss-card {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 16px;
  border-radius: 12px;
  border: 1px solid var(--an-border, rgba(0, 0, 0, 0.07));
  background: var(--an-surface, #fff);
}

.waitry-dark-theme .mkt-sg-loss-card {
  background: rgba(255, 255, 255, 0.03);
  border-color: rgba(255, 255, 255, 0.09);
}

/* Zero gap = good news: emerald check + positive copy (template swaps the
   content), styled as quiet confirmation rather than a dimmed alarm */
.mkt-sg-loss-card--zero {
  align-items: center;
  background: rgba(16, 185, 129, 0.05);
  border-color: rgba(16, 185, 129, 0.18);
}

.waitry-dark-theme .mkt-sg-loss-card--zero {
  background: rgba(16, 185, 129, 0.08);
  border-color: rgba(16, 185, 129, 0.25);
}

.mkt-sg-icon--loss {
  background: rgba(244, 63, 94, 0.1);
  flex-shrink: 0;
}
.mkt-sg-icon--loss md-icon, .mkt-sg-icon--loss [class*=iconoir-] {
  color: var(--an-rose) !important;
}

.mkt-sg-icon--ok {
  background: rgba(16, 185, 129, 0.12);
}
.mkt-sg-icon--ok md-icon, .mkt-sg-icon--ok [class*=iconoir-] {
  color: var(--an-emerald) !important;
}

.mkt-sg-loss-main--ok .mkt-sg-loss-label {
  color: var(--an-text-muted);
  font-weight: 600;
}

.mkt-sg-loss-main {
  min-width: 0;
  flex: 1;
}

.mkt-sg-loss-head {
  display: flex;
  align-items: baseline;
  gap: 6px;
  flex-wrap: wrap;
}

.mkt-sg-loss-val {
  font-size: 20px;
  font-weight: 700;
  color: var(--an-rose);
  line-height: 1.1;
}

.mkt-sg-loss-label {
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text, #1F2937);
}

.mkt-sg-loss-sub {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  font-size: 11px;
  color: var(--an-text-muted);
  margin-top: 2px;
}

.mkt-sg-loss-money {
  color: var(--an-amber, #f59e0b);
  font-weight: 600;
}

.mkt-sg-loss-reasons {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-top: 8px;
}

.mkt-sg-reason-chip {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 11px;
  /* Neutral chips: the reasons are context, not three more alarms */
  background: rgba(107, 114, 128, 0.08);
  color: var(--an-text-muted);
}
.mkt-sg-reason-chip b {
  color: var(--an-text);
  font-weight: 700;
}
.mkt-sg-reason-chip md-icon {
  font-size: 13px;
  width: 13px;
  height: 13px;
  min-width: 13px;
  min-height: 13px;
  color: var(--an-text-muted) !important;
}

/* ── Channel context strip: why the funnel is diner-only ── */
.mkt-sg-channels {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin: 18px 0 20px;
  padding: 9px 12px;
  border-radius: 10px;
  background: rgba(107, 114, 128, 0.06);
  font-size: 11.5px;
  color: var(--an-text-muted);
}
.mkt-sg-channels md-icon, .mkt-sg-channels [class*=iconoir-] {
  font-size: 15px;
  width: 15px;
  height: 15px;
  min-width: 15px;
  min-height: 15px;
  color: var(--an-text-muted);
}

.mkt-sg-channels-note {
  flex: 1;
  min-width: 200px;
}

.mkt-sg-ch-chip {
  display: inline-flex;
  align-items: baseline;
  gap: 4px;
  padding: 2px 9px;
  border-radius: 999px;
  background: rgba(107, 114, 128, 0.1);
  font-weight: 600;
  white-space: nowrap;
}

.mkt-sg-ch-chip--total {
  background: rgba(16, 185, 129, 0.12);
  color: var(--an-emerald);
}

/* Tablet: tighten cards so 3-4 columns keep fitting without overflow */
@media (max-width: 1100px) {
  .mkt-sg-stage {
    padding: 20px 10px;
  }
  .mkt-sg-card {
    padding: 12px 14px;
    min-width: 96px;
    max-width: calc(100% - 12px);
  }
  .mkt-sg-val {
    font-size: 21px;
  }
}
/* Responsive: stack vertically on mobile */
@media (max-width: 768px) {
  .mkt-streamgraph-wrap {
    padding: 12px 12px 0;
  }
  .mkt-sg-stage-grid {
    grid-auto-flow: row; /* undo the desktop single-row rule */
    grid-auto-columns: auto;
    grid-template-columns: 1fr;
    gap: 12px;
    background: none; /* no ribbon → no need for the tinted backdrop */
  }
  .mkt-sg-svg-bg {
    display: none;
  } /* No SVG on mobile */
  .mkt-sg-stage {
    padding: 0;
  }
  .mkt-sg-card {
    width: 100%;
    min-width: unset;
    max-width: none;
  }
  .mkt-sg-loss-grid {
    grid-template-columns: 1fr;
    padding: 10px 0 4px;
  }
  .mkt-sg-channels {
    margin: 12px 0 14px;
  }
  .mkt-sg-sub-head {
    margin: 16px 2px 0;
  }
  .mkt-sg-drop {
    right: 8px;
  } /* cards are full-width here — keep badges inside the viewport */
  .mkt-pipeline-summary {
    flex-wrap: wrap;
    gap: 10px;
  }
}
/* ============================================================
   CUSTOMER INSIGHTS V3 — 3-Column Grid Layout
   ============================================================ */
.mkt-ci-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  padding: 20px;
  gap: 0;
}

.mkt-ci-col {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 16px 24px;
}

.mkt-ci-col-title {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  color: var(--an-text-muted);
  margin-bottom: 4px;
}

/* Donut + Legend block (col 1) */
.mkt-ci-donut {
  width: 96px;
  height: 96px;
  flex-shrink: 0;
}

.mkt-ci-legend-item {
  display: flex;
  align-items: center;
  gap: 8px;
}

.mkt-ci-legend-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
}

.mkt-ci-legend-val {
  font-size: 16px;
  font-weight: 800;
  color: var(--an-text);
  line-height: 1;
}

.mkt-ci-legend-lbl {
  font-size: 10px;
  color: var(--an-text-muted);
  font-weight: 500;
}

/* KPI stat block (cols 2 & 3) */
.mkt-ci-kpi-stat {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 12px 16px;
  border-radius: 10px;
  background: var(--an-surface2);
}

.mkt-ci-kpi-stat-val {
  font-size: 28px;
  font-weight: 800;
  letter-spacing: -0.5px;
  line-height: 1;
}

.mkt-ci-kpi-stat-val--violet {
  color: var(--an-violet);
}

.mkt-ci-kpi-stat-val--rose {
  color: var(--an-rose);
}

.mkt-ci-kpi-stat-val--emerald {
  color: var(--an-emerald);
}

.mkt-ci-kpi-stat-val--sky {
  color: #3B82F6;
}

.mkt-ci-kpi-stat-val--amber {
  color: var(--an-amber);
}

.mkt-ci-kpi-stat-sub {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
}

.mkt-ci-kpi-divider {
  height: 1px;
  background: var(--an-border);
  margin: 4px 0;
}

/* Responsive: stack cols on small screens */
@media (max-width: 960px) {
  .mkt-ci-grid {
    grid-template-columns: 1fr;
    gap: 0;
    padding: 0;
  }
  .mkt-ci-col {
    padding: 16px;
  }
}
/* ============================================================
   BOUGHT TOGETHER V2 — Premium Card Grid
   ============================================================ */
.mkt-combo-cards {
  padding: 16px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}

.mkt-combo-card {
  background: var(--an-surface);
  border: 1.5px solid var(--an-border);
  border-radius: 14px;
  padding: 16px 14px 12px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  position: relative;
  transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.2s, border-color 0.2s;
  cursor: default;
  overflow: hidden;
}

.mkt-combo-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 28px rgba(108, 99, 255, 0.12);
  border-color: var(--an-violet);
}

/* Rank glow borders */
.mkt-combo-card--gold {
  border-color: #F59E0B;
  background: linear-gradient(160deg, rgba(245, 158, 11, 0.05) 0%, var(--an-surface) 60%);
}

.mkt-combo-card--silver {
  border-color: #94A3B8;
  background: linear-gradient(160deg, rgba(148, 163, 184, 0.05) 0%, var(--an-surface) 60%);
}

.mkt-combo-card--bronze {
  border-color: #B45309;
  background: linear-gradient(160deg, rgba(180, 83, 9, 0.05) 0%, var(--an-surface) 60%);
}

.mkt-combo-card--gold:hover {
  box-shadow: 0 8px 28px rgba(245, 158, 11, 0.2);
}

.mkt-combo-card--silver:hover {
  box-shadow: 0 8px 28px rgba(148, 163, 184, 0.2);
}

.mkt-combo-card--bronze:hover {
  box-shadow: 0 8px 28px rgba(180, 83, 9, 0.2);
}

/* Rank badge */
.mkt-combo-rank-badge {
  position: absolute;
  top: 8px;
  right: 10px;
  font-size: 16px;
  line-height: 1;
}

/* Avatar pair */
.mkt-combo-avatars {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-top: 4px;
}

.mkt-combo-avatar {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 800;
  color: #fff;
  flex-shrink: 0;
  border: 2px solid rgba(255, 255, 255, 0.6);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  letter-spacing: -0.5px;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}

.mkt-combo-avatar--img {
  object-fit: cover;
}

.mkt-combo-plus {
  font-size: 18px;
  font-weight: 900;
  color: var(--an-violet);
  flex-shrink: 0;
  line-height: 1;
}

/* Names */
.mkt-combo-names {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-wrap: wrap;
  justify-content: center;
  text-align: center;
}

.mkt-combo-name {
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 90px;
}

.mkt-combo-name-sep {
  font-size: 11px;
  color: var(--an-text-muted);
  font-weight: 500;
}

/* Count badge */
.mkt-combo-count-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  background: rgba(108, 99, 255, 0.1);
  border: 1px solid rgba(108, 99, 255, 0.2);
  border-radius: 20px;
  padding: 4px 10px;
  font-size: 12px;
  font-weight: 700;
  color: var(--an-violet);
}

.mkt-combo-count-badge md-icon {
  color: var(--an-violet) !important;
}

.mkt-combo-card--gold .mkt-combo-count-badge {
  background: rgba(245, 158, 11, 0.1);
  border-color: rgba(245, 158, 11, 0.25);
  color: #F59E0B;
}

.mkt-combo-card--silver .mkt-combo-count-badge {
  background: rgba(148, 163, 184, 0.1);
  border-color: rgba(148, 163, 184, 0.25);
  color: #64748B;
}

.mkt-combo-card--bronze .mkt-combo-count-badge {
  background: rgba(180, 83, 9, 0.1);
  border-color: rgba(180, 83, 9, 0.25);
  color: #B45309;
}

/* Heat bar */
.mkt-combo-heat-wrap {
  width: 100%;
  height: 4px;
  background: var(--an-surface2);
  border-radius: 2px;
  overflow: hidden;
  margin-top: 2px;
}

.mkt-combo-heat-fill {
  height: 100%;
  background: linear-gradient(90deg, var(--an-violet), #A78BFA);
  border-radius: 2px;
  transition: width 1s cubic-bezier(0.4, 0, 0.2, 1);
}

.mkt-combo-card--gold .mkt-combo-heat-fill {
  background: linear-gradient(90deg, #F59E0B, #FCD34D);
}

.mkt-combo-card--silver .mkt-combo-heat-fill {
  background: linear-gradient(90deg, #94A3B8, #CBD5E1);
}

.mkt-combo-card--bronze .mkt-combo-heat-fill {
  background: linear-gradient(90deg, #B45309, #D97706);
}

@media (max-width: 1200px) {
  .mkt-combo-cards {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 768px) {
  .mkt-combo-cards {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 480px) {
  .mkt-combo-cards {
    grid-template-columns: 1fr;
  }
  .mkt-ci-kpi-row {
    grid-template-columns: repeat(3, 1fr);
  }
}
/* ============================================================
   MISE AI — Insight Cards + Ask Panel
   ============================================================ */
/* ── Insight Strip (collapsed) ── */
.mise-insight-strip {
  border-top: 1px solid var(--an-border);
  padding: 0;
  animation: anFadeUp 0.4s ease both;
}

.mise-insight-header {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 18px;
  cursor: pointer;
  transition: background 0.2s;
  user-select: none;
}

.mise-insight-header:hover {
  background: rgba(244, 63, 94, 0.04);
}

.mise-insight-brand {
  display: flex;
  align-items: center;
  gap: 5px;
  flex-shrink: 0;
}

.mise-spark {
  font-size: 13px;
  line-height: 1;
}

.mise-logo {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.5px;
  background: linear-gradient(135deg, var(--an-rose), var(--an-orange));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-transform: uppercase;
}

.mise-insight-preview {
  font-size: 12px;
  color: var(--an-text-muted);
  flex: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.mise-chevron {
  font-size: 18px !important;
  width: 18px !important;
  height: 18px !important;
  color: var(--an-text-muted) !important;
  transition: transform 0.3s ease;
  flex-shrink: 0;
}

.mise-chevron-up {
  transform: rotate(180deg);
}

/* ── Insight Body (expanded) ── */
.mise-insight-body {
  padding: 4px 18px 14px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  animation: miseSlideDown 0.3s ease both;
}

@keyframes miseSlideDown {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.mise-insight-item {
  display: flex;
  gap: 12px;
  padding: 12px 14px;
  border-radius: var(--an-radius-sm);
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-left: 3px solid var(--an-rose);
  transition: transform 0.2s, box-shadow 0.2s;
}

.mise-insight-item:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
}

/* Color variants */
.mise-insight-item--opportunity {
  border-left-color: var(--an-emerald);
}

.mise-insight-item--tip {
  border-left-color: var(--an-sky);
}

.mise-insight-item--warning {
  border-left-color: var(--an-rose);
}

.mise-insight-item--alert {
  border-left-color: var(--an-amber);
}

.mise-insight-icon-wrap {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.mise-insight-icon-wrap md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
}

.mise-insight-icon--opportunity {
  background: rgba(16, 185, 129, 0.12);
}

.mise-insight-icon--opportunity md-icon {
  color: var(--an-emerald) !important;
}

.mise-insight-icon--tip {
  background: rgba(56, 189, 248, 0.12);
}

.mise-insight-icon--tip md-icon {
  color: var(--an-sky) !important;
}

.mise-insight-icon--warning {
  background: rgba(244, 63, 94, 0.12);
}

.mise-insight-icon--warning md-icon {
  color: var(--an-rose) !important;
}

.mise-insight-icon--alert {
  background: rgba(245, 158, 11, 0.12);
}

.mise-insight-icon--alert md-icon {
  color: var(--an-amber) !important;
}

.mise-insight-content {
  flex: 1;
  min-width: 0;
}

.mise-insight-title {
  font-size: 12px;
  font-weight: 700;
  color: var(--an-text);
  line-height: 1.3;
  margin-bottom: 3px;
}

.mise-insight-text {
  font-size: 11px;
  color: var(--an-text-muted);
  line-height: 1.4;
}

.mise-insight-ask {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-top: 6px;
  background: none;
  border: 1px solid var(--an-border);
  border-radius: 12px;
  padding: 3px 10px 3px 7px;
  font-size: 10px;
  font-weight: 600;
  color: var(--an-rose);
  cursor: pointer;
  transition: all 0.2s;
  font-family: "Inter", sans-serif;
}

.mise-insight-ask:hover {
  background: rgba(244, 63, 94, 0.1);
  border-color: var(--an-rose);
}

.mise-insight-ask md-icon {
  color: var(--an-rose) !important;
}

/* ── Shimmer loading ── */
.mise-insight-loading .mise-shimmer-line {
  flex: 1;
  height: 12px;
  border-radius: 6px;
  background: linear-gradient(90deg, var(--an-surface2) 25%, var(--an-surface) 50%, var(--an-surface2) 75%);
  background-size: 200% 100%;
  animation: anSkeleton 1.4s infinite;
}

/* ============================================================
   ASK MISE — Floating Chat Panel
   ============================================================ */
/* ── FAB Button ── */
.mise-ask-fab {
  position: fixed;
  bottom: 24px;
  right: 24px;
  z-index: 2147483000;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 20px 10px 14px;
  background: linear-gradient(135deg, var(--an-rose), var(--an-orange));
  color: #fff;
  border-radius: 24px;
  box-shadow: 0 8px 32px rgba(244, 63, 94, 0.35), 0 2px 8px rgba(0, 0, 0, 0.1);
  cursor: pointer;
  transition: all 0.3s ease;
  animation: miseFabPulse 3s ease-in-out infinite;
  font-family: "Inter", sans-serif;
}

.mise-ask-fab:hover {
  transform: translateY(-2px) scale(1.03);
  box-shadow: 0 12px 40px rgba(244, 63, 94, 0.45), 0 4px 12px rgba(0, 0, 0, 0.15);
}

@keyframes miseFabPulse {
  0%, 100% {
    box-shadow: 0 8px 32px rgba(244, 63, 94, 0.35), 0 2px 8px rgba(0, 0, 0, 0.1);
  }
  50% {
    box-shadow: 0 8px 40px rgba(244, 63, 94, 0.5), 0 2px 12px rgba(0, 0, 0, 0.15);
  }
}
.mise-ask-fab md-icon {
  font-size: 20px !important;
  width: 20px !important;
  height: 20px !important;
  color: #fff !important;
}

.mise-ask-fab-label {
  font-size: 13px;
  font-weight: 600;
  letter-spacing: -0.2px;
  white-space: nowrap;
}

/* ── Chat Panel ── */
.mise-ask-panel {
  position: fixed;
  bottom: 24px;
  right: 24px;
  z-index: 2147483001;
  width: 380px;
  max-height: 520px;
  display: flex;
  flex-direction: column;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 16px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15), 0 4px 16px rgba(0, 0, 0, 0.08);
  overflow: hidden;
  animation: misePanelIn 0.3s cubic-bezier(0.4, 0, 0.2, 1) both;
  font-family: "Inter", sans-serif;
}

@keyframes misePanelIn {
  from {
    opacity: 0;
    transform: translateY(20px) scale(0.95);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
.mise-ask-panel-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 8px 12px 16px;
  background: linear-gradient(135deg, var(--an-rose), var(--an-orange));
  color: #fff;
  flex-shrink: 0;
}

.mise-ask-panel-brand {
  display: flex;
  align-items: center;
  gap: 6px;
}

.mise-ask-panel-brand .mise-spark {
  font-size: 16px;
}

.mise-ask-panel-brand .mise-logo {
  background: none !important;
  -webkit-text-fill-color: #fff;
  font-size: 14px;
  font-weight: 800;
}

.mise-ask-panel-sub {
  font-size: 12px;
  opacity: 0.8;
  font-weight: 500;
}

.mise-ask-close {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.mise-ask-close:hover {
  background: rgba(255, 255, 255, 0.15) !important;
}

.mise-ask-close md-icon {
  color: rgba(255, 255, 255, 0.8) !important;
  font-size: 18px !important;
  width: 18px !important;
  height: 18px !important;
  line-height: 18px !important;
  margin: 0 !important;
}

.mise-ask-header-actions {
  display: flex;
  align-items: center;
  gap: 2px;
}

.mise-sound-toggle {
  display: flex;
  align-items: center;
  gap: 4px;
  background: rgba(255, 255, 255, 0.15);
  border: none;
  border-radius: 8px;
  padding: 4px 8px;
  cursor: pointer;
  color: rgba(255, 255, 255, 0.9);
  transition: all 0.2s ease;
  outline: none;
}
.mise-sound-toggle md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  margin: 0 !important;
  color: inherit !important;
}
.mise-sound-toggle:hover {
  background: rgba(255, 255, 255, 0.25);
  color: #fff;
}
.mise-sound-toggle .mise-audio-waves {
  display: flex;
  align-items: center;
  gap: 1.5px;
  height: 12px;
}
.mise-sound-toggle .mise-audio-waves span {
  display: block;
  width: 1.5px;
  background: currentColor;
  border-radius: 1px;
  animation: miseMiniWave 0.8s ease-in-out infinite;
}
.mise-sound-toggle .mise-audio-waves span:nth-child(1) {
  animation-delay: 0s;
}
.mise-sound-toggle .mise-audio-waves span:nth-child(2) {
  animation-delay: 0.2s;
}
.mise-sound-toggle .mise-audio-waves span:nth-child(3) {
  animation-delay: 0.4s;
}

@keyframes miseMiniWave {
  0%, 100% {
    height: 4px;
  }
  50% {
    height: 10px;
  }
}
/* ── Messages area ── */
.mise-ask-panel-messages {
  flex: 1;
  overflow-y: auto;
  padding: 14px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-height: 200px;
  max-height: 340px;
  background: var(--an-bg);
}

.mise-ask-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 24px 16px;
  text-align: center;
  flex: 1;
}

.mise-ask-empty md-icon {
  color: var(--an-rose) !important;
}

.mise-ask-empty-text {
  font-size: 13px;
  color: var(--an-text-muted);
  margin: 0;
}

.mise-ask-quick-prompts {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: center;
  margin-top: 6px;
}

.mise-ask-quick {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 14px;
  padding: 6px 12px;
  font-size: 11px;
  color: var(--an-rose);
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
  font-family: "Inter", sans-serif;
  text-align: left;
  line-height: 1.3;
}

.mise-ask-quick:hover {
  background: rgba(244, 63, 94, 0.1);
  border-color: var(--an-rose);
  transform: translateY(-1px);
}

/* ── Follow-ups and quick actions ──
   The bubble's answer to /mise's .ai-followup-pill row, at bubble scale. Every
   pill drawn here survived permission filtering, so an arrow always goes
   somewhere; the two arrow glyphs distinguish "opens a screen" from "asks Mise
   another question". */
.mise-ask-followups {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  margin-top: 2px;
}

.mise-ask-followup {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  max-width: 100%;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 14px;
  padding: 6px 12px;
  font-family: "Inter", sans-serif;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.3;
  color: var(--an-text);
  cursor: pointer;
  text-align: left;
  transition: all 0.2s;
}
.mise-ask-followup span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.mise-ask-followup i {
  font-size: 13px;
  flex-shrink: 0;
  color: var(--an-text-muted);
}

.mise-ask-followup:hover {
  background: rgba(244, 63, 94, 0.1);
  border-color: var(--an-rose);
  transform: translateY(-1px);
}

.mise-ask-followup--action {
  border-color: rgba(244, 63, 94, 0.35);
}
.mise-ask-followup--action i {
  color: var(--an-rose);
}

/* ── Message bubbles ── */
.mise-ask-msg {
  display: flex;
}

.mise-ask-msg--user {
  justify-content: flex-end;
}

.mise-ask-msg--user .mise-ask-msg-content {
  background: linear-gradient(135deg, var(--an-rose), var(--an-orange));
  color: #fff;
  border-radius: 14px 14px 4px 14px;
  padding: 10px 14px;
  font-size: 13px;
  max-width: 85%;
  word-wrap: break-word;
  line-height: 1.4;
}

.mise-ask-msg--assistant {
  justify-content: flex-start;
}

.mise-ask-msg-ai {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 14px 14px 14px 4px;
  padding: 10px 14px;
  font-size: 13px;
  max-width: 90%;
  word-wrap: break-word;
  line-height: 1.5;
  color: var(--an-text);
}

.mise-ask-msg-ai p {
  margin: 0 0 8px;
}

.mise-ask-msg-ai p:last-child {
  margin-bottom: 0;
}

.mise-ask-msg-ai strong {
  font-weight: 700;
}

.mise-ask-msg-ai ul, .mise-ask-msg-ai ol {
  padding-left: 18px;
  margin: 4px 0;
}

.mise-ask-msg-ai li {
  margin-bottom: 4px;
}

.mise-ask-msg-ai code {
  background: var(--an-surface2);
  padding: 1px 5px;
  border-radius: 4px;
  font-size: 12px;
}

.mise-ask-msg-status {
  font-size: 11px;
  color: var(--an-rose);
  font-style: italic;
  padding: 6px 14px;
  animation: misePulseText 1.5s ease-in-out infinite;
}

@keyframes misePulseText {
  0%, 100% {
    opacity: 0.6;
  }
  50% {
    opacity: 1;
  }
}
/* Typing dots */
.mise-ask-msg-typing {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 10px 14px;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 14px 14px 14px 4px;
}

.mise-typing-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--an-rose);
  animation: miseDotBounce 1.4s ease-in-out infinite;
}

.mise-typing-dot:nth-child(2) {
  animation-delay: 0.2s;
}

.mise-typing-dot:nth-child(3) {
  animation-delay: 0.4s;
}

@keyframes miseDotBounce {
  0%, 60%, 100% {
    transform: translateY(0);
    opacity: 0.4;
  }
  30% {
    transform: translateY(-6px);
    opacity: 1;
  }
}
/* ── Input area ── */
.mise-ask-panel-input {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 10px 12px;
  border-top: 1px solid var(--an-border);
  background: var(--an-surface);
  flex-shrink: 0;
}

.mise-ask-input {
  flex: 1;
  border: 1px solid var(--an-border);
  border-radius: 10px;
  padding: 8px 12px;
  font-size: 13px;
  font-family: "Inter", sans-serif;
  background: var(--an-bg);
  color: var(--an-text);
  outline: none;
  transition: border-color 0.2s;
}

.mise-ask-input:focus {
  border-color: var(--an-rose);
  box-shadow: 0 0 0 3px rgba(244, 63, 94, 0.1);
}

.mise-ask-send md-icon {
  color: var(--an-rose) !important;
}

/* ── Footer ── */
.mise-ask-panel-footer {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 6px;
  border-top: 1px solid var(--an-border);
  flex-shrink: 0;
}

.mise-ask-panel-footer span {
  font-size: 9px;
  color: var(--an-text-muted);
  font-weight: 500;
  letter-spacing: 0.3px;
  opacity: 0.6;
}

/* ── Mobile responsive ── */
@media (max-width: 600px) {
  .mise-ask-panel {
    width: calc(100vw - 16px);
    right: 8px;
    bottom: 8px;
    max-height: 70vh;
  }
  .mise-ask-fab-label {
    display: none;
  }
  .mise-ask-fab {
    box-sizing: border-box;
    padding: 12px;
    border-radius: 50%;
    width: 48px;
    height: 48px;
    right: 16px;
    bottom: calc(16px + max(var(--an-bottom-nav-h, 0px), env(safe-area-inset-bottom)));
    align-items: center;
    justify-content: center;
  }
}
/* ── Emerald card header variant ── */
.mkt-card-header--emerald {
  border-left: 3px solid var(--an-emerald);
}

.mkt-card-header--emerald md-icon {
  color: var(--an-emerald) !important;
}

/* ── KPI value color variants (used in promo / coupon KPI strips) ── */
.mkt-src-kpi-val--green {
  color: var(--an-emerald) !important;
}

.mkt-src-kpi-val--amber {
  color: var(--an-amber) !important;
}

.mkt-src-kpi-val--rose {
  color: var(--an-rose) !important;
}

/* ── Promo table 4-column override (coupon by item: name/count/pts/fulfillment) ── */
.mkt-promo-table .mkt-promo-header:has(.mkt-promo-name + .mkt-promo-usage + .mkt-promo-rev + .mkt-promo-rev),
.mkt-promo-table--four .mkt-promo-header,
.mkt-promo-table--four .mkt-promo-row {
  grid-template-columns: 1fr 60px 80px 80px;
}

/* Coupon by-item table: 4 cols */
.mkt-coupon-item-table .mkt-promo-header,
.mkt-coupon-item-table .mkt-promo-row {
  grid-template-columns: 1fr 60px 90px 90px;
}

/* Coupon by-tier table: 5 cols */
.mkt-coupon-tier-table .mkt-promo-header,
.mkt-coupon-tier-table .mkt-promo-row {
  grid-template-columns: 1fr 70px 80px 90px 90px;
}

/* ── Promo NVR (New vs Returning) per promo ── */
.mkt-promo-nvr-row {
  padding: 8px 0;
  border-bottom: 1px solid var(--an-border);
}
.mkt-promo-nvr-row:last-child {
  border-bottom: none;
}

.mkt-promo-nvr-name {
  font-size: 11px;
  font-weight: 600;
  color: var(--an-text);
  margin-bottom: 5px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.mkt-promo-nvr-bars {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.mkt-promo-nvr-bar-wrap {
  display: flex;
  align-items: center;
  gap: 6px;
  height: 14px;
  position: relative;
}

.mkt-promo-nvr-fill {
  height: 8px;
  border-radius: 4px;
  transition: width 0.6s ease;
  min-width: 2px;
}

.mkt-promo-nvr-fill--new {
  background: var(--an-violet);
}

.mkt-promo-nvr-fill--ret {
  background: var(--an-emerald);
}

.mkt-promo-nvr-lbl {
  font-size: 9px;
  color: var(--an-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.4px;
  white-space: nowrap;
}

.mkt-promo-nvr-val {
  font-size: 10px;
  font-weight: 700;
  color: var(--an-text);
  margin-left: auto;
}

/* ── Coupon fulfillment donut wrap ── */
.mkt-coupon-donut-wrap {
  display: flex;
  align-items: center;
  gap: 24px;
  padding: 16px 0 4px;
}
.mkt-coupon-donut-wrap .mkt-ci-donut {
  width: 90px;
  height: 90px;
  flex-shrink: 0;
}
.mkt-coupon-donut-wrap .mkt-coupon-donut-legend {
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1;
}

/* ============================================================
   ATTRIBUTION TAB — Cross-Channel, UTM, Check-in
   ============================================================ */
/* Badge blue variant */
.mkt-badge--blue {
  background: rgba(56, 189, 248, 0.15);
  color: var(--an-sky);
}

/* KPI card component (card-style, used in Referral ROI — distinct from .mkt-kpi-chip) */
.mkt-kpi-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
  padding: 14px 12px;
  border-radius: var(--an-radius-sm);
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  transition: transform 0.2s, box-shadow 0.2s;
  text-align: center;
}
.mkt-kpi-card md-icon {
  font-size: 20px !important;
  width: 20px !important;
  height: 20px !important;
  color: var(--an-text-muted) !important;
}
.mkt-kpi-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.07);
}
.mkt-kpi-card--green md-icon {
  color: var(--an-emerald) !important;
}
.mkt-kpi-card--purple md-icon {
  color: var(--an-violet) !important;
}

.mkt-kpi-val {
  font-size: 20px;
  font-weight: 800;
  color: var(--an-text);
  line-height: 1;
  letter-spacing: -0.5px;
}

/* ── Cross-Channel strip ── */
.mkt-attr-channel-strip {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 14px 18px;
}

.mkt-attr-channel {
  display: grid;
  grid-template-columns: 38px 120px 1fr auto;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  border-radius: var(--an-radius-sm);
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  transition: box-shadow 0.2s, transform 0.2s;
}
.mkt-attr-channel:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.07);
}
.mkt-attr-channel__icon {
  width: 36px;
  height: 36px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.mkt-attr-channel__icon md-icon {
  font-size: 18px !important;
  width: 18px !important;
  height: 18px !important;
  color: inherit !important;
}
.mkt-attr-channel__meta {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.mkt-attr-channel__name {
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text);
  text-transform: capitalize;
}
.mkt-attr-channel__pct {
  font-size: 11px;
  color: var(--an-text-muted);
  font-weight: 700;
}
.mkt-attr-channel__bar-wrap {
  height: 6px;
  background: var(--an-border);
  border-radius: 3px;
  overflow: hidden;
}
.mkt-attr-channel__bar {
  height: 100%;
  border-radius: 3px;
  min-width: 4px;
  transition: width 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}
.mkt-attr-channel__kpis {
  display: flex;
  gap: 16px;
  flex-shrink: 0;
}

.mkt-attr-kpi {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 1px;
}
.mkt-attr-kpi b {
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
}
.mkt-attr-kpi small {
  font-size: 9px;
  color: var(--an-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.4px;
}

/* ── UTM Campaign table ── */
.mkt-utm-table .mkt-promo-header,
.mkt-utm-table .mkt-promo-row {
  grid-template-columns: 2fr 90px 90px 60px 60px 80px 60px 80px;
}

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

.mkt-utm-campaign--val {
  font-weight: 600;
  font-size: 12px;
}

.mkt-utm-source, .mkt-utm-medium {
  text-align: center;
}

.mkt-utm-num {
  text-align: right;
  font-size: 12px;
}

.mkt-utm-revenue {
  font-weight: 700;
  color: var(--an-emerald);
}

/* ── Horizontal bar list (generic utility) ── */
.mkt-horiz-bar-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 14px 18px;
}

.mkt-horiz-bar-item {
  display: grid;
  grid-template-columns: 110px 1fr 70px;
  align-items: center;
  gap: 8px;
}

.mkt-horiz-bar-label {
  font-size: 11px;
  font-weight: 600;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.mkt-horiz-bar-wrap {
  height: 8px;
  background: var(--an-surface2);
  border-radius: 4px;
  overflow: hidden;
}

.mkt-horiz-bar {
  height: 100%;
  border-radius: 4px;
  min-width: 4px;
  transition: width 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.mkt-horiz-bar-value {
  font-size: 11px;
  font-weight: 700;
  color: var(--an-text);
  text-align: right;
}

.mkt-promo-bar {
  flex: 1;
  min-width: 80px;
}

/* ============================================================
   REFERRAL TAB — Funnel + Quality compare
   ============================================================ */
.mkt-referral-funnel {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 14px 18px;
}

.mkt-referral-stage {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 10px;
}
.mkt-referral-stage__bar-wrap {
  height: 10px;
  background: var(--an-surface2);
  border-radius: 5px;
  overflow: hidden;
}
.mkt-referral-stage__bar {
  height: 100%;
  border-radius: 5px;
  min-width: 4px;
  transition: width 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}
.mkt-referral-stage__label {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 1px;
  min-width: 80px;
}
.mkt-referral-stage__key {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  color: var(--an-text-muted);
  font-weight: 600;
}
.mkt-referral-stage__val {
  font-size: 14px;
  font-weight: 800;
  line-height: 1;
}

.mkt-quality-compare {
  display: grid;
  grid-template-columns: 1fr 1px 1fr;
  gap: 0;
  padding: 14px 18px;
  align-items: start;
}

.mkt-quality-col {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 0 16px;
}
.mkt-quality-col:first-child {
  padding-left: 0;
}
.mkt-quality-col:last-child {
  padding-right: 0;
}
.mkt-quality-col__header {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding-bottom: 8px;
  border-bottom: 2px solid;
}
.mkt-quality-col__header--purple {
  color: var(--an-violet);
  border-color: var(--an-violet);
}
.mkt-quality-col__header--gray {
  color: var(--an-text-muted);
  border-color: var(--an-border);
}

.mkt-quality-divider {
  background: var(--an-border);
  width: 1px;
  align-self: stretch;
  margin: 0 4px;
}

.mkt-quality-kpi {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
}
.mkt-quality-kpi__val {
  font-size: 16px;
  font-weight: 800;
  color: var(--an-text);
  line-height: 1;
}
.mkt-quality-kpi__label {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  color: var(--an-text-muted);
  font-weight: 600;
  text-align: right;
}

/* Responsive overrides for new tabs */
@media (max-width: 1100px) {
  .mkt-attr-channel {
    grid-template-columns: 38px 1fr;
  }
  .mkt-attr-channel__bar-wrap,
  .mkt-attr-channel__kpis {
    grid-column: 1/-1;
  }
  .mkt-utm-table .mkt-promo-header,
  .mkt-utm-table .mkt-promo-row {
    grid-template-columns: 2fr 80px 80px 70px 70px;
  }
  .mkt-utm-campaign, .mkt-utm-revenue {
    display: none;
  }
}
@media (max-width: 600px) {
  .mkt-quality-compare {
    grid-template-columns: 1fr;
  }
  .mkt-quality-divider {
    display: none;
  }
  .mkt-kpi-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
/* ── mkt-horiz-bar color modifiers ── */
.mkt-horiz-bar--green {
  background: var(--an-emerald);
}

.mkt-horiz-bar--violet {
  background: var(--an-violet);
}

.mkt-horiz-bar--blue {
  background: var(--an-sky);
}

.mkt-horiz-bar--amber {
  background: var(--an-amber);
}

/* ══════════════════════════════════════════════════════════════════════════
   Promotions Analytics — 15-type engine additions
   ══════════════════════════════════════════════════════════════════════════ */
/* ── Type Filter Strip ── */
.mkt-promo-filter-section {
  padding: 0 !important;
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
}

.mkt-promo-filter-inner {
  padding: 0 0 4px !important;
  background: transparent !important;
}

.mkt-promo-filter-label {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
  margin-bottom: 8px;
  padding: 0 2px;
}

.mkt-promo-type-filter {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
}

.mkt-promo-type-pill {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 5px 12px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  cursor: pointer;
  border: 1px solid var(--an-border);
  background: var(--an-surface);
  color: var(--an-text-muted);
  transition: all 0.18s ease;
  white-space: nowrap;
  outline: none;
}
.mkt-promo-type-pill:hover {
  border-color: var(--an-text-muted);
  color: var(--an-text);
}
.mkt-promo-type-pill--active {
  background: rgba(99, 102, 241, 0.12);
  color: #6366F1;
  border-color: #6366F1;
}
.mkt-promo-type-pill--all {
  font-weight: 700;
}
.mkt-promo-type-pill--all.mkt-promo-type-pill--active {
  background: rgba(99, 102, 241, 0.12);
  color: #6366F1;
  border-color: #6366F1;
}

/* ── Type Breakdown Comparison List ── */
.mkt-promo-type-breakdown-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 4px 0;
}

.mkt-promo-type-breakdown-row {
  display: grid;
  grid-template-columns: 36px 160px 1fr 320px;
  align-items: center;
  gap: 10px;
  padding: 6px 4px;
  border-radius: 8px;
  transition: background 0.15s;
}
.mkt-promo-type-breakdown-row:hover {
  background: var(--an-surface2);
}
.mkt-promo-type-breakdown-row--inactive {
  opacity: 0.38;
}

.mkt-promo-type-breakdown-icon {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.mkt-promo-type-breakdown-icon md-icon {
  font-size: 16px;
  height: 16px;
  width: 16px;
}

.mkt-promo-type-breakdown-name {
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.mkt-promo-type-breakdown-bar-wrap {
  height: 6px;
  background: var(--an-surface2);
  border-radius: 3px;
  overflow: hidden;
}

.mkt-promo-type-breakdown-bar {
  height: 100%;
  border-radius: 3px;
  transition: width 0.7s cubic-bezier(0.4, 0, 0.2, 1);
  min-width: 2px;
}

.mkt-promo-type-breakdown-stats {
  display: flex;
  gap: 18px;
  justify-content: flex-end;
}

.mkt-promo-type-stat {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
.mkt-promo-type-stat b {
  font-size: 12px;
  font-weight: 700;
  color: var(--an-text);
}
.mkt-promo-type-stat small {
  font-size: 9px;
  color: var(--an-text-muted);
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.3px;
  margin-top: 1px;
}

/* ── Visibility Split ── */
.mkt-promo-visibility-split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  padding: 4px 0;
}

.mkt-promo-vis-panel {
  border-radius: 10px;
  border: 1.5px solid var(--an-border);
  padding: 14px 16px;
  transition: border-color 0.2s;
}
.mkt-promo-vis-panel--public {
  border-color: rgba(99, 102, 241, 0.3);
}
.mkt-promo-vis-panel--coupon {
  border-color: rgba(245, 158, 11, 0.3);
}

.mkt-promo-vis-header {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 10px;
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
}
.mkt-promo-vis-header md-icon {
  font-size: 15px;
  height: 15px;
  width: 15px;
}

.mkt-promo-vis-pct {
  margin-left: auto;
  font-size: 18px;
  font-weight: 800;
  letter-spacing: -0.5px;
}

.mkt-promo-vis-bar {
  height: 5px;
  background: var(--an-surface2);
  border-radius: 3px;
  overflow: hidden;
  margin-bottom: 14px;
}

.mkt-promo-vis-bar-fill {
  height: 100%;
  border-radius: 3px;
  transition: width 0.7s ease;
}
.mkt-promo-vis-bar-fill--public {
  background: #6366F1;
}
.mkt-promo-vis-bar-fill--coupon {
  background: #F59E0B;
}

.mkt-promo-vis-stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.mkt-promo-vis-stat {
  display: flex;
  flex-direction: column;
}

.mkt-promo-vis-val {
  font-size: 14px;
  font-weight: 800;
  color: var(--an-text);
  line-height: 1.2;
}

.mkt-promo-vis-lbl {
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  color: var(--an-text-muted);
  font-weight: 600;
  margin-top: 2px;
}

/* ── Targeting Breakdown ── */
.mkt-promo-targeting-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 4px 0;
}

.mkt-promo-targeting-row {
  display: grid;
  grid-template-columns: 36px 1fr 100px;
  align-items: center;
  gap: 10px;
  padding: 6px 4px;
  border-radius: 8px;
  transition: background 0.15s;
}
.mkt-promo-targeting-row:hover {
  background: var(--an-surface2);
}

.mkt-promo-targeting-icon {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.mkt-promo-targeting-icon md-icon {
  font-size: 15px;
  height: 15px;
  width: 15px;
}

.mkt-promo-targeting-info {
  min-width: 0;
}

.mkt-promo-targeting-name {
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text);
  margin-bottom: 5px;
}

.mkt-promo-targeting-bar-wrap {
  height: 5px;
  background: var(--an-surface2);
  border-radius: 3px;
  overflow: hidden;
}

.mkt-promo-targeting-bar {
  height: 100%;
  border-radius: 3px;
  transition: width 0.7s ease;
  min-width: 2px;
}

.mkt-promo-targeting-metrics {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
  font-size: 12px;
  font-weight: 700;
  color: var(--an-text);
}

/* ── Stock Utilization ── */
.mkt-promo-stock-table .mkt-promo-name {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.mkt-promo-stock-bar-wrap {
  height: 4px;
  background: var(--an-surface2);
  border-radius: 2px;
  overflow: hidden;
  margin-top: 3px;
}

.mkt-promo-stock-bar {
  height: 100%;
  border-radius: 2px;
  transition: width 0.7s ease;
  min-width: 2px;
}

/* ── Abandonment-by-hour strip (marketing → recovery tab) ── */
/* 24 equal columns with the hour label under each bar. Every hour is
   always rendered, including empty ones, so the x axis never shifts
   between periods and a quiet hour reads as quiet rather than absent. */
.mkt-ab-hourstrip {
  display: grid;
  grid-template-columns: repeat(24, 1fr);
  gap: 3px;
  align-items: end;
  height: 84px;
  margin-top: 4px;
}

.mkt-ab-hourstrip__col {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: stretch;
}

.mkt-ab-hourstrip__fill {
  width: 100%;
  min-height: 2px;
  border-radius: 2px 2px 0 0;
  background: var(--an-rose, #EC4E36);
  opacity: 0.85;
}

.mkt-ab-hourstrip__lbl {
  font-size: 9px;
  line-height: 1.4;
  text-align: center;
  color: var(--an-text-muted);
  /* Reserved even when blank so bars stay baseline-aligned. */
  min-height: 13px;
}

/* ── Schedule Heatmap ── */
.mkt-promo-heatmap-caption {
  font-size: 11px;
  color: var(--an-text-muted);
  margin: 0 0 12px;
}

.mkt-promo-heatmap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.mkt-promo-heatmap-hours {
  display: flex;
  gap: 0;
  padding-left: 36px;
  margin-bottom: 3px;
}

.mkt-promo-heatmap-corner {
  width: 36px;
  flex-shrink: 0;
}

.mkt-promo-heatmap-hour-label {
  font-size: 8px;
  color: var(--an-text-muted);
  font-weight: 600;
  width: 36px;
  text-align: center;
  flex-shrink: 0;
}

.mkt-promo-heatmap-row {
  display: flex;
  align-items: center;
  gap: 2px;
  margin-bottom: 2px;
}

.mkt-promo-heatmap-day {
  width: 34px;
  flex-shrink: 0;
  font-size: 9px;
  font-weight: 700;
  color: var(--an-text-muted);
  text-align: right;
  padding-right: 6px;
}

.mkt-promo-heatmap-cell {
  width: 14px;
  height: 14px;
  border-radius: 3px;
  background: #6366F1;
  flex-shrink: 0;
  transition: opacity 0.4s ease;
  cursor: default;
}
.mkt-promo-heatmap-cell:hover {
  outline: 2px solid rgba(99, 102, 241, 0.5);
}

.mkt-promo-heatmap-legend {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 10px;
  font-size: 9px;
  color: var(--an-text-muted);
  font-weight: 600;
}

.mkt-promo-heatmap-legend-cells {
  display: flex;
  gap: 3px;
}

.mkt-promo-heatmap-legend-cell {
  width: 12px;
  height: 12px;
  border-radius: 2px;
  background: #6366F1;
}

/* ── Discount Distribution ── */
.mkt-promo-dist-caption {
  font-size: 11px;
  color: var(--an-text-muted);
  margin: 0 0 12px;
}

.mkt-promo-dist-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.mkt-promo-dist-row {
  display: grid;
  grid-template-columns: 80px 1fr 100px;
  align-items: center;
  gap: 10px;
}

.mkt-promo-dist-label {
  font-size: 11px;
  font-weight: 700;
  color: var(--an-text);
  white-space: nowrap;
}

.mkt-promo-dist-track {
  height: 8px;
  background: var(--an-surface2);
  border-radius: 4px;
  overflow: hidden;
}

.mkt-promo-dist-fill {
  height: 100%;
  border-radius: 4px;
  transition: width 0.7s cubic-bezier(0.4, 0, 0.2, 1);
  min-width: 2px;
}

.mkt-promo-dist-meta {
  display: flex;
  align-items: center;
  gap: 6px;
  justify-content: flex-end;
}

/* Responsive */
@media (max-width: 1100px) {
  .mkt-promo-type-breakdown-row {
    grid-template-columns: 32px 1fr;
  }
  .mkt-promo-type-breakdown-row .mkt-promo-type-breakdown-bar-wrap,
  .mkt-promo-type-breakdown-row .mkt-promo-type-breakdown-stats {
    grid-column: 1/-1;
  }
  .mkt-promo-visibility-split {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 768px) {
  .mkt-promo-type-filter {
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: 4px;
  }
  .mkt-promo-type-breakdown-stats {
    gap: 10px;
  }
  .mkt-promo-type-stat b {
    font-size: 11px;
  }
  .mkt-promo-heatmap-cell {
    width: 10px;
    height: 10px;
  }
}
.mkt-card-header--rose {
  border-left: 3px solid var(--an-rose);
}

.mkt-card-header--rose md-icon {
  color: var(--an-rose) !important;
}

.mkt-kpi-chip--red .mkt-kpi-value {
  color: var(--an-rose);
}

.mkt-rev-bar--rose {
  background: linear-gradient(180deg, var(--an-rose), rgba(236, 78, 54, 0.45));
}

.oq-hint {
  margin: 10px 2px 0;
  font-size: 11px;
  line-height: 1.45;
  color: var(--an-text-muted);
}

.oq-gauge-container {
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 10px 18px 16px;
  flex-wrap: wrap;
}
.oq-gauge-container .mkt-donut-wrap {
  flex: 0 0 150px;
  max-width: 150px;
}

.oq-gauge-meta {
  flex: 1 1 160px;
  min-width: 150px;
}
.oq-gauge-meta__row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 10px;
  padding: 6px 0;
  border-bottom: 1px dashed var(--an-border);
}
.oq-gauge-meta__row:last-of-type {
  border-bottom: 0;
}
.oq-gauge-meta__label {
  font-size: 11px;
  color: var(--an-text-muted);
}
.oq-gauge-meta__value {
  font-size: 14px;
  font-weight: 800;
  color: var(--an-text);
  white-space: nowrap;
}

.oq-target-table {
  width: 100%;
  border-collapse: collapse;
}
.oq-target-table th, .oq-target-table td {
  padding: 8px 12px;
  font-size: 12px;
  text-align: left;
  border-bottom: 1px solid var(--an-border);
  color: var(--an-text);
  white-space: nowrap;
}
.oq-target-table th {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--an-text-muted);
}
.oq-target-table td.oq-num {
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.oq-target-table th.oq-num {
  text-align: right;
}
.oq-target-table .oq-item-name {
  max-width: 220px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.oq-ratio-track {
  position: relative;
  width: 150px;
  height: 8px;
  border-radius: 4px;
  background: var(--an-surface2);
  overflow: hidden;
}
.oq-ratio-track::after {
  content: "";
  position: absolute;
  left: 50%;
  top: -2px;
  bottom: -2px;
  width: 2px;
  background: var(--an-text-muted);
  opacity: 0.55;
}

.oq-ratio-fill {
  height: 100%;
  border-radius: 4px;
  background: var(--an-emerald);
  transition: width 0.6s ease;
}
.oq-ratio-fill--over {
  background: var(--an-rose);
}

.oq-delta {
  font-weight: 800;
}
.oq-delta--over {
  color: var(--an-rose);
}
.oq-delta--under {
  color: var(--an-emerald);
}

.oq-worst-callout {
  margin: 4px 16px 16px;
  padding: 12px 14px;
  border-radius: var(--an-radius, 10px);
  border: 1px solid rgba(236, 78, 54, 0.35);
  background: rgba(236, 78, 54, 0.07);
}
.oq-worst-callout__title {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 800;
  color: var(--an-rose);
  margin-bottom: 8px;
}
.oq-worst-callout__title md-icon, .oq-worst-callout__title i {
  color: var(--an-rose) !important;
  font-size: 16px;
}

.oq-worst-row {
  display: flex;
  align-items: baseline;
  gap: 10px;
  padding: 4px 0;
  font-size: 12px;
}
.oq-worst-row__rank {
  color: var(--an-text-muted);
  flex: 0 0 22px;
}
.oq-worst-row__name {
  flex: 1 1 auto;
  color: var(--an-text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.oq-worst-row__delta {
  color: var(--an-rose);
  font-weight: 800;
  white-space: nowrap;
}
.oq-worst-row__samples {
  color: var(--an-text-muted);
  font-size: 11px;
  white-space: nowrap;
}

#moduleReportDelivery .dlv-kpis, #moduleReportMenuIntel .dlv-kpis, #moduleReportProfitability .dlv-kpis, #moduleReportSegments .dlv-kpis {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 12px;
  margin-bottom: 4px;
}
#moduleReportDelivery .dlv-kpi, #moduleReportMenuIntel .dlv-kpi, #moduleReportProfitability .dlv-kpi, #moduleReportSegments .dlv-kpi {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  padding: 16px 18px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 4px 16px -2px rgba(0, 0, 0, 0.05);
}
#moduleReportDelivery .dlv-kpi::before, #moduleReportMenuIntel .dlv-kpi::before, #moduleReportProfitability .dlv-kpi::before, #moduleReportSegments .dlv-kpi::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: var(--an-violet);
}
#moduleReportDelivery .dlv-kpi--green::before, #moduleReportMenuIntel .dlv-kpi--green::before, #moduleReportProfitability .dlv-kpi--green::before, #moduleReportSegments .dlv-kpi--green::before {
  background: var(--an-emerald);
}
#moduleReportDelivery .dlv-kpi--amber::before, #moduleReportMenuIntel .dlv-kpi--amber::before, #moduleReportProfitability .dlv-kpi--amber::before, #moduleReportSegments .dlv-kpi--amber::before {
  background: var(--an-amber);
}
#moduleReportDelivery .dlv-kpi--sky::before, #moduleReportMenuIntel .dlv-kpi--sky::before, #moduleReportProfitability .dlv-kpi--sky::before, #moduleReportSegments .dlv-kpi--sky::before {
  background: var(--an-sky);
}
#moduleReportDelivery .dlv-kpi--rose::before, #moduleReportMenuIntel .dlv-kpi--rose::before, #moduleReportProfitability .dlv-kpi--rose::before, #moduleReportSegments .dlv-kpi--rose::before {
  background: var(--an-rose);
}
#moduleReportDelivery .dlv-kpi__val, #moduleReportMenuIntel .dlv-kpi__val, #moduleReportProfitability .dlv-kpi__val, #moduleReportSegments .dlv-kpi__val {
  font-size: 27px;
  font-weight: 800;
  letter-spacing: -0.6px;
  line-height: 1;
  color: var(--an-text);
}
#moduleReportDelivery .dlv-kpi__lbl, #moduleReportMenuIntel .dlv-kpi__lbl, #moduleReportProfitability .dlv-kpi__lbl, #moduleReportSegments .dlv-kpi__lbl {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
  margin-top: 6px;
  font-weight: 600;
}
#moduleReportDelivery .dlv-kpi__delta, #moduleReportMenuIntel .dlv-kpi__delta, #moduleReportProfitability .dlv-kpi__delta, #moduleReportSegments .dlv-kpi__delta {
  font-size: 11px;
  font-weight: 700;
  margin-top: 6px;
  display: inline-flex;
  align-items: center;
  gap: 3px;
}
#moduleReportDelivery .dlv-kpi__delta--up, #moduleReportMenuIntel .dlv-kpi__delta--up, #moduleReportProfitability .dlv-kpi__delta--up, #moduleReportSegments .dlv-kpi__delta--up {
  color: var(--an-emerald);
}
#moduleReportDelivery .dlv-kpi__delta--down, #moduleReportMenuIntel .dlv-kpi__delta--down, #moduleReportProfitability .dlv-kpi__delta--down, #moduleReportSegments .dlv-kpi__delta--down {
  color: var(--an-rose);
}
#moduleReportDelivery .dlv-rating, #moduleReportMenuIntel .dlv-rating, #moduleReportProfitability .dlv-rating, #moduleReportSegments .dlv-rating {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  color: var(--an-amber);
}
#moduleReportDelivery .dlv-rating md-icon, #moduleReportMenuIntel .dlv-rating md-icon, #moduleReportProfitability .dlv-rating md-icon, #moduleReportSegments .dlv-rating md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  color: var(--an-amber) !important;
}
#moduleReportDelivery .dlv-rating__num, #moduleReportMenuIntel .dlv-rating__num, #moduleReportProfitability .dlv-rating__num, #moduleReportSegments .dlv-rating__num {
  font-size: 20px;
  font-weight: 800;
  color: var(--an-text);
  margin-right: 6px;
}
#moduleReportDelivery .dlv-review, #moduleReportMenuIntel .dlv-review, #moduleReportProfitability .dlv-review, #moduleReportSegments .dlv-review {
  border-bottom: 1px solid var(--an-border);
  padding: 12px 0;
}
#moduleReportDelivery .dlv-review:last-child, #moduleReportMenuIntel .dlv-review:last-child, #moduleReportProfitability .dlv-review:last-child, #moduleReportSegments .dlv-review:last-child {
  border-bottom: none;
}
#moduleReportDelivery .dlv-review__head, #moduleReportMenuIntel .dlv-review__head, #moduleReportProfitability .dlv-review__head, #moduleReportSegments .dlv-review__head {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 5px;
}
#moduleReportDelivery .dlv-review__body, #moduleReportMenuIntel .dlv-review__body, #moduleReportProfitability .dlv-review__body, #moduleReportSegments .dlv-review__body {
  font-size: 13px;
  color: var(--an-text);
  line-height: 1.45;
}
#moduleReportDelivery .dlv-review__reply, #moduleReportMenuIntel .dlv-review__reply, #moduleReportProfitability .dlv-review__reply, #moduleReportSegments .dlv-review__reply {
  margin-top: 8px;
  padding: 8px 12px;
  border-radius: 10px;
  background: rgba(108, 99, 255, 0.07);
  font-size: 12.5px;
  color: var(--an-text);
  border-left: 2px solid var(--an-violet);
}
.waitry-dark-theme #moduleReportDelivery .dlv-review__reply, .waitry-dark-theme #moduleReportMenuIntel .dlv-review__reply, .waitry-dark-theme #moduleReportProfitability .dlv-review__reply, .waitry-dark-theme #moduleReportSegments .dlv-review__reply {
  background: var(--an-violet-soft);
}
#moduleReportDelivery .dlv-heatmap__cell, #moduleReportMenuIntel .dlv-heatmap__cell, #moduleReportProfitability .dlv-heatmap__cell, #moduleReportSegments .dlv-heatmap__cell {
  transition: transform 0.1s;
}
#moduleReportDelivery .dlv-heatmap__cell:hover, #moduleReportMenuIntel .dlv-heatmap__cell:hover, #moduleReportProfitability .dlv-heatmap__cell:hover, #moduleReportSegments .dlv-heatmap__cell:hover {
  transform: scale(1.25);
}
#moduleReportDelivery .dlv-badge, #moduleReportMenuIntel .dlv-badge, #moduleReportProfitability .dlv-badge, #moduleReportSegments .dlv-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  font-weight: 700;
  padding: 3px 9px;
  border-radius: 999px;
}
#moduleReportDelivery .dlv-badge--ontrack, #moduleReportMenuIntel .dlv-badge--ontrack, #moduleReportProfitability .dlv-badge--ontrack, #moduleReportSegments .dlv-badge--ontrack {
  color: var(--an-emerald);
  background: rgba(16, 185, 129, 0.12);
}
#moduleReportDelivery .dlv-badge--risk, #moduleReportMenuIntel .dlv-badge--risk, #moduleReportProfitability .dlv-badge--risk, #moduleReportSegments .dlv-badge--risk {
  color: var(--an-amber);
  background: rgba(245, 158, 11, 0.14);
}
#moduleReportDelivery .dlv-badge--late, #moduleReportMenuIntel .dlv-badge--late, #moduleReportProfitability .dlv-badge--late, #moduleReportSegments .dlv-badge--late {
  color: var(--an-rose);
  background: rgba(236, 78, 54, 0.12);
}
.waitry-dark-theme #moduleReportDelivery .dlv-badge--ontrack, .waitry-dark-theme #moduleReportMenuIntel .dlv-badge--ontrack, .waitry-dark-theme #moduleReportProfitability .dlv-badge--ontrack, .waitry-dark-theme #moduleReportSegments .dlv-badge--ontrack {
  background: var(--an-emerald-soft);
}
.waitry-dark-theme #moduleReportDelivery .dlv-badge--risk, .waitry-dark-theme #moduleReportMenuIntel .dlv-badge--risk, .waitry-dark-theme #moduleReportProfitability .dlv-badge--risk, .waitry-dark-theme #moduleReportSegments .dlv-badge--risk {
  background: var(--an-amber-soft);
}
.waitry-dark-theme #moduleReportDelivery .dlv-badge--late, .waitry-dark-theme #moduleReportMenuIntel .dlv-badge--late, .waitry-dark-theme #moduleReportProfitability .dlv-badge--late, .waitry-dark-theme #moduleReportSegments .dlv-badge--late {
  background: var(--an-rose-soft);
}
#moduleReportDelivery .dlv-forecast-row, #moduleReportMenuIntel .dlv-forecast-row, #moduleReportProfitability .dlv-forecast-row, #moduleReportSegments .dlv-forecast-row {
  display: grid;
  grid-template-columns: 90px 1fr 70px;
  align-items: center;
  gap: 10px;
  padding: 8px 0;
  border-bottom: 1px dashed var(--an-border);
}
#moduleReportDelivery .dlv-forecast-row:last-child, #moduleReportMenuIntel .dlv-forecast-row:last-child, #moduleReportProfitability .dlv-forecast-row:last-child, #moduleReportSegments .dlv-forecast-row:last-child {
  border-bottom: none;
}
#moduleReportDelivery .dlv-forecast-bar, #moduleReportMenuIntel .dlv-forecast-bar, #moduleReportProfitability .dlv-forecast-bar, #moduleReportSegments .dlv-forecast-bar {
  height: 8px;
  border-radius: 4px;
  background: linear-gradient(90deg, var(--an-violet), var(--an-indigo));
}
@media (max-width: 960px) {
  #moduleReportDelivery .rpt-layout, #moduleReportMenuIntel .rpt-layout, #moduleReportProfitability .rpt-layout, #moduleReportSegments .rpt-layout {
    flex-direction: column;
  }
  #moduleReportDelivery .rpt-sidenav, #moduleReportMenuIntel .rpt-sidenav, #moduleReportProfitability .rpt-sidenav, #moduleReportSegments .rpt-sidenav {
    width: 100%;
    flex-direction: row;
    min-height: 0;
    position: static;
    border-right: none;
    border-bottom: 1px solid var(--an-border);
    overflow-x: auto;
    padding: 8px 10px;
    gap: 4px;
  }
  #moduleReportDelivery .rpt-sidenav__section, #moduleReportMenuIntel .rpt-sidenav__section, #moduleReportProfitability .rpt-sidenav__section, #moduleReportSegments .rpt-sidenav__section {
    display: none;
  }
  #moduleReportDelivery .rpt-sidenav__pill, #moduleReportMenuIntel .rpt-sidenav__pill, #moduleReportProfitability .rpt-sidenav__pill, #moduleReportSegments .rpt-sidenav__pill {
    white-space: nowrap;
  }
  #moduleReportDelivery .dlv-kpis, #moduleReportMenuIntel .dlv-kpis, #moduleReportProfitability .dlv-kpis, #moduleReportSegments .dlv-kpis {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 600px) {
  #moduleReportDelivery .rpt-sidenav__pill-text, #moduleReportMenuIntel .rpt-sidenav__pill-text, #moduleReportProfitability .rpt-sidenav__pill-text, #moduleReportSegments .rpt-sidenav__pill-text {
    display: none;
  }
}

#moduleReportRetention {
  font-family: "Inter", sans-serif;
  background: var(--an-bg);
  min-height: 100%;
}
#moduleReportRetention md-content {
  background: var(--an-bg) !important;
  padding-top: 0 !important;
}
#moduleReportRetention md-toolbar {
  background: var(--an-surface) !important;
  border-bottom: 1px solid var(--an-border);
  box-shadow: none !important;
}
#moduleReportRetention md-toolbar h2 {
  font-family: "Inter", sans-serif;
  font-weight: 700;
  font-size: 18px;
  color: var(--an-text);
  letter-spacing: -0.3px;
}
#moduleReportRetention .rt-kpis {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 12px;
  margin-bottom: 4px;
}
#moduleReportRetention .rt-kpi {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  padding: 16px 18px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 4px 16px -2px rgba(0, 0, 0, 0.05);
}
#moduleReportRetention .rt-kpi::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: var(--an-violet);
}
#moduleReportRetention .rt-kpi--green::before {
  background: var(--an-emerald);
}
#moduleReportRetention .rt-kpi--amber::before {
  background: var(--an-amber);
}
#moduleReportRetention .rt-kpi--sky::before {
  background: var(--an-sky);
}
#moduleReportRetention .rt-kpi__val {
  font-size: 27px;
  font-weight: 800;
  letter-spacing: -0.6px;
  line-height: 1;
  color: var(--an-text);
}
#moduleReportRetention .rt-kpi__lbl {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
  margin-top: 6px;
  font-weight: 600;
}
#moduleReportRetention .rt-hint {
  margin: 0 0 12px;
  font-size: 12px;
  color: var(--an-text-muted);
}
#moduleReportRetention .rt-coverage {
  margin: 12px 0 0;
  font-size: 11px;
  color: var(--an-text-muted);
  line-height: 1.5;
}
#moduleReportRetention .rt-matrix-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
#moduleReportRetention .rt-matrix {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 560px;
}
#moduleReportRetention .rt-matrix__row {
  display: grid;
  grid-template-columns: minmax(76px, 110px) 56px repeat(6, minmax(58px, 1fr));
  gap: 4px;
  align-items: stretch;
}
#moduleReportRetention .rt-matrix__head {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
  padding: 4px 6px;
}
#moduleReportRetention .rt-matrix__head--num {
  text-align: center;
}
#moduleReportRetention .rt-matrix__lbl {
  display: flex;
  align-items: center;
  font-size: 12px;
  font-weight: 700;
  color: var(--an-text);
  padding: 0 6px;
  white-space: nowrap;
}
#moduleReportRetention .rt-matrix__size {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 600;
  color: var(--an-text-muted);
  background: var(--an-surface2);
  border-radius: 6px;
}
#moduleReportRetention .rt-matrix__cell {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  border-radius: 6px;
  font-size: 11px;
  font-weight: 700;
  color: var(--an-text);
  background: var(--an-surface2);
  cursor: default;
  transition: transform 0.12s;
}
#moduleReportRetention .rt-matrix__cell:hover {
  transform: scale(1.04);
}
#moduleReportRetention .rt-matrix__cell--zero {
  color: var(--an-text-muted);
  font-weight: 500;
}
#moduleReportRetention .rt-matrix__cell--future {
  background: transparent;
  border: 1px dashed var(--an-border);
}
#moduleReportRetention .rt-matrix__pending {
  color: var(--an-text-muted);
}
#moduleReportRetention .rt-funnel {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
#moduleReportRetention .rt-funnel__row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  margin-top: 8px;
}
#moduleReportRetention .rt-funnel__lbl {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-weight: 600;
  color: var(--an-text-muted);
}
#moduleReportRetention .rt-funnel__val {
  font-size: 18px;
  font-weight: 800;
  color: var(--an-text);
}
#moduleReportRetention .rt-funnel__pct {
  font-style: normal;
  font-size: 12px;
  font-weight: 600;
  color: var(--an-emerald);
}
#moduleReportRetention .rt-funnel__track {
  height: 10px;
}
#moduleReportRetention .rt-funnel__fill {
  background: var(--an-violet);
}
#moduleReportRetention .rt-legend {
  display: flex;
  gap: 16px;
  margin-bottom: 10px;
}
#moduleReportRetention .rt-legend__item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  font-weight: 600;
  color: var(--an-text-muted);
}
#moduleReportRetention .rt-legend__dot {
  width: 10px;
  height: 10px;
  border-radius: 3px;
  display: inline-block;
}
#moduleReportRetention .rt-legend__dot--new {
  background: var(--an-violet);
}
#moduleReportRetention .rt-legend__dot--ret {
  background: var(--an-emerald);
}
#moduleReportRetention .rt-stack {
  display: flex;
  align-items: stretch;
  gap: 4px;
  height: 240px;
  padding-top: 4px;
}
#moduleReportRetention .rt-stack__col {
  flex: 1 1 0;
  min-width: 8px;
  display: flex;
  flex-direction: column;
}
#moduleReportRetention .rt-stack__bars {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
#moduleReportRetention .rt-stack__seg {
  width: 100%;
  min-height: 0;
}
#moduleReportRetention .rt-stack__seg--new {
  background: var(--an-violet);
  border-radius: 0 0 3px 3px;
}
#moduleReportRetention .rt-stack__seg--ret {
  background: var(--an-emerald);
  border-radius: 3px 3px 0 0;
}
#moduleReportRetention .rt-stack__col:hover .rt-stack__seg {
  filter: brightness(1.12);
}
#moduleReportRetention .rt-stack__lbl {
  height: 16px;
  margin-top: 4px;
  font-size: 9px;
  color: var(--an-text-muted);
  text-align: center;
  white-space: nowrap;
  overflow: visible;
}
@media (max-width: 960px) {
  #moduleReportRetention .rt-kpis {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 720px) {
  #moduleReportRetention .rt-stack {
    height: 180px;
  }
  #moduleReportRetention .rt-stack__lbl {
    font-size: 8px;
  }
}

.sg-hint {
  margin: 2px 0 12px;
  font-size: 12px;
  color: var(--an-text-muted);
  line-height: 1.45;
}
.sg-hint--warn {
  color: var(--an-amber);
}

.sg-treemap {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-auto-rows: auto;
  grid-auto-flow: dense;
  gap: 10px;
  margin-bottom: 6px;
}

.sg-tile {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 14px 16px;
  border: 1px solid var(--an-border);
  border-top: 3px solid var(--an-violet);
  border-radius: var(--an-radius);
  cursor: pointer;
  transition: transform 0.12s ease, box-shadow 0.12s ease, border-color 0.12s ease;
  grid-column: span 3;
  grid-row: span 1;
  min-width: 0;
}
.sg-tile:hover {
  transform: translateY(-2px);
  box-shadow: var(--an-shadow);
}
.sg-tile--selected {
  border-color: var(--an-border-hover);
  box-shadow: var(--an-shadow);
}
.sg-tile--xl {
  grid-column: span 8;
}
.sg-tile--lg {
  grid-column: span 6;
}
.sg-tile--md {
  grid-column: span 4;
}
.sg-tile--sm {
  grid-column: span 3;
}
.sg-tile__head {
  display: flex;
  align-items: center;
  gap: 6px;
}
.sg-tile__head md-icon {
  font-size: 17px;
  min-width: 17px;
  height: auto;
}
.sg-tile__name {
  font-weight: 700;
  font-size: 13px;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.sg-tile__share {
  margin-left: auto;
  font-weight: 800;
  font-size: 15px;
}
.sg-tile__count {
  font-size: 20px;
  font-weight: 800;
  color: var(--an-text);
}
.sg-tile__count span {
  font-size: 11px;
  font-weight: 500;
  color: var(--an-text-muted);
}
.sg-tile__meta {
  display: flex;
  gap: 14px;
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text);
}
.sg-tile__meta em {
  font-style: normal;
  font-weight: 400;
  color: var(--an-text-muted);
}
.sg-tile__hint {
  font-size: 11px;
  color: var(--an-text-muted);
  line-height: 1.4;
  margin-top: auto;
}
.sg-tile--sm .sg-tile__hint, .sg-tile--md .sg-tile__hint {
  display: none;
}
.sg-tile__cta {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 8px;
  padding: 5px 12px;
  border: none;
  border-radius: 999px;
  color: #fff;
  font-size: 11.5px;
  font-weight: 700;
  cursor: pointer;
  opacity: 0.92;
  transition: opacity 0.12s ease;
}
.sg-tile__cta:hover {
  opacity: 1;
}
.sg-tile__cta md-icon {
  font-size: 14px;
  min-width: 14px;
  height: auto;
  color: #fff !important;
}
.sg-tile--sm .sg-tile__cta {
  padding: 4px 10px;
}

.sg-cta-sm {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 12px;
  border: none;
  border-radius: 999px;
  background: var(--an-violet);
  color: #fff;
  font-size: 11.5px;
  font-weight: 700;
  cursor: pointer;
  opacity: 0.92;
}
.sg-cta-sm:hover {
  opacity: 1;
}
.sg-cta-sm md-icon {
  font-size: 14px;
  min-width: 14px;
  height: auto;
  color: #fff !important;
}
.sg-cta-sm--amber {
  background: var(--an-amber);
}

.sg-rfm-score {
  font-variant-numeric: tabular-nums;
  font-weight: 700;
  font-size: 11.5px;
  padding: 2px 8px;
  border-radius: 999px;
  background: var(--an-surface2);
  color: var(--an-text-muted);
}

.sg-th-sort {
  cursor: pointer;
  user-select: none;
  white-space: nowrap;
}
.sg-th-sort md-icon {
  font-size: 12px;
  min-width: 12px;
  height: auto;
  vertical-align: -2px;
  color: var(--an-text-faint) !important;
}
.sg-th-sort:hover {
  color: var(--an-text);
}

.sg-dim {
  color: var(--an-text-faint);
  font-size: 11px;
}

.sg-badge {
  display: inline-block;
  padding: 3px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
}
.sg-badge--red {
  background: rgba(236, 78, 54, 0.14);
  color: var(--an-rose);
}
.sg-badge--amber {
  background: rgba(245, 158, 11, 0.14);
  color: var(--an-amber);
}
.sg-badge--sky {
  background: rgba(56, 189, 248, 0.14);
  color: var(--an-sky);
}
.sg-badge--green {
  background: rgba(16, 185, 129, 0.14);
  color: var(--an-emerald);
}
.sg-badge--gray {
  background: var(--an-surface2);
  color: var(--an-text-muted);
}

.sg-econ-list {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.sg-econ-head,
.sg-econ-row {
  display: grid;
  grid-template-columns: 150px 70px 1fr 90px 90px;
  gap: 12px;
  align-items: center;
}

.sg-econ-head {
  font-size: 10.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--an-text-faint);
  padding: 2px 0 6px;
  border-bottom: 1px solid var(--an-border);
}

.sg-econ-row {
  padding: 6px 0;
  border-bottom: 1px solid var(--an-border);
}
.sg-econ-row:last-child {
  border-bottom: none;
}

.sg-econ-chan {
  font-size: 12.5px;
  font-weight: 600;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sg-econ-cust {
  font-size: 12px;
  color: var(--an-text-muted);
  font-variant-numeric: tabular-nums;
}

.sg-econ-bar {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}
.sg-econ-bar .mkt-bar-track {
  flex: 1;
}

.sg-econ-val {
  font-size: 12px;
  font-weight: 700;
  color: var(--an-text);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.sg-econ-cac {
  font-size: 12px;
  color: var(--an-text-muted);
  font-variant-numeric: tabular-nums;
}

@media (max-width: 960px) {
  .sg-tile,
  .sg-tile--xl, .sg-tile--lg, .sg-tile--md, .sg-tile--sm {
    grid-column: span 12;
    grid-row: span 1;
  }
  .sg-tile--sm .sg-tile__hint, .sg-tile--md .sg-tile__hint {
    display: block;
  }
  .sg-tile--sm .sg-tile__cta span {
    display: inline;
  }
  .sg-econ-head {
    display: none;
  }
  .sg-econ-row {
    grid-template-columns: 1fr 1fr;
    row-gap: 4px;
  }
  .sg-econ-row .sg-econ-bar {
    grid-column: 1/-1;
  }
}
#moduleReportInventory {
  background: var(--an-bg);
}
#moduleReportInventory md-content {
  background: var(--an-bg);
}
#moduleReportInventory md-toolbar h2 {
  font-size: 18px;
  font-weight: 700;
}
#moduleReportInventory .rpt-layout {
  display: flex;
  align-items: stretch;
  min-height: calc(100% - 48px);
}
#moduleReportInventory .rpt-sidenav {
  display: flex;
  flex-direction: column;
  gap: 2px;
  width: 190px;
  flex: 0 0 auto;
  padding: 14px 10px;
  border-right: 1px solid var(--an-border);
  position: sticky;
  top: 0;
  align-self: flex-start;
}
#moduleReportInventory .rpt-sidenav__section {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  color: var(--an-text-muted);
  padding: 0 10px 6px;
}
#moduleReportInventory .rpt-sidenav__pill {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 8px 10px;
  border: none;
  border-radius: 9px;
  background: transparent;
  cursor: pointer;
  text-align: left;
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text-muted);
  transition: background 0.12s, color 0.12s;
}
#moduleReportInventory .rpt-sidenav__pill md-icon {
  font-size: 17px;
  width: 17px;
  height: 17px;
  color: inherit !important;
}
#moduleReportInventory .rpt-sidenav__pill:hover {
  background: var(--an-surface2);
  color: var(--an-text);
}
#moduleReportInventory .rpt-sidenav__pill--active {
  background: rgba(108, 99, 255, 0.1);
  color: var(--an-violet);
}
#moduleReportInventory .rpt-content {
  flex: 1;
  min-width: 0;
  padding: 16px;
}
#moduleReportInventory .iv-kpis {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  margin-bottom: 14px;
}
#moduleReportInventory .iv-kpi {
  position: relative;
  padding: 14px 16px 14px 20px;
  border-radius: 12px;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  overflow: hidden;
}
#moduleReportInventory .iv-kpi::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  background: var(--an-violet);
}
#moduleReportInventory .iv-kpi--green::before {
  background: var(--an-emerald);
}
#moduleReportInventory .iv-kpi--amber::before {
  background: var(--an-amber);
}
#moduleReportInventory .iv-kpi--sky::before {
  background: var(--an-sky);
}
#moduleReportInventory .iv-kpi--rose::before {
  background: var(--an-rose);
}
#moduleReportInventory .iv-kpi__val {
  font-size: 26px;
  font-weight: 800;
  letter-spacing: -0.6px;
  line-height: 1.1;
  color: var(--an-text);
}
#moduleReportInventory .iv-kpi__val--sm {
  font-size: 16px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#moduleReportInventory .iv-kpi__lbl {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
  margin-top: 6px;
  font-weight: 600;
}
#moduleReportInventory .iv-hero {
  text-align: center;
  padding: 26px 16px;
}
#moduleReportInventory .iv-hero__val {
  font-size: 40px;
  font-weight: 800;
  letter-spacing: -1px;
  color: var(--an-rose);
  line-height: 1;
}
#moduleReportInventory .iv-hero__lbl {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  color: var(--an-text-muted);
  margin-top: 8px;
}
#moduleReportInventory .iv-hero__sub {
  margin-top: 12px;
  display: flex;
  justify-content: center;
  gap: 8px;
  flex-wrap: wrap;
}
#moduleReportInventory .iv-combo-svg {
  width: 100%;
  height: 280px;
  display: block;
}
#moduleReportInventory .iv-combo-bar {
  opacity: 0.85;
}
#moduleReportInventory .iv-combo-bar--rose {
  fill: var(--an-rose);
}
#moduleReportInventory .iv-combo-bar--green {
  fill: var(--an-emerald);
}
#moduleReportInventory .iv-combo-line {
  stroke: var(--an-amber);
  stroke-width: 2.5;
  stroke-linejoin: round;
  stroke-linecap: round;
}
#moduleReportInventory .iv-combo-dot {
  fill: var(--an-amber);
}
#moduleReportInventory .iv-combo-axis {
  stroke: var(--an-border);
  stroke-width: 1;
  stroke-dasharray: 4 4;
}
#moduleReportInventory .iv-combo-xlabels {
  display: flex;
  justify-content: space-between;
  margin-top: 4px;
  padding: 0 6px;
}
#moduleReportInventory .iv-combo-xlabels span {
  font-size: 10px;
  color: var(--an-text-muted);
}
#moduleReportInventory .iv-legend {
  display: flex;
  gap: 16px;
  justify-content: center;
  margin-top: 8px;
  flex-wrap: wrap;
}
#moduleReportInventory .iv-legend__item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  color: var(--an-text-muted);
  font-weight: 600;
}
#moduleReportInventory .iv-legend__swatch {
  width: 10px;
  height: 10px;
  border-radius: 3px;
  display: inline-block;
}
#moduleReportInventory .iv-legend__swatch--rose {
  background: var(--an-rose);
}
#moduleReportInventory .iv-legend__swatch--green {
  background: var(--an-emerald);
}
#moduleReportInventory .iv-legend__swatch--line {
  background: var(--an-amber);
  height: 3px;
  width: 14px;
  border-radius: 2px;
}
#moduleReportInventory .iv-table-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
#moduleReportInventory .iv-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}
#moduleReportInventory .iv-table th {
  padding: 9px 10px;
  font-size: 10.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
  text-align: right;
  border-bottom: 1px solid var(--an-border);
  white-space: nowrap;
}
#moduleReportInventory .iv-table th:first-child, #moduleReportInventory .iv-table td:first-child {
  text-align: left;
}
#moduleReportInventory .iv-table td {
  padding: 10px;
  border-bottom: 1px solid var(--an-border);
  color: var(--an-text);
  text-align: right;
}
#moduleReportInventory .iv-table tr:last-child td {
  border-bottom: none;
}
#moduleReportInventory .iv-table tr:hover td {
  background: var(--an-surface2);
}
#moduleReportInventory .iv-th-sort {
  cursor: pointer;
  user-select: none;
}
#moduleReportInventory .iv-th-sort:hover {
  color: var(--an-text);
}
#moduleReportInventory .iv-sort-ico {
  font-size: 9px;
}
#moduleReportInventory .iv-td-name {
  font-weight: 600;
}
#moduleReportInventory .iv-td-move {
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
#moduleReportInventory .iv-td-dishes {
  max-width: 320px;
}
#moduleReportInventory .iv-pos {
  color: var(--an-emerald);
  font-weight: 700;
}
#moduleReportInventory .iv-neg {
  color: var(--an-rose);
  font-weight: 700;
}
#moduleReportInventory .iv-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  font-weight: 700;
  padding: 3px 9px;
  border-radius: 999px;
  background: var(--an-surface2);
  color: var(--an-text-muted);
  white-space: nowrap;
}
#moduleReportInventory .iv-badge--up {
  color: var(--an-rose);
  background: rgba(236, 78, 54, 0.12);
}
#moduleReportInventory .iv-badge--down {
  color: var(--an-emerald);
  background: rgba(16, 185, 129, 0.12);
}
#moduleReportInventory .iv-chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 11px;
  font-weight: 600;
  padding: 3px 8px;
  margin: 2px 3px 2px 0;
  border-radius: 999px;
  background: rgba(108, 99, 255, 0.08);
  color: var(--an-text);
  border: 1px solid var(--an-border);
  max-width: 180px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
#moduleReportInventory .iv-chip__pts {
  color: var(--an-rose);
  font-weight: 700;
}
#moduleReportInventory .iv-empty {
  padding: 40px 16px;
}
#moduleReportInventory .iv-empty p {
  max-width: 460px;
  margin: 10px auto 16px;
  line-height: 1.5;
}
#moduleReportInventory .iv-footnote {
  margin-top: 12px;
  padding: 10px 12px;
  border-radius: 10px;
  background: var(--an-surface2);
  font-size: 11.5px;
  color: var(--an-text-muted);
}
#moduleReportInventory .iv-footnote md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  vertical-align: -2px;
  margin-right: 4px;
  color: var(--an-text-muted) !important;
}
#moduleReportInventory .iv-footnote > span {
  font-weight: 700;
}
#moduleReportInventory .iv-footnote ul {
  margin: 6px 0 0;
  padding-left: 18px;
}
#moduleReportInventory .iv-footnote li {
  margin: 2px 0;
  line-height: 1.4;
}
@media (max-width: 960px) {
  #moduleReportInventory .iv-kpis {
    grid-template-columns: 1fr 1fr;
  }
  #moduleReportInventory .iv-hero__val {
    font-size: 32px;
  }
}
@media (max-width: 600px) {
  #moduleReportInventory .iv-kpis {
    grid-template-columns: 1fr;
  }
}

#moduleReportStaff {
  font-family: "Inter", sans-serif;
  background: var(--an-bg);
  min-height: 100%;
}
#moduleReportStaff md-content {
  background: var(--an-bg) !important;
  padding-top: 0 !important;
}
#moduleReportStaff md-toolbar {
  background: var(--an-surface) !important;
  border-bottom: 1px solid var(--an-border);
  box-shadow: none !important;
}
#moduleReportStaff md-toolbar h2 {
  font-family: "Inter", sans-serif;
  font-weight: 700;
  font-size: 18px;
  color: var(--an-text);
  letter-spacing: -0.3px;
}
#moduleReportStaff .stf-kpis {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 12px;
  margin-bottom: 4px;
}
#moduleReportStaff .stf-kpi {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  padding: 16px 18px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 4px 16px -2px rgba(0, 0, 0, 0.05);
}
#moduleReportStaff .stf-kpi::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: var(--an-violet);
}
#moduleReportStaff .stf-kpi--green::before {
  background: var(--an-emerald);
}
#moduleReportStaff .stf-kpi--amber::before {
  background: var(--an-amber);
}
#moduleReportStaff .stf-kpi--sky::before {
  background: var(--an-sky);
}
#moduleReportStaff .stf-kpi--rose::before {
  background: var(--an-rose);
}
#moduleReportStaff .stf-kpi__val {
  font-size: 27px;
  font-weight: 800;
  letter-spacing: -0.6px;
  line-height: 1;
  color: var(--an-text);
}
#moduleReportStaff .stf-kpi__lbl {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
  margin-top: 6px;
  font-weight: 600;
}
#moduleReportStaff .stf-kpi__delta {
  font-size: 11px;
  font-weight: 700;
  margin-top: 6px;
  display: inline-flex;
  align-items: center;
  gap: 3px;
}
#moduleReportStaff .stf-kpi__delta--up {
  color: var(--an-emerald);
}
#moduleReportStaff .stf-kpi__delta--down {
  color: var(--an-rose);
}
#moduleReportStaff .stf-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}
#moduleReportStaff .stf-table th {
  text-align: right;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
  padding: 8px 10px;
  border-bottom: 1px solid var(--an-border);
  white-space: nowrap;
}
#moduleReportStaff .stf-table th:first-child, #moduleReportStaff .stf-table td:first-child {
  text-align: center;
  width: 52px;
}
#moduleReportStaff .stf-table td {
  padding: 10px;
  border-bottom: 1px solid var(--an-border);
  color: var(--an-text);
  text-align: right;
}
#moduleReportStaff .stf-table tr:last-child td {
  border-bottom: none;
}
#moduleReportStaff .stf-table tr:hover td {
  background: var(--an-surface2);
}
#moduleReportStaff .stf-table .stf-pos {
  color: var(--an-emerald);
  font-weight: 700;
}
#moduleReportStaff .stf-table .stf-neg {
  color: var(--an-rose);
  font-weight: 700;
}
#moduleReportStaff .stf-table .stf-warn {
  color: var(--an-amber);
  font-weight: 700;
}
#moduleReportStaff .stf-table__barcol {
  min-width: 220px;
}
#moduleReportStaff .stf-table-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
#moduleReportStaff .stf-barcell {
  display: flex;
  align-items: center;
  gap: 10px;
}
#moduleReportStaff .stf-barcell .mkt-bar-track {
  flex: 1;
}
#moduleReportStaff .stf-barcell__val {
  font-weight: 700;
  white-space: nowrap;
  min-width: 76px;
  text-align: right;
}
#moduleReportStaff .stf-medal {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  font-size: 12px;
  font-weight: 800;
  color: #7A5C00;
  box-shadow: inset 0 -2px 3px rgba(0, 0, 0, 0.18);
}
#moduleReportStaff .stf-medal--gold {
  background: linear-gradient(135deg, #FFE27A, #F5B301);
}
#moduleReportStaff .stf-medal--silver {
  background: linear-gradient(135deg, #ECEFF4, #B8C0CC);
  color: #4A5361;
}
#moduleReportStaff .stf-medal--bronze {
  background: linear-gradient(135deg, #E8B27D, #B9722D);
  color: #5B3411;
}
#moduleReportStaff .stf-rank {
  font-weight: 700;
  color: var(--an-text-muted);
}
#moduleReportStaff .stf-person {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
}
#moduleReportStaff .stf-person__pic {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}
#moduleReportStaff .stf-person__pic--fallback {
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(108, 99, 255, 0.14);
  color: var(--an-violet);
  font-size: 10px;
  font-weight: 800;
}
#moduleReportStaff .stf-person__name {
  font-size: 13px;
  font-weight: 600;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#moduleReportStaff .stf-hours {
  display: flex;
  align-items: flex-end;
  gap: 3px;
  height: 150px;
  padding-top: 8px;
}
#moduleReportStaff .stf-hours__col {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 100%;
  position: relative;
}
#moduleReportStaff .stf-hours__bar {
  background: linear-gradient(180deg, var(--an-amber), var(--an-rose));
  border-radius: 3px 3px 0 0;
  min-height: 0;
  transition: opacity 0.12s;
}
#moduleReportStaff .stf-hours__bar:hover {
  opacity: 0.75;
}
#moduleReportStaff .stf-hours__lbl {
  font-size: 8px;
  color: var(--an-text-muted);
  text-align: center;
  margin-top: 3px;
  position: absolute;
  bottom: -14px;
  left: 0;
  right: 0;
}
#moduleReportStaff .stf-weekrow {
  display: grid;
  grid-template-columns: 70px 1fr 60px;
  align-items: center;
  gap: 10px;
  padding: 7px 0;
  border-bottom: 1px dashed var(--an-border);
}
#moduleReportStaff .stf-weekrow:last-of-type {
  border-bottom: none;
}
#moduleReportStaff .stf-weekrow__lbl {
  font-size: 11px;
  font-weight: 600;
  color: var(--an-text-muted);
  white-space: nowrap;
}
#moduleReportStaff .stf-weekrow__bars {
  display: flex;
  flex-direction: column;
  gap: 3px;
}
#moduleReportStaff .stf-weekrow__bar {
  height: 8px;
  border-radius: 4px;
  min-width: 2px;
}
#moduleReportStaff .stf-weekrow__bar--rev {
  background: linear-gradient(90deg, var(--an-violet), var(--an-indigo));
}
#moduleReportStaff .stf-weekrow__bar--cost {
  background: var(--an-amber);
}
#moduleReportStaff .stf-weekrow__pct {
  font-size: 12px;
  font-weight: 800;
  text-align: right;
}
#moduleReportStaff .stf-weekrow__pct--ok {
  color: var(--an-emerald);
}
#moduleReportStaff .stf-weekrow__pct--high {
  color: var(--an-rose);
}
#moduleReportStaff .stf-legend {
  display: flex;
  gap: 16px;
  margin-top: 8px;
  flex-wrap: wrap;
}
#moduleReportStaff .stf-legend__item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  color: var(--an-text-muted);
  font-weight: 600;
}
#moduleReportStaff .stf-legend__dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  flex-shrink: 0;
}
#moduleReportStaff .stf-footnote {
  font-size: 11px;
  color: var(--an-text-muted);
  margin: 8px 0 0;
  padding: 0 2px;
  line-height: 1.4;
}
#moduleReportStaff .stf-footnote--warn {
  color: var(--an-amber);
  font-weight: 600;
}
@media (max-width: 960px) {
  #moduleReportStaff .rpt-layout {
    flex-direction: column;
  }
  #moduleReportStaff .rpt-sidenav {
    width: 100%;
    flex-direction: row;
    min-height: 0;
    position: static;
    border-right: none;
    border-bottom: 1px solid var(--an-border);
    overflow-x: auto;
    padding: 8px 10px;
    gap: 4px;
  }
  #moduleReportStaff .rpt-sidenav__section {
    display: none;
  }
  #moduleReportStaff .rpt-sidenav__pill {
    white-space: nowrap;
  }
  #moduleReportStaff .stf-kpis {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 600px) {
  #moduleReportStaff .rpt-sidenav__pill-text {
    display: none;
  }
  #moduleReportStaff .stf-hours {
    gap: 2px;
  }
  #moduleReportStaff .stf-table__barcol {
    min-width: 160px;
  }
}

.mint-scatter {
  width: 100%;
  height: 400px;
  display: block;
}
.mint-scatter__threshold {
  stroke: var(--an-text-muted, #94A3B8);
  stroke-width: 1;
  stroke-dasharray: 5 4;
  opacity: 0.55;
}
.mint-scatter__tick {
  font-size: 10px;
  fill: var(--an-text-muted, #94A3B8);
}
.mint-scatter__quad-label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.4px;
  text-transform: uppercase;
  opacity: 0.85;
}
.mint-scatter__dot {
  opacity: 0.85;
  stroke: var(--an-surface, #fff);
  stroke-width: 1;
  cursor: pointer;
  transition: opacity 0.15s ease;
}
.mint-scatter__dot:hover {
  opacity: 1;
}
.mint-scatter__label {
  font-size: 10px;
  fill: var(--an-text, #1E293B);
  pointer-events: none;
}

.mint-quad {
  padding: 10px 0;
  border-bottom: 1px solid var(--an-border, rgba(148, 163, 184, 0.25));
}
.mint-quad:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.mint-quad__head {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: var(--an-text, #1E293B);
}
.mint-quad__dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  flex: 0 0 auto;
}
.mint-quad__count {
  margin-left: auto;
  font-size: 12px;
  color: var(--an-text-muted, #64748B);
  white-space: nowrap;
}
.mint-quad__action {
  margin: 4px 0 6px 18px;
  font-size: 12px;
  line-height: 1.45;
  color: var(--an-text-muted, #64748B);
}
.mint-quad__top {
  margin-left: 18px;
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}

.mint-chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  max-width: 180px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  padding: 2px 9px;
  border-radius: 999px;
  font-size: 11px;
  background: var(--an-surface2, #F1F5F9);
  color: var(--an-text, #334155);
}
.mint-chip em {
  font-style: normal;
  font-weight: 600;
}
.mint-chip--mapped {
  margin: 0 6px 6px 0;
}
.mint-chip--missing {
  background: rgba(236, 78, 54, 0.12);
  color: #EC4E36;
  margin-right: 4px;
}

.mint-class-dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  margin-right: 6px;
  flex: 0 0 auto;
}

.mint-hint {
  display: flex;
  align-items: flex-start;
  gap: 6px;
  margin: 10px 0 0;
  font-size: 12px;
  line-height: 1.45;
  color: var(--an-text-muted, #64748B);
}
.mint-hint md-icon {
  font-size: 15px;
  min-width: 15px;
  height: 15px;
  color: inherit;
}

.mint-legend {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 8px;
  font-size: 11px;
  color: var(--an-text-muted, #64748B);
}
.mint-legend__item {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}
.mint-legend__item i {
  width: 10px;
  height: 3px;
  border-radius: 2px;
  display: inline-block;
}
.mint-legend__range {
  margin-left: auto;
}

.mint-mapping {
  display: flex;
  flex-wrap: wrap;
}

.mint-launch__head {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  justify-content: space-between;
}
.mint-launch__title {
  min-width: 0;
  display: flex;
  flex-direction: column;
}
.mint-launch__title strong {
  font-size: 14px;
  color: var(--an-text, #1E293B);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.mint-launch__cat {
  font-size: 11px;
  color: var(--an-text-muted, #64748B);
  margin-top: 2px;
}
.mint-launch__spark {
  width: 100%;
  height: 64px;
  display: block;
  margin: 10px 0 8px;
}
.mint-launch__stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 6px;
  text-align: center;
  font-size: 10px;
  color: var(--an-text-muted, #64748B);
}
.mint-launch__stats > div {
  display: flex;
  flex-direction: column;
  gap: 1px;
}
.mint-launch__num {
  font-size: 15px;
  font-weight: 700;
  color: var(--an-text, #1E293B);
}

.mi-badge {
  flex: 0 0 auto;
  padding: 3px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  white-space: nowrap;
}
.mi-badge--up {
  background: rgba(16, 185, 129, 0.14);
  color: #10B981;
}
.mi-badge--ok {
  background: rgba(56, 189, 248, 0.14);
  color: #38BDF8;
}
.mi-badge--down {
  background: rgba(236, 78, 54, 0.14);
  color: #EC4E36;
}
.mi-badge--na {
  background: var(--an-surface2, #F1F5F9);
  color: var(--an-text-muted, #64748B);
}

.mint-ring {
  width: 150px;
  height: 150px;
  display: block;
  margin: 8px auto;
}
.mint-ring__num {
  font-size: 30px;
  font-weight: 800;
  fill: var(--an-text, #1E293B);
}
.mint-ring__sub {
  font-size: 11px;
  fill: var(--an-text-muted, #64748B);
}

.rvi-stats .rvi-filters {
  gap: 12px;
  padding: 4px 20px 0;
}
.rvi-stats .rvi-filters .rvi-filter-item {
  margin: 0;
  padding: 0;
}
.rvi-stats .rvi-filters md-datepicker .md-datepicker-button {
  display: none;
}
.rvi-stats .rvi-kpi-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 12px;
}
@media (max-width: 1200px) {
  .rvi-stats .rvi-kpi-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 700px) {
  .rvi-stats .rvi-kpi-grid {
    grid-template-columns: 1fr 1fr;
  }
}
.rvi-stats .rvi-kpi-stars {
  margin-top: 4px;
  line-height: 1;
}
.rvi-stats .rvi-kpi-stars md-icon {
  font-size: 13px;
  width: 13px;
  height: 13px;
  min-width: 13px;
  min-height: 13px;
  margin: 0;
  color: var(--an-amber);
}
.rvi-stats .rvi-delta {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  margin-top: 6px;
  font-size: 11px;
  font-weight: 700;
}
.rvi-stats .rvi-delta--up {
  color: var(--an-emerald);
}
.rvi-stats .rvi-delta--down {
  color: var(--an-rose);
}
.rvi-stats .rvi-trend-svg {
  width: 100%;
  height: 260px;
  display: block;
}
.rvi-stats .rvi-trend-grid {
  stroke: var(--an-border);
  stroke-width: 1;
  stroke-dasharray: 3 4;
  opacity: 0.6;
}
.rvi-stats .rvi-trend-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  padding: 10px 4px 0;
}
.rvi-stats .rvi-legend-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  color: var(--an-text-muted);
}
.rvi-stats .rvi-legend-item b {
  color: var(--an-text);
}
.rvi-stats .rvi-legend-dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  display: inline-block;
  flex-shrink: 0;
}
.rvi-stats .rvi-gauge-wrap {
  text-align: center;
}
.rvi-stats .rvi-gauge-svg {
  width: 100%;
  max-width: 240px;
  display: block;
  margin: 0 auto;
}
.rvi-stats .rvi-gauge-needle {
  stroke: var(--an-text);
}
.rvi-stats .rvi-gauge-hub {
  fill: var(--an-text);
}
.rvi-stats .rvi-gauge-value {
  font-size: 34px;
  font-weight: 800;
  letter-spacing: -0.8px;
  line-height: 1;
  margin-top: -8px;
}
.rvi-stats .rvi-nps-segments {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 12px;
}
.rvi-stats .rvi-seg {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 11px;
  font-weight: 600;
  color: var(--an-text-muted);
}
.rvi-stats .rvi-nps-desc {
  font-size: 11px;
  color: var(--an-text-muted);
  margin: 12px 0 0;
}
.rvi-stats .rvi-dist-label {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-weight: 700;
}
.rvi-stats .rvi-dist-label md-icon {
  font-size: 13px;
  width: 13px;
  height: 13px;
  min-width: 13px;
  min-height: 13px;
  margin: 0;
  color: var(--an-amber);
}
.rvi-stats .rvi-dist-pct {
  font-size: 11px;
  color: var(--an-text-muted);
}
.rvi-stats .rvi-engage-hero {
  text-align: center;
  padding: 6px 0 14px;
}
.rvi-stats .rvi-engage-hero .rvi-engage-value {
  font-size: 34px;
  font-weight: 800;
  letter-spacing: -0.8px;
  line-height: 1;
  color: var(--an-sky);
}
.rvi-stats .rvi-engage-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}
@media (max-width: 700px) {
  .rvi-stats .rvi-engage-grid {
    grid-template-columns: 1fr;
  }
}
.rvi-stats .rvi-engage-item {
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  padding: 12px 14px;
  text-align: center;
}
.rvi-stats .rvi-engage-item .rvi-engage-value {
  font-size: 20px;
  font-weight: 800;
  line-height: 1;
  color: var(--an-text);
}
.rvi-stats .rvi-engage-label {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
  margin-top: 5px;
  font-weight: 600;
}
.rvi-stats .rvi-engage-note {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 14px 0 0;
  font-size: 12px;
  color: var(--an-text-muted);
}
.rvi-stats .rvi-engage-note md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  min-width: 16px;
  min-height: 16px;
  margin: 0;
  color: var(--an-amber);
  flex-shrink: 0;
}

.fl-card-note {
  font-size: 11px;
  font-weight: 600;
  color: var(--an-text-muted);
  white-space: nowrap;
}

.fl-hist {
  display: flex;
  align-items: stretch;
  gap: 10px;
  padding: 8px 4px 0;
}

.fl-hist-col {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  cursor: default;
}

.fl-hist-value {
  font-size: 12px;
  font-weight: 700;
  color: var(--an-text);
}

.fl-hist-track {
  width: 100%;
  max-width: 56px;
  height: 120px;
  border-radius: 8px;
  background: var(--an-surface2);
  display: flex;
  align-items: flex-end;
  overflow: hidden;
}

.fl-hist-fill {
  width: 100%;
  min-height: 2px;
  border-radius: 8px 8px 0 0;
  background: linear-gradient(180deg, var(--an-amber, #f59e0b), rgba(245, 158, 11, 0.55));
  transition: height 0.4s ease;
}
.fl-hist-fill--teal {
  background: linear-gradient(180deg, #14b8a6, rgba(20, 184, 166, 0.55));
}

.fl-hist-label {
  font-size: 11px;
  font-weight: 600;
  color: var(--an-text-muted);
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  gap: 2px;
}

.fl-hist-unit {
  font-size: 9px;
  opacity: 0.7;
  margin-left: 2px;
}

.fl-hist-icon {
  font-size: 12px !important;
  height: 12px !important;
  width: 12px !important;
  min-height: 12px !important;
  min-width: 12px !important;
  color: var(--an-text-muted) !important;
}

.fl-wd-strip {
  display: flex;
  gap: 6px;
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px dashed var(--an-border);
}

.fl-wd-cell {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  padding: 6px 2px;
  border-radius: 8px;
  background: var(--an-surface2);
  cursor: default;
}

.fl-wd-label {
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  font-weight: 600;
  color: var(--an-text-muted);
}

.fl-wd-value {
  font-size: 12px;
  font-weight: 700;
  color: var(--an-text);
}
.fl-wd-value--na {
  color: var(--an-text-muted);
  opacity: 0.6;
}

.fl-wd-caption {
  margin-top: 8px;
  font-size: 10px;
  color: var(--an-text-muted);
}

.fl-map-bar-label {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-weight: 600;
  color: var(--an-text-muted);
  margin-right: 4px;
  flex-shrink: 0;
}

.fl-legend {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
}

.fl-legend-label {
  font-size: 10px;
  font-weight: 600;
  color: var(--an-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.4px;
}

.fl-legend-bar {
  width: 90px;
  height: 8px;
  border-radius: 4px;
  background: linear-gradient(90deg, #38bdf8, #6c63ff, #ec4899);
}

.fl-legend-swatch {
  width: 12px;
  height: 12px;
  border-radius: 4px;
}
.fl-legend-swatch--none {
  background: var(--an-surface2);
  border: 1px dashed var(--an-border-strong, var(--an-border));
}

.fl-canvas-wrap {
  width: 100%;
}

.fl-canvas {
  position: relative;
  width: 100%;
  height: 0;
  border-radius: 12px;
  border: 1px solid var(--an-border);
  background-color: var(--an-surface2);
  background-image: linear-gradient(to right, rgba(108, 99, 255, 0.06) 1px, transparent 1px), linear-gradient(to bottom, rgba(108, 99, 255, 0.06) 1px, transparent 1px);
  background-size: 8.333% 16.666%;
  overflow: hidden;
}

.fl-table {
  position: absolute;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1px;
  border-radius: 6px;
  border: 1px solid rgba(255, 255, 255, 0.35);
  box-shadow: 0 1px 4px rgba(15, 23, 42, 0.25);
  color: #fff;
  overflow: hidden;
  cursor: default;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.fl-table:hover {
  z-index: 2;
  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.35);
}
.fl-table--round {
  border-radius: 50%;
}
.fl-table--idle {
  background: var(--an-surface);
  border: 1px dashed var(--an-border-strong, var(--an-border));
  box-shadow: none;
  color: var(--an-text-muted);
}
.fl-table--disabled {
  opacity: 0.45;
}

.fl-table-name {
  font-size: 10px;
  font-weight: 700;
  line-height: 1.1;
  max-width: 92%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-shadow: 0 1px 2px rgba(15, 23, 42, 0.35);
}
.fl-table--idle .fl-table-name {
  text-shadow: none;
}

.fl-table-seats {
  font-size: 8px;
  font-weight: 600;
  opacity: 0.85;
  line-height: 1;
}
.fl-table-seats::after {
  content: " 👤";
  font-size: 7px;
}

.fl-canvas-footer {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 10px;
  font-size: 11px;
  color: var(--an-text-muted);
}
.fl-canvas-footer md-icon {
  font-size: 14px !important;
  height: 14px !important;
  width: 14px !important;
  min-height: 14px !important;
  min-width: 14px !important;
  color: var(--an-amber, #f59e0b) !important;
}

.fl-top-seats {
  font-size: 10px;
  font-weight: 500;
  color: var(--an-text-muted);
}

@media (max-width: 959px) {
  .fl-hist {
    gap: 6px;
  }
  .fl-hist-track {
    height: 90px;
  }
  .fl-legend {
    width: 100%;
    justify-content: flex-end;
    margin-top: 6px;
  }
  .fl-table-name {
    font-size: 8px;
  }
  .fl-table-seats {
    display: none;
  }
}
.fl-unmeasured {
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid var(--an-border);
}
.fl-unmeasured__title {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 0 0 4px;
  font-size: 11px;
  font-weight: 600;
  color: var(--an-text-muted);
}
.fl-unmeasured__title md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  min-width: 14px;
  min-height: 14px;
  color: var(--an-amber, #f59e0b);
}
.fl-unmeasured__zones {
  margin: 0;
  font-size: 12px;
  line-height: 1.5;
  color: var(--an-text);
}

md-dialog.stvc-dialog {
  display: flex;
  flex-direction: column;
  max-width: 760px;
  width: 100%;
  max-height: 90vh;
  background: var(--an-surface);
}

.stvc-head {
  order: 0;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  flex: 0 0 auto;
  padding: 20px 24px 16px;
  border-bottom: 1px solid var(--an-border);
}
.stvc-head__text {
  flex: 1;
  min-width: 0;
}
.stvc-head__title {
  margin: 0;
  font-size: 18px;
  font-weight: 700;
  color: var(--an-text);
  line-height: 1.2;
}
.stvc-head__sub {
  margin: 5px 0 0;
  font-size: 12.5px;
  line-height: 1.45;
  color: var(--an-text-muted);
}
.stvc-head__close.md-button.md-icon-button {
  margin: -4px -8px 0 0;
  color: var(--an-text-muted);
}
.stvc-head__close.md-button.md-icon-button md-icon {
  color: var(--an-text-muted) !important;
}
.stvc-head__close.md-button.md-icon-button:hover {
  background: var(--an-bg-subtle) !important;
}

md-dialog.stvc-dialog .stvc-body.md-dialog-content {
  order: 1;
  flex: 1 1 auto;
  min-height: 0;
  padding: 4px 24px 22px;
  overflow-y: auto;
  overflow-x: hidden;
}

.stvc-section {
  padding: 20px 0;
  border-bottom: 1px solid var(--an-border-light);
}
.stvc-section--last, .stvc-section:last-child {
  border-bottom: 0;
}
.stvc-section .wf-section-header {
  margin-bottom: 16px;
}

.stvc-input.md-input-container {
  width: 100%;
  margin-bottom: 6px;
}

.stvc-field {
  margin: 14px 0 4px;
}
.stvc-field .wf-hint {
  margin-top: 6px;
}

.stvc-label {
  display: block;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
  margin-bottom: 8px;
}

.stvc-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  align-items: start;
}
@media (max-width: 600px) {
  .stvc-grid {
    grid-template-columns: 1fr;
  }
}

.stvc-radios-row {
  display: flex;
  gap: 22px;
  margin-top: 6px;
}
.stvc-radios-row md-radio-button {
  margin: 0 !important;
}

.stvc-logo-opt {
  height: 20px;
  width: 20px;
  object-fit: cover;
  border-radius: 4px;
  margin-right: 8px;
  vertical-align: middle;
}

.stvc-choice {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
@media (max-width: 600px) {
  .stvc-choice {
    grid-template-columns: 1fr;
  }
}
.stvc-choice md-radio-button.stvc-choice__item {
  margin: 0 !important;
  padding: 12px 14px 12px 40px;
  border: 1px solid var(--an-border);
  border-radius: 10px;
  background: var(--an-bg-subtle);
  transition: border-color 0.15s, background 0.15s;
}
.stvc-choice md-radio-button.stvc-choice__item:hover {
  border-color: var(--an-border-hover);
}
.stvc-choice md-radio-button.stvc-choice__item.md-checked {
  border-color: var(--an-primary);
  background: var(--an-primary-soft);
}
.stvc-choice md-radio-button.stvc-choice__item .md-container {
  top: 15px;
  left: 14px;
}
.stvc-choice md-radio-button.stvc-choice__item .md-label {
  margin-left: 0;
}
.stvc-choice__title {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
  line-height: 1.3;
}
.stvc-choice__hint {
  display: block;
  margin-top: 3px;
  font-size: 11px;
  line-height: 1.4;
  color: var(--an-text-faint);
  white-space: normal;
}

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

.stvc-chip {
  appearance: none;
  border: 1px solid var(--an-border);
  background: var(--an-surface);
  color: var(--an-text-muted);
  border-radius: var(--an-radius-pill);
  padding: 6px 14px;
  font-size: 12.5px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.15s;
}
.stvc-chip:hover {
  border-color: var(--an-border-hover);
  color: var(--an-text);
}
.stvc-chip--active {
  background: var(--an-violet);
  border-color: var(--an-violet);
  color: #fff;
}

.stvc-inherit {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 2px 0 6px;
  padding: 9px 12px;
  border-radius: 9px;
  background: var(--an-primary-soft);
  border: 1px solid rgba(var(--an-primary-rgb), 0.22);
  font-size: 11.5px;
  line-height: 1.45;
  color: var(--an-text);
}
.stvc-inherit md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  min-width: 15px;
  min-height: 15px;
  color: var(--an-primary) !important;
  margin: 1px 0 0;
}

.stvc-dates {
  gap: 12px;
}
.stvc-dates md-datepicker {
  margin: 0;
}
.stvc-dates__sep {
  color: var(--an-text-muted);
  font-weight: 600;
  font-size: 12px;
}

.stvc-url {
  width: 100%;
  border: 1px solid var(--an-border);
  border-radius: 10px;
  background: var(--an-bg-subtle);
  padding: 11px 13px;
  font-family: var(--font-mono, ui-monospace, monospace);
  font-size: 11.5px;
  color: var(--an-text-muted);
  text-overflow: ellipsis;
}
.stvc-url:focus {
  outline: none;
  border-color: var(--an-primary);
  color: var(--an-text);
}

.stvc-foot {
  order: 2;
  display: flex;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
  padding: 14px 20px;
  border-top: 1px solid var(--an-border);
  background: var(--an-surface);
}
.stvc-foot__copy.md-button {
  margin: 0;
  text-transform: none;
  font-weight: 600;
  color: var(--an-text);
}
.stvc-foot__copy.md-button md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  color: var(--an-text-muted) !important;
}
.stvc-foot__copy.md-button:hover {
  background: var(--an-bg-subtle) !important;
}

#moduleReportForecast .fct-kpis {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 12px;
  margin-bottom: 4px;
}
#moduleReportForecast .fct-kpi {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  padding: 16px 18px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 4px 16px -2px rgba(0, 0, 0, 0.05);
}
#moduleReportForecast .fct-kpi::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: var(--an-violet);
}
#moduleReportForecast .fct-kpi--green::before {
  background: var(--an-emerald);
}
#moduleReportForecast .fct-kpi--amber::before {
  background: var(--an-amber);
}
#moduleReportForecast .fct-kpi--sky::before {
  background: var(--an-sky);
}
#moduleReportForecast .fct-kpi__val {
  font-size: 27px;
  font-weight: 800;
  letter-spacing: -0.6px;
  line-height: 1.15;
  color: var(--an-text);
}
#moduleReportForecast .fct-kpi__lbl {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
  margin-top: 6px;
  font-weight: 600;
}
#moduleReportForecast .fct-up {
  color: var(--an-emerald);
}
#moduleReportForecast .fct-down {
  color: var(--an-rose);
}
#moduleReportForecast .fct-acc {
  padding: 2px 8px;
  border-radius: 8px;
}
#moduleReportForecast .fct-acc--good {
  color: var(--an-emerald);
  background: rgba(16, 185, 129, 0.12);
}
#moduleReportForecast .fct-acc--mid {
  color: var(--an-amber);
  background: rgba(245, 158, 11, 0.14);
}
#moduleReportForecast .fct-acc--low {
  color: var(--an-rose);
  background: rgba(236, 78, 54, 0.12);
}
#moduleReportForecast .fct-acc--na {
  color: var(--an-text-muted);
  background: var(--an-surface2);
}
#moduleReportForecast .fct-chart__divider {
  stroke: var(--an-text-faint);
  stroke-width: 1;
  stroke-dasharray: 3 4;
}
#moduleReportForecast .fct-chart__divider-lbl {
  font-size: 10px;
  font-weight: 700;
  fill: var(--an-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
#moduleReportForecast .fct-chart__xlbl {
  font-size: 10px;
  fill: var(--an-text-muted);
  text-anchor: middle;
}
#moduleReportForecast .fct-legend {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 6px;
  font-size: 12px;
  color: var(--an-text-muted);
}
#moduleReportForecast .fct-legend__item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
#moduleReportForecast .fct-legend__swatch {
  width: 14px;
  height: 8px;
  border-radius: 3px;
  display: inline-block;
}
#moduleReportForecast .fct-legend__swatch--dash {
  background: repeating-linear-gradient(90deg, #6C63FF 0 4px, transparent 4px 7px);
  height: 3px;
  border-radius: 0;
}
#moduleReportForecast .fct-hint {
  font-size: 11px;
  color: var(--an-text-faint);
}
#moduleReportForecast .fct-stack {
  display: flex;
  align-items: flex-end;
  gap: 8px;
  padding: 4px 2px 0;
}
#moduleReportForecast .fct-stack__col {
  flex: 1 1 0;
  min-width: 0;
  text-align: center;
}
#moduleReportForecast .fct-stack__bars {
  height: 170px;
  display: flex;
  flex-direction: column-reverse;
  justify-content: flex-start;
  border-radius: 6px 6px 3px 3px;
  overflow: hidden;
}
#moduleReportForecast .fct-stack__seg {
  width: 100%;
  min-height: 0;
  transition: opacity 0.15s;
}
#moduleReportForecast .fct-stack__col:hover .fct-stack__seg {
  opacity: 0.85;
}
#moduleReportForecast .fct-stack__lbl {
  font-size: 10px;
  font-weight: 600;
  color: var(--an-text-muted);
  margin-top: 6px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#moduleReportForecast .fct-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}
#moduleReportForecast .fct-table th {
  text-align: left;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
  padding: 8px 10px;
  border-bottom: 1px solid var(--an-border);
  white-space: nowrap;
}
#moduleReportForecast .fct-table td {
  padding: 10px;
  border-bottom: 1px solid var(--an-border);
  color: var(--an-text);
  vertical-align: middle;
}
#moduleReportForecast .fct-table tr:last-child td {
  border-bottom: none;
}
#moduleReportForecast .fct-table tr:hover td {
  background: var(--an-surface2);
}
#moduleReportForecast .fct-table-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
#moduleReportForecast .fct-day {
  font-weight: 700;
  white-space: nowrap;
  text-transform: capitalize;
}
#moduleReportForecast .fct-peak {
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
#moduleReportForecast .fct-shifts {
  font-size: 11px;
  color: var(--an-text-muted);
}
#moduleReportForecast .fct-sugg {
  font-size: 12px;
  color: var(--an-text-muted);
  max-width: 260px;
  line-height: 1.4;
}
#moduleReportForecast .fct-demand {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 120px;
}
#moduleReportForecast .fct-demand__track {
  flex: 1;
  height: 8px;
  border-radius: 4px;
  background: var(--an-surface2);
  overflow: hidden;
  min-width: 60px;
}
#moduleReportForecast .fct-demand__fill {
  height: 100%;
  border-radius: 4px;
  background: var(--an-violet);
}
#moduleReportForecast .fct-demand__val {
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
#moduleReportForecast .fct-hours {
  display: inline-flex;
  gap: 1px;
}
#moduleReportForecast .fct-hours__cell {
  width: 5px;
  height: 16px;
  border-radius: 1px;
}
#moduleReportForecast .fct-hours__cell--peak {
  outline: 1px solid var(--an-violet);
  outline-offset: 1px;
}
#moduleReportForecast .fct-flag {
  display: inline-block;
  padding: 3px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
}
#moduleReportForecast .fct-flag--over {
  color: var(--an-amber);
  background: rgba(245, 158, 11, 0.14);
}
#moduleReportForecast .fct-flag--under {
  color: var(--an-rose);
  background: rgba(236, 78, 54, 0.12);
}
#moduleReportForecast .fct-flag--ok {
  color: var(--an-emerald);
  background: rgba(16, 185, 129, 0.12);
}
#moduleReportForecast .fct-flag--na {
  color: var(--an-text-muted);
  background: var(--an-surface2);
}
#moduleReportForecast .fct-note {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 10px;
  padding: 10px 14px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  background: var(--an-surface);
  font-size: 12px;
  color: var(--an-text-muted);
}
#moduleReportForecast .fct-note md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  color: var(--an-sky) !important;
}
#moduleReportForecast .fct-note--warn md-icon {
  color: var(--an-amber) !important;
}
@media (max-width: 960px) {
  #moduleReportForecast .fct-kpis {
    grid-template-columns: repeat(2, 1fr);
  }
  #moduleReportForecast .fct-stack {
    gap: 4px;
  }
  #moduleReportForecast .fct-stack__lbl {
    font-size: 9px;
  }
  #moduleReportForecast .fct-sugg {
    max-width: 180px;
  }
}

#moduleReportVenues .vn-kpis {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 12px;
  margin-bottom: 4px;
}
#moduleReportVenues .vn-kpi {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  padding: 16px 18px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 4px 16px -2px rgba(0, 0, 0, 0.05);
}
#moduleReportVenues .vn-kpi::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: var(--an-violet);
}
#moduleReportVenues .vn-kpi--green::before {
  background: var(--an-emerald);
}
#moduleReportVenues .vn-kpi--amber::before {
  background: var(--an-amber);
}
#moduleReportVenues .vn-kpi--sky::before {
  background: var(--an-sky);
}
#moduleReportVenues .vn-kpi--rose::before {
  background: var(--an-rose);
}
#moduleReportVenues .vn-kpi__val {
  font-size: 27px;
  font-weight: 800;
  letter-spacing: -0.6px;
  line-height: 1;
  color: var(--an-text);
}
#moduleReportVenues .vn-kpi__lbl {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
  margin-top: 6px;
  font-weight: 600;
}
#moduleReportVenues .vn-kpi__delta {
  font-size: 11px;
  font-weight: 700;
  margin-top: 6px;
  display: inline-flex;
  align-items: center;
  gap: 2px;
}
#moduleReportVenues .vn-kpi__delta md-icon {
  font-size: 13px;
  width: 13px;
  height: 13px;
  color: inherit !important;
}
#moduleReportVenues .vn-kpi__delta--up {
  color: var(--an-emerald);
}
#moduleReportVenues .vn-kpi__delta--down {
  color: var(--an-rose);
}
#moduleReportVenues .vn-notice {
  display: flex;
  align-items: center;
  gap: 10px;
  background: rgba(245, 158, 11, 0.1);
  border: 1px solid rgba(245, 158, 11, 0.35);
  color: var(--an-text);
  border-radius: var(--an-radius);
  padding: 12px 16px;
  font-size: 13px;
  margin-bottom: 10px;
}
#moduleReportVenues .vn-notice md-icon {
  color: var(--an-amber) !important;
  flex-shrink: 0;
}
#moduleReportVenues .vn-notice em {
  font-style: normal;
  font-weight: 700;
}
#moduleReportVenues .vn-notice--soft {
  background: var(--an-surface2);
  border-color: var(--an-border);
}
#moduleReportVenues .vn-notice--soft md-icon {
  color: var(--an-text-muted) !important;
}
#moduleReportVenues .vn-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}
#moduleReportVenues .vn-table th {
  text-align: right;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
  padding: 8px 10px;
  border-bottom: 1px solid var(--an-border);
  white-space: nowrap;
  user-select: none;
}
#moduleReportVenues .vn-table th md-icon {
  font-size: 12px;
  width: 12px;
  height: 12px;
  vertical-align: -2px;
  color: var(--an-violet) !important;
}
#moduleReportVenues .vn-table th:first-child, #moduleReportVenues .vn-table td:first-child,
#moduleReportVenues .vn-table th:nth-child(2), #moduleReportVenues .vn-table td:nth-child(2) {
  text-align: left;
}
#moduleReportVenues .vn-table .vn-th-sort {
  cursor: pointer;
}
#moduleReportVenues .vn-table .vn-th-sort:hover {
  color: var(--an-text);
}
#moduleReportVenues .vn-table td {
  padding: 10px;
  border-bottom: 1px solid var(--an-border);
  color: var(--an-text);
  text-align: right;
  white-space: nowrap;
}
#moduleReportVenues .vn-table tr:last-child td {
  border-bottom: none;
}
#moduleReportVenues .vn-table tbody tr:hover td {
  background: var(--an-surface2);
}
#moduleReportVenues .vn-table-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
#moduleReportVenues .vn-row--portfolio td {
  background: rgba(108, 99, 255, 0.08) !important;
  border-top: 2px solid var(--an-violet);
  border-bottom: 2px solid var(--an-violet);
  font-weight: 700;
}
#moduleReportVenues .vn-rank {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border-radius: 8px;
  background: var(--an-surface2);
  color: var(--an-text);
  font-size: 12px;
  font-weight: 800;
}
#moduleReportVenues .vn-rank--gold {
  background: linear-gradient(135deg, #FDE68A, #F59E0B);
  color: #4d3502;
}
#moduleReportVenues .vn-rank--silver {
  background: linear-gradient(135deg, #E5E7EB, #9CA3AF);
  color: #2c2f35;
}
#moduleReportVenues .vn-rank--bronze {
  background: linear-gradient(135deg, #FBD5B5, #C2762B);
  color: #47280a;
}
#moduleReportVenues .vn-rank--avg {
  background: var(--an-violet);
  color: #fff;
}
#moduleReportVenues .vn-move {
  font-size: 10px;
  font-weight: 800;
  margin-left: 4px;
}
#moduleReportVenues .vn-move--up {
  color: var(--an-emerald);
}
#moduleReportVenues .vn-move--down {
  color: var(--an-rose);
}
#moduleReportVenues .vn-move--flat {
  color: var(--an-text-muted);
}
#moduleReportVenues .vn-move--new {
  color: var(--an-sky);
  text-transform: uppercase;
  letter-spacing: 0.4px;
}
#moduleReportVenues .vn-venue {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
#moduleReportVenues .vn-venue__avatar {
  width: 24px;
  height: 24px;
  border-radius: 7px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 9px;
  font-weight: 800;
}
#moduleReportVenues .vn-venue__name {
  font-size: 13px;
  font-weight: 600;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 180px;
  display: inline-block;
  vertical-align: middle;
}
#moduleReportVenues .vn-delta {
  font-size: 11px;
  font-weight: 700;
  margin-left: 4px;
}
#moduleReportVenues .vn-delta--up {
  color: var(--an-emerald);
}
#moduleReportVenues .vn-delta--down {
  color: var(--an-rose);
}
#moduleReportVenues .vn-delta--na {
  color: var(--an-text-muted);
  font-size: 10px;
}
#moduleReportVenues .vn-spark {
  width: 120px;
  height: 32px;
  display: inline-block;
  vertical-align: middle;
}
#moduleReportVenues .vn-score {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-weight: 700;
}
#moduleReportVenues .vn-score md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  color: var(--an-amber) !important;
}
#moduleReportVenues .vn-score em {
  font-style: normal;
  font-weight: 500;
  color: var(--an-text-muted);
  font-size: 11px;
}
#moduleReportVenues .vn-legend {
  display: flex;
  gap: 16px;
  margin-bottom: 6px;
}
#moduleReportVenues .vn-legend__item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 11.5px;
  color: var(--an-text-muted);
  font-weight: 600;
}
#moduleReportVenues .vn-legend__dot {
  width: 14px;
  height: 3px;
  border-radius: 2px;
  display: inline-block;
}
#moduleReportVenues .vn-legend__dot--dashed {
  background: repeating-linear-gradient(90deg, #9CA3AF 0 4px, transparent 4px 7px);
}
#moduleReportVenues .vn-months {
  display: flex;
  margin-top: 6px;
}
#moduleReportVenues .vn-months__cell {
  flex: 1;
  text-align: center;
  min-width: 0;
}
#moduleReportVenues .vn-months__lbl {
  font-size: 10px;
  color: var(--an-text-muted);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.4px;
}
#moduleReportVenues .vn-months__growth {
  font-size: 10.5px;
  font-weight: 700;
  margin-top: 2px;
}
#moduleReportVenues .vn-contrib {
  padding: 8px 0;
  border-bottom: 1px dashed var(--an-border);
}
#moduleReportVenues .vn-contrib:last-child {
  border-bottom: none;
}
#moduleReportVenues .vn-contrib__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 5px;
}
#moduleReportVenues .vn-contrib__name {
  font-size: 12.5px;
  font-weight: 600;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
}
#moduleReportVenues .vn-contrib__head .vn-delta {
  white-space: nowrap;
  flex-shrink: 0;
}
#moduleReportVenues .vn-contrib__head em {
  font-style: normal;
  font-weight: 500;
  font-size: 10px;
  color: var(--an-text-muted);
}
#moduleReportVenues .vn-contrib__track {
  display: flex;
  height: 10px;
}
#moduleReportVenues .vn-contrib__half {
  flex: 1;
  position: relative;
  background: var(--an-surface2);
  overflow: hidden;
}
#moduleReportVenues .vn-contrib__half--neg {
  border-radius: 5px 0 0 5px;
  border-right: 1px solid var(--an-border);
}
#moduleReportVenues .vn-contrib__half--pos {
  border-radius: 0 5px 5px 0;
}
#moduleReportVenues .vn-contrib__fill {
  position: absolute;
  top: 0;
  bottom: 0;
}
#moduleReportVenues .vn-contrib__fill--pos {
  left: 0;
  background: linear-gradient(90deg, var(--an-emerald), #34D399);
  border-radius: 0 5px 5px 0;
}
#moduleReportVenues .vn-contrib__fill--neg {
  right: 0;
  background: linear-gradient(270deg, var(--an-rose), #F87171);
  border-radius: 5px 0 0 5px;
}
@media (max-width: 960px) {
  #moduleReportVenues .vn-kpis {
    grid-template-columns: 1fr 1fr;
  }
  #moduleReportVenues .vn-venue__name {
    max-width: 110px;
  }
}
@media (max-width: 600px) {
  #moduleReportVenues .vn-months__cell:nth-child(even) {
    display: none;
  }
}

#moduleReportDelivery .dh-cards {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  gap: 12px;
}
#moduleReportDelivery .dh-card {
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: 12px;
  padding: 14px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
#moduleReportDelivery .dh-card__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
#moduleReportDelivery .dh-card__stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 6px;
}
#moduleReportDelivery .dh-stat {
  text-align: center;
}
#moduleReportDelivery .dh-stat__val {
  font-size: 15px;
  font-weight: 800;
  color: var(--an-text);
  white-space: nowrap;
}
#moduleReportDelivery .dh-stat__lbl {
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  color: var(--an-text-muted);
  margin-top: 2px;
  font-weight: 600;
}
#moduleReportDelivery .dh-stat--bad .dh-stat__val {
  color: var(--an-rose);
}
#moduleReportDelivery .dh-card__http {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
#moduleReportDelivery .dh-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
  padding: 3px 9px;
  border-radius: 999px;
}
#moduleReportDelivery .dh-badge__dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: currentColor;
  flex: none;
}
#moduleReportDelivery .dh-badge--ok {
  color: var(--an-emerald);
  background: rgba(16, 185, 129, 0.12);
}
#moduleReportDelivery .dh-badge--warn {
  color: var(--an-amber);
  background: rgba(245, 158, 11, 0.14);
}
#moduleReportDelivery .dh-badge--bad {
  color: var(--an-rose);
  background: rgba(236, 78, 54, 0.12);
}
#moduleReportDelivery .dh-badge--none {
  color: var(--an-text-muted);
  background: var(--an-surface2);
  border: 1px dashed var(--an-border);
}
#moduleReportDelivery .dh-chip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  font-weight: 600;
  white-space: nowrap;
  padding: 3px 8px;
  border-radius: 6px;
  color: var(--an-emerald);
  background: rgba(16, 185, 129, 0.1);
}
#moduleReportDelivery .dh-chip--warn {
  color: var(--an-amber);
  background: rgba(245, 158, 11, 0.12);
}
#moduleReportDelivery .dh-chip--bad {
  color: var(--an-rose);
  background: rgba(236, 78, 54, 0.12);
}
#moduleReportDelivery .dh-chip--muted {
  color: var(--an-text-muted);
  background: var(--an-surface2);
}
#moduleReportDelivery .dh-legend {
  display: flex;
  gap: 16px;
  margin-top: 8px;
}
#moduleReportDelivery .dh-legend__item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  color: var(--an-text-muted);
  font-weight: 600;
}
#moduleReportDelivery .dh-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 14px;
}
#moduleReportDelivery .dh-timeline {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
#moduleReportDelivery .dh-timeline__row {
  display: grid;
  grid-template-columns: 160px 1fr 60px;
  align-items: center;
  gap: 12px;
}
#moduleReportDelivery .dh-timeline__lbl {
  min-width: 0;
  overflow: hidden;
}
#moduleReportDelivery .dh-timeline__track {
  position: relative;
  height: 16px;
  border-radius: 8px;
  background: linear-gradient(90deg, rgba(16, 185, 129, 0.18), rgba(16, 185, 129, 0.1));
  overflow: hidden;
}
#moduleReportDelivery .dh-timeline__seg {
  position: absolute;
  top: 0;
  bottom: 0;
  background: var(--an-rose);
  border-radius: 3px;
  opacity: 0.85;
}
#moduleReportDelivery .dh-timeline__seg--open {
  background: repeating-linear-gradient(-45deg, var(--an-rose), var(--an-rose) 4px, rgba(236, 78, 54, 0.45) 4px, rgba(236, 78, 54, 0.45) 8px);
}
#moduleReportDelivery .dh-timeline__meta {
  font-size: 12px;
  font-weight: 700;
  text-align: right;
}
@media (max-width: 760px) {
  #moduleReportDelivery .dh-timeline__row {
    grid-template-columns: 110px 1fr 48px;
    gap: 8px;
  }
  #moduleReportDelivery .dh-card__stats {
    grid-template-columns: repeat(2, 1fr);
  }
}

@keyframes intgSpin {
  to {
    transform: rotate(360deg);
  }
}
.an-spin {
  animation: intgSpin 0.8s linear infinite;
}

#moduleIntegrator, #moduleMarketplaces, .intg-dialog {
  --intg-gap: 16px;
}
#moduleIntegrator .intg-header, #moduleMarketplaces .intg-header, .intg-dialog .intg-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 20px 24px 8px;
  flex-wrap: wrap;
}
#moduleIntegrator .intg-header__titles, #moduleMarketplaces .intg-header__titles, .intg-dialog .intg-header__titles {
  min-width: 0;
}
#moduleIntegrator .intg-header__title, #moduleMarketplaces .intg-header__title, .intg-dialog .intg-header__title {
  font-size: 22px;
  font-weight: 800;
  letter-spacing: -0.5px;
  margin: 0;
  color: var(--an-text);
}
#moduleIntegrator .intg-header__subtitle, #moduleMarketplaces .intg-header__subtitle, .intg-dialog .intg-header__subtitle {
  font-size: 13px;
  color: var(--an-text-muted);
  margin: 2px 0 0;
}
#moduleIntegrator .intg-header__actions, #moduleMarketplaces .intg-header__actions, .intg-dialog .intg-header__actions {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
}
#moduleIntegrator .intg-tabs, #moduleMarketplaces .intg-tabs, .intg-dialog .intg-tabs {
  display: flex;
  gap: 4px;
  padding: 8px 24px 0;
  overflow-x: auto;
  scrollbar-width: none;
  border-bottom: 1px solid var(--an-border);
}
#moduleIntegrator .intg-tabs::-webkit-scrollbar, #moduleMarketplaces .intg-tabs::-webkit-scrollbar, .intg-dialog .intg-tabs::-webkit-scrollbar {
  display: none;
}
#moduleIntegrator .intg-tab, #moduleMarketplaces .intg-tab, .intg-dialog .intg-tab {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 11px 14px;
  border: none;
  background: transparent;
  color: var(--an-text-muted);
  font-size: 13px;
  font-weight: 600;
  font-family: "Inter", sans-serif;
  white-space: nowrap;
  cursor: pointer;
  border-bottom: 2px solid transparent;
  transition: color 0.15s, border-color 0.15s;
}
#moduleIntegrator .intg-tab md-icon, #moduleMarketplaces .intg-tab md-icon, .intg-dialog .intg-tab md-icon {
  color: inherit !important;
  font-size: 19px;
  width: 19px;
  height: 19px;
}
#moduleIntegrator .intg-tab:hover, #moduleMarketplaces .intg-tab:hover, .intg-dialog .intg-tab:hover {
  color: var(--an-text);
}
#moduleIntegrator .intg-tab.is-active, #moduleMarketplaces .intg-tab.is-active, .intg-dialog .intg-tab.is-active {
  color: var(--an-violet);
  border-bottom-color: var(--an-violet);
}
#moduleIntegrator .intg-body, #moduleMarketplaces .intg-body, .intg-dialog .intg-body {
  padding: 18px 24px 60px;
}
#moduleIntegrator .intg-section-title, #moduleMarketplaces .intg-section-title, .intg-dialog .intg-section-title {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--an-text-muted);
  margin: 18px 2px 10px;
  display: flex;
  align-items: center;
  gap: 8px;
}
#moduleIntegrator .intg-section-title:first-child, #moduleMarketplaces .intg-section-title:first-child, .intg-dialog .intg-section-title:first-child {
  margin-top: 4px;
}
#moduleIntegrator .intg-grid, #moduleMarketplaces .intg-grid, .intg-dialog .intg-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(290px, 1fr));
  gap: var(--intg-gap);
}
#moduleIntegrator .intg-conn-card, #moduleMarketplaces .intg-conn-card, .intg-dialog .intg-conn-card {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  box-shadow: 0 4px 16px -2px rgba(0, 0, 0, 0.05), 0 2px 4px -2px rgba(0, 0, 0, 0.025);
  transition: box-shadow 0.2s, transform 0.2s, border-color 0.2s;
  animation: anFadeUp 0.4s ease both;
}
#moduleIntegrator .intg-conn-card:hover, #moduleMarketplaces .intg-conn-card:hover, .intg-dialog .intg-conn-card:hover {
  box-shadow: 0 10px 28px -6px rgba(0, 0, 0, 0.12);
  transform: translateY(-2px);
}
#moduleIntegrator .intg-conn-card.is-disabled, #moduleMarketplaces .intg-conn-card.is-disabled, .intg-dialog .intg-conn-card.is-disabled {
  opacity: 0.62;
}
#moduleIntegrator .intg-conn-top, #moduleMarketplaces .intg-conn-top, .intg-dialog .intg-conn-top {
  display: flex;
  align-items: center;
  gap: 12px;
}
#moduleIntegrator .intg-logo, #moduleMarketplaces .intg-logo, .intg-dialog .intg-logo {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 15px;
  color: #fff;
  letter-spacing: 0.5px;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.15);
}
#moduleIntegrator .intg-logo--uber_eats, #moduleMarketplaces .intg-logo--uber_eats, .intg-dialog .intg-logo--uber_eats {
  background: #06C167;
}
#moduleIntegrator .intg-logo--rappi, #moduleMarketplaces .intg-logo--rappi, .intg-dialog .intg-logo--rappi {
  background: #FF4F18;
}
#moduleIntegrator .intg-logo--glovo, #moduleMarketplaces .intg-logo--glovo, .intg-dialog .intg-logo--glovo {
  background: #FFC244;
  color: #1a1a1a;
}
#moduleIntegrator .intg-logo--sinqro, #moduleMarketplaces .intg-logo--sinqro, .intg-dialog .intg-logo--sinqro {
  background: #2D6CDF;
}
#moduleIntegrator .intg-logo--pedidosya, #moduleMarketplaces .intg-logo--pedidosya, .intg-dialog .intg-logo--pedidosya {
  background: #E12B2B;
}
#moduleIntegrator .intg-logo--UD, #moduleMarketplaces .intg-logo--UD, .intg-dialog .intg-logo--UD {
  background: #000;
}
#moduleIntegrator .intg-logo--SR, #moduleMarketplaces .intg-logo--SR, .intg-dialog .intg-logo--SR {
  background: #0a7d36;
}
#moduleIntegrator .intg-logo--GV, #moduleMarketplaces .intg-logo--GV, .intg-dialog .intg-logo--GV {
  background: #FFC244;
  color: #1a1a1a;
}
#moduleIntegrator .intg-logo--PY, #moduleMarketplaces .intg-logo--PY, .intg-dialog .intg-logo--PY {
  background: #E12B2B;
}
#moduleIntegrator .intg-logo--CB, #moduleMarketplaces .intg-logo--CB, .intg-dialog .intg-logo--CB {
  background: #7C4DFF;
}
#moduleIntegrator .intg-logo--SD, #moduleMarketplaces .intg-logo--SD, .intg-dialog .intg-logo--SD {
  background: #1488CC;
}
#moduleIntegrator .intg-logo--JL, #moduleMarketplaces .intg-logo--JL, .intg-dialog .intg-logo--JL {
  background: #FF6B00;
}
#moduleIntegrator .intg-logo--GO, #moduleMarketplaces .intg-logo--GO, .intg-dialog .intg-logo--GO {
  background: #16A34A;
}
#moduleIntegrator .intg-logo--SX, #moduleMarketplaces .intg-logo--SX, .intg-dialog .intg-logo--SX {
  background: #0EA5E9;
}
#moduleIntegrator .intg-logo--SH, #moduleMarketplaces .intg-logo--SH, .intg-dialog .intg-logo--SH {
  background: #EF4444;
}
#moduleIntegrator .intg-logo--TG, #moduleMarketplaces .intg-logo--TG, .intg-dialog .intg-logo--TG {
  background: #0891B2;
}
#moduleIntegrator .intg-logo--TR, #moduleMarketplaces .intg-logo--TR, .intg-dialog .intg-logo--TR {
  background: #475569;
}
#moduleIntegrator .intg-logo--CA, #moduleMarketplaces .intg-logo--CA, .intg-dialog .intg-logo--CA {
  background: #9333EA;
}
#moduleIntegrator .intg-logo--default, #moduleMarketplaces .intg-logo--default, .intg-dialog .intg-logo--default {
  background: linear-gradient(135deg, var(--an-violet), var(--an-indigo));
}
#moduleIntegrator .intg-logo--img, #moduleMarketplaces .intg-logo--img, .intg-dialog .intg-logo--img {
  background: #fff;
  box-shadow: inset 0 0 0 1px var(--an-border);
  padding: 7px;
}
#moduleIntegrator .intg-logo--img img, #moduleMarketplaces .intg-logo--img img, .intg-dialog .intg-logo--img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
#moduleIntegrator .intg-logo--icon, #moduleMarketplaces .intg-logo--icon, .intg-dialog .intg-logo--icon {
  background: var(--an-surface2);
  box-shadow: inset 0 0 0 1px var(--an-border);
  color: var(--an-text);
}
#moduleIntegrator .intg-logo--icon md-icon, #moduleMarketplaces .intg-logo--icon md-icon, .intg-dialog .intg-logo--icon md-icon {
  font-size: 22px;
  width: 22px;
  height: 22px;
  color: inherit;
}
#moduleIntegrator .intg-conn-name, #moduleMarketplaces .intg-conn-name, .intg-dialog .intg-conn-name {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.2;
  min-width: 0;
}
#moduleIntegrator .intg-conn-kind, #moduleMarketplaces .intg-conn-kind, .intg-dialog .intg-conn-kind {
  font-size: 11px;
  color: var(--an-text-muted);
  margin-top: 1px;
}
#moduleIntegrator .intg-conn-top md-switch, #moduleMarketplaces .intg-conn-top md-switch, .intg-dialog .intg-conn-top md-switch {
  margin: 0;
}
#moduleIntegrator .intg-chip, #moduleMarketplaces .intg-chip, .intg-dialog .intg-chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 11px;
  font-weight: 700;
  padding: 3px 9px;
  border-radius: 999px;
  width: fit-content;
}
#moduleIntegrator .intg-chip__dot, #moduleMarketplaces .intg-chip__dot, .intg-dialog .intg-chip__dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: currentColor;
}
#moduleIntegrator .intg-chip--connected, #moduleMarketplaces .intg-chip--connected, .intg-dialog .intg-chip--connected {
  color: var(--an-emerald);
  background: rgba(16, 185, 129, 0.12);
}
#moduleIntegrator .intg-chip--offline, #moduleMarketplaces .intg-chip--offline, .intg-dialog .intg-chip--offline {
  color: var(--an-text-muted);
  background: rgba(107, 114, 128, 0.12);
}
#moduleIntegrator .intg-chip--expiring, #moduleMarketplaces .intg-chip--expiring, .intg-dialog .intg-chip--expiring {
  color: var(--an-amber);
  background: rgba(245, 158, 11, 0.14);
}
#moduleIntegrator .intg-chip--error, #moduleMarketplaces .intg-chip--error, .intg-dialog .intg-chip--error {
  color: var(--an-rose);
  background: rgba(236, 78, 54, 0.13);
}
#moduleIntegrator .intg-chip--disconnected, #moduleMarketplaces .intg-chip--disconnected, .intg-dialog .intg-chip--disconnected {
  color: var(--an-text-muted);
  background: rgba(107, 114, 128, 0.1);
}
#moduleIntegrator .intg-conn-meta, #moduleMarketplaces .intg-conn-meta, .intg-dialog .intg-conn-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 12px;
  color: var(--an-text-muted);
  border-top: 1px dashed var(--an-border);
  padding-top: 10px;
}
#moduleIntegrator .intg-conn-actions, #moduleMarketplaces .intg-conn-actions, .intg-dialog .intg-conn-actions {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}
#moduleIntegrator .intg-btn, #moduleMarketplaces .intg-btn, .intg-dialog .intg-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  padding: 7px 12px;
  border-radius: 9px;
  cursor: pointer;
  border: 1px solid var(--an-border);
  background: var(--an-surface2);
  color: var(--an-text);
  transition: background 0.15s, border-color 0.15s;
  text-decoration: none;
}
#moduleIntegrator .intg-btn md-icon, #moduleMarketplaces .intg-btn md-icon, .intg-dialog .intg-btn md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  color: inherit !important;
}
#moduleIntegrator .intg-btn:hover, #moduleIntegrator .intg-btn:visited, #moduleIntegrator .intg-btn:active, #moduleMarketplaces .intg-btn:hover, #moduleMarketplaces .intg-btn:visited, #moduleMarketplaces .intg-btn:active, .intg-dialog .intg-btn:hover, .intg-dialog .intg-btn:visited, .intg-dialog .intg-btn:active {
  text-decoration: none;
  color: var(--an-text);
}
#moduleIntegrator .intg-btn:hover, #moduleMarketplaces .intg-btn:hover, .intg-dialog .intg-btn:hover {
  background: var(--an-border);
}
#moduleIntegrator .intg-btn.intg-btn--primary, #moduleMarketplaces .intg-btn.intg-btn--primary, .intg-dialog .intg-btn.intg-btn--primary {
  background: var(--an-violet);
  border-color: var(--an-violet);
  color: #fff;
}
#moduleIntegrator .intg-btn.intg-btn--primary:hover, #moduleMarketplaces .intg-btn.intg-btn--primary:hover, .intg-dialog .intg-btn.intg-btn--primary:hover {
  filter: brightness(1.05);
}
#moduleIntegrator .intg-btn.intg-btn--ghost, #moduleMarketplaces .intg-btn.intg-btn--ghost, .intg-dialog .intg-btn.intg-btn--ghost {
  background: transparent;
}
#moduleIntegrator .intg-btn[disabled], #moduleMarketplaces .intg-btn[disabled], .intg-dialog .intg-btn[disabled] {
  opacity: 0.5;
  cursor: default;
}
#moduleIntegrator .intg-card, #moduleMarketplaces .intg-card, .intg-dialog .intg-card {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  padding: 18px;
  box-shadow: 0 4px 16px -2px rgba(0, 0, 0, 0.05);
}
#moduleIntegrator .intg-cards-2, #moduleMarketplaces .intg-cards-2, .intg-dialog .intg-cards-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--intg-gap);
}
#moduleIntegrator .intg-kpis, #moduleMarketplaces .intg-kpis, .intg-dialog .intg-kpis {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
  margin-bottom: 16px;
}
#moduleIntegrator .intg-kpi, #moduleMarketplaces .intg-kpi, .intg-dialog .intg-kpi {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 12px;
  padding: 14px 16px;
}
#moduleIntegrator .intg-kpi__val, #moduleMarketplaces .intg-kpi__val, .intg-dialog .intg-kpi__val {
  font-size: 26px;
  font-weight: 800;
  letter-spacing: -0.5px;
  line-height: 1;
}
#moduleIntegrator .intg-kpi__lbl, #moduleMarketplaces .intg-kpi__lbl, .intg-dialog .intg-kpi__lbl {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
  margin-top: 5px;
  font-weight: 600;
}
#moduleIntegrator .intg-toolbar, #moduleMarketplaces .intg-toolbar, .intg-dialog .intg-toolbar {
  display: flex;
  gap: 8px;
  align-items: center;
  margin-bottom: 12px;
  flex-wrap: wrap;
}
#moduleIntegrator .intg-search, #moduleMarketplaces .intg-search, .intg-dialog .intg-search {
  flex: 1;
  min-width: 180px;
  display: flex;
  align-items: center;
  gap: 8px;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 10px;
  padding: 8px 12px;
}
#moduleIntegrator .intg-search md-icon, #moduleMarketplaces .intg-search md-icon, .intg-dialog .intg-search md-icon {
  color: var(--an-text-muted) !important;
  font-size: 18px;
}
#moduleIntegrator .intg-search input, #moduleMarketplaces .intg-search input, .intg-dialog .intg-search input {
  border: none;
  outline: none;
  background: transparent;
  flex: 1;
  font-size: 13px;
  color: var(--an-text);
}
#moduleIntegrator .intg-table-wrap, #moduleMarketplaces .intg-table-wrap, .intg-dialog .intg-table-wrap {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  overflow: hidden;
}
#moduleIntegrator .intg-row, #moduleMarketplaces .intg-row, .intg-dialog .intg-row {
  display: grid;
  grid-template-columns: 1fr repeat(var(--intg-cols, 4), 88px) 96px 56px;
  align-items: center;
  gap: 8px;
  padding: 11px 14px;
  border-bottom: 1px solid var(--an-border);
}
#moduleIntegrator .intg-row.intg-row--head, #moduleMarketplaces .intg-row.intg-row--head, .intg-dialog .intg-row.intg-row--head {
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  color: var(--an-text-muted);
  background: var(--an-surface2);
  position: sticky;
  top: 0;
  z-index: 1;
}
#moduleIntegrator .intg-row:last-child, #moduleMarketplaces .intg-row:last-child, .intg-dialog .intg-row:last-child {
  border-bottom: none;
}
#moduleIntegrator .intg-row:hover:not(.intg-row--head), #moduleMarketplaces .intg-row:hover:not(.intg-row--head), .intg-dialog .intg-row:hover:not(.intg-row--head) {
  background: var(--an-surface2);
}
#moduleIntegrator .intg-row__item, #moduleMarketplaces .intg-row__item, .intg-dialog .intg-row__item {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}
#moduleIntegrator .intg-row__thumb, #moduleMarketplaces .intg-row__thumb, .intg-dialog .intg-row__thumb {
  width: 34px;
  height: 34px;
  border-radius: 8px;
  object-fit: cover;
  flex-shrink: 0;
  background: var(--an-surface2);
}
#moduleIntegrator .intg-row__name, #moduleMarketplaces .intg-row__name, .intg-dialog .intg-row__name {
  font-size: 13px;
  font-weight: 600;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#moduleIntegrator .intg-row__sub, #moduleMarketplaces .intg-row__sub, .intg-dialog .intg-row__sub {
  font-size: 11px;
  color: var(--an-text-muted);
}
#moduleIntegrator .intg-cell-center, #moduleMarketplaces .intg-cell-center, .intg-dialog .intg-cell-center {
  text-align: center;
}
#moduleIntegrator .intg-avail, #moduleMarketplaces .intg-avail, .intg-dialog .intg-avail {
  width: 26px;
  height: 26px;
  border-radius: 8px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  border: 1px solid var(--an-border);
}
#moduleIntegrator .intg-avail md-icon, #moduleMarketplaces .intg-avail md-icon, .intg-dialog .intg-avail md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
}
#moduleIntegrator .intg-avail--on, #moduleMarketplaces .intg-avail--on, .intg-dialog .intg-avail--on {
  background: rgba(16, 185, 129, 0.12);
  color: var(--an-emerald);
  border-color: rgba(16, 185, 129, 0.3);
}
#moduleIntegrator .intg-avail--off, #moduleMarketplaces .intg-avail--off, .intg-dialog .intg-avail--off {
  background: rgba(236, 78, 54, 0.12);
  color: var(--an-rose);
  border-color: rgba(236, 78, 54, 0.3);
}
#moduleIntegrator .intg-avail--snoozed, #moduleMarketplaces .intg-avail--snoozed, .intg-dialog .intg-avail--snoozed {
  background: rgba(245, 158, 11, 0.14);
  color: var(--an-amber);
  border-color: rgba(245, 158, 11, 0.3);
}
#moduleIntegrator .intg-avail--na, #moduleMarketplaces .intg-avail--na, .intg-dialog .intg-avail--na {
  background: var(--an-surface2);
  color: var(--an-text-muted);
  opacity: 0.5;
  cursor: default;
}
#moduleIntegrator .intg-store-state, #moduleMarketplaces .intg-store-state, .intg-dialog .intg-store-state {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 700;
  padding: 8px 14px;
  border-radius: 10px;
}
#moduleIntegrator .intg-store-state.is-open, #moduleMarketplaces .intg-store-state.is-open, .intg-dialog .intg-store-state.is-open {
  color: var(--an-emerald);
  background: rgba(16, 185, 129, 0.12);
}
#moduleIntegrator .intg-store-state.is-closed, #moduleMarketplaces .intg-store-state.is-closed, .intg-dialog .intg-store-state.is-closed {
  color: var(--an-rose);
  background: rgba(236, 78, 54, 0.12);
}
#moduleIntegrator .intg-store-state.is-busy, #moduleMarketplaces .intg-store-state.is-busy, .intg-dialog .intg-store-state.is-busy {
  color: var(--an-amber);
  background: rgba(245, 158, 11, 0.14);
}
#moduleIntegrator .intg-store-state.is-mixed, #moduleMarketplaces .intg-store-state.is-mixed, .intg-dialog .intg-store-state.is-mixed {
  color: var(--an-text-muted);
  background: rgba(107, 114, 128, 0.12);
}
#moduleIntegrator .intg-pill-group, #moduleMarketplaces .intg-pill-group, .intg-dialog .intg-pill-group {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 12px;
}
#moduleIntegrator .intg-store-row, #moduleMarketplaces .intg-store-row, .intg-dialog .intg-store-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 0;
  border-top: 1px dashed var(--an-border);
}
#moduleIntegrator .intg-store-row:first-child, #moduleMarketplaces .intg-store-row:first-child, .intg-dialog .intg-store-row:first-child {
  border-top: none;
}
#moduleIntegrator .intg-store-row .intg-logo, #moduleMarketplaces .intg-store-row .intg-logo, .intg-dialog .intg-store-row .intg-logo {
  width: 34px;
  height: 34px;
  border-radius: 9px;
  font-size: 12px;
}
#moduleIntegrator .intg-store-row__name, #moduleMarketplaces .intg-store-row__name, .intg-dialog .intg-store-row__name {
  font-size: 13px;
  font-weight: 700;
  flex: 1;
  min-width: 0;
}
#moduleIntegrator .intg-store-row .intg-store-state, #moduleMarketplaces .intg-store-row .intg-store-state, .intg-dialog .intg-store-row .intg-store-state {
  font-size: 12px;
  padding: 5px 10px;
  gap: 5px;
}
#moduleIntegrator .intg-store-row .intg-pill-group, #moduleMarketplaces .intg-store-row .intg-pill-group, .intg-dialog .intg-store-row .intg-pill-group {
  margin-top: 0;
  flex-wrap: nowrap;
}
#moduleIntegrator .intg-store-row .intg-btn, #moduleMarketplaces .intg-store-row .intg-btn, .intg-dialog .intg-store-row .intg-btn {
  padding: 6px 9px;
}
#moduleIntegrator .intg-event, #moduleMarketplaces .intg-event, .intg-dialog .intg-event {
  display: grid;
  grid-template-columns: 22px 92px 1fr 120px 84px;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  border-bottom: 1px solid var(--an-border);
  font-size: 12px;
}
#moduleIntegrator .intg-event:last-child, #moduleMarketplaces .intg-event:last-child, .intg-dialog .intg-event:last-child {
  border-bottom: none;
}
#moduleIntegrator .intg-event__dir, #moduleMarketplaces .intg-event__dir, .intg-dialog .intg-event__dir {
  width: 22px;
  height: 22px;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
}
#moduleIntegrator .intg-event__dir md-icon, #moduleMarketplaces .intg-event__dir md-icon, .intg-dialog .intg-event__dir md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
}
#moduleIntegrator .intg-event__dir--in, #moduleMarketplaces .intg-event__dir--in, .intg-dialog .intg-event__dir--in {
  background: rgba(56, 189, 248, 0.14);
  color: var(--an-sky);
}
#moduleIntegrator .intg-event__dir--out, #moduleMarketplaces .intg-event__dir--out, .intg-dialog .intg-event__dir--out {
  background: rgba(108, 99, 255, 0.12);
  color: var(--an-violet);
}
#moduleIntegrator .intg-event__type, #moduleMarketplaces .intg-event__type, .intg-dialog .intg-event__type {
  font-weight: 600;
}
#moduleIntegrator .intg-event__when, #moduleMarketplaces .intg-event__when, .intg-dialog .intg-event__when {
  color: var(--an-text-muted);
}
#moduleIntegrator .intg-stat, #moduleMarketplaces .intg-stat, .intg-dialog .intg-stat {
  font-size: 11px;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 999px;
  width: fit-content;
}
#moduleIntegrator .intg-stat.ok, #moduleMarketplaces .intg-stat.ok, .intg-dialog .intg-stat.ok {
  color: var(--an-emerald);
  background: rgba(16, 185, 129, 0.12);
}
#moduleIntegrator .intg-stat.error, #moduleMarketplaces .intg-stat.error, .intg-dialog .intg-stat.error {
  color: var(--an-rose);
  background: rgba(236, 78, 54, 0.12);
}
#moduleIntegrator .intg-stat.retry, #moduleMarketplaces .intg-stat.retry, .intg-dialog .intg-stat.retry {
  color: var(--an-amber);
  background: rgba(245, 158, 11, 0.14);
}
#moduleIntegrator .intg-stat.pending, #moduleMarketplaces .intg-stat.pending, .intg-dialog .intg-stat.pending {
  color: var(--an-text-muted);
  background: rgba(107, 114, 128, 0.12);
}
#moduleIntegrator .intg-stat.skipped, #moduleMarketplaces .intg-stat.skipped, .intg-dialog .intg-stat.skipped {
  color: var(--an-text-muted);
  background: rgba(107, 114, 128, 0.1);
}
#moduleIntegrator .intg-loading, #moduleIntegrator .intg-empty, #moduleMarketplaces .intg-loading, #moduleMarketplaces .intg-empty, .intg-dialog .intg-loading, .intg-dialog .intg-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 48px 16px;
  text-align: center;
  color: var(--an-text-muted);
}
#moduleIntegrator .intg-loading md-icon, #moduleIntegrator .intg-empty md-icon, #moduleMarketplaces .intg-loading md-icon, #moduleMarketplaces .intg-empty md-icon, .intg-dialog .intg-loading md-icon, .intg-dialog .intg-empty md-icon {
  font-size: 42px !important;
  width: 42px;
  height: 42px;
  opacity: 0.3;
}
#moduleIntegrator .intg-loading p, #moduleIntegrator .intg-empty p, #moduleMarketplaces .intg-loading p, #moduleMarketplaces .intg-empty p, .intg-dialog .intg-loading p, .intg-dialog .intg-empty p {
  margin: 0;
  font-size: 14px;
}
#moduleIntegrator .mk-connected-section, #moduleMarketplaces .mk-connected-section, .intg-dialog .mk-connected-section {
  padding: 20px 24px 4px;
}
#moduleIntegrator .mk-connected-grid, #moduleMarketplaces .mk-connected-grid, .intg-dialog .mk-connected-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
  gap: 12px;
}
#moduleIntegrator .mk-connected-card, #moduleMarketplaces .mk-connected-card, .intg-dialog .mk-connected-card {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  border-radius: var(--an-radius);
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  box-shadow: var(--an-shadow-sm);
  transition: box-shadow 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
}
#moduleIntegrator .mk-connected-card:hover, #moduleMarketplaces .mk-connected-card:hover, .intg-dialog .mk-connected-card:hover {
  box-shadow: var(--an-shadow-md);
  border-color: var(--an-border-hover);
  transform: translateY(-1px);
}
#moduleIntegrator .mk-connected-card__logo, #moduleMarketplaces .mk-connected-card__logo, .intg-dialog .mk-connected-card__logo {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  overflow: hidden;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--an-surface2);
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text-muted);
}
#moduleIntegrator .mk-connected-card__logo img, #moduleMarketplaces .mk-connected-card__logo img, .intg-dialog .mk-connected-card__logo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#moduleIntegrator .mk-connected-card__body, #moduleMarketplaces .mk-connected-card__body, .intg-dialog .mk-connected-card__body {
  min-width: 0;
}
#moduleIntegrator .mk-connected-card__name, #moduleMarketplaces .mk-connected-card__name, .intg-dialog .mk-connected-card__name {
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#moduleIntegrator .mk-connected-card__state, #moduleMarketplaces .mk-connected-card__state, .intg-dialog .mk-connected-card__state {
  margin-top: 4px;
  font-size: 12px !important;
  padding: 4px 10px !important;
  gap: 5px !important;
}
#moduleIntegrator .mk-empty-hero, #moduleMarketplaces .mk-empty-hero, .intg-dialog .mk-empty-hero {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  max-width: 420px;
  margin: 48px auto 0;
  padding: 24px;
}
#moduleIntegrator .mk-empty-hero__icon, #moduleMarketplaces .mk-empty-hero__icon, .intg-dialog .mk-empty-hero__icon {
  width: 88px;
  height: 88px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--an-violet-soft);
  margin-bottom: 22px;
}
#moduleIntegrator .mk-empty-hero__icon md-icon, #moduleMarketplaces .mk-empty-hero__icon md-icon, .intg-dialog .mk-empty-hero__icon md-icon {
  font-size: 38px !important;
  width: 38px;
  height: 38px;
  color: var(--an-violet);
}
#moduleIntegrator .mk-empty-hero__title, #moduleMarketplaces .mk-empty-hero__title, .intg-dialog .mk-empty-hero__title {
  font-size: 19px;
  font-weight: 800;
  letter-spacing: -0.3px;
  color: var(--an-text);
  margin: 0 0 8px;
}
#moduleIntegrator .mk-empty-hero__desc, #moduleMarketplaces .mk-empty-hero__desc, .intg-dialog .mk-empty-hero__desc {
  font-size: 14px;
  color: var(--an-text-muted);
  margin: 0 0 24px;
  line-height: 1.55;
}
@media (max-width: 960px) {
  #moduleIntegrator .intg-cards-2, #moduleMarketplaces .intg-cards-2, .intg-dialog .intg-cards-2 {
    grid-template-columns: 1fr;
  }
  #moduleIntegrator .intg-header, #moduleIntegrator .intg-tabs, #moduleIntegrator .intg-body, #moduleIntegrator .mk-connected-section, #moduleMarketplaces .intg-header, #moduleMarketplaces .intg-tabs, #moduleMarketplaces .intg-body, #moduleMarketplaces .mk-connected-section, .intg-dialog .intg-header, .intg-dialog .intg-tabs, .intg-dialog .intg-body, .intg-dialog .mk-connected-section {
    padding-left: 14px;
    padding-right: 14px;
  }
}
@media (max-width: 640px) {
  #moduleIntegrator .rpt-content .intg-body, #moduleMarketplaces .rpt-content .intg-body, .intg-dialog .rpt-content .intg-body {
    padding-left: 0;
    padding-right: 0;
  }
  #moduleIntegrator .intg-tab span:not(md-icon), #moduleMarketplaces .intg-tab span:not(md-icon), .intg-dialog .intg-tab span:not(md-icon) {
    display: none;
  }
  #moduleIntegrator .intg-grid, #moduleMarketplaces .intg-grid, .intg-dialog .intg-grid {
    grid-template-columns: 1fr;
  }
  #moduleIntegrator .mk-connected-grid, #moduleMarketplaces .mk-connected-grid, .intg-dialog .mk-connected-grid {
    grid-template-columns: 1fr;
  }
  #moduleIntegrator .intg-row, #moduleIntegrator .intg-row--head, #moduleMarketplaces .intg-row, #moduleMarketplaces .intg-row--head, .intg-dialog .intg-row, .intg-dialog .intg-row--head {
    grid-template-columns: 1fr;
    gap: 6px;
  }
  #moduleIntegrator .intg-row--head, #moduleMarketplaces .intg-row--head, .intg-dialog .intg-row--head {
    display: none;
  }
  #moduleIntegrator .intg-row, #moduleMarketplaces .intg-row, .intg-dialog .intg-row {
    border: 1px solid var(--an-border);
    border-radius: 12px;
    margin-bottom: 10px;
    padding: 12px;
  }
  #moduleIntegrator .intg-channels-inline, #moduleMarketplaces .intg-channels-inline, .intg-dialog .intg-channels-inline {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
  }
  #moduleIntegrator .intg-event, #moduleMarketplaces .intg-event, .intg-dialog .intg-event {
    grid-template-columns: 22px 1fr;
    row-gap: 4px;
  }
  #moduleIntegrator .intg-event__when, #moduleIntegrator .intg-event .intg-stat, #moduleMarketplaces .intg-event__when, #moduleMarketplaces .intg-event .intg-stat, .intg-dialog .intg-event__when, .intg-dialog .intg-event .intg-stat {
    grid-column: 2;
  }
}

#moduleIntegrator, #moduleMarketplaces {
  background: var(--an-bg, #F7F7F9);
  color: var(--an-text);
  min-height: 100%;
}

.intg-dialog {
  width: 90vw;
  max-width: 460px;
}
.intg-dialog.intg-dialog--guided {
  max-width: 560px;
}
.intg-dialog .intg-dialog__logo {
  width: 32px;
  height: 32px;
  border-radius: 9px;
  margin-right: 12px;
}
.intg-dialog .intg-dialog__logo.intg-dialog__logo--text {
  font-size: 11px;
}
.intg-dialog .intg-dialog__titles {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}
.intg-dialog .intg-dialog__titles h2 {
  margin: 0;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.intg-dialog .intg-dialog__content {
  padding: 20px 24px 8px;
}
.intg-dialog .intg-dialog__note {
  margin: 0 0 14px;
}
.intg-dialog .intg-dialog__ops {
  margin-top: 8px;
}
.intg-dialog .intg-guide__intro {
  margin: 0 0 12px;
  font-size: 13.5px;
  line-height: 1.5;
  color: var(--an-text);
}
.intg-dialog .intg-guide__caps {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 18px;
}
.intg-dialog .intg-cap {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 11.5px;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 999px;
}
.intg-dialog .intg-cap md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  color: inherit;
}
.intg-dialog .intg-cap.intg-cap--on {
  color: var(--an-emerald);
  background: rgba(16, 185, 129, 0.12);
}
.intg-dialog .intg-cap.intg-cap--off {
  color: var(--an-text-muted);
  background: rgba(107, 114, 128, 0.12);
}
.intg-dialog .intg-guide__head {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--an-text-muted);
  margin: 0 0 10px;
}
.intg-dialog .intg-guide__head md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  color: inherit;
}
.intg-dialog .intg-guide__steps {
  margin: 0 0 12px;
  padding: 0 0 0 4px;
  list-style: none;
  counter-reset: intg-step;
}
.intg-dialog .intg-guide__steps li {
  position: relative;
  padding: 0 0 10px 30px;
  font-size: 13px;
  line-height: 1.5;
  color: var(--an-text);
  counter-increment: intg-step;
}
.intg-dialog .intg-guide__steps li::before {
  content: counter(intg-step);
  position: absolute;
  left: 0;
  top: 1px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 700;
  color: var(--an-primary);
  background: rgba(232, 78, 27, 0.12);
}
.intg-dialog .intg-guide__steps li:last-child {
  padding-bottom: 0;
}
.intg-dialog .intg-guide__links {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding-bottom: 18px;
  margin-bottom: 18px;
  border-bottom: 1px dashed var(--an-border);
}
.intg-dialog .intg-guide__links.intg-guide__links--top {
  padding-bottom: 14px;
  margin-bottom: 14px;
}
.intg-dialog .intg-field {
  margin-bottom: 6px;
}
.intg-dialog .intg-field md-input-container.md-block {
  margin-bottom: 0;
}
.intg-dialog .intg-field .intg-field__switch {
  margin: 4px 0 10px;
}
.intg-dialog .intg-field .intg-field__switch md-switch {
  margin: 0;
}
.intg-dialog .intg-field__hint {
  margin: -14px 0 14px;
  line-height: 1.45;
}
.intg-dialog .intg-field__hint.intg-field__hint--kept {
  display: flex;
  align-items: center;
  gap: 5px;
  color: var(--an-emerald);
}
.intg-dialog .intg-field__hint.intg-field__hint--kept md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  color: inherit;
}
.intg-dialog .intg-field__hint + .intg-field__hint--kept {
  margin-top: -8px;
}

.intg-dialog .rvc-error, .intg-dialog .rvc-note {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 10px 12px;
  border-radius: var(--an-radius-sm);
  font-size: 12.5px;
  line-height: 1.45;
  margin-bottom: 16px;
}
.intg-dialog .rvc-error md-icon, .intg-dialog .rvc-note md-icon {
  flex-shrink: 0;
  font-size: 16px;
  width: 16px;
  height: 16px;
  color: inherit;
  margin-top: 1px;
}
.intg-dialog .rvc-error {
  color: var(--an-rose);
  background: rgba(236, 78, 54, 0.1);
}
.intg-dialog .rvc-note {
  color: var(--an-primary);
  background: var(--an-primary-soft);
}
.intg-dialog .rvc-note--muted {
  color: var(--an-text-muted);
  background: var(--an-surface2);
}
.intg-dialog .rvc-linked {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  margin-bottom: 14px;
  border: 1px solid rgba(16, 185, 129, 0.35);
  border-radius: var(--an-radius-sm);
  background: rgba(16, 185, 129, 0.08);
}
.intg-dialog .rvc-linked__icon {
  flex-shrink: 0;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--an-emerald);
  background: rgba(16, 185, 129, 0.14);
}
.intg-dialog .rvc-linked__icon md-icon {
  font-size: 18px;
  width: 18px;
  height: 18px;
  color: inherit;
}
.intg-dialog .rvc-linked__body {
  min-width: 0;
}
.intg-dialog .rvc-linked__title {
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.intg-dialog .rvc-linked__sub {
  font-size: 12px;
  color: var(--an-text-muted);
  margin-top: 2px;
}
.intg-dialog .rvc-linked__sub--warn {
  color: var(--an-amber);
}
.intg-dialog .rvc-steps {
  margin-bottom: 4px;
}
.intg-dialog .rvc-hint {
  margin: -4px 0 10px;
}
.intg-dialog .rvc-search {
  display: flex;
  gap: 8px;
  align-items: stretch;
  margin-bottom: 12px;
}
.intg-dialog .rvc-search__box {
  flex: 1;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 12px;
  height: 38px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
}
.intg-dialog .rvc-search__box i {
  color: var(--an-text-muted);
  font-size: 16px;
}
.intg-dialog .rvc-search__box input {
  flex: 1;
  min-width: 0;
  border: 0;
  outline: 0;
  background: transparent;
  font: inherit;
  font-size: 13.5px;
  color: var(--an-text);
}
.intg-dialog .rvc-search__box input::placeholder {
  color: var(--an-placeholder);
}
.intg-dialog .rvc-search__box:focus-within {
  border-color: var(--an-primary);
}
.intg-dialog .rvc-search .intg-btn {
  height: 38px;
}
.intg-dialog .rvc-candidates {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 8px;
}
.intg-dialog .rvc-candidate {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 10px 12px;
  text-align: left;
  cursor: pointer;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
  color: var(--an-text);
  font: inherit;
  transition: border-color 0.15s, background 0.15s;
}
.intg-dialog .rvc-candidate:hover {
  border-color: var(--an-primary);
  background: var(--an-primary-soft);
}
.intg-dialog .rvc-candidate:hover .rvc-candidate__pick {
  opacity: 1;
}
.intg-dialog .rvc-candidate[disabled] {
  opacity: 0.5;
  cursor: default;
}
.intg-dialog .rvc-candidate__thumb {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  border-radius: 8px;
  overflow: hidden;
  background: var(--an-surface2);
}
.intg-dialog .rvc-candidate__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.intg-dialog .rvc-candidate__body {
  flex: 1;
  min-width: 0;
}
.intg-dialog .rvc-candidate__name {
  font-size: 13.5px;
  font-weight: 700;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.intg-dialog .rvc-candidate__meta {
  font-size: 12px;
  color: var(--an-text-muted);
  margin-top: 1px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.intg-dialog .rvc-candidate__meta md-icon {
  font-size: 12px;
  width: 12px;
  height: 12px;
  color: var(--an-amber);
  vertical-align: -1px;
}
.intg-dialog .rvc-candidate__pick {
  flex-shrink: 0;
  font-size: 12px;
  font-weight: 700;
  color: var(--an-primary);
  opacity: 0.75;
  transition: opacity 0.15s;
}
.intg-dialog .rvc-empty {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 14px 4px;
  font-size: 13px;
  color: var(--an-text-muted);
}
.intg-dialog .rvc-empty md-icon {
  font-size: 18px;
  width: 18px;
  height: 18px;
  color: inherit;
  opacity: 0.6;
}
.intg-dialog .rvc-google-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 0 18px 0 14px;
  height: 42px;
  cursor: pointer;
  border: 1px solid var(--an-border-strong, var(--an-border));
  border-radius: 999px;
  background: var(--an-surface);
  color: var(--an-text);
  font: inherit;
  font-size: 14px;
  font-weight: 600;
  box-shadow: var(--an-shadow-sm);
  transition: box-shadow 0.15s, border-color 0.15s;
}
.intg-dialog .rvc-google-btn md-icon {
  font-size: 20px;
  width: 20px;
  height: 20px;
  color: #4285F4;
}
.intg-dialog .rvc-google-btn md-progress-circular {
  width: 18px !important;
  height: 18px !important;
}
.intg-dialog .rvc-google-btn:hover {
  box-shadow: var(--an-shadow-md);
  border-color: var(--an-border-hover);
}
.intg-dialog .rvc-google-btn[disabled] {
  opacity: 0.6;
  cursor: default;
  box-shadow: none;
}
.intg-dialog .intg-guide__links--bottom {
  border-bottom: 0;
  margin-bottom: 0;
  padding-bottom: 4px;
  padding-top: 8px;
  border-top: 1px dashed var(--an-border);
}

#moduleReviewPortalConnect .intg-guide__links:not(.intg-guide__links--bottom) {
  border-bottom: 0;
  padding-bottom: 6px;
  margin-bottom: 6px;
}

@keyframes aiPulseGlow {
  0%, 100% {
    box-shadow: 0 8px 32px rgba(236, 78, 54, 0.25), 0 2px 8px rgba(236, 78, 54, 0.15);
  }
  50% {
    box-shadow: 0 8px 40px rgba(236, 78, 54, 0.35), 0 2px 12px rgba(236, 78, 54, 0.2);
  }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes aiFadeInUp {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes aiCursorBlink {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
}
@keyframes aiPulseIcon {
  0%, 100% {
    opacity: 0.6;
    transform: scale(1);
  }
  50% {
    opacity: 1;
    transform: scale(1.1);
  }
}
@keyframes aiShimmer {
  0% {
    background-position: 100% 0;
  }
  100% {
    background-position: -100% 0;
  }
}
@keyframes aiThinkBounce {
  0%, 60%, 100% {
    transform: translateY(0);
    opacity: 0.3;
  }
  30% {
    transform: translateY(-4px);
    opacity: 1;
  }
}
@keyframes aiMiniWave {
  0%, 100% {
    height: 4px;
  }
  50% {
    height: 10px;
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes miseHubFadeIn {
  from {
    opacity: 0;
    transform: scale(0.96);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes miseAgentPulse {
  0%, 100% {
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
  }
  50% {
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.14);
  }
}
@keyframes miseAgentIconFloat {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-3px);
  }
}
.ai-assistant-container {
  height: 100%;
  display: flex;
  flex-direction: column;
  background: #fdfdfd;
  background-image: radial-gradient(at 0% 0%, rgba(236, 78, 54, 0.05) 0px, transparent 50%), radial-gradient(at 100% 100%, rgba(236, 120, 54, 0.05) 0px, transparent 50%);
  color: #0f172a;
  font-family: "Open Sans", -apple-system, sans-serif;
  position: relative;
  overflow: hidden;
}

.ai-body-row {
  flex: 1;
  display: flex;
  flex-direction: row;
  min-height: 0;
  overflow: hidden;
}

.ai-main-col {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 0;
  position: relative;
}

.ai-welcome-state {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  padding: 40px 24px;
  max-width: 720px;
  margin: 0 auto;
  width: 100%;
  animation: aiFadeInUp 0.6s ease;
  scrollbar-width: none;
}
.ai-welcome-state::-webkit-scrollbar {
  display: none;
}
.ai-welcome-state > * {
  flex-shrink: 0;
}
.ai-welcome-state > :first-child {
  margin-top: auto;
}
.ai-welcome-state > :last-child {
  margin-bottom: auto;
}

.ai-brand-badge {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  border-radius: 18px;
  background: linear-gradient(135deg, #ec4e36 0%, #f06543 50%, #eb8258 100%);
  box-shadow: 0 8px 32px rgba(236, 78, 54, 0.25), 0 2px 8px rgba(236, 78, 54, 0.15);
  margin-bottom: 24px;
  animation: aiPulseGlow 3s ease-in-out infinite;
}
.ai-brand-badge i {
  font-size: 28px;
  color: white;
}

.ai-greeting-text {
  font-size: 28px;
  font-weight: 600;
  text-align: center;
  color: #1a1a2e;
  margin-bottom: 8px;
  letter-spacing: -0.3px;
}

.ai-greeting-sub {
  font-size: 15px;
  color: #6b7280;
  text-align: center;
  margin-bottom: 36px;
  transition: opacity 0.3s ease;
}
.ai-greeting-sub.ai-greeting-fading {
  opacity: 0;
}

.ai-suggestions {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  width: 100%;
  max-width: 560px;
  margin-bottom: 36px;
}

.ai-suggestion-card {
  background: white !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 14px !important;
  padding: 14px 16px !important;
  text-align: left !important;
  text-transform: none !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #374151 !important;
  line-height: 1.4 !important;
  height: auto !important;
  min-height: 40px !important;
  margin: 0 !important;
  transition: all 0.2s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
  cursor: pointer;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  overflow: visible !important;
  white-space: normal !important;
}
.ai-suggestion-card span {
  overflow: visible !important;
  white-space: normal !important;
  text-overflow: unset !important;
  word-break: break-word;
}
.ai-suggestion-card:hover {
  border-color: #ec4e36 !important;
  background: #fef7f5 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(236, 78, 54, 0.1) !important;
}
.ai-suggestion-card.ng-enter, .ai-suggestion-card.ng-leave {
  transition: none !important;
}
.ai-suggestion-card .ai-sg-icon {
  width: 32px;
  height: 32px;
  min-width: 32px;
  border-radius: 8px;
  background: linear-gradient(135deg, #fef1ee, #fde8e4);
  display: flex;
  align-items: center;
  justify-content: center;
}
.ai-suggestion-card .ai-sg-icon i {
  font-size: 16px;
  color: #ec4e36;
}

.ai-greeting-action {
  width: 100%;
  max-width: 560px;
  margin-bottom: 12px;
  animation: fadeInUp 0.4s ease-out;
}

.ai-greeting-suggestion {
  width: 100% !important;
  background: linear-gradient(135deg, #fffbfa, #fef1ee) !important;
  border: 1px solid #f5c6bc !important;
}
.ai-greeting-suggestion .ai-sg-icon {
  background: linear-gradient(135deg, #ec4e36, #e8573e) !important;
}
.ai-greeting-suggestion .ai-sg-icon i {
  color: white !important;
}

.ai-greeting-slideshow {
  width: 100%;
  max-width: 560px;
  margin-bottom: 12px;
  animation: fadeInUp 0.4s ease-out;
}

.ai-slideshow-track {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
}
.ai-slideshow-track .ai-suggestion-card {
  flex: 1;
  min-width: 0;
}

.ai-slide-arrow {
  min-width: 36px !important;
  width: 36px !important;
  height: 36px !important;
  border-radius: 50% !important;
  padding: 0 !important;
  margin: 0 !important;
  background: white !important;
  border: 1px solid #e5e7eb !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.2s ease !important;
  flex-shrink: 0;
}
.ai-slide-arrow:hover {
  background: #f9fafb !important;
  border-color: #d1d5db !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12) !important;
}
.ai-slide-arrow i {
  font-size: 20px !important;
  color: #6b7280 !important;
}

.ai-slide-dots {
  display: flex;
  justify-content: center;
  gap: 6px;
  margin-top: 10px;
}

.ai-slide-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #d1d5db;
  cursor: pointer;
  transition: all 0.25s ease;
}
.ai-slide-dot:hover {
  background: #9ca3af;
}
.ai-slide-dot.active {
  background: #ec4e36;
  transform: scale(1.2);
}

.ai-input-zone {
  flex-shrink: 0;
  padding: 16px 24px 24px;
  background: transparent;
}

.ai-input-pill {
  max-width: 720px;
  margin: 0 auto;
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(223, 225, 230, 0.8);
  border-radius: 32px;
  padding: 8px 8px 8px 24px;
  display: flex;
  align-items: flex-end;
  gap: 8px;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.08), 0 2px 6px rgba(0, 0, 0, 0.04);
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}
.ai-input-pill:focus-within {
  background: rgb(255, 255, 255);
  border-color: #ec4e36;
  box-shadow: 0 16px 40px rgba(236, 78, 54, 0.15), 0 4px 12px rgba(0, 0, 0, 0.06);
  transform: translateY(-2px);
}

.ai-input-field {
  flex: 1;
  border: none;
  background: transparent;
  color: #1a1a2e;
  resize: none;
  padding: 12px 0;
  font-size: 15px;
  line-height: 1.5;
  outline: none;
  min-height: 24px;
  max-height: 180px;
  font-family: inherit;
}
.ai-input-field::placeholder {
  color: #9ca3af;
  font-weight: 400;
}

.ai-send-btn {
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  border-radius: 24px !important;
  background: linear-gradient(135deg, #ec4e36, #f06543) !important;
  color: white !important;
  margin: 0 !important;
  padding: 0 !important;
  box-shadow: 0 4px 12px rgba(236, 78, 54, 0.35) !important;
  transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.ai-send-btn:hover:not([disabled]) {
  transform: scale(1.08) !important;
  box-shadow: 0 6px 20px rgba(236, 78, 54, 0.45) !important;
  background: linear-gradient(135deg, #f06543, #f57e62) !important;
}
.ai-send-btn[disabled] {
  background: #e5e7eb !important;
  color: #9ca3af !important;
  box-shadow: none !important;
}
.waitry-dark-theme .ai-send-btn[disabled] {
  background: #334155 !important;
}

.ai-stop-btn {
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  border-radius: 24px !important;
  background: #374151 !important;
  color: white !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.ai-clear-btn {
  color: #9ca3af !important;
  min-width: 36px !important;
  width: 36px !important;
  height: 36px !important;
  border-radius: 10px !important;
}
.ai-clear-btn:hover {
  background: rgba(236, 78, 54, 0.06) !important;
  color: #ec4e36 !important;
}

.ai-header-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 16px;
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid #f1f5f9;
  z-index: 10;
  min-height: 48px;
}

.ai-header-left,
.ai-header-right {
  display: flex;
  align-items: center;
  gap: 4px;
}

.ai-header-title {
  font-family: "Outfit", sans-serif;
  font-size: 13px;
  font-weight: 600;
  color: #6b7280;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 280px;
}

.ai-header-btn {
  color: #6b7280 !important;
  min-width: auto !important;
  height: 34px !important;
  border-radius: 8px !important;
  margin: 0 !important;
  padding: 0 10px !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  line-height: 34px !important;
}
.ai-header-btn i {
  font-size: 16px !important;
  margin-right: 4px !important;
  vertical-align: middle !important;
}
.ai-header-btn:hover {
  background: rgba(236, 78, 54, 0.06) !important;
  color: #ec4e36 !important;
}
.ai-header-btn.active {
  color: #ec4e36 !important;
  background: rgba(236, 78, 54, 0.08) !important;
}

.ai-sound-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  background: none;
  border: none;
  border-radius: 24px;
  height: 44px;
  padding: 0 10px;
  cursor: pointer;
  color: #9ca3af;
  transition: all 0.2s ease;
  outline: none;
  font-size: 0;
}
.ai-sound-toggle i {
  font-size: 20px !important;
  color: inherit;
}
.ai-sound-toggle:hover {
  background: #f3f4f6;
  color: #ec4e36;
}

.ai-sound-waves {
  display: flex;
  align-items: center;
  gap: 1.5px;
  height: 12px;
}
.ai-sound-waves span {
  display: block;
  width: 1.5px;
  background: #ec4e36;
  border-radius: 1px;
  animation: aiMiniWave 0.8s ease-in-out infinite;
}
.ai-sound-waves span:nth-child(1) {
  animation-delay: 0s;
}
.ai-sound-waves span:nth-child(2) {
  animation-delay: 0.2s;
}
.ai-sound-waves span:nth-child(3) {
  animation-delay: 0.4s;
}

.ai-sound-stop {
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  width: 44px;
  height: 44px;
  border-radius: 24px;
  padding: 0;
  cursor: pointer;
  color: #9ca3af;
  transition: all 0.2s ease;
  outline: none;
}
.ai-sound-stop i {
  font-size: 20px !important;
}
.ai-sound-stop:hover {
  background: #f3f4f6;
  color: #ec4e36;
}

.ai-history-sidebar {
  width: 280px;
  min-width: 280px;
  background: #fafafa;
  display: flex;
  flex-direction: column;
  border-right: 1px solid #e5e7eb;
  transition: margin-left 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease;
  overflow: hidden;
  z-index: 20;
}
.ai-history-sidebar.collapsed {
  margin-left: -280px;
  opacity: 0;
  pointer-events: none;
}

.ai-sidebar-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 12px 8px 16px;
  border-bottom: 1px solid #e5e7eb;
}

.ai-sidebar-title {
  font-family: "Outfit", sans-serif;
  font-size: 13px;
  font-weight: 600;
  color: #9ca3af;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.ai-sidebar-actions {
  display: flex;
  align-items: center;
  gap: 2px;
}

.ai-sidebar-btn {
  color: #9ca3af !important;
  min-width: 32px !important;
  width: 32px !important;
  height: 32px !important;
  border-radius: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
}
.ai-sidebar-btn:hover {
  color: #374151 !important;
  background: rgba(0, 0, 0, 0.04) !important;
}
.ai-sidebar-btn i {
  font-size: 18px !important;
}

.ai-sidebar-scroll {
  flex: 1;
  overflow-y: auto;
  padding: 8px 0;
}
.ai-sidebar-scroll::-webkit-scrollbar {
  width: 4px;
}
.ai-sidebar-scroll::-webkit-scrollbar-track {
  background: transparent;
}
.ai-sidebar-scroll::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.1);
  border-radius: 4px;
}

.ai-history-header {
  padding: 12px 16px 6px;
  font-family: "Outfit", sans-serif;
  font-size: 11px;
  font-weight: 600;
  color: #9ca3af;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.ai-history-empty {
  padding: 40px 16px;
  text-align: center;
  color: #9ca3af;
  font-size: 13px;
}
.ai-history-empty i {
  font-size: 36px;
  color: #d1d5db;
  display: block;
  margin-bottom: 10px;
}

.ai-history-item {
  display: flex;
  align-items: center;
  padding: 10px 12px 10px 16px;
  cursor: pointer;
  transition: all 0.15s ease;
  gap: 10px;
  border-radius: 8px;
  margin: 1px 8px;
}
.ai-history-item:hover {
  background: rgba(0, 0, 0, 0.04);
}
.ai-history-item:hover .ai-history-delete {
  opacity: 1;
}
.ai-history-item.active {
  background: rgba(236, 78, 54, 0.08);
}
.ai-history-item.active .ai-history-icon {
  background: rgba(236, 78, 54, 0.12);
}
.ai-history-item.active .ai-history-icon i {
  color: #ec4e36;
}

.ai-history-icon {
  width: 28px;
  height: 28px;
  min-width: 28px;
  border-radius: 8px;
  background: #f3f4f6;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ai-history-icon i {
  font-size: 14px;
  color: #9ca3af;
}

.ai-history-info {
  flex: 1;
  min-width: 0;
}

.ai-history-title {
  font-size: 13px;
  font-weight: 500;
  color: #374151;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ai-history-meta {
  font-size: 11px;
  color: #9ca3af;
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 2px;
}

.ai-history-delete {
  color: #d1d5db !important;
  min-width: 26px !important;
  width: 26px !important;
  height: 26px !important;
  border-radius: 6px !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0;
  transition: opacity 0.15s ease;
}
.ai-history-delete:hover {
  color: #ef4444 !important;
  background: rgba(239, 68, 68, 0.08) !important;
}

.ai-history-loading {
  padding: 20px;
  text-align: center;
  color: #9ca3af;
}

.ai-sidebar-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.4);
  z-index: 19;
}

.ai-chat-scroll {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
  scroll-behavior: smooth;
  padding: 16px 0 0;
}
.ai-chat-scroll::-webkit-scrollbar {
  width: 4px;
}
.ai-chat-scroll::-webkit-scrollbar-track {
  background: transparent;
}
.ai-chat-scroll::-webkit-scrollbar-thumb {
  background: #d1d5db;
  border-radius: 4px;
}

.ai-msg-list {
  max-width: 720px;
  margin: 0 auto;
  padding: 0 24px 100px;
}

.ai-msg {
  margin-bottom: 8px;
  animation: aiFadeInUp 0.35s ease;
}
.ai-msg + .ai-msg:not(.ai-msg--same) {
  margin-top: 20px;
}

.ai-msg--user {
  display: flex;
  justify-content: flex-end;
}

.ai-bubble-user {
  background: linear-gradient(135deg, #ec4e36, #f06543);
  color: white;
  padding: 14px 20px;
  border-radius: 24px 24px 6px 24px;
  max-width: 80%;
  font-size: 15px;
  line-height: 1.5;
  word-wrap: break-word;
  box-shadow: 0 6px 16px rgba(236, 78, 54, 0.25);
  font-weight: 500;
  letter-spacing: -0.01em;
}

.ai-msg--assistant {
  display: flex;
  gap: 10px;
  align-items: flex-start;
}
.ai-msg--assistant:hover .ai-bubble-assistant {
  transform: translateY(-2px);
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.06), 0 8px 10px -6px rgba(0, 0, 0, 0.03);
}

.ai-avatar {
  width: 28px;
  height: 28px;
  min-width: 28px;
  border-radius: 9px;
  background: linear-gradient(135deg, #ec4e36, #f06543);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 2px;
  box-shadow: 0 2px 6px rgba(236, 78, 54, 0.2);
}
.ai-avatar i {
  font-size: 15px;
  color: white;
}
.ai-avatar .ai-avatar-sparkle-svg {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  overflow: visible;
}
.ai-avatar .ai-avatar-sparkle-svg svg {
  width: 100%;
  height: 100%;
  overflow: visible;
}
.ai-avatar .ai-avatar-sparkle-svg .sparkle-main, .ai-avatar .ai-avatar-sparkle-svg .sparkle-small-1, .ai-avatar .ai-avatar-sparkle-svg .sparkle-small-2 {
  fill: #ffffff !important;
}
.ai-avatar .ai-avatar-sparkle-svg .mise-glow-ring {
  stroke: rgba(255, 255, 255, 0.5) !important;
  stroke-width: 1.5;
}

.ai-bubble-assistant {
  flex: 1;
  font-size: 15.5px;
  line-height: 1.6;
  color: #1e293b;
  background: #ffffff;
  padding: 20px 24px;
  border-radius: 24px;
  box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.05), 0 0 3px rgba(0, 0, 0, 0.02);
  min-width: 0;
  position: relative;
  transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
  border: 1px solid rgba(241, 245, 249, 0.8);
}
.ai-bubble-assistant strong, .ai-bubble-assistant h1, .ai-bubble-assistant h2, .ai-bubble-assistant h3 {
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  color: #0f172a;
  letter-spacing: -0.01em;
}
.ai-bubble-assistant strong {
  font-weight: 700;
  color: #0f172a;
  letter-spacing: -0.01em;
}
.ai-bubble-assistant.is-streaming::after {
  content: "";
  display: inline-block;
  width: 7px;
  height: 16px;
  background: #ec4e36;
  border-radius: 2px;
  margin-left: 2px;
  vertical-align: text-bottom;
  animation: aiCursorBlink 0.8s steps(2) infinite;
}
.ai-bubble-assistant.is-error {
  color: #dc2626;
}
.ai-bubble-assistant p {
  margin: 0 0 12px;
}
.ai-bubble-assistant p:last-child {
  margin-bottom: 0;
}
.ai-bubble-assistant ul, .ai-bubble-assistant ol {
  margin: 8px 0 12px;
  padding-left: 20px;
}
.ai-bubble-assistant li {
  margin-bottom: 4px;
}
.ai-bubble-assistant code {
  background: #f3f4f6;
  color: #e11d48;
  padding: 2px 6px;
  border-radius: 4px;
  font-size: 13px;
  font-family: "JetBrains Mono", "Fira Code", monospace;
}
.ai-bubble-assistant pre {
  background: #1e1e2e;
  color: #cdd6f4;
  border-radius: 10px;
  padding: 14px 16px;
  margin: 12px 0;
  overflow-x: auto;
  font-size: 13px;
  line-height: 1.5;
}
.ai-bubble-assistant pre code {
  background: none;
  color: inherit;
  padding: 0;
  font-size: inherit;
}
.ai-bubble-assistant table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  margin: 24px 0;
  font-size: 14px;
  border: none;
  background: transparent;
}
.ai-bubble-assistant th, .ai-bubble-assistant td {
  padding: 16px 0;
  text-align: left;
  border-bottom: 1px solid #f1f5f9;
}
.ai-bubble-assistant th {
  background: transparent;
  font-family: "Outfit", sans-serif;
  font-weight: 700;
  color: #64748b;
  text-transform: uppercase;
  font-size: 11px;
  letter-spacing: 0.1em;
  border-bottom: 2px solid #f1f5f9;
}
.ai-bubble-assistant tr:hover td {
  color: #0f172a;
  background: rgba(248, 250, 252, 0.5);
}
.ai-bubble-assistant tr:last-child td {
  border-bottom: none;
}
.ai-bubble-assistant td img {
  display: inline-block;
  max-width: 48px;
  max-height: 48px;
  width: 48px;
  height: 48px;
  object-fit: cover;
  border-radius: 8px;
  margin: 0;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
  border: 1px solid rgba(0, 0, 0, 0.06);
  vertical-align: middle;
}
.ai-bubble-assistant blockquote {
  border-left: 3px solid #ec4e36;
  margin: 14px 0;
  padding: 10px 16px;
  background: linear-gradient(135deg, #fef7f5 0%, #fff5f3 100%);
  border-radius: 0 10px 10px 0;
  color: #6b7280;
  font-style: normal;
}
.ai-bubble-assistant blockquote p {
  margin: 0;
}
.ai-bubble-assistant h1, .ai-bubble-assistant h2, .ai-bubble-assistant h3 {
  margin: 20px 0 8px;
  color: #0f172a;
  font-family: "Outfit", sans-serif;
}
.ai-bubble-assistant h1:first-child, .ai-bubble-assistant h2:first-child, .ai-bubble-assistant h3:first-child {
  margin-top: 0;
}
.ai-bubble-assistant h1 {
  font-size: 18px;
}
.ai-bubble-assistant h2 {
  font-size: 16px;
}
.ai-bubble-assistant h3 {
  font-size: 15px;
}
.ai-bubble-assistant hr {
  border: none;
  height: 1px;
  background: linear-gradient(90deg, transparent, #e2e8f0 20%, #e2e8f0 80%, transparent);
  margin: 20px 0;
}
.ai-bubble-assistant a {
  color: #ec4e36;
  text-decoration: none;
  font-weight: 500;
  border-bottom: 1px solid transparent;
  transition: border-color 0.2s;
}
.ai-bubble-assistant a:hover {
  border-bottom-color: #ec4e36;
}
.ai-bubble-assistant a:has(img) {
  border-bottom: none !important;
}
.ai-bubble-assistant img {
  display: block;
  max-width: min(100%, 320px);
  max-height: 240px;
  width: auto;
  height: auto;
  object-fit: cover;
  border-radius: 12px;
  margin: 14px 0;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08), 0 1px 2px rgba(0, 0, 0, 0.04);
  border: 1px solid rgba(0, 0, 0, 0.06);
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  cursor: pointer;
}
.ai-bubble-assistant img:hover {
  transform: scale(1.02);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12), 0 2px 6px rgba(0, 0, 0, 0.06);
  border-color: rgba(236, 78, 54, 0.2);
}
.ai-bubble-assistant p > img + img,
.ai-bubble-assistant p > a > img {
  margin-top: 8px;
}

.ai-thinking {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  margin-bottom: 8px;
  animation: aiFadeInUp 0.3s ease;
}

.ai-thinking-content {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 10px 0;
}

.ai-thinking-status {
  font-size: 13.5px;
  font-weight: 500;
  color: #6b7280;
  display: flex;
  align-items: center;
  gap: 8px;
  animation: aiFadeInUp 0.25s ease;
}
.ai-thinking-status .ai-status-icon {
  font-size: 16px;
  color: #ec4e36;
  animation: aiPulseIcon 1.5s ease-in-out infinite;
}
.ai-thinking-status .ai-status-text {
  background: linear-gradient(90deg, #6b7280 30%, #9ca3af 50%, #6b7280 70%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: aiShimmer 2s linear infinite;
}

.ai-thinking-dots {
  display: flex;
  gap: 4px;
  padding: 14px 4px;
}
.ai-thinking-dots span {
  width: 6px;
  height: 6px;
  background: #ec4e36;
  border-radius: 50%;
  animation: aiThinkBounce 1.4s ease-in-out infinite;
}
.ai-thinking-dots span:nth-child(2) {
  animation-delay: 0.15s;
}
.ai-thinking-dots span:nth-child(3) {
  animation-delay: 0.3s;
}

.ai-chart-container {
  position: relative;
  width: 100%;
  max-width: 520px;
  min-height: 200px;
  margin: 16px 0;
  padding: 16px;
  background: #ffffff;
  border: 1px solid #f1f5f9;
  border-radius: 12px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
  overflow: hidden;
}
.ai-chart-container canvas {
  width: 100% !important;
  height: auto !important;
  min-height: 180px;
  max-height: 320px;
}

.ai-chart-title {
  font-family: "Outfit", sans-serif;
  font-size: 13px;
  font-weight: 600;
  color: #374151;
  margin-bottom: 12px;
  text-align: center;
}

.material-icons {
  font-family: "Material Icons" !important;
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: "liga";
  font-feature-settings: "liga";
  -webkit-font-smoothing: antialiased;
}

.ai-followups {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 12px 16px;
  margin-top: 8px;
  justify-content: flex-start;
  animation: fadeIn 0.3s ease-out;
}

.ai-followup-pill {
  background: #fff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 20px !important;
  padding: 6px 14px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #4b5563 !important;
  text-transform: none !important;
  line-height: 1.3 !important;
  margin: 0 !important;
  min-height: 32px !important;
  height: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  cursor: pointer;
  transition: all 0.2s ease !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
}
.ai-followup-pill:hover {
  border-color: #ec4e36 !important;
  color: #ec4e36 !important;
  background: #fef7f5 !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(236, 78, 54, 0.08) !important;
}
.ai-followup-pill:hover i {
  color: #ec4e36;
}
.ai-followup-pill i {
  font-size: 14px;
  color: #9ca3af;
  transition: color 0.2s ease;
}

.ai-metrics-strip {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  gap: 10px;
  margin: 12px 0;
}

.ai-metrics-card {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 10px;
  padding: 12px 14px;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.ai-metrics-label {
  font-size: 10px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
}

.ai-metrics-value {
  font-size: 22px;
  font-weight: 800;
  letter-spacing: -0.5px;
  color: var(--an-text);
}

.ai-metrics-delta {
  display: inline-flex;
  align-items: center;
  font-size: 11px;
  font-weight: 700;
  padding: 2px 6px;
  border-radius: 6px;
  width: fit-content;
}
.ai-metrics-delta--up {
  color: var(--an-emerald);
  background: rgba(16, 185, 129, 0.1);
}
.ai-metrics-delta--down {
  color: #f43f5e;
  background: rgba(244, 63, 94, 0.1);
}
.ai-metrics-delta--flat {
  color: var(--an-text-muted);
  background: var(--an-surface2);
}

.ai-ranking-list {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin: 12px 0;
}

.ai-ranking-row {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 12px;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 10px;
}
.ai-ranking-row:first-child .ai-ranking-rank {
  color: var(--an-rose);
}

.ai-ranking-rank {
  font-size: 11px;
  font-weight: 800;
  color: var(--an-text-muted);
  width: 18px;
  text-align: center;
  flex-shrink: 0;
}

.ai-ranking-name {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ai-ranking-track {
  width: 80px;
  height: 5px;
  background: var(--an-surface2);
  border-radius: 3px;
  flex-shrink: 0;
}

.ai-ranking-fill {
  height: 100%;
  background: linear-gradient(90deg, var(--an-rose), var(--an-orange));
  border-radius: 3px;
}

.ai-ranking-qty {
  font-size: 11px;
  font-weight: 700;
  color: var(--an-text);
  width: 32px;
  text-align: right;
  flex-shrink: 0;
}

.ai-ranking-revenue {
  font-size: 11px;
  color: var(--an-text-muted);
  width: 60px;
  text-align: right;
  flex-shrink: 0;
}

.ai-product-cards {
  display: flex;
  gap: 10px;
  overflow-x: auto;
  padding: 12px 0 4px;
  margin: 0 -4px;
  scrollbar-width: thin;
  scrollbar-color: var(--an-surface2) transparent;
}

.ai-product-card {
  min-width: 140px;
  max-width: 160px;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 12px;
  overflow: hidden;
  flex-shrink: 0;
}

.ai-product-card-img {
  width: 100%;
  height: 90px;
  object-fit: cover;
  background: var(--an-surface2);
  display: block;
}

.ai-product-card-body {
  padding: 10px 12px;
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.ai-product-card-name {
  font-size: 12px;
  font-weight: 700;
  color: var(--an-text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ai-product-card-price {
  font-size: 13px;
  font-weight: 800;
  color: var(--an-rose);
}

.ai-product-card-category {
  font-size: 10px;
  color: var(--an-text-muted);
}

.ai-product-card-badge {
  display: inline-flex;
  font-size: 10px;
  font-weight: 600;
  padding: 2px 6px;
  background: var(--an-surface2);
  border-radius: 6px;
  width: fit-content;
}

.ai-actions-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 12px 0;
}

.ai-action-card {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 12px;
  cursor: pointer;
  transition: all 0.15s ease;
  text-decoration: none;
  color: var(--an-text);
}
.ai-action-card:hover {
  border-color: var(--an-rose);
  background: rgba(236, 78, 54, 0.04);
  transform: translateY(-1px);
}
.ai-action-card i, .ai-action-card .ai-action-icon {
  font-size: 18px;
  color: var(--an-rose);
}

.ai-action-card-label {
  font-size: 13px;
  font-weight: 600;
}

.ai-onboarding {
  margin: 12px 0;
  padding: 14px;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 12px;
}

.ai-onboarding__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
}

.ai-onboarding__title {
  font-size: 10px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
}

.ai-onboarding__pct {
  font-size: 18px;
  font-weight: 800;
  letter-spacing: -0.5px;
  color: var(--an-text);
}

.ai-onboarding__track {
  height: 6px;
  background: var(--an-surface2);
  border-radius: 3px;
  overflow: hidden;
  margin-bottom: 12px;
}

.ai-onboarding__fill {
  height: 100%;
  background: linear-gradient(90deg, var(--an-rose), var(--an-orange));
  border-radius: 3px;
  transition: width 0.3s ease;
}

.ai-onboarding__steps {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.ai-onboarding__step {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 7px 8px;
  border-radius: 8px;
  border: 1px solid transparent;
}

.ai-onboarding__step-icon {
  font-size: 16px;
  flex-shrink: 0;
  color: var(--an-text-faint);
}

.ai-onboarding__step-label {
  font-size: 13px;
  font-weight: 500;
  color: var(--an-text);
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ai-onboarding__step--done .ai-onboarding__step-icon {
  color: var(--an-emerald);
}
.ai-onboarding__step--done .ai-onboarding__step-label {
  color: var(--an-text-muted);
  text-decoration: line-through;
  text-decoration-thickness: 1px;
}

.ai-onboarding__step--current {
  background: rgba(236, 78, 54, 0.05);
  border-color: rgba(236, 78, 54, 0.22);
}
.ai-onboarding__step--current .ai-onboarding__step-icon {
  color: var(--an-rose);
}
.ai-onboarding__step--current .ai-onboarding__step-label {
  font-weight: 700;
}

.ai-onboarding__cta {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  flex-shrink: 0;
  padding: 5px 10px;
  border: 1px solid var(--an-border);
  border-radius: 8px;
  background: var(--an-bg);
  color: var(--an-text);
  font-family: inherit;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.15s ease;
}
.ai-onboarding__cta i {
  font-size: 13px;
}
.ai-onboarding__cta:hover {
  border-color: var(--an-rose);
  background: rgba(236, 78, 54, 0.06);
  color: var(--an-rose);
}
.ai-onboarding__cta:focus-visible {
  outline: 2px solid var(--an-rose);
  outline-offset: 1px;
}

.ai-onboarding__step--current .ai-onboarding__cta {
  background: linear-gradient(135deg, var(--an-rose), var(--an-orange));
  border-color: transparent;
  color: #fff;
}
.ai-onboarding__step--current .ai-onboarding__cta:hover {
  color: #fff;
  background: linear-gradient(135deg, var(--an-rose), var(--an-orange));
  border-color: transparent;
  filter: brightness(1.06);
}
.ai-onboarding__step--current .ai-onboarding__cta i {
  color: #fff;
}

.ai-setup-chip {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
  margin: 12px 16px 4px;
  padding: 8px 12px;
  border-radius: 10px;
  background: rgba(129, 140, 248, 0.1);
  border: 1px solid rgba(129, 140, 248, 0.28);
}

.ai-setup-chip__icon {
  font-size: 16px;
  --an-icon-size: 16px;
  flex-shrink: 0;
  color: #818CF8;
}

.ai-setup-chip__text {
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text);
  line-height: 1.35;
}

.waitry-dark-theme .ai-assistant-container {
  background: #0f111a !important;
  background-image: radial-gradient(at 0% 0%, rgba(236, 78, 54, 0.1) 0px, transparent 50%), radial-gradient(at 100% 100%, rgba(236, 120, 54, 0.08) 0px, transparent 50%) !important;
  color: #e2e8f0 !important;
}
.waitry-dark-theme .ai-greeting-text {
  color: #f8fafc !important;
}
.waitry-dark-theme .ai-greeting-sub {
  color: #94a3b8 !important;
}
.waitry-dark-theme .ai-suggestion-card {
  background: #1e293b !important;
  border-color: #334155 !important;
  color: #cbd5e1 !important;
}
.waitry-dark-theme .ai-suggestion-card:hover {
  background: #334155 !important;
  border-color: #f06543 !important;
  color: #ffffff !important;
  box-shadow: 0 6px 20px rgba(236, 78, 54, 0.2) !important;
}
.waitry-dark-theme .ai-suggestion-card .ai-sg-icon {
  background: rgba(236, 78, 54, 0.15) !important;
}
.waitry-dark-theme .ai-suggestion-card .ai-sg-icon i {
  color: #f06543 !important;
}
.waitry-dark-theme .ai-greeting-suggestion {
  background: linear-gradient(135deg, #2a1b1b, #1f1414) !important;
  border-color: #ef4444 !important;
}
.waitry-dark-theme .ai-slide-arrow {
  background: #1e293b !important;
  border-color: #334155 !important;
}
.waitry-dark-theme .ai-slide-arrow:hover {
  background: #334155 !important;
  border-color: #475569 !important;
}
.waitry-dark-theme .ai-slide-arrow i {
  color: #94a3b8 !important;
}
.waitry-dark-theme .ai-slide-dot {
  background: #475569 !important;
}
.waitry-dark-theme .ai-slide-dot.active {
  background: #f06543 !important;
}
.waitry-dark-theme .ai-input-pill {
  background: rgba(30, 41, 59, 0.85) !important;
  border-color: rgba(71, 85, 105, 0.8) !important;
}
.waitry-dark-theme .ai-input-pill:focus-within {
  background: rgb(30, 41, 59) !important;
  border-color: #f06543 !important;
  box-shadow: 0 16px 40px rgba(236, 78, 54, 0.25), 0 4px 12px rgba(0, 0, 0, 0.3) !important;
}
.waitry-dark-theme .ai-input-field {
  color: #f8fafc !important;
}
.waitry-dark-theme .ai-input-field::placeholder {
  color: #64748b !important;
}
.waitry-dark-theme .ai-header-bar {
  background: rgba(26, 29, 39, 0.85) !important;
  border-bottom-color: #2e3348 !important;
}
.waitry-dark-theme .ai-header-title {
  color: #94a3b8 !important;
}
.waitry-dark-theme .ai-header-btn {
  color: #94a3b8 !important;
}
.waitry-dark-theme .ai-header-btn:hover {
  background: rgba(236, 78, 54, 0.15) !important;
  color: #f06543 !important;
}
.waitry-dark-theme .ai-header-btn.active {
  color: #f06543 !important;
  background: rgba(236, 78, 54, 0.18) !important;
}
.waitry-dark-theme .ai-history-sidebar {
  background: #13151f !important;
  border-right-color: #22263a !important;
}
.waitry-dark-theme .ai-sidebar-header {
  border-bottom-color: #22263a !important;
}
.waitry-dark-theme .ai-sidebar-btn {
  color: #64748b !important;
}
.waitry-dark-theme .ai-sidebar-btn:hover {
  color: #cbd5e1 !important;
  background: rgba(255, 255, 255, 0.05) !important;
}
.waitry-dark-theme .ai-history-item:hover {
  background: rgba(255, 255, 255, 0.05) !important;
}
.waitry-dark-theme .ai-history-item.active {
  background: rgba(236, 78, 54, 0.15) !important;
}
.waitry-dark-theme .ai-history-icon {
  background: #1e293b !important;
}
.waitry-dark-theme .ai-history-title {
  color: #cbd5e1 !important;
}
.waitry-dark-theme .ai-bubble-assistant {
  color: #cbd5e1 !important;
  background: #1e293b !important;
  border-color: #334155 !important;
  box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.3) !important;
}
.waitry-dark-theme .ai-bubble-assistant strong, .waitry-dark-theme .ai-bubble-assistant h1, .waitry-dark-theme .ai-bubble-assistant h2, .waitry-dark-theme .ai-bubble-assistant h3 {
  color: #f8fafc !important;
}
.waitry-dark-theme .ai-bubble-assistant code {
  background: #334155 !important;
  color: #fb7185 !important;
}
.waitry-dark-theme .ai-bubble-assistant blockquote {
  background: linear-gradient(135deg, #2a1b1b, #1f1414) !important;
  color: #94a3b8 !important;
}
.waitry-dark-theme .ai-bubble-assistant hr {
  background: linear-gradient(90deg, transparent, #334155 20%, #334155 80%, transparent) !important;
}
.waitry-dark-theme .ai-bubble-assistant th, .waitry-dark-theme .ai-bubble-assistant td {
  border-bottom-color: #334155 !important;
}
.waitry-dark-theme .ai-bubble-assistant th {
  color: #94a3b8 !important;
  border-bottom-color: #475569 !important;
}
.waitry-dark-theme .ai-bubble-assistant tr:hover td {
  color: #f8fafc !important;
  background: rgba(51, 65, 85, 0.5) !important;
}
.waitry-dark-theme .ai-thinking-status {
  color: #94a3b8 !important;
}
.waitry-dark-theme .ai-sound-toggle:hover,
.waitry-dark-theme .ai-sound-stop:hover {
  background: #1e293b !important;
}

@media (max-width: 768px) {
  .ai-welcome-state {
    box-sizing: border-box;
    padding: 24px 12px;
  }
  .ai-suggestions {
    grid-template-columns: 1fr;
  }
  .ai-greeting-text {
    font-size: 24px;
  }
  .ai-msg-list {
    padding: 0 16px 100px;
  }
  .ai-input-zone {
    padding: 12px 16px 20px;
  }
  .ai-header-title {
    max-width: 160px;
  }
  .ai-history-sidebar {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    z-index: 100;
    box-shadow: 4px 0 24px rgba(0, 0, 0, 0.08);
  }
  .ai-history-sidebar.collapsed {
    margin-left: 0;
    transform: translateX(-100%);
  }
  .ai-history-sidebar:not(.collapsed) {
    transform: translateX(0);
  }
  .ai-sidebar-overlay.visible {
    display: block;
  }
}
@media (max-height: 760px) {
  .ai-welcome-state {
    padding: 16px 24px;
  }
  .ai-brand-badge {
    width: 48px;
    height: 48px;
    border-radius: 14px;
    margin-bottom: 14px;
  }
  .ai-brand-badge i {
    font-size: 22px;
  }
  .ai-greeting-text {
    font-size: 22px;
    margin-bottom: 4px;
  }
  .ai-greeting-sub {
    margin-bottom: 20px;
    font-size: 13px;
  }
  .ai-greeting-action {
    margin-bottom: 8px;
  }
  .ai-suggestions {
    margin-bottom: 16px;
    gap: 8px;
  }
  .ai-suggestion-card {
    padding: 10px 12px !important;
    min-height: 34px !important;
    font-size: 12px !important;
  }
  .ai-suggestion-card .ai-sg-icon {
    width: 28px;
    height: 28px;
    min-width: 28px;
  }
  .ai-suggestion-card .ai-sg-icon i {
    font-size: 14px;
  }
  .ai-greeting-slideshow {
    margin-bottom: 8px;
  }
  .ai-slideshow-track {
    gap: 6px;
  }
  .ai-slide-arrow {
    min-width: 30px !important;
    width: 30px !important;
    height: 30px !important;
  }
  .ai-slide-arrow i {
    font-size: 18px !important;
  }
  .ai-slide-dots {
    gap: 5px;
    margin-top: 8px;
  }
  .ai-slide-dot {
    width: 6px;
    height: 6px;
  }
}
.ai-assistant-container {
  --mise-agent-venue-copilot-from: #7C3AED;
  --mise-agent-venue-copilot-to: #A855F7;
  --mise-agent-analytics-from: #2563EB;
  --mise-agent-analytics-to: #3B82F6;
  --mise-agent-menu-from: #D97706;
  --mise-agent-menu-to: #F59E0B;
  --mise-agent-marketing-from: #059669;
  --mise-agent-marketing-to: #10B981;
  --mise-agent-service-from: #DC2626;
  --mise-agent-service-to: #F87171;
  --mise-agent-financial-from: #0D9488;
  --mise-agent-financial-to: #2DD4BF;
}

.mise-agent-hub {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 40px 24px;
  max-width: 840px;
  margin: 0 auto;
  width: 100%;
  animation: miseHubFadeIn 0.5s ease;
  overflow-y: auto;
}
.mise-agent-hub__title {
  font-family: "Outfit", sans-serif;
  font-size: 26px;
  font-weight: 700;
  color: #1a1a2e;
  text-align: center;
  margin-bottom: 6px;
  letter-spacing: -0.4px;
}
.mise-agent-hub__subtitle {
  font-size: 14px;
  color: #6b7280;
  text-align: center;
  margin-bottom: 32px;
  max-width: 420px;
}
.mise-agent-hub__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  width: 100%;
  max-width: 720px;
}
@media (max-width: 768px) {
  .mise-agent-hub__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }
}
@media (max-width: 480px) {
  .mise-agent-hub__grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}

.mise-agent-card {
  position: relative;
  border-radius: 16px;
  padding: 24px 20px;
  cursor: pointer;
  overflow: hidden;
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  background: var(--_agent-from, #ec4e36);
  background-image: linear-gradient(135deg, var(--_agent-from, #ec4e36) 0%, var(--_agent-to, #f06543) 100%);
  color: white;
  display: flex;
  flex-direction: column;
  gap: 14px;
  min-height: 160px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
}
.mise-agent-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.12) 0%, rgba(255, 255, 255, 0) 60%, rgba(0, 0, 0, 0.06) 100%);
  border-radius: inherit;
  pointer-events: none;
  z-index: 1;
}
.mise-agent-card::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  border: 1px solid rgba(255, 255, 255, 0.18);
  pointer-events: none;
  z-index: 1;
}
.mise-agent-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.18);
}
.mise-agent-card:active {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.14);
}
.mise-agent-card__icon-circle {
  width: 48px;
  height: 48px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.2);
  backdrop-filter: blur(8px);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
  animation: miseAgentIconFloat 4s ease-in-out infinite;
}
.mise-agent-card__icon-circle i {
  font-size: 24px;
  color: white;
}
.mise-agent-card__info {
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.mise-agent-card__name {
  font-family: "Outfit", sans-serif;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: -0.2px;
  line-height: 1.2;
}
.mise-agent-card__description {
  font-size: 12px;
  opacity: 0.85;
  line-height: 1.4;
  font-weight: 400;
}
.mise-agent-card--venue-copilot {
  --_agent-from: var(--mise-agent-venue-copilot-from);
  --_agent-to: var(--mise-agent-venue-copilot-to);
}
.mise-agent-card--analytics {
  --_agent-from: var(--mise-agent-analytics-from);
  --_agent-to: var(--mise-agent-analytics-to);
}
.mise-agent-card--menu {
  --_agent-from: var(--mise-agent-menu-from);
  --_agent-to: var(--mise-agent-menu-to);
}
.mise-agent-card--marketing {
  --_agent-from: var(--mise-agent-marketing-from);
  --_agent-to: var(--mise-agent-marketing-to);
}
.mise-agent-card--service {
  --_agent-from: var(--mise-agent-service-from);
  --_agent-to: var(--mise-agent-service-to);
}
.mise-agent-card--financial {
  --_agent-from: var(--mise-agent-financial-from);
  --_agent-to: var(--mise-agent-financial-to);
}

.mise-agent-header {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 20px;
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom: 2px solid transparent;
  border-image: linear-gradient(90deg, var(--_agent-from, #ec4e36), var(--_agent-to, #f06543)) 1;
  min-height: 52px;
  z-index: 9;
  transition: all 0.3s ease;
}
.mise-agent-header__back {
  color: #6b7280 !important;
  min-width: 32px !important;
  height: 32px !important;
  border-radius: 8px !important;
  margin: 0 !important;
  padding: 0 8px !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  text-transform: none !important;
  display: flex !important;
  align-items: center !important;
  gap: 4px !important;
  transition: all 0.2s ease !important;
}
.mise-agent-header__back i {
  font-size: 18px !important;
}
.mise-agent-header__back:hover {
  background: rgba(0, 0, 0, 0.04) !important;
  color: #374151 !important;
}
.mise-agent-header__icon {
  width: 32px;
  height: 32px;
  min-width: 32px;
  border-radius: 10px;
  background-image: linear-gradient(135deg, var(--_agent-from, #ec4e36), var(--_agent-to, #f06543));
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.mise-agent-header__icon i {
  font-size: 17px;
  color: white;
}
.mise-agent-header__info {
  flex: 1;
  min-width: 0;
}
.mise-agent-header__name {
  font-family: "Outfit", sans-serif;
  font-size: 14px;
  font-weight: 600;
  color: #0f172a;
  line-height: 1.2;
}
.mise-agent-header__desc {
  font-size: 11px;
  color: #6b7280;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.mise-agent-header.ai-action-btn {
  background: #fef7f5;
  border-color: #f06543;
  color: #ec4e36;
}
.waitry-dark-theme .mise-agent-header.ai-action-btn {
  background: rgba(236, 78, 54, 0.15);
}
.mise-agent-header.ai-action-btn .ai-followup-pill-icon {
  color: #ec4e36;
}
.mise-agent-header.ai-action-btn:hover {
  background: #ec4e36;
  color: white;
  border-color: #ec4e36;
}
.mise-agent-header.ai-action-btn:hover .ai-followup-pill-icon {
  color: white;
}
.mise-agent-header span {
  white-space: nowrap;
}
.mise-agent-header--venue-copilot {
  --_agent-from: var(--mise-agent-venue-copilot-from);
  --_agent-to: var(--mise-agent-venue-copilot-to);
}
.mise-agent-header--analytics {
  --_agent-from: var(--mise-agent-analytics-from);
  --_agent-to: var(--mise-agent-analytics-to);
}
.mise-agent-header--menu {
  --_agent-from: var(--mise-agent-menu-from);
  --_agent-to: var(--mise-agent-menu-to);
}
.mise-agent-header--marketing {
  --_agent-from: var(--mise-agent-marketing-from);
  --_agent-to: var(--mise-agent-marketing-to);
}
.mise-agent-header--service {
  --_agent-from: var(--mise-agent-service-from);
  --_agent-to: var(--mise-agent-service-to);
}
.mise-agent-header--financial {
  --_agent-from: var(--mise-agent-financial-from);
  --_agent-to: var(--mise-agent-financial-to);
}

.mise-agent-badge-group {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 8px;
}

.mise-agent-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 2px 10px 2px 6px;
  border-radius: 20px;
  border: 1px solid transparent;
  font-size: 11px;
  font-weight: 600;
  font-family: "Outfit", sans-serif;
  color: white;
  background-image: linear-gradient(135deg, var(--_agent-from, #ec4e36), var(--_agent-to, #f06543));
  margin-bottom: 6px;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
  letter-spacing: 0.01em;
}
.mise-agent-badge__icon {
  width: 18px;
  height: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.mise-agent-badge__icon i {
  font-size: 12px;
  color: white;
}
.mise-agent-badge--venue-copilot {
  --_agent-from: var(--mise-agent-venue-copilot-from);
  --_agent-to: var(--mise-agent-venue-copilot-to);
}
.mise-agent-badge--analytics {
  --_agent-from: var(--mise-agent-analytics-from);
  --_agent-to: var(--mise-agent-analytics-to);
}
.mise-agent-badge--menu {
  --_agent-from: var(--mise-agent-menu-from);
  --_agent-to: var(--mise-agent-menu-to);
}
.mise-agent-badge--marketing {
  --_agent-from: var(--mise-agent-marketing-from);
  --_agent-to: var(--mise-agent-marketing-to);
}
.mise-agent-badge--service {
  --_agent-from: var(--mise-agent-service-from);
  --_agent-to: var(--mise-agent-service-to);
}
.mise-agent-badge--financial {
  --_agent-from: var(--mise-agent-financial-from);
  --_agent-to: var(--mise-agent-financial-to);
}

.mise-agent-welcome {
  animation: aiFadeInUp 0.5s ease;
}
.mise-agent-welcome__avatar {
  width: 72px;
  height: 72px;
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
  background-image: linear-gradient(135deg, var(--_agent-from, #ec4e36), var(--_agent-to, #f06543));
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
  animation: miseAgentPulse 3s ease-in-out infinite;
}
.mise-agent-welcome__avatar i {
  font-size: 34px;
  color: white;
}
.mise-agent-welcome__name {
  font-family: "Outfit", sans-serif;
  font-size: 24px;
  font-weight: 700;
  color: #1a1a2e;
  text-align: center;
  margin-bottom: 6px;
  letter-spacing: -0.3px;
}
.mise-agent-welcome__description {
  font-size: 14px;
  color: #6b7280;
  text-align: center;
  margin-bottom: 32px;
  max-width: 400px;
  line-height: 1.5;
}
.mise-agent-welcome__suggestions {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  width: 100%;
  max-width: 520px;
}
@media (max-width: 480px) {
  .mise-agent-welcome__suggestions {
    grid-template-columns: 1fr;
  }
}
.mise-agent-welcome__suggestion-card {
  background: white !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 14px !important;
  padding: 14px 16px !important;
  text-align: left !important;
  text-transform: none !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #374151 !important;
  line-height: 1.4 !important;
  height: auto !important;
  min-height: 40px !important;
  margin: 0 !important;
  transition: all 0.2s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
  cursor: pointer;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  border-left: 3px solid transparent !important;
  border-left-color: var(--_agent-from, #ec4e36) !important;
}
.mise-agent-welcome__suggestion-card:hover {
  background: #f9fafb !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.08) !important;
}
.mise-agent-welcome__suggestion-card .ai-sg-icon {
  width: 32px;
  height: 32px;
  min-width: 32px;
  border-radius: 8px;
  background-image: linear-gradient(135deg, var(--_agent-from, #ec4e36), var(--_agent-to, #f06543));
  opacity: 0.15;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.mise-agent-welcome__suggestion-card .ai-sg-icon i {
  font-size: 16px;
  color: var(--_agent-from, #ec4e36);
  position: relative;
  z-index: 1;
  opacity: 1;
}
.mise-agent-welcome__suggestion-card .ai-sg-icon::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background-image: linear-gradient(135deg, var(--_agent-from, #ec4e36), var(--_agent-to, #f06543));
  opacity: 0.15;
}
.mise-agent-welcome--venue-copilot {
  --_agent-from: var(--mise-agent-venue-copilot-from);
  --_agent-to: var(--mise-agent-venue-copilot-to);
}
.mise-agent-welcome--analytics {
  --_agent-from: var(--mise-agent-analytics-from);
  --_agent-to: var(--mise-agent-analytics-to);
}
.mise-agent-welcome--menu {
  --_agent-from: var(--mise-agent-menu-from);
  --_agent-to: var(--mise-agent-menu-to);
}
.mise-agent-welcome--marketing {
  --_agent-from: var(--mise-agent-marketing-from);
  --_agent-to: var(--mise-agent-marketing-to);
}
.mise-agent-welcome--service {
  --_agent-from: var(--mise-agent-service-from);
  --_agent-to: var(--mise-agent-service-to);
}
.mise-agent-welcome--financial {
  --_agent-from: var(--mise-agent-financial-from);
  --_agent-to: var(--mise-agent-financial-to);
}

.mise-hub-enter {
  animation: miseHubFadeIn 0.35s ease forwards;
}

.mise-hub-leave {
  animation: miseHubFadeIn 0.25s ease reverse forwards;
}

.waitry-dark-theme .mise-agent-hub__title {
  color: #f8fafc !important;
}
.waitry-dark-theme .mise-agent-hub__subtitle {
  color: #94a3b8 !important;
}
.waitry-dark-theme .mise-agent-card {
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}
.waitry-dark-theme .mise-agent-card::after {
  border-color: rgba(255, 255, 255, 0.1);
}
.waitry-dark-theme .mise-agent-card:hover {
  box-shadow: 0 12px 48px rgba(0, 0, 0, 0.4);
}
.waitry-dark-theme .mise-agent-card__icon-circle {
  background: rgba(255, 255, 255, 0.15);
}
.waitry-dark-theme .mise-agent-header {
  background: rgba(19, 21, 31, 0.92) !important;
}
.waitry-dark-theme .mise-agent-header__back {
  color: #94a3b8 !important;
}
.waitry-dark-theme .mise-agent-header__back:hover {
  background: rgba(255, 255, 255, 0.06) !important;
  color: #cbd5e1 !important;
}
.waitry-dark-theme .mise-agent-header__name {
  color: #f8fafc !important;
}
.waitry-dark-theme .mise-agent-header__desc {
  color: #94a3b8 !important;
}
.waitry-dark-theme .mise-agent-badge {
  box-shadow: 0 1px 6px rgba(0, 0, 0, 0.25);
}
.waitry-dark-theme .mise-agent-welcome__avatar {
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.35);
}
.waitry-dark-theme .mise-agent-welcome__name {
  color: #f8fafc !important;
}
.waitry-dark-theme .mise-agent-welcome__description {
  color: #94a3b8 !important;
}
.waitry-dark-theme .mise-agent-welcome__suggestion-card {
  background: #1e293b !important;
  border-color: #334155 !important;
  color: #cbd5e1 !important;
}
.waitry-dark-theme .mise-agent-welcome__suggestion-card:hover {
  background: #334155 !important;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.25) !important;
}
.waitry-dark-theme .ai-followup-pill {
  background: #1e293b !important;
  border-color: #334155 !important;
  color: #cbd5e1 !important;
}
.waitry-dark-theme .ai-followup-pill:hover {
  background: #334155 !important;
  border-color: #f06543 !important;
  color: #f06543 !important;
}
.waitry-dark-theme .ai-followup-pill i {
  color: #64748b;
}
.waitry-dark-theme .ai-chat-scroll::-webkit-scrollbar-thumb {
  background: #334155;
}
.waitry-dark-theme .ai-sidebar-scroll::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.08);
}
.waitry-dark-theme .ai-chart-container {
  background: #1e293b !important;
  border-color: #334155 !important;
}
.waitry-dark-theme .ai-chart-title {
  color: #cbd5e1 !important;
}

.ai-agent-dock {
  background: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(229, 231, 235, 0.5);
  padding: 2px 12px;
  z-index: 5;
  width: 100%;
  box-sizing: border-box;
  flex-shrink: 0;
}
.ai-agent-dock .ai-agent-dock-scroll {
  display: flex;
  gap: 10px;
  overflow-x: auto;
  overflow-y: visible;
  scrollbar-width: none;
  padding: 10px 4px;
}
.ai-agent-dock .ai-agent-dock-scroll::-webkit-scrollbar {
  display: none;
}
.ai-agent-dock .ai-agent-dock-item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 14px;
  border-radius: 20px;
  border: 1px solid rgba(229, 231, 235, 0.8);
  background: rgba(255, 255, 255, 0.5);
  cursor: pointer;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  white-space: nowrap;
  user-select: none;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.02);
}
.ai-agent-dock .ai-agent-dock-item:hover {
  background: rgba(255, 255, 255, 0.9);
  border-color: #d1d5db;
  transform: translateY(-1px);
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.04);
}
.ai-agent-dock .ai-agent-dock-item.active {
  font-weight: 600;
  border-color: transparent !important;
  box-shadow: inset 0 0 0 1.5px var(--agent-accent), 0 4px 12px rgba(0, 0, 0, 0.05);
  background-color: var(--agent-bg-active) !important;
  transform: translateY(-1px);
}
.ai-agent-dock .ai-agent-dock-icon {
  width: 28px;
  height: 28px;
  min-width: 28px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
  overflow: visible;
  flex-shrink: 0;
}
.ai-agent-dock .ai-agent-dock-icon i {
  font-size: 15px;
  color: white;
  line-height: 1;
}
.ai-agent-dock .ai-agent-dock-name {
  font-size: 12.5px;
  font-family: "Outfit", sans-serif;
  color: #475569;
}
.ai-agent-dock .ai-agent-dock-item.active .ai-agent-dock-name {
  color: #0f172a;
}

.waitry-dark-theme .ai-agent-dock {
  background: rgba(26, 29, 39, 0.7);
  border-bottom: 1px solid rgba(46, 51, 72, 0.5);
}
.waitry-dark-theme .ai-agent-dock .ai-agent-dock-item {
  background: rgba(30, 41, 59, 0.5);
  border-color: rgba(46, 51, 72, 0.8);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}
.waitry-dark-theme .ai-agent-dock .ai-agent-dock-item:hover {
  background: rgba(30, 41, 59, 0.8);
  border-color: rgba(71, 85, 105, 0.8);
}
.waitry-dark-theme .ai-agent-dock .ai-agent-dock-item.active {
  box-shadow: inset 0 0 0 1.5px var(--agent-accent), 0 4px 15px rgba(0, 0, 0, 0.2);
  background-color: var(--agent-bg-active) !important;
}
.waitry-dark-theme .ai-agent-dock .ai-agent-dock-name {
  color: #94a3b8;
}
.waitry-dark-theme .ai-agent-dock .ai-agent-dock-item.active .ai-agent-dock-name {
  color: #f8fafc;
}

@keyframes agentCopilotGlow {
  0%, 100% {
    transform: scale(1);
    filter: drop-shadow(0 0 6px rgba(255, 255, 255, 0.3));
  }
  50% {
    transform: scale(1.12);
    filter: drop-shadow(0 0 14px rgba(255, 255, 255, 0.7));
  }
}
.mise-agent-welcome-avatar {
  width: 80px;
  height: 80px;
  border-radius: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
  animation: aiPulseGlow 3s ease-in-out infinite;
  position: relative;
  overflow: visible;
}
.mise-agent-welcome-avatar i {
  font-size: 38px;
  color: white;
  transition: animation 0.3s ease;
}
.mise-agent-welcome-avatar[data-agent=venue_copilot] i, .mise-agent-welcome-avatar[data-agent=venue_copilot] .ai-welcome-sparkle-svg {
  animation: agentCopilotGlow 2.5s ease-in-out infinite;
}

.ai-header-agent-identity {
  display: flex;
  align-items: center;
  gap: 6px;
  font-family: "Outfit", sans-serif;
  font-size: 14px;
  font-weight: 600;
  color: #374151;
  margin-left: 4px;
}
.ai-header-agent-identity i {
  font-size: 18px !important;
}

.mise-agent-suggestion:hover {
  border-color: var(--agent-accent, #ec4e36) !important;
  background: color-mix(in srgb, var(--agent-accent, #ec4e36) 6%, white) !important;
}
.mise-agent-suggestion .ai-sg-icon {
  background: color-mix(in srgb, var(--agent-accent, #ec4e36) 12%, white) !important;
}
.mise-agent-suggestion .ai-sg-icon i {
  color: var(--agent-accent, #ec4e36) !important;
}

.waitry-dark-theme .mise-hub-section-label {
  color: #e2e8f0 !important;
}
.waitry-dark-theme .mise-hub-section-subtitle {
  color: #64748b !important;
}
.waitry-dark-theme .ai-header-agent-identity {
  color: #e2e8f0 !important;
}
.waitry-dark-theme .mise-agent-welcome-avatar {
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.4) !important;
}
.waitry-dark-theme .mise-agent-suggestion:hover {
  background: color-mix(in srgb, var(--agent-accent, #ec4e36) 12%, #1e293b) !important;
  border-color: var(--agent-accent, #ec4e36) !important;
}
.waitry-dark-theme .mise-agent-suggestion .ai-sg-icon {
  background: color-mix(in srgb, var(--agent-accent, #ec4e36) 18%, #1e293b) !important;
}

@keyframes miseAgentIconFloat {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-3px);
  }
}
.ai-layout-fill {
  height: 100%;
  overflow: hidden;
  position: relative;
}

.ai-history-delete .iconoir-xmark {
  font-size: 16px;
}

.ai-followup-pill-icon {
  margin-right: 6px;
  font-size: 16px;
}

.ai-stop-btn .iconoir-minus-square-solid,
.ai-send-btn .iconoir-arrow-up {
  font-size: 18px;
}

.ai-header-sparkle-svg {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  overflow: visible;
  margin-right: 2px;
}
.ai-header-sparkle-svg svg {
  width: 100%;
  height: 100%;
  overflow: visible;
}

.ai-dock-sparkle-svg {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  overflow: visible;
}
.ai-dock-sparkle-svg svg {
  width: 100%;
  height: 100%;
  overflow: visible;
}
.ai-dock-sparkle-svg .sparkle-main, .ai-dock-sparkle-svg .sparkle-small-1, .ai-dock-sparkle-svg .sparkle-small-2 {
  fill: #ffffff !important;
}
.ai-dock-sparkle-svg .mise-glow-ring {
  stroke: rgba(255, 255, 255, 0.6) !important;
  stroke-width: 1.5;
}

.ai-welcome-sparkle-svg {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  overflow: visible;
}
.ai-welcome-sparkle-svg svg {
  width: 100%;
  height: 100%;
  overflow: visible;
}
.ai-welcome-sparkle-svg .sparkle-main, .ai-welcome-sparkle-svg .sparkle-small-1, .ai-welcome-sparkle-svg .sparkle-small-2 {
  fill: #ffffff !important;
}
.ai-welcome-sparkle-svg .mise-glow-ring {
  stroke: rgba(255, 255, 255, 0.6) !important;
  stroke-width: 1.5;
}

.ai-welcome-agent-svg {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  overflow: visible;
}
.ai-welcome-agent-svg svg {
  width: 100%;
  height: 100%;
  overflow: visible;
}

.ai-badge-sparkle-svg {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  overflow: visible;
  margin-right: 4px;
}
.ai-badge-sparkle-svg svg {
  width: 100%;
  height: 100%;
  overflow: visible;
}

.home-digest-header {
  cursor: pointer;
  user-select: none;
}
.home-digest-header:hover {
  background: var(--an-surface2);
}

.home-digest-spark {
  font-size: 15px;
  line-height: 1;
  flex-shrink: 0;
}

.home-digest-caret {
  color: var(--an-text-muted) !important;
  font-size: 18px !important;
  width: 18px !important;
  height: 18px !important;
  flex-shrink: 0;
}

.home-digest-body {
  padding-top: 14px;
}

.home-digest-headline {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.35;
  color: var(--an-text);
  margin-bottom: 12px;
}

.home-digest-bullets {
  display: flex;
  flex-direction: column;
}

.home-digest-bullet {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 7px 0;
  font-size: 12.5px;
  line-height: 1.45;
  color: var(--an-text);
}
.home-digest-bullet + .home-digest-bullet {
  border-top: 1px dashed var(--an-border);
}
.home-digest-bullet md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  min-width: 16px;
  margin-top: 1px;
  flex-shrink: 0;
}
.home-digest-bullet--win md-icon {
  color: var(--an-emerald) !important;
}
.home-digest-bullet--risk md-icon {
  color: var(--an-amber) !important;
}
.home-digest-bullet--action md-icon {
  color: var(--an-sky) !important;
}

.home-digest-bullet-text {
  flex: 1;
  min-width: 0;
}

.mise-prop {
  margin-top: var(--space-sm);
  padding: var(--space-md);
  border: 1px solid var(--an-border);
  border-radius: 12px;
  background: var(--an-bg);
}
.mise-prop--pending {
  border-color: var(--an-primary);
  background: var(--an-primary-soft);
}
.mise-prop--executed {
  border-color: var(--an-emerald);
  background: var(--an-emerald-soft);
}
.mise-prop--rejected {
  opacity: 0.7;
}
.mise-prop--dead {
  opacity: 0.6;
  border-style: dashed;
}
.mise-prop__head {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
}
.mise-prop__icon {
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--an-surface);
}
.mise-prop__icon i {
  --an-icon-size: 14px;
  color: var(--an-text-muted);
}
.mise-prop--pending .mise-prop__icon i {
  color: var(--an-primary);
}
.mise-prop--executed .mise-prop__icon i {
  color: var(--an-emerald);
}
.mise-prop__title {
  flex: 1 1 auto;
  font-family: var(--font-sans);
  font-size: 13.5px;
  font-weight: 700;
  color: var(--an-text);
}
.mise-prop__state {
  flex: 0 0 auto;
  font-family: var(--font-sans);
  font-size: 11.5px;
  font-weight: 700;
  color: var(--an-text-muted);
}
.mise-prop__lines {
  list-style: none;
  padding: 0;
  margin: var(--space-sm) 0 0 32px;
}
.mise-prop__lines li {
  font-family: var(--font-sans);
  font-size: 13px;
  line-height: 1.6;
  color: var(--an-text);
  word-break: break-word;
}
.mise-prop__actions {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  margin: var(--space-md) 0 0 32px;
}
.mise-prop__reject {
  color: var(--an-text-muted) !important;
  font-weight: 600;
}
.mise-prop__reject md-icon, .mise-prop__reject [class*=iconoir-] {
  color: var(--an-text-muted) !important;
}
.mise-prop__view {
  color: var(--an-primary) !important;
  font-weight: 600;
}
.mise-prop__view md-icon, .mise-prop__view [class*=iconoir-] {
  color: var(--an-primary) !important;
}

.ai-proposals {
  margin: var(--space-sm) 0 var(--space-md) 0;
}

.wf-studio {
  max-width: 920px;
  width: 92vw;
}
.waitry-dark-theme .wf-studio md-checkbox .md-label {
  color: rgba(255, 255, 255, 0.95) !important;
}
.wf-studio__spark {
  color: #ec4e36;
  margin-right: 8px;
}
.wf-studio__credits {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 12px;
  margin-right: 8px;
  border-radius: 999px;
  background: rgba(236, 78, 54, 0.1);
  color: #ec4e36;
  font-weight: 700;
}
.wf-studio__credits i[class^=iconoir] {
  color: #ec4e36;
  font-size: 18px;
  line-height: 1;
}
.wf-studio__credits small {
  color: var(--an-text-muted);
  font-weight: 600;
  text-transform: lowercase;
}

.wf-studio-body {
  padding: 4px 2px;
}

.wf-studio-grid {
  gap: 20px;
}

.wf-studio-controls {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.wf-studio__label {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--an-text-muted);
  margin-top: 4px;
}

.wf-studio-formats,
.wf-studio-moderow {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.wf-studio-format {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  border-radius: 10px;
  border: 1.5px solid var(--an-border);
  background: var(--an-surface);
  color: var(--an-text);
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.15s ease;
}
.wf-studio-format md-icon {
  font-size: 18px;
  width: 18px;
  height: 18px;
}
.wf-studio-format:hover {
  border-color: rgba(236, 78, 54, 0.5);
}
.wf-studio-format.is-active {
  border-color: #ec4e36;
  background: rgba(236, 78, 54, 0.08);
  color: #ec4e36;
}

.wf-studio-source {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 8px;
}
.wf-studio-source img {
  width: 56px;
  height: 56px;
  object-fit: cover;
  border-radius: 8px;
  border: 1px solid var(--an-border);
  cursor: zoom-in;
}

.wf-studio-zoom {
  position: fixed;
  z-index: 3000;
  border-radius: 12px;
  overflow: hidden;
  border: 2px solid var(--an-surface);
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.4);
  pointer-events: none;
  background: var(--an-surface2);
}
.wf-studio-zoom img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.wf-studio-stylehint {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 12px;
  border-radius: 10px;
  background: var(--an-surface2);
  color: var(--an-text-muted);
  font-size: 12.5px;
  line-height: 1.3;
}
.wf-studio-stylehint md-icon {
  color: #7c3aed;
  font-size: 18px;
  width: 18px;
  height: 18px;
}
.wf-studio-stylehint__link {
  margin-left: auto;
  color: #7c3aed;
  font-weight: 700;
  white-space: nowrap;
  cursor: pointer;
}
.wf-studio-stylehint__link:hover {
  text-decoration: underline;
}
.wf-studio-stylehint--edit {
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
}
.wf-studio-stylehint__actions {
  display: flex;
  justify-content: flex-end;
  gap: 4px;
}

.wf-studio__generate {
  margin-top: 6px;
  height: 46px;
  border-radius: 12px !important;
  font-weight: 700;
}
.wf-studio__generate md-icon {
  color: #fff;
}
.wf-studio__generate .wf-studio__cost {
  margin-left: 10px;
  padding-left: 10px;
  border-left: 1px solid rgba(255, 255, 255, 0.4);
  font-size: 12px;
  opacity: 0.9;
}

.wf-studio-afford {
  color: #b91c1c;
  font-size: 12.5px;
  text-align: center;
}

.wf-studio-preview {
  display: flex;
  align-items: center;
  justify-content: center;
}

.wf-studio-canvas {
  position: relative;
  width: 100%;
  aspect-ratio: 1/1;
  max-height: 60vh;
  border-radius: 16px;
  border: 1.5px dashed var(--an-border);
  background: repeating-conic-gradient(var(--an-surface2) 0% 25%, var(--an-surface) 0% 50%) 50%/22px 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.wf-studio-canvas.is-portrait {
  aspect-ratio: 9/16;
  max-width: 360px;
  margin: 0 auto;
}
.wf-studio-canvas.is-wide {
  aspect-ratio: 16/9;
}
.wf-studio-canvas img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.wf-studio-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  color: var(--an-text-muted);
}
.wf-studio-empty md-icon {
  font-size: 40px;
  width: 40px;
  height: 40px;
  color: var(--an-text-faint);
}
.wf-studio-empty span {
  font-size: 13px;
}

.wf-studio-locked {
  text-align: center;
  padding: 40px 20px;
  color: var(--an-text-muted);
}
.wf-studio-locked md-icon {
  font-size: 46px;
  width: 46px;
  height: 46px;
  color: var(--an-text-faint);
}
.wf-studio-locked h3 {
  color: var(--an-text);
  margin: 14px 0 6px;
}

.wf-studio__hint {
  color: var(--an-text-muted);
  font-size: 12.5px;
}

.wf-ai-generate-btn {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 38px !important;
  min-height: 38px !important;
  line-height: 38px !important;
  padding: 0 18px !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0.01em !important;
  text-transform: none !important;
  border-radius: 999px !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  border: 1px solid rgba(124, 58, 237, 0.25) !important;
  background: linear-gradient(135deg, rgba(245, 243, 255, 0.9), rgba(253, 242, 248, 0.9)) !important;
  color: #6d28d9 !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05) !important;
}
.wf-ai-generate-btn md-icon {
  color: #7c3aed !important;
  margin: 0 !important;
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  line-height: 16px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.wf-ai-generate-btn:hover:not([disabled]) {
  background: linear-gradient(135deg, rgba(237, 233, 254, 0.95), rgba(252, 231, 243, 0.95)) !important;
  border-color: rgba(124, 58, 237, 0.45) !important;
  color: #5b21b6 !important;
  transform: translateY(-1.5px) scale(1.01);
  box-shadow: 0 4px 12px rgba(124, 58, 237, 0.16) !important;
}
.wf-ai-generate-btn:hover:not([disabled]) md-icon {
  color: #6d28d9 !important;
  transform: rotate(15deg) scale(1.15);
}
.wf-ai-generate-btn:active:not([disabled]) {
  transform: translateY(0) scale(0.98);
  box-shadow: 0 2px 4px rgba(124, 58, 237, 0.1) !important;
}
.wf-ai-generate-btn[disabled] {
  opacity: 0.5;
  cursor: not-allowed;
  background: rgba(0, 0, 0, 0.05) !important;
  border-color: rgba(0, 0, 0, 0.1) !important;
  color: rgba(0, 0, 0, 0.35) !important;
}
.wf-ai-generate-btn[disabled] md-icon {
  color: rgba(0, 0, 0, 0.3) !important;
}
.waitry-dark-theme .wf-ai-generate-btn {
  background: linear-gradient(135deg, rgba(139, 92, 246, 0.12), rgba(236, 72, 153, 0.12)) !important;
  border: 1px solid rgba(139, 92, 246, 0.4) !important;
  color: #ddd6fe !important;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3) !important;
}
.waitry-dark-theme .wf-ai-generate-btn md-icon {
  color: #c4b5fd !important;
}
.waitry-dark-theme .wf-ai-generate-btn:hover:not([disabled]) {
  background: linear-gradient(135deg, rgba(139, 92, 246, 0.22), rgba(236, 72, 153, 0.22)) !important;
  border-color: rgba(139, 92, 246, 0.65) !important;
  color: #f5f3ff !important;
  box-shadow: 0 0 15px rgba(139, 92, 246, 0.35), 0 4px 12px rgba(0, 0, 0, 0.4) !important;
}
.waitry-dark-theme .wf-ai-generate-btn:hover:not([disabled]) md-icon {
  color: #ddd6fe !important;
}
.waitry-dark-theme .wf-ai-generate-btn[disabled] {
  background: rgba(255, 255, 255, 0.05) !important;
  border-color: rgba(255, 255, 255, 0.1) !important;
  color: rgba(255, 255, 255, 0.3) !important;
}
.waitry-dark-theme .wf-ai-generate-btn[disabled] md-icon {
  color: rgba(255, 255, 255, 0.25) !important;
}

.wf-ai-enhance-btn {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 38px !important;
  min-height: 38px !important;
  line-height: 38px !important;
  padding: 0 18px !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0.01em !important;
  text-transform: none !important;
  border-radius: 999px !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  border: 1px solid rgba(13, 148, 136, 0.25) !important;
  background: linear-gradient(135deg, rgba(240, 253, 250, 0.9), rgba(236, 254, 255, 0.9)) !important;
  color: #0f766e !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05) !important;
}
.wf-ai-enhance-btn md-icon {
  color: #0d9488 !important;
  margin: 0 !important;
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  line-height: 16px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.wf-ai-enhance-btn:hover:not([disabled]) {
  background: linear-gradient(135deg, rgba(204, 251, 241, 0.95), rgba(207, 250, 254, 0.95)) !important;
  border-color: rgba(13, 148, 136, 0.45) !important;
  color: #115e59 !important;
  transform: translateY(-1.5px) scale(1.01);
  box-shadow: 0 4px 12px rgba(13, 148, 136, 0.16) !important;
}
.wf-ai-enhance-btn:hover:not([disabled]) md-icon {
  color: #0f766e !important;
  transform: rotate(-15deg) scale(1.15);
}
.wf-ai-enhance-btn:active:not([disabled]) {
  transform: translateY(0) scale(0.98);
  box-shadow: 0 2px 4px rgba(13, 148, 136, 0.1) !important;
}
.wf-ai-enhance-btn[disabled] {
  opacity: 0.5;
  cursor: not-allowed;
  background: rgba(0, 0, 0, 0.05) !important;
  border-color: rgba(0, 0, 0, 0.1) !important;
  color: rgba(0, 0, 0, 0.35) !important;
}
.wf-ai-enhance-btn[disabled] md-icon {
  color: rgba(0, 0, 0, 0.3) !important;
}
.waitry-dark-theme .wf-ai-enhance-btn {
  background: linear-gradient(135deg, rgba(20, 184, 166, 0.12), rgba(6, 182, 212, 0.12)) !important;
  border: 1px solid rgba(20, 184, 166, 0.4) !important;
  color: #ccfbf1 !important;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3) !important;
}
.waitry-dark-theme .wf-ai-enhance-btn md-icon {
  color: #99f6e4 !important;
}
.waitry-dark-theme .wf-ai-enhance-btn:hover:not([disabled]) {
  background: linear-gradient(135deg, rgba(20, 184, 166, 0.22), rgba(6, 182, 212, 0.22)) !important;
  border-color: rgba(20, 184, 166, 0.65) !important;
  color: #f0fdfa !important;
  box-shadow: 0 0 15px rgba(20, 184, 166, 0.35), 0 4px 12px rgba(0, 0, 0, 0.4) !important;
}
.waitry-dark-theme .wf-ai-enhance-btn:hover:not([disabled]) md-icon {
  color: #ccfbf1 !important;
}
.waitry-dark-theme .wf-ai-enhance-btn[disabled] {
  background: rgba(255, 255, 255, 0.05) !important;
  border-color: rgba(255, 255, 255, 0.1) !important;
  color: rgba(255, 255, 255, 0.3) !important;
}
.waitry-dark-theme .wf-ai-enhance-btn[disabled] md-icon {
  color: rgba(255, 255, 255, 0.25) !important;
}

.wf-studio-source__label {
  font-size: 12px;
  color: var(--an-text-muted);
}

.wf-studio-enhancelooks {
  margin-top: 6px;
}

.wf-studio-before {
  position: absolute;
  left: 10px;
  bottom: 10px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  padding: 4px;
  border-radius: 10px;
  background: rgba(15, 23, 42, 0.72);
  backdrop-filter: blur(2px);
}
.wf-studio-before img {
  width: 64px;
  height: 64px;
  object-fit: cover;
  border-radius: 7px;
}
.wf-studio-before span {
  color: #fff;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.wf-studio-headchip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 12px;
  border-radius: 999px;
  background: rgba(124, 58, 237, 0.1);
  color: #7c3aed;
  font-weight: 700;
  font-size: 13px;
}
.wf-studio-headchip md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
}

.wf-overhaul {
  max-width: 720px;
  width: 92vw;
}

.wf-overhaul-body {
  padding: 6px 4px 2px;
  color: var(--an-text);
}

.wf-overhaul-center {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 14px;
  padding: 48px 16px;
  color: var(--an-text-muted);
  text-align: center;
}

.wf-overhaul-intro {
  color: var(--an-text-muted);
  font-size: 13.5px;
  margin: 0 0 16px;
}

.wf-overhaul-scope {
  margin-bottom: 16px;
}
.wf-overhaul-scope__options {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 6px;
}
.wf-overhaul-scope__opt {
  flex: 1 1 220px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  border-radius: 12px;
  border: 1.5px solid var(--an-border);
  background: var(--an-surface);
  color: var(--an-text);
  cursor: pointer;
  text-align: left;
  transition: all 0.15s ease;
}
.wf-overhaul-scope__opt md-icon {
  flex: none;
  font-size: 20px;
  width: 20px;
  height: 20px;
  color: var(--an-text-muted);
}
.wf-overhaul-scope__opt:hover {
  border-color: rgba(236, 78, 54, 0.5);
}
.wf-overhaul-scope__opt.is-active {
  border-color: #ec4e36;
  background: rgba(236, 78, 54, 0.08);
}
.wf-overhaul-scope__opt.is-active md-icon {
  color: #ec4e36;
}
.wf-overhaul-scope__opt-text {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
}
.wf-overhaul-scope__opt-label {
  font-weight: 700;
  font-size: 13.5px;
}
.wf-overhaul-scope__opt-meta {
  font-size: 12px;
  color: var(--an-text-muted);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.wf-overhaul-step {
  border: 1px solid var(--an-border);
  border-radius: 14px;
  padding: 14px 16px;
  margin-bottom: 16px;
  background: var(--an-surface2);
}
.wf-overhaul-step__head {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 10px;
}
.wf-overhaul-step__head h3 {
  margin: 0 0 2px;
  font-size: 15px;
  font-weight: 700;
}
.wf-overhaul-step__head p {
  margin: 0;
  font-size: 12.5px;
  color: var(--an-text-muted);
}
.wf-overhaul-step__num {
  flex: none;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: #ec4e36;
  color: #fff;
  font-weight: 700;
  font-size: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.wf-overhaul-free {
  flex: none;
  align-self: center;
  padding: 2px 10px;
  border-radius: 999px;
  background: rgba(34, 197, 94, 0.14);
  color: #16a34a;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.wf-overhaul-toggle {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 10px 0;
  border-top: 1px solid var(--an-border);
}
.wf-overhaul-toggle md-switch {
  margin: 0;
}
.wf-overhaul-toggle__text {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.wf-overhaul-toggle__label {
  font-weight: 600;
  font-size: 14px;
}
.wf-overhaul-toggle__explain {
  font-size: 12.5px;
  color: var(--an-text-muted);
}
.wf-overhaul-toggle__meta {
  font-size: 12px;
  color: #ec4e36;
  font-weight: 600;
}
.wf-overhaul-toggle__meta em {
  font-style: normal;
  color: var(--an-text-muted);
}
.wf-overhaul-toggle--warn .wf-overhaul-toggle__label {
  color: #b45309;
}
.wf-overhaul-toggle--vision .wf-overhaul-toggle__label {
  color: #6366f1;
}
.wf-overhaul-toggle--share .wf-overhaul-toggle__label {
  color: #16a34a;
}
.wf-overhaul-toggle__meta .wf-overhaul-save {
  color: #16a34a;
  font-weight: 700;
}

.wf-overhaul-totals {
  border-top: 2px solid var(--an-border);
  padding-top: 12px;
}
.wf-overhaul-totals__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 4px 0;
  font-size: 13.5px;
  color: var(--an-text-muted);
}
.wf-overhaul-totals__row small {
  color: var(--an-text-muted);
  font-weight: 600;
}
.wf-overhaul-totals__row--big {
  font-size: 17px;
  color: var(--an-text);
}
.wf-overhaul-totals__row--big strong {
  color: #ec4e36;
}

.wf-overhaul-warn {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 10px;
  padding: 8px 12px;
  border-radius: 10px;
  background: rgba(245, 158, 11, 0.12);
  color: #b45309;
  font-size: 12.5px;
}
.wf-overhaul-warn md-icon {
  color: #d97706;
  font-size: 18px;
  width: 18px;
  height: 18px;
}

.wf-overhaul-review__title {
  margin: 0 0 4px;
  font-size: 16px;
  font-weight: 700;
}

.wf-overhaul-review {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.wf-overhaul-review__item {
  border: 1px solid var(--an-border);
  border-radius: 12px;
  padding: 10px 12px;
  background: var(--an-surface2);
}
.wf-overhaul-review__item.is-off {
  opacity: 0.55;
}
.wf-overhaul-review__head {
  display: flex;
  align-items: center;
  gap: 8px;
}
.wf-overhaul-review__head md-checkbox {
  margin: 0;
}
.wf-overhaul-review__name {
  font-weight: 700;
  font-size: 14px;
}
.wf-overhaul-review__type {
  margin-left: auto;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--an-text-muted);
  border: 1px solid var(--an-border);
  border-radius: 999px;
  padding: 1px 8px;
}
.wf-overhaul-review__field-label {
  font-size: 10.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #ec4e36;
  margin-top: 10px;
}
.wf-overhaul-review__field-label:first-of-type {
  margin-top: 8px;
}
.wf-overhaul-review__cols {
  display: flex;
  gap: 12px;
  margin-top: 4px;
}
.wf-overhaul-review__col {
  flex: 1;
}
.wf-overhaul-review__col label {
  display: block;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--an-text-muted);
  margin-bottom: 3px;
}
.wf-overhaul-review__old {
  margin: 0;
  font-size: 13px;
  color: var(--an-text-muted);
}
.wf-overhaul-review__edit {
  width: 100%;
  resize: vertical;
  font-size: 13px;
  line-height: 1.4;
  border: 1px solid var(--an-border);
  border-radius: 8px;
  padding: 6px 8px;
  background: var(--an-surface);
  color: var(--an-text);
}
.wf-overhaul-review__edit--name {
  resize: none;
  font-weight: 600;
}
.wf-overhaul-review__item.is-suspect {
  border-color: rgba(245, 158, 11, 0.55);
}
.wf-overhaul-review__flag {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  font-weight: 700;
  border-radius: 999px;
  padding: 1px 8px;
}
.wf-overhaul-review__flag i {
  font-size: 12px;
}
.wf-overhaul-review__flag--vision {
  background: rgba(99, 102, 241, 0.12);
  color: #6366f1;
}
.wf-overhaul-review__warn {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 6px 0 0 28px;
  font-size: 12px;
  color: #b45309;
}
.wf-overhaul-review__warn md-icon {
  color: #d97706;
  font-size: 16px;
  width: 16px;
  height: 16px;
  min-width: 16px;
}
.wf-overhaul-review__reanalyze.md-button {
  flex: none;
  margin: 0;
  min-height: 26px;
  line-height: 24px;
  padding: 0 10px;
  font-size: 11.5px;
  font-weight: 700;
  text-transform: none;
  border-radius: 999px;
  border: 1px solid rgba(99, 102, 241, 0.35);
  color: #6366f1;
}
.wf-overhaul-review__reanalyze.md-button md-icon, .wf-overhaul-review__reanalyze.md-button [class*=iconoir-] {
  color: #6366f1 !important;
  font-size: 14px;
  width: 14px;
  height: 14px;
  min-height: 14px;
  margin-right: 4px;
}
.wf-overhaul-review__reanalyze.md-button md-progress-circular {
  display: inline-block;
  margin-right: 4px;
  vertical-align: middle;
}
.wf-overhaul-review__reanalyze.md-button em {
  font-style: normal;
  font-weight: 600;
  opacity: 0.75;
  margin-left: 5px;
}

.wf-overhaul-runimg {
  width: 100%;
  max-width: 420px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.wf-overhaul-runimg md-progress-linear {
  width: 100%;
}
.wf-overhaul-runimg__meta {
  display: flex;
  gap: 6px;
  justify-content: center;
  font-size: 12.5px;
  color: var(--an-text-muted);
}

.wf-overhaul-summary {
  text-align: center;
  padding: 24px 8px;
}
.wf-overhaul-summary__icon {
  color: #16a34a;
  --an-icon-size: 48px;
  font-size: 48px;
  width: 48px;
  height: 48px;
  margin-bottom: 8px;
}
.wf-overhaul-summary h3 {
  margin: 0 0 12px;
  font-size: 18px;
}
.wf-overhaul-summary__list {
  list-style: none;
  padding: 0;
  margin: 0 auto 12px;
  max-width: 320px;
  text-align: left;
}
.wf-overhaul-summary__list li {
  padding: 5px 0;
  border-bottom: 1px solid var(--an-border);
  font-size: 14px;
}
.wf-overhaul-summary__list li.is-failed {
  color: #b91c1c;
}
.wf-overhaul-summary__list strong {
  color: #ec4e36;
  font-size: 16px;
  margin-right: 6px;
}
.wf-overhaul-summary__spent {
  color: var(--an-text-muted);
  font-size: 13px;
}

.wf-overhaul-nothing {
  color: var(--an-text-muted);
  font-size: 14px;
}

.wf-overhaul-actions__hint {
  font-size: 12.5px;
  color: var(--an-text-muted);
  padding-left: 8px;
}

@keyframes overhaulCardIn {
  from {
    opacity: 0;
    transform: translateY(10px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
@keyframes overhaulShimmer {
  0% {
    background-position: -400px 0;
  }
  100% {
    background-position: 400px 0;
  }
}
@keyframes overhaulImgIn {
  from {
    opacity: 0;
    transform: scale(0.82);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes overhaulPulse {
  0%, 100% {
    opacity: 0.45;
  }
  50% {
    opacity: 0.7;
  }
}
.wf-overhaul-run {
  padding: 12px 2px 4px;
  min-height: 240px;
}

.wf-overhaul-desc-card__vision {
  color: #6366f1;
  --an-icon-size: 13px;
  font-size: 13px;
  margin-left: 4px;
}

.wf-overhaul-desc-phase {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.wf-overhaul-desc-header {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 6px 0;
}
.wf-overhaul-desc-header .wf-overhaul-desc-spinner {
  flex: none;
}
.wf-overhaul-desc-header .wf-overhaul-desc-headline {
  flex: 1;
  font-size: 15px;
  font-weight: 600;
  color: var(--an-text);
}
.wf-overhaul-desc-header .wf-overhaul-desc-count {
  font-size: 12px;
  font-weight: 700;
  color: #ec4e36;
  background: rgba(236, 78, 54, 0.1);
  padding: 2px 9px;
  border-radius: 999px;
}

.wf-overhaul-desc-card {
  border: 1.5px solid var(--an-border);
  border-radius: 16px;
  padding: 16px 18px;
  background: var(--an-surface2);
  display: flex;
  flex-direction: column;
  gap: 10px;
  animation: overhaulCardIn 0.28s cubic-bezier(0.22, 0.68, 0, 1.2) both;
}
.wf-overhaul-desc-card__badge {
  align-self: flex-start;
  padding: 2px 10px;
  border-radius: 999px;
  font-size: 10.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  background: rgba(236, 78, 54, 0.12);
  color: #ec4e36;
}
.wf-overhaul-desc-card__badge--category {
  background: rgba(124, 58, 237, 0.12);
  color: #6d28d9;
}
.wf-overhaul-desc-card__badge--menu {
  background: rgba(14, 165, 233, 0.12);
  color: #0369a1;
}
.wf-overhaul-desc-card__name {
  font-size: 17px;
  font-weight: 700;
  color: var(--an-text);
  line-height: 1.2;
}
.wf-overhaul-desc-card__label {
  display: block;
  font-size: 10.5px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--an-text-muted);
  font-weight: 700;
  margin-bottom: 3px;
}
.wf-overhaul-desc-card__old {
  font-size: 13px;
  color: var(--an-text-muted);
  line-height: 1.4;
}
.wf-overhaul-desc-card__new {
  font-size: 14px;
  font-weight: 600;
  color: var(--an-text);
  line-height: 1.4;
  background: linear-gradient(135deg, rgba(236, 78, 54, 0.06), rgba(124, 58, 237, 0.06));
  border-left: 3px solid #ec4e36;
  padding: 4px 8px;
  border-radius: 0 6px 6px 0;
  display: block;
}

.wf-overhaul-desc-stream {
  display: flex;
  flex-direction: column;
  gap: 10px;
  max-height: 380px;
  overflow-y: auto;
  padding-right: 4px;
  mask-image: linear-gradient(to bottom, transparent 0%, black 48px, black 100%);
  -webkit-mask-image: linear-gradient(to bottom, transparent 0%, black 48px, black 100%);
}
.wf-overhaul-desc-stream .wf-overhaul-desc-card {
  flex-shrink: 0;
}

.wf-overhaul-desc-placeholder {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 16px 18px;
  border: 1.5px dashed var(--an-border);
  border-radius: 16px;
}
.wf-overhaul-desc-placeholder__line {
  height: 12px;
  border-radius: 8px;
  background: linear-gradient(90deg, var(--an-surface2) 25%, var(--an-surface) 50%, var(--an-surface2) 75%);
  background-size: 800px 100%;
  animation: overhaulShimmer 1.4s infinite linear;
}
.wf-overhaul-desc-placeholder__line--title {
  height: 18px;
  width: 55%;
}
.wf-overhaul-desc-placeholder__line--short {
  width: 40%;
}

.wf-overhaul-img-phase {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.wf-overhaul-img-header {
  display: flex;
  align-items: center;
  gap: 10px;
}
.wf-overhaul-img-header .wf-overhaul-img-headline {
  flex: 1;
  font-size: 15px;
  font-weight: 600;
  color: var(--an-text);
}
.wf-overhaul-img-header .wf-overhaul-img-count {
  font-size: 12px;
  font-weight: 700;
  color: #ec4e36;
  background: rgba(236, 78, 54, 0.1);
  padding: 2px 9px;
  border-radius: 999px;
}

.wf-overhaul-img-bar {
  width: 100%;
}

.wf-overhaul-img-meta {
  display: flex;
  gap: 6px;
  font-size: 12.5px;
  color: var(--an-text-muted);
}
.wf-overhaul-img-meta small {
  font-weight: 600;
}

.wf-overhaul-img-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
  gap: 10px;
  max-height: 320px;
  overflow-y: auto;
  padding-right: 4px;
}
.wf-overhaul-img-grid--summary {
  max-height: 420px;
  margin-top: 20px;
}
.wf-overhaul-img-grid--placeholder {
  max-height: unset;
  overflow: visible;
}

.wf-overhaul-img-tile {
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--an-border);
  background: var(--an-surface2);
  display: flex;
  flex-direction: column;
  animation: overhaulImgIn 0.35s cubic-bezier(0.22, 0.68, 0, 1.2) both;
}
.wf-overhaul-img-tile img {
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
  display: block;
}
.wf-overhaul-img-tile__info {
  padding: 5px 6px 6px;
  display: flex;
  flex-direction: column;
  gap: 1px;
}
.wf-overhaul-img-tile__name {
  font-size: 10.5px;
  font-weight: 600;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.wf-overhaul-img-tile__kind {
  font-size: 9.5px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--an-text-muted);
}
.wf-overhaul-img-tile__kind--avatar {
  color: #ec4e36;
}
.wf-overhaul-img-tile__kind--banner {
  color: #0369a1;
}
.wf-overhaul-img-tile__kind--enhance {
  color: #059669;
}
.wf-overhaul-img-tile--pulse {
  aspect-ratio: 1/1;
  border-radius: 12px;
  background: var(--an-surface2);
  animation: overhaulPulse 1.2s ease-in-out infinite;
}

.wf-translate-langs {
  padding: 0 16px 16px;
}
.wf-translate-langs md-checkbox {
  display: block;
  margin-bottom: 8px;
}
.wf-translate-langs md-checkbox .md-label {
  display: flex;
  align-items: center;
}
.wf-translate-langs .wf-translate-langs__badge {
  font-size: 11px;
  background: #e2e8f0;
  color: #475569;
  padding: 2px 8px;
  border-radius: 12px;
  margin-left: 10px;
  font-weight: 500;
}
.waitry-dark-theme .wf-translate-langs .wf-translate-langs__badge {
  background: #334155;
  color: #cbd5e1;
}
.wf-translate-langs .wf-translate-langs__empty {
  color: #666;
  font-style: italic;
}

.wf-translate-running {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
}

.wf-translate-route {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin-top: 24px;
  margin-bottom: 8px;
  padding: 12px 24px;
  background: var(--an-surface2);
  border-radius: 999px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}
.waitry-dark-theme .wf-translate-route {
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.wf-translate-route__lang {
  font-size: 16px;
  font-weight: 700;
  color: var(--an-text-muted);
  letter-spacing: 1px;
}
.wf-translate-route__lang.highlight {
  color: #ec4e36;
}

.wf-translate-route__icon {
  color: var(--an-text-muted);
  opacity: 0.5;
  font-size: 20px;
  width: 20px;
  height: 20px;
  margin: 0 !important;
}

.wf-translate-progress-info {
  margin-top: 16px;
  margin-bottom: 4px;
  font-size: 16px;
}

.wf-translate-progress-entity {
  color: #ec4e36;
  font-size: 14px;
  font-weight: 600;
  margin: 0;
}

.wf-translate-success-icon {
  font-size: 64px;
  --an-icon-size: 64px;
  color: #4caf50;
  width: 64px;
  height: 64px;
}

.wf-translate-success-title {
  margin-top: 24px;
}

.wf-translate-error {
  margin-top: 16px;
  color: #f44336;
}
.wf-translate-error md-icon {
  color: inherit;
}

.wf-studio-cost-summary {
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-left: 8px;
}
.wf-studio-cost-summary__val {
  font-size: 14.5px;
  font-weight: 500;
  color: var(--an-text);
  display: flex;
  align-items: center;
  gap: 6px;
}
.wf-studio-cost-summary__val i {
  color: #f59e0b;
  font-size: 17px;
}
.wf-studio-cost-summary__warn {
  font-size: 12px;
  color: #ef4444;
  margin-top: 2px;
}
.wf-studio-cost-summary.is-over .wf-studio-cost-summary__val {
  color: #ef4444;
}
.waitry-dark-theme .wf-studio-cost-summary__val {
  color: rgba(255, 255, 255, 0.9);
}

.wf-translate-langs-header {
  margin-top: 12px;
  margin-bottom: 8px;
  padding: 0 12px;
}
.wf-translate-langs-header .wf-translate-langs-source {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 13.5px;
  color: var(--an-text-muted);
}
.wf-translate-langs-header .wf-translate-langs-source md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  color: var(--an-text-muted);
}
.wf-translate-langs-header .wf-translate-langs-source strong {
  color: var(--an-text);
  font-weight: 500;
}
.wf-translate-langs-header md-button {
  min-width: 0;
  margin: 0;
  padding: 0 8px;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.waitry-dark-theme .wf-translate-langs-header .wf-translate-langs-source strong {
  color: rgba(255, 255, 255, 0.9);
}

@keyframes wf-tjob-pulse {
  0%, 100% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0.35;
    transform: scale(0.72);
  }
}
.wf-tjob {
  padding: 4px 4px 8px;
}
.wf-tjob__head {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 14px;
}
.wf-tjob__pct {
  flex: 0 0 auto;
  font-size: 42px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -0.02em;
  color: #7c3aed;
  font-variant-numeric: tabular-nums;
}
.wf-tjob__pct small {
  font-size: 20px;
  font-weight: 600;
  opacity: 0.6;
  margin-left: 1px;
}
.wf-tjob__meta {
  flex: 1 1 auto;
  min-width: 0;
}
.wf-tjob__meta h3 {
  margin: 0 0 3px;
  font-size: 15px;
  font-weight: 600;
  color: var(--an-text);
}
.wf-tjob__meta p {
  margin: 0;
  font-size: 12.5px;
  line-height: 1.45;
  color: var(--an-text-muted);
}
.wf-tjob__tally {
  flex: 0 0 auto;
  align-self: flex-start;
  font-size: 12.5px;
  color: var(--an-text-muted);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  background: var(--an-surface2);
  border-radius: 10px;
  padding: 3px 9px;
}
.wf-tjob__tally strong {
  color: var(--an-text);
  font-weight: 600;
}
.wf-tjob__bar {
  border-radius: 999px;
  overflow: hidden;
  margin-bottom: 18px;
  height: 6px;
}
.wf-tjob__bar .md-container {
  height: 6px !important;
  border-radius: 999px !important;
  background-color: rgba(124, 58, 237, 0.14) !important;
}
.wf-tjob__bar .md-bar {
  height: 6px !important;
}
.wf-tjob__bar .md-bar1 {
  background: none !important;
  animation: none !important;
}
.wf-tjob__bar .md-bar2 {
  border-radius: 999px !important;
  background: linear-gradient(90deg, #7c3aed 0%, #a78bfa 50%, #7c3aed 100%) !important;
  background-size: 400px 100% !important;
}
.wf-tjob__lanes {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.wf-tjob__lane {
  border: 1px solid var(--an-border);
  border-radius: 10px;
  padding: 9px 11px 11px;
  background: var(--an-surface2);
  transition: border-color 0.25s ease, background 0.25s ease;
}
.wf-tjob__lane.is-active {
  border-color: rgba(124, 58, 237, 0.35);
  background: rgba(124, 58, 237, 0.04);
}
.wf-tjob__lane.is-done {
  border-color: rgba(22, 163, 74, 0.28);
  background: rgba(22, 163, 74, 0.035);
}
.wf-tjob__lane-head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 9px;
}
.wf-tjob__lang {
  flex: 0 0 auto;
  min-width: 34px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.07em;
  color: #7c3aed;
  background: rgba(124, 58, 237, 0.12);
  border-radius: 5px;
  padding: 3px 7px;
  text-align: center;
}
.wf-tjob__lane-track {
  flex: 1 1 auto;
  height: 3px;
  border-radius: 999px;
  background: var(--an-border);
  overflow: hidden;
}
.wf-tjob__lane-track i {
  display: block;
  height: 100%;
  border-radius: 999px;
  background: #7c3aed;
  transition: width 0.4s ease;
}
.wf-tjob__lane.is-done .wf-tjob__lane-track i {
  background: #16a34a;
}
.wf-tjob__lane-count {
  flex: 0 0 auto;
  font-size: 11.5px;
  color: var(--an-text-muted);
  font-variant-numeric: tabular-nums;
}
.wf-tjob__chips {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(236px, 1fr));
  gap: 5px;
}
.wf-tjob__chip {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  font-size: 12px;
  color: var(--an-text-muted);
  border: 1px solid var(--an-border);
  border-radius: 7px;
  padding: 4px 9px;
  background: var(--an-surface);
  transition: color 0.25s ease, border-color 0.25s ease, background 0.25s ease;
}
.wf-tjob__chip-ico {
  flex: 0 0 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 14px;
}
.wf-tjob__chip-ico md-icon {
  font-size: 13px;
  width: 13px;
  height: 13px;
  min-height: 13px;
  color: inherit;
}
.wf-tjob__chip-ico .wf-tjob__pulse {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: currentColor;
  animation: wf-tjob-pulse 1.1s ease-in-out infinite;
}
.wf-tjob__chip-txt {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.wf-tjob__chip.is-running {
  color: #7c3aed;
  border-color: rgba(124, 58, 237, 0.4);
  background: rgba(124, 58, 237, 0.07);
  font-weight: 500;
}
.wf-tjob__chip.is-done {
  color: #16a34a;
  border-color: rgba(22, 163, 74, 0.3);
  background: rgba(22, 163, 74, 0.06);
}
.wf-tjob__chip.is-failed {
  color: #ef4444;
  border-color: rgba(239, 68, 68, 0.4);
  background: rgba(239, 68, 68, 0.06);
}
.wf-tjob__chip.is-cancelled {
  opacity: 0.5;
  text-decoration: line-through;
}
.wf-tjob__summary {
  display: flex;
  justify-content: center;
  gap: 22px;
  margin-top: 14px;
  font-size: 13.5px;
  color: var(--an-text-muted);
}
.wf-tjob__summary span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.wf-tjob__summary md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  min-height: 16px;
  color: inherit;
}
.wf-tjob__warn-icon {
  color: #f59e0b !important;
}
.wf-tjob__failed {
  margin: 14px auto 0;
  max-width: 460px;
  max-height: 200px;
  overflow-y: auto;
  text-align: left;
}
.wf-tjob__failed-row {
  display: flex;
  align-items: baseline;
  gap: 10px;
  padding: 6px 10px;
  border-bottom: 1px solid var(--an-border);
  font-size: 12.5px;
  color: var(--an-text);
}
.wf-tjob__failed-row em {
  color: #ef4444;
  font-style: normal;
  font-size: 11.5px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.wf-tjob__confirm {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 13px;
  color: #ef4444;
}
.waitry-dark-theme .wf-tjob__lang {
  background: rgba(124, 58, 237, 0.22);
  color: #a78bfa;
}
.waitry-dark-theme .wf-tjob__pct {
  color: #a78bfa;
}
.waitry-dark-theme .wf-tjob__tally {
  background: rgba(255, 255, 255, 0.06);
}
.waitry-dark-theme .wf-tjob__lane {
  background: rgba(255, 255, 255, 0.02);
}
.waitry-dark-theme .wf-tjob__chip {
  background: rgba(255, 255, 255, 0.02);
}
.waitry-dark-theme .wf-tjob__bar .md-container {
  background-color: rgba(167, 139, 250, 0.18) !important;
}
.waitry-dark-theme .wf-tjob__bar .md-bar2 {
  background: linear-gradient(90deg, #8b5cf6 0%, #c4b5fd 50%, #8b5cf6 100%) !important;
  background-size: 400px 100% !important;
}
.waitry-dark-theme .wf-tjob__lane-track i {
  background: #a78bfa;
}
.waitry-dark-theme .wf-tjob .wf-tjob__chip.is-running {
  color: #a78bfa;
  border-color: rgba(167, 139, 250, 0.45);
  background: rgba(167, 139, 250, 0.1);
}
.waitry-dark-theme .wf-tjob .wf-tjob__chip.is-done {
  color: #4ade80;
  border-color: rgba(74, 222, 128, 0.3);
  background: rgba(74, 222, 128, 0.08);
}

.wf-tjob-chip {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  height: 30px;
  padding: 0 12px 0 9px;
  margin: 0 6px;
  border: none;
  outline: none;
  border-radius: 15px;
  cursor: pointer;
  background: rgba(124, 58, 237, 0.12);
  color: #7c3aed;
  font-size: 12.5px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  transition: background 0.2s ease;
}
.wf-tjob-chip:hover {
  background: rgba(124, 58, 237, 0.2);
}
.wf-tjob-chip md-progress-circular {
  margin: 0;
}
.wf-tjob-chip md-progress-circular svg path {
  stroke: currentColor;
}
.wf-tjob-chip md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  min-height: 15px;
  color: inherit;
}

.wf-library {
  max-width: 960px;
  width: 92vw;
}

.wf-library-pick-btn {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 38px !important;
  min-height: 38px !important;
  line-height: 38px !important;
  padding: 0 18px !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0.01em !important;
  text-transform: none !important;
  border-radius: 999px !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  border: 1px solid var(--an-border) !important;
  background: var(--an-surface) !important;
  color: var(--an-text) !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05) !important;
}
.wf-library-pick-btn md-icon {
  color: var(--an-text-muted) !important;
  margin: 0 !important;
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  line-height: 16px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.wf-library-pick-btn:hover:not([disabled]) {
  border-color: rgba(236, 78, 54, 0.35) !important;
  color: #ec4e36 !important;
  transform: translateY(-1.5px) scale(1.01);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08) !important;
}
.wf-library-pick-btn:hover:not([disabled]) md-icon {
  color: #ec4e36 !important;
}
.wf-library-pick-btn:active:not([disabled]) {
  transform: translateY(0) scale(0.98);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06) !important;
}

.wf-library-body {
  display: flex;
  flex-direction: column;
  padding: 4px 2px;
  min-height: 320px;
}

.wf-library-toolbar {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 14px;
}

.wf-library-search {
  display: flex;
  align-items: center;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: 8px;
  padding: 0 4px 0 10px;
  height: 36px;
  max-width: 340px;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.wf-library-search:focus-within {
  border-color: #ec4e36;
  box-shadow: 0 0 0 2px rgba(236, 78, 54, 0.15);
}
.wf-library-search__icon {
  font-size: 18px !important;
  width: 18px !important;
  height: 18px !important;
  color: var(--an-text-muted);
  flex-shrink: 0;
  margin-right: 6px;
}
.wf-library-search__input {
  flex: 1;
  border: none;
  background: transparent;
  outline: none;
  font-size: 13.5px;
  color: var(--an-text);
  line-height: 34px;
  font-family: inherit;
}
.wf-library-search__input::placeholder {
  color: var(--an-placeholder);
}
.wf-library-search__clear {
  margin: 0 !important;
  min-width: 28px !important;
  width: 28px !important;
  height: 28px !important;
  min-height: 28px !important;
  padding: 0 !important;
  opacity: 0.5;
}
.wf-library-search__clear:hover {
  opacity: 1;
}
.wf-library-search__clear md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
}

.wf-library-searchrow {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}

.wf-library-allvenues {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 4px 12px;
  border-radius: 999px;
  background: rgba(236, 78, 54, 0.07);
  border: 1px solid rgba(236, 78, 54, 0.2);
}
.waitry-dark-theme .wf-library-allvenues {
  background: rgba(236, 78, 54, 0.12);
  border-color: rgba(236, 78, 54, 0.3);
}
.wf-library-allvenues md-switch {
  margin: 0;
}
.wf-library-allvenues__icon {
  color: #ec4e36 !important;
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  margin-right: 4px !important;
  vertical-align: middle;
}
.wf-library-allvenues__label {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
  white-space: nowrap;
}
.wf-library-allvenues__hint {
  font-size: 12px;
  color: var(--an-text-muted);
}

.wf-library-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 0;
}
.wf-library-filters .md-button {
  border: 1.5px solid var(--an-border);
  transition: box-shadow 0.15s ease, border-color 0.15s ease;
}
.wf-library-filters .md-button.md-primary {
  border-color: transparent;
  box-shadow: 0 2px 8px rgba(236, 78, 54, 0.35);
}

.wf-library-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  gap: 12px;
}

.wf-library-card {
  position: relative;
  border-radius: 14px;
  overflow: hidden;
  border: 1.5px solid var(--an-border);
  background: var(--an-surface);
  cursor: pointer;
  transition: border-color 0.15s ease, transform 0.1s ease;
  aspect-ratio: 1/1;
}
.wf-library-card:hover {
  border-color: rgba(236, 78, 54, 0.6);
}
.wf-library-card:hover .wf-library-card__archive {
  opacity: 1;
}
.wf-library-card img, .wf-library-card video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.wf-library-card__badge {
  position: absolute;
  top: 6px;
  left: 6px;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  background: rgba(0, 0, 0, 0.55);
  color: #fff;
}
.wf-library-card__venue {
  position: absolute;
  top: 6px;
  right: 6px;
  max-width: calc(100% - 12px);
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.01em;
  background: rgba(236, 78, 54, 0.9);
  color: #fff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.wf-library-card__archive {
  position: absolute;
  top: 6px;
  right: 6px;
  opacity: 0;
  transition: opacity 0.15s ease;
  background: rgba(0, 0, 0, 0.55);
  color: #fff;
  border-radius: 50%;
  width: 26px;
  height: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.wf-library-card__archive md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  color: #fff;
}
.wf-library-card__video-icon {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 28px;
  --an-icon-size: 28px;
  width: 28px;
  height: 28px;
  color: #fff;
  opacity: 0.9;
  pointer-events: none;
  filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.5));
  z-index: 1;
}

.wf-library-empty {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 60px 20px;
  color: var(--an-text-muted);
  text-align: center;
}
.wf-library-empty__icon-wrap {
  width: 56px;
  height: 56px;
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
}
.wf-library-empty md-icon {
  font-size: 26px;
  width: 26px;
  height: 26px;
  opacity: 0.6;
  color: var(--an-text-muted);
}
.wf-library-empty p {
  font-weight: 600;
  line-height: 1.4;
}

.wf-library-more {
  display: flex;
  justify-content: center;
  margin-top: 16px;
}

.wf-library-tags {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
}

.wf-library-tags__label {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  color: var(--an-text-faint);
  margin-right: 2px;
}

.wf-library-tag-chip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-pill);
  background: var(--an-surface2);
  color: var(--an-text-muted);
  font-size: 12px;
  font-weight: 600;
  padding: 4px 10px;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}
.wf-library-tag-chip:hover {
  border-color: var(--an-border-hover);
}
.wf-library-tag-chip.active {
  border-color: transparent;
  background: rgba(236, 78, 54, 0.12);
  color: #ec4e36;
  box-shadow: 0 1px 4px rgba(236, 78, 54, 0.2);
}
.wf-library-tag-chip__count {
  opacity: 0.65;
  font-weight: 500;
  font-size: 10.5px;
}

.wf-library-card__tags {
  position: absolute;
  left: 6px;
  right: 6px;
  bottom: 6px;
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  pointer-events: none;
}

.wf-library-card__tag {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  background: rgba(0, 0, 0, 0.55);
  color: #fff;
  font-size: 9.5px;
  font-weight: 600;
  border-radius: var(--an-radius-pill);
  padding: 2px 6px;
  pointer-events: auto;
}
.wf-library-card__tag--overflow {
  opacity: 0.85;
}

.wf-library-card__tag-remove {
  opacity: 0;
  transition: opacity 0.12s ease;
  cursor: pointer;
  line-height: 1;
  font-size: 11px;
}
.wf-library-card__tag:hover .wf-library-card__tag-remove {
  opacity: 0.85;
}
.wf-library-card__tag-remove:hover {
  opacity: 1 !important;
}

.wf-library-card__tag-add {
  position: absolute;
  top: 6px;
  right: 38px;
  opacity: 0;
  transition: opacity 0.15s ease;
  background: rgba(0, 0, 0, 0.55);
  color: #fff;
  border: none;
  border-radius: 50%;
  width: 26px;
  height: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.wf-library-card:hover .wf-library-card__tag-add {
  opacity: 1;
}
.wf-library-card__tag-add md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  color: #fff;
}

.wf-library-tag-input {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 6px;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.55) 40%, transparent);
}
.wf-library-tag-input input {
  width: 100%;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
  color: var(--an-text);
  font-size: 12.5px;
  line-height: 28px;
  padding: 0 8px;
  outline: none;
  box-shadow: var(--an-shadow-md);
}
.wf-library-tag-input input:focus {
  border-color: #ec4e36;
}

.wf-library-tag-suggestions {
  margin-top: 4px;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  box-shadow: var(--an-shadow-md);
  overflow: hidden;
}
.wf-library-tag-suggestions__item {
  padding: 6px 8px;
  font-size: 12px;
  color: var(--an-text);
  cursor: pointer;
}
.wf-library-tag-suggestions__item:hover {
  background: var(--an-surface2);
}

.wf-library-sentinel {
  width: 100%;
  height: 1px;
}

.wf-library-loading-more {
  display: flex;
  justify-content: center;
  padding: 16px;
}

@keyframes wf-library-pulse {
  0%, 100% {
    opacity: 0.5;
  }
  50% {
    opacity: 0.9;
  }
}
.wf-library-skeleton {
  border-radius: 14px;
  aspect-ratio: 1/1;
  background: var(--an-surface2);
  animation: wf-library-pulse 1.4s ease-in-out infinite;
}

.wf-library-filter-sep {
  width: 1px;
  align-self: stretch;
  margin: 4px 4px;
  background: var(--an-border);
}

.wf-library-page .wf-library-search {
  margin-bottom: 0;
  min-width: 220px;
}

.wf-library-page-body {
  padding: 16px 20px 32px;
  overflow-y: auto;
}

.wf-library-page .wf-library-card {
  aspect-ratio: unset;
  display: flex;
  flex-direction: column;
}
.wf-library-page .wf-library-card__media {
  position: relative;
  aspect-ratio: 1/1;
}
.wf-library-page .wf-library-card__title-bar {
  padding: 6px 8px;
  border-top: 1px solid var(--an-border);
  background: var(--an-surface);
}
.wf-library-page .wf-library-card__title {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text);
  cursor: text;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.wf-library-page .wf-library-card__title md-icon {
  font-size: 13px;
  width: 13px;
  height: 13px;
  color: var(--an-text-faint);
  opacity: 0;
  transition: opacity 0.15s ease;
  flex-shrink: 0;
}
.wf-library-page .wf-library-card__title:hover md-icon {
  opacity: 1;
}
.wf-library-page .wf-library-card__title-input {
  width: 100%;
  border: 1px solid rgba(236, 78, 54, 0.5);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
  color: var(--an-text);
  font-size: 12px;
  font-weight: 600;
  padding: 2px 4px;
  outline: none;
}
.wf-library-page .wf-library-card__format-select {
  margin-top: 4px;
  width: 100%;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
  color: var(--an-text-muted);
  font-size: 11px;
  font-weight: 600;
  padding: 2px 4px;
  outline: none;
}
.wf-library-page .wf-library-card__format-select:hover, .wf-library-page .wf-library-card__format-select:focus {
  border-color: var(--an-border-hover);
  color: var(--an-text);
}
.wf-library-page .wf-library-card__actions {
  position: absolute;
  top: 6px;
  right: 6px;
  display: flex;
  gap: 4px;
  opacity: 0;
  transition: opacity 0.15s ease;
}
.wf-library-page .wf-library-card__actions button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.55);
  color: #fff;
}
.wf-library-page .wf-library-card__actions button md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  color: #fff;
}
.wf-library-page .wf-library-card__actions button:hover {
  background: rgba(0, 0, 0, 0.78);
}
.wf-library-page .wf-library-card:hover .wf-library-card__actions {
  opacity: 1;
}

.wf-library-upload {
  max-width: 560px;
  width: 92vw;
}

.wf-library-upload-body {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 4px 2px;
  min-height: 200px;
}

.wf-library-upload-dropzone {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 28px 16px;
  border: 1.5px dashed var(--an-border);
  border-radius: 14px;
  background: var(--an-surface2);
  color: var(--an-text-muted);
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: border-color 0.15s ease, color 0.15s ease;
}
.wf-library-upload-dropzone md-icon {
  font-size: 26px;
  width: 26px;
  height: 26px;
  opacity: 0.7;
}
.wf-library-upload-dropzone:hover {
  border-color: rgba(236, 78, 54, 0.6);
  color: #ec4e36;
}
.wf-library-upload-dropzone:hover md-icon {
  opacity: 1;
}

.wf-library-upload-format {
  display: flex;
  align-items: center;
  gap: 10px;
}
.wf-library-upload-format label {
  margin: 0;
  white-space: nowrap;
}
.wf-library-upload-format select {
  flex: 1;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
  color: var(--an-text);
  font-size: 13px;
  padding: 6px 8px;
}

.wf-library-upload-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  max-height: 320px;
  overflow-y: auto;
}

.wf-library-upload-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 6px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
}
.wf-library-upload-item img, .wf-library-upload-item video {
  width: 44px;
  height: 44px;
  object-fit: cover;
  border-radius: 8px;
  flex-shrink: 0;
  background: var(--an-surface2);
}
.wf-library-upload-item input[type=text] {
  flex: 1;
  min-width: 0;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
  color: var(--an-text);
  font-size: 13px;
  padding: 6px 8px;
}
.wf-library-upload-item button {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  color: var(--an-text-muted);
}
.wf-library-upload-item button md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
}
.wf-library-upload-item button:hover {
  background: var(--an-surface2);
  color: var(--an-text);
}

.wf-library-upload-progress {
  display: flex;
  align-items: center;
  gap: 10px;
}
.wf-library-upload-progress md-progress-linear {
  flex: 1;
}
.wf-library-upload-progress span {
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text-muted);
  white-space: nowrap;
}

.sp-search {
  display: flex;
  align-items: center;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: 8px;
  padding: 0 10px;
  height: 36px;
  min-width: 220px;
}
.sp-search:focus-within {
  border-color: #ec4e36;
}
.sp-search__icon {
  font-size: 18px !important;
  width: 18px !important;
  height: 18px !important;
  color: var(--an-text-muted);
  flex-shrink: 0;
  margin-right: 6px;
}
.sp-search__input {
  flex: 1;
  border: none;
  background: transparent;
  outline: none;
  font-size: 13.5px;
  color: var(--an-text);
  line-height: 34px;
  font-family: inherit;
}
.sp-search__input::placeholder {
  color: var(--an-placeholder);
}

.sp-page-body {
  padding: 16px 20px 32px;
  overflow-y: auto;
}

.sp-empty {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 60px 20px;
  color: var(--an-text-muted);
  text-align: center;
}
.sp-empty__icon-wrap {
  width: 56px;
  height: 56px;
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
}
.sp-empty__title {
  font-weight: 700;
  font-size: 15px;
  color: var(--an-text);
}
.sp-empty md-icon {
  font-size: 26px;
  width: 26px;
  height: 26px;
  opacity: 0.6;
  color: var(--an-text-muted);
}

.sp-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 16px;
}

.sp-card {
  display: flex;
  flex-direction: column;
  border-radius: 10px;
  overflow: hidden;
  border: 1px solid var(--an-border);
  background: var(--an-surface);
  box-shadow: var(--an-shadow-sm);
  cursor: pointer;
  transition: box-shadow 0.18s ease, transform 0.18s ease;
}
.sp-card:hover {
  box-shadow: var(--an-shadow-md);
  transform: translateY(-2px);
}
.sp-card:hover .sp-card__actions {
  opacity: 1;
}
.sp-card:hover .sp-card__thumb > img,
.sp-card:hover .sp-card__thumb > video {
  transform: scale(1.04);
}
.sp-card__thumb {
  position: relative;
  aspect-ratio: 16/10;
  background: var(--an-surface2);
  overflow: hidden;
}
.sp-card__thumb > img, .sp-card__thumb > video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.25s ease;
}
.sp-card__thumb-empty {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.sp-card__thumb-empty md-icon {
  font-size: 26px;
  width: 26px;
  height: 26px;
  opacity: 0.4;
  color: var(--an-text-muted);
}
.sp-card__preview-stack {
  position: absolute;
  inset: 0;
}
.sp-card__preview-frame {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transition: opacity 0.35s ease;
}
.sp-card__preview-frame--active {
  opacity: 1;
}
.sp-card__live {
  position: absolute;
  top: 8px;
  left: 8px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 9px;
  border-radius: 999px;
  font-size: 10.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  background: rgba(34, 197, 94, 0.92);
  color: #fff;
}
.sp-card__live md-icon {
  font-size: 13px;
  width: 13px;
  height: 13px;
  color: #fff;
}
.sp-card__body {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 10px 12px 6px;
  flex: 1;
}
.sp-card__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
}
.sp-card__header md-switch {
  margin: -2px 0 0;
  flex-shrink: 0;
  transform: scale(0.85);
  transform-origin: right center;
}
.sp-card__name {
  font-weight: 600;
  font-size: 13.5px;
  line-height: 1.35;
  color: var(--an-text);
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.sp-card__meta {
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.sp-card__meta-item {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 11.5px;
  color: var(--an-text-muted);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sp-card__meta-item md-icon {
  font-size: 13px;
  width: 13px;
  height: 13px;
  flex-shrink: 0;
  color: var(--an-text-faint);
}
.sp-card__actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
  padding: 4px 4px 4px 0;
  margin: 4px -12px -6px;
  border-top: 1px solid var(--an-border);
  opacity: 0;
  transition: opacity 0.18s ease;
}
.sp-card__actions .md-button {
  margin: 0 !important;
  min-width: 30px !important;
  width: 30px !important;
  height: 30px !important;
  min-height: 30px !important;
  padding: 0 !important;
  color: var(--an-text-muted) !important;
}
.sp-card__actions .md-button md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
}
.sp-card__actions .md-button:hover {
  color: var(--an-text) !important;
}

.sp-kiosk-banner {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
  margin: 12px 0 18px;
  border-radius: 12px;
  border: 1px solid rgba(236, 78, 54, 0.25);
  background: rgba(236, 78, 54, 0.06);
  color: var(--an-text);
  text-decoration: none;
  font-weight: 600;
  font-size: 13.5px;
  transition: border-color 0.15s ease, background 0.15s ease;
}
.sp-kiosk-banner md-icon:first-child {
  color: #ec4e36;
}
.sp-kiosk-banner md-icon:last-child {
  margin-left: auto;
  opacity: 0.6;
  font-size: 16px;
  width: 16px;
  height: 16px;
}
.sp-kiosk-banner:hover {
  border-color: rgba(236, 78, 54, 0.5);
  background: rgba(236, 78, 54, 0.1);
}

.sp-warn-banner {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  margin: 12px 0 18px;
  border-radius: 12px;
  border: 1px solid rgba(245, 158, 11, 0.28);
  background: linear-gradient(135deg, rgba(245, 158, 11, 0.1), rgba(245, 158, 11, 0.04));
  color: var(--an-text);
  text-decoration: none;
  transition: border-color 0.15s ease, background 0.15s ease, transform 0.15s ease;
}
.sp-warn-banner:hover {
  border-color: rgba(245, 158, 11, 0.5);
  background: linear-gradient(135deg, rgba(245, 158, 11, 0.15), rgba(245, 158, 11, 0.06));
  transform: translateY(-1px);
}
.sp-warn-banner__icon {
  flex-shrink: 0;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(245, 158, 11, 0.16);
}
.sp-warn-banner__icon md-icon {
  color: #f59e0b;
  font-size: 19px;
  width: 19px;
  height: 19px;
}
.sp-warn-banner__text {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
  flex: 1;
}
.sp-warn-banner__title {
  font-weight: 700;
  font-size: 13.5px;
  color: var(--an-text);
}
.sp-warn-banner__desc {
  font-size: 12px;
  line-height: 1.4;
  color: var(--an-text-muted);
}
.sp-warn-banner__cta {
  flex-shrink: 0;
  font-weight: 700;
  font-size: 12.5px;
  color: #f59e0b;
  white-space: nowrap;
}
.sp-warn-banner__arrow {
  flex-shrink: 0;
  opacity: 0.6;
  font-size: 16px;
  --an-icon-size: 16px;
  width: 16px;
  height: 16px;
  color: #f59e0b;
}

@media (max-width: 640px) {
  .sp-warn-banner {
    flex-wrap: wrap;
  }
  .sp-warn-banner__cta {
    display: none;
  }
}
.sp-details-dialog {
  max-width: 560px;
  width: 92vw;
  border-radius: 14px;
  overflow: hidden;
}

.sp-details-content {
  max-height: 70vh;
}
.sp-details-content .md-dialog-content {
  padding: 22px 24px 26px;
}

.sp-section-title {
  margin: 26px 0 10px;
  font-size: 11.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--an-text-faint);
}
.sp-section-title:first-of-type {
  margin-top: 22px;
}

.sp-section-hint {
  font-size: 12.5px;
  color: var(--an-text-muted);
  margin: 0 0 10px;
}

.sp-field-row {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  margin-top: 8px;
}

.sp-priority-field {
  flex: 0 0 100px;
  margin: 0 !important;
}
.sp-priority-field input {
  text-align: center;
}

.sp-field-hint {
  flex: 1;
  margin: 12px 0 0;
  font-size: 12px;
  line-height: 1.4;
  color: var(--an-text-muted);
}

.sp-schedule-empty,
.sp-empty-hint {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 14px;
  border-radius: var(--an-radius-pill);
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  color: var(--an-text-muted);
  font-size: 12.5px;
  font-weight: 600;
}
.sp-schedule-empty md-icon,
.sp-empty-hint md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  color: var(--an-text-faint);
}

.sp-empty-hint {
  margin-top: 4px;
}

.sp-window {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 12px 14px;
  margin-bottom: 8px;
  border-radius: 10px;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  transition: border-color 0.15s ease;
}
.sp-window:hover {
  border-color: var(--an-border-hover);
}

.sp-window__days {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.sp-day-pill {
  border: 1px solid var(--an-border);
  background: var(--an-surface);
  color: var(--an-text-muted);
  border-radius: 999px;
  font-size: 11px;
  font-weight: 600;
  padding: 4px 10px;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}
.sp-day-pill:hover {
  border-color: var(--an-border-hover);
}
.sp-day-pill--on {
  border-color: transparent;
  background: #ec4e36;
  color: #fff;
  box-shadow: 0 1px 4px rgba(236, 78, 54, 0.35);
}

.sp-window__times {
  display: flex;
  align-items: center;
  gap: 8px;
}
.sp-window__times input[type=time] {
  border: 1px solid var(--an-border);
  border-radius: 7px;
  background: var(--an-surface);
  color: var(--an-text);
  padding: 5px 8px;
  font-size: 13px;
}
.sp-window__times .md-button {
  margin: 0 0 0 auto !important;
  min-width: 30px !important;
  width: 30px !important;
  height: 30px !important;
  min-height: 30px !important;
  padding: 0 !important;
  color: var(--an-text-faint) !important;
}
.sp-window__times .md-button:hover {
  color: #e53935 !important;
}

.sp-window__times-sep {
  color: var(--an-text-faint);
}

.sp-add-window-btn {
  margin: 2px 0 4px !important;
  border: 1px solid var(--an-border) !important;
  box-shadow: none !important;
}

.sp-target-options {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.sp-target-option {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1.5px solid var(--an-border);
  background: var(--an-surface);
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease;
}
.sp-target-option input[type=radio] {
  margin: 0;
  accent-color: #ec4e36;
  flex-shrink: 0;
}
.sp-target-option md-icon {
  font-size: 18px;
  width: 18px;
  height: 18px;
  color: var(--an-text-faint);
  flex-shrink: 0;
}
.sp-target-option span {
  font-size: 13.5px;
  font-weight: 600;
  color: var(--an-text);
}
.sp-target-option:hover {
  border-color: var(--an-border-hover);
}
.sp-target-option--selected {
  border-color: transparent;
  background: rgba(236, 78, 54, 0.08);
  box-shadow: 0 0 0 1.5px #ec4e36 inset;
}
.sp-target-option--selected md-icon {
  color: #ec4e36;
}

.sp-target-picker {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 10px 0 4px 12px;
  margin-left: 4px;
  border-left: 2px solid var(--an-border);
}

.sp-chip {
  border: 1px solid var(--an-border);
  background: var(--an-surface2);
  color: var(--an-text-muted);
  border-radius: var(--an-radius-pill);
  font-size: 12px;
  font-weight: 600;
  padding: 4px 12px;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}
.sp-chip:hover {
  border-color: var(--an-border-hover);
}
.sp-chip--on {
  border-color: transparent;
  background: rgba(236, 78, 54, 0.14);
  color: #ec4e36;
}

.sp-target-picker--radio {
  flex-direction: column;
  align-items: flex-start;
}

.sp-brand-option {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 4px 0;
  cursor: pointer;
  font-size: 13px;
  color: var(--an-text);
}
.sp-brand-option input[type=radio] {
  accent-color: #ec4e36;
  margin: 0;
}
.sp-brand-option--selected span {
  font-weight: 700;
  color: #ec4e36;
}

.sp-view-toggle {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  padding: 2px;
  gap: 2px;
}

.sp-view-toggle__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  padding: 0;
  border: 0;
  border-radius: calc(var(--an-radius-sm) - 2px);
  background: transparent;
  color: var(--an-text-muted);
  cursor: pointer;
  transition: background var(--duration-fast) var(--ease-default), color var(--duration-fast) var(--ease-default);
}
.sp-view-toggle__btn i {
  font-size: 17px;
  line-height: 1;
}
.sp-view-toggle__btn:hover {
  background: var(--an-bg-subtle);
  color: var(--an-text);
}
.sp-view-toggle__btn--active, .sp-view-toggle__btn--active:hover {
  background: #ec4e36;
  color: #fff;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.18);
}
.sp-view-toggle__btn:focus-visible {
  outline: 2px solid #ec4e36;
  outline-offset: 1px;
}

.sp-table .sp-col-schedule {
  width: 220px;
}
.sp-table .sp-col-target {
  width: 190px;
}
.sp-table .sp-col-status {
  width: 70px;
}
.sp-table .sp-td-muted {
  color: var(--an-text-muted);
  font-size: 12.5px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sp-class-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 10.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  color: #ec4e36;
  background: rgba(236, 78, 54, 0.1);
  white-space: nowrap;
}
.sp-class-badge md-icon {
  font-size: 12px;
  width: 12px;
  height: 12px;
  color: inherit;
}

.sp-card__meta-item .sp-class-badge {
  padding: 1px 7px;
}

.sp-class-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  gap: 10px;
  margin-bottom: 6px;
}

.sp-class-tile {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 14px 8px;
  border-radius: 10px;
  border: 1.5px solid var(--an-border);
  background: var(--an-surface);
  cursor: pointer;
  font-family: inherit;
  transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
}
.sp-class-tile md-icon {
  font-size: 22px !important;
  width: 22px !important;
  height: 22px !important;
  min-width: 22px !important;
  color: var(--an-text-muted);
  transition: color 0.15s ease;
}
.sp-class-tile__label {
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text);
  line-height: 1.2;
  text-align: center;
}
.sp-class-tile:hover:not(:disabled) {
  border-color: var(--an-border-hover);
  background: var(--an-surface2);
}
.sp-class-tile:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}
.sp-class-tile--active {
  border-color: #ec4e36;
  background: rgba(236, 78, 54, 0.08);
  box-shadow: 0 0 0 1px #ec4e36;
}
.sp-class-tile--active md-icon, .sp-class-tile--active .sp-class-tile__label {
  color: #ec4e36;
}

.sp-class-locked-hint {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 0 0 14px;
  font-size: 12px;
  line-height: 1.4;
  color: var(--an-text-muted);
}
.sp-class-locked-hint md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  flex-shrink: 0;
  margin-top: 1px;
  color: var(--an-text-faint);
}

.sp-resolution-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 10px;
}

.sp-resolution-custom {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}
.sp-resolution-custom md-input-container {
  margin: 0 !important;
  width: 90px;
}
.sp-resolution-custom md-input-container input {
  text-align: center;
}
.sp-resolution-custom span {
  color: var(--an-text-faint);
}

.sp-sync-chip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 1px 8px;
  border-radius: var(--an-radius-pill);
  font-size: 10.5px;
  font-weight: 700;
  white-space: nowrap;
  color: #7c3aed;
  background: rgba(124, 58, 237, 0.12);
}
.sp-sync-chip md-icon {
  font-size: 12px;
  width: 12px;
  height: 12px;
  color: inherit;
}
.sp-sync-chip--warn {
  color: var(--an-warning, #b45309);
  background: rgba(180, 83, 9, 0.12);
}

.sp-sync-status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: -6px;
  padding: 7px 14px;
  border-radius: var(--an-radius-pill);
  font-size: 12.5px;
  font-weight: 600;
  color: #7c3aed;
  background: rgba(124, 58, 237, 0.1);
}
.sp-sync-status md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  color: inherit;
}
.sp-sync-status--warn {
  color: var(--an-warning, #b45309);
  background: rgba(180, 83, 9, 0.12);
}

.sp-sync-dialog {
  max-width: 1000px;
  width: 94vw;
  border-radius: 14px;
  overflow: hidden;
}

.sp-sync-content {
  max-height: 74vh;
  padding: 0;
}

.sp-sync-layout {
  display: flex;
  align-items: stretch;
  min-height: 420px;
}

.sp-sync-aside {
  flex: 0 0 230px;
  border-right: 1px solid var(--an-border);
  background: var(--an-surface2);
  padding: 14px 12px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.sp-sync-aside__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.sp-sync-aside__head .md-icon-button {
  margin: 0 !important;
}
.sp-sync-aside__title {
  font-size: 11.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--an-text-faint);
}

.sp-sync-grouplist {
  display: flex;
  flex-direction: column;
  gap: 4px;
  overflow-y: auto;
}

.sp-sync-groupitem {
  display: flex;
  align-items: center;
  gap: 9px;
  width: 100%;
  padding: 9px 10px;
  border: 1px solid transparent;
  border-radius: 9px;
  background: transparent;
  text-align: left;
  cursor: pointer;
  color: var(--an-text);
  transition: background 0.15s ease, border-color 0.15s ease;
}
.sp-sync-groupitem:hover {
  background: var(--an-surface);
  border-color: var(--an-border);
}
.sp-sync-groupitem--active {
  background: var(--an-surface);
  border-color: #7c3aed;
}
.sp-sync-groupitem__icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  color: #7c3aed;
  flex-shrink: 0;
}
.sp-sync-groupitem__body {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
  flex: 1;
}
.sp-sync-groupitem__name {
  font-size: 13px;
  font-weight: 600;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sp-sync-groupitem__meta {
  font-size: 11px;
  color: var(--an-text-muted);
}
.sp-sync-groupitem__del {
  font-size: 15px !important;
  width: 15px !important;
  height: 15px !important;
  color: var(--an-text-faint);
  opacity: 0;
  flex-shrink: 0;
  transition: opacity 0.15s ease, color 0.15s ease;
}
.sp-sync-groupitem__del:hover {
  color: var(--an-danger, #dc2626);
}
.sp-sync-groupitem:hover .sp-sync-groupitem__del, .sp-sync-groupitem--active .sp-sync-groupitem__del {
  opacity: 1;
}

.sp-sync-main {
  flex: 1;
  min-width: 0;
  padding: 18px 22px 24px;
  overflow-y: auto;
}
.sp-sync-main--empty {
  display: flex;
  align-items: center;
  justify-content: center;
}
.sp-sync-main .sp-section-title:first-of-type {
  margin-top: 20px;
}

.sp-sync-card {
  border: 1px solid var(--an-border);
  border-radius: 12px;
  background: var(--an-surface2);
  overflow: hidden;
}
.sp-sync-card__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 14px;
  border-bottom: 1px solid var(--an-border);
}
.sp-sync-card__title {
  font-size: 11.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--an-text-faint);
}
.sp-sync-card__actions {
  display: flex;
  gap: 8px;
}
.sp-sync-card__actions .md-button {
  margin: 0 !important;
}
.sp-sync-card__actions md-icon, .sp-sync-card__actions [class*=iconoir-] {
  margin-right: 6px;
}
.sp-sync-card__body {
  padding: 6px 14px 14px;
}

.sp-sync-toggle {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}
.sp-sync-toggle md-switch {
  margin: 0 14px 0 0;
}
.sp-sync-toggle .sp-section-hint {
  margin: 0;
  flex: 1;
  min-width: 200px;
}

.sp-sync-members {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 10px;
}

.sp-sync-member {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 7px 10px;
  border: 1px solid var(--an-border);
  border-radius: 9px;
  background: var(--an-surface2);
}
.sp-sync-member__slot {
  flex: 0 0 22px;
  height: 22px;
  border-radius: 7px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 11.5px;
  font-weight: 700;
  color: #7c3aed;
  background: rgba(124, 58, 237, 0.12);
}
.sp-sync-member__name {
  flex: 1;
  min-width: 0;
  font-size: 13px;
  font-weight: 600;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sp-sync-member__order {
  display: flex;
  gap: 2px;
}
.sp-sync-member__order .md-icon-button {
  margin: 0 !important;
  width: 30px !important;
  height: 30px !important;
  min-height: 30px !important;
  padding: 0 !important;
  line-height: 30px !important;
}
.sp-sync-member__order md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
}

.sp-sync-leader-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 3px 10px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-pill);
  background: transparent;
  color: var(--an-text-faint);
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
  flex-shrink: 0;
  transition: color 0.15s ease, background 0.15s ease, border-color 0.15s ease;
}
.sp-sync-leader-btn md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  color: inherit;
}
.sp-sync-leader-btn:hover {
  color: var(--an-text);
  border-color: var(--an-border-hover);
}
.sp-sync-leader-btn--on {
  border-color: transparent;
  color: #b8860b;
  background: rgba(234, 179, 8, 0.16);
}

.sp-sync-picker {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 4px;
}

.sp-sync-compat {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-top: 18px;
  padding: 12px 14px;
  border-radius: 10px;
  border: 1px solid var(--an-border);
}
.sp-sync-compat > md-icon {
  font-size: 18px;
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  margin-top: 1px;
}
.sp-sync-compat__body {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}
.sp-sync-compat__title {
  font-size: 13px;
  font-weight: 700;
}
.sp-sync-compat__hint {
  font-size: 12.5px;
  color: var(--an-text-muted);
}
.sp-sync-compat--ok {
  border-color: rgba(22, 163, 74, 0.35);
  background: rgba(22, 163, 74, 0.08);
}
.sp-sync-compat--ok > md-icon, .sp-sync-compat--ok .sp-sync-compat__title {
  color: #16a34a;
}
.sp-sync-compat--warn {
  border-color: rgba(180, 83, 9, 0.35);
  background: rgba(180, 83, 9, 0.08);
}
.sp-sync-compat--warn > md-icon, .sp-sync-compat--warn .sp-sync-compat__title {
  color: #b45309;
}

.sp-sync-issues {
  margin: 0;
  padding-left: 16px;
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.sp-sync-issue {
  font-size: 12.5px;
  color: var(--an-text);
  line-height: 1.45;
}
.sp-sync-issue strong {
  font-weight: 700;
}

.sp-sync-scrub {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 10px;
}
.sp-sync-scrub__range {
  flex: 1;
  min-width: 0;
  accent-color: #7c3aed;
}
.sp-sync-scrub__time {
  flex-shrink: 0;
  font-size: 12px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: var(--an-text-muted);
}

.sp-sync-strips {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.sp-sync-strip {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.sp-sync-strip__label {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text-muted);
}
.sp-sync-strip__leader {
  font-size: 13px !important;
  width: 13px !important;
  height: 13px !important;
  color: #b8860b;
}
.sp-sync-strip__track {
  position: relative;
  display: flex;
  height: 54px;
  border: 1px solid var(--an-border);
  border-radius: 8px;
  overflow: hidden;
  background: var(--an-surface2);
}

.sp-sync-slot {
  position: relative;
  min-width: 0;
  border-right: 1px solid var(--an-border);
  overflow: hidden;
  opacity: 0.45;
  transition: opacity 0.15s ease;
}
.sp-sync-slot:last-child {
  border-right: none;
}
.sp-sync-slot--active {
  opacity: 1;
}
.sp-sync-slot__thumb {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.sp-sync-slot__n {
  position: absolute;
  left: 3px;
  bottom: 2px;
  font-size: 9.5px;
  font-weight: 700;
  line-height: 1;
  padding: 2px 4px;
  border-radius: 4px;
  color: #fff;
  background: rgba(0, 0, 0, 0.55);
}

.sp-sync-playhead {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 2px;
  margin-left: -1px;
  background: #ec4e36;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.5);
  pointer-events: none;
}

@media (max-width: 760px) {
  .sp-sync-layout {
    flex-direction: column;
  }
  .sp-sync-aside {
    flex: 0 0 auto;
    border-right: none;
    border-bottom: 1px solid var(--an-border);
  }
}
.users-venues-badge {
  cursor: default;
}
.users-venues-badge--clickable {
  cursor: pointer;
  transition: transform 0.12s ease, box-shadow 0.12s ease;
}
.users-venues-badge--clickable:hover {
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgba(56, 189, 248, 0.35);
}
.users-venues-badge--clickable:active {
  transform: translateY(0);
}

.users-venues-tooltip {
  position: fixed;
  transform: translate(-50%, -100%);
  margin: 0;
  min-width: 180px;
  max-width: 280px;
  text-transform: none;
  font-size: 12.5px;
  color: #ffffff;
  background: rgba(17, 17, 20, 0.92);
  padding: 10px 12px;
  border-radius: 7px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
  pointer-events: none;
  z-index: 9999;
  backdrop-filter: blur(8px) saturate(1.5);
  letter-spacing: 0.01em;
  line-height: 1.4;
}
.users-venues-tooltip::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -4px;
  transform: translateX(-50%);
  border: 4px solid transparent;
  border-bottom: none;
  border-top-color: rgba(17, 17, 20, 0.92);
}
.users-venues-tooltip--below {
  transform: translate(-50%, 0);
}
.users-venues-tooltip--below::before {
  bottom: auto;
  top: -4px;
  border: 4px solid transparent;
  border-top: none;
  border-bottom-color: rgba(17, 17, 20, 0.92);
}
.users-venues-tooltip-more {
  margin-top: 4px;
  padding-top: 6px;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  font-size: 11.5px;
  color: rgba(255, 255, 255, 0.6);
}
.users-venues-tooltip-title {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: rgba(255, 255, 255, 0.55);
  margin-bottom: 6px;
}
.users-venues-tooltip-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 3px 0;
  white-space: nowrap;
}
.users-venues-tooltip-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.users-scope-trigger {
  appearance: none;
  border: none;
  background: transparent;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 4px 4px 8px;
  max-width: 230px;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
  cursor: pointer;
  transition: background-color 0.15s;
}
.users-scope-trigger > span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.users-scope-trigger i {
  font-size: 15px;
  color: var(--an-text-muted);
  flex-shrink: 0;
}
.users-scope-trigger:hover {
  background: var(--an-bg-subtle);
}
.waitry-dark-theme .users-scope-trigger:hover {
  background: rgba(255, 255, 255, 0.05);
}

md-menu-content.users-scope-panel {
  padding: 0;
  min-width: 320px;
  max-width: 360px;
}

.users-scope-search {
  padding: 8px 12px;
  border-bottom: 1px solid var(--an-border);
}
.waitry-dark-theme .users-scope-search {
  border-bottom-color: rgba(255, 255, 255, 0.07);
}

.users-scope-list {
  max-height: 300px;
  overflow-y: auto;
  padding: 4px 0;
}

.users-scope-row {
  display: flex;
  align-items: center;
  min-height: 36px;
  padding: 0 14px;
  transition: background-color 0.12s;
}
.users-scope-row:hover {
  background: var(--an-bg-subtle);
}
.waitry-dark-theme .users-scope-row:hover {
  background: rgba(255, 255, 255, 0.03);
}
.users-scope-row md-checkbox {
  margin: 0;
  flex: 1;
  min-width: 0;
}
.users-scope-row md-checkbox .md-label {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.users-scope-header {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 8px 12px;
  border-bottom: 1px solid var(--an-border);
  background: var(--an-bg-subtle);
}
.waitry-dark-theme .users-scope-header {
  border-bottom-color: rgba(255, 255, 255, 0.07);
  background: rgba(255, 255, 255, 0.03);
}
.users-scope-header button {
  appearance: none;
  border: none;
  background: transparent;
  padding: 4px 8px;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 600;
  color: var(--an-primary);
  cursor: pointer;
  white-space: nowrap;
  transition: background-color 0.15s;
}
.users-scope-header button:hover {
  background: var(--an-primary-soft, rgba(236, 78, 54, 0.08));
}
.users-scope-header-sep {
  width: 1px;
  height: 14px;
  background: var(--an-border);
  flex-shrink: 0;
}

md-dialog.wf-confirm-danger md-dialog-actions .md-button.md-confirm-button.md-primary:not(.md-raised):not(.wf-save-btn):not(.md-icon-button),
md-dialog.wf-confirm-danger md-dialog-actions .md-button.md-confirm-button {
  background: var(--an-danger, #ef4444) !important;
  color: #ffffff !important;
}
md-dialog.wf-confirm-danger md-dialog-actions .md-button.md-confirm-button.md-primary:not(.md-raised):not(.wf-save-btn):not(.md-icon-button):hover,
md-dialog.wf-confirm-danger md-dialog-actions .md-button.md-confirm-button:hover {
  background: #dc2626 !important;
}

md-dialog.users-form-dialog {
  width: 680px;
  max-width: 94vw;
  max-height: min(88vh, 960px);
}
md-dialog.users-form-dialog form {
  display: flex;
  flex-direction: column;
  min-height: 0;
  max-height: inherit;
}
md-dialog.users-form-dialog md-dialog-content {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
}

.users-form-tab {
  padding-top: 16px;
}

.users-form-tab-intro {
  margin: 0 0 14px;
}

.users-form-doc-search {
  flex: 0 0 auto;
  padding-top: 4px;
}

.users-notify-children {
  margin: 4px 0 0 30px;
  padding-left: 12px;
  border-left: 2px solid var(--an-border);
}
.waitry-dark-theme .users-notify-children {
  border-left-color: rgba(255, 255, 255, 0.07);
}

.users-venues-toolbar {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}

.users-venues-search {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1;
  min-width: 0;
  height: 34px;
  padding: 0 10px;
  background: var(--an-bg);
  border: 1px solid var(--an-border);
  border-radius: 8px;
  transition: border-color 0.15s, box-shadow 0.15s;
}
.users-venues-search:focus-within {
  border-color: var(--an-primary);
  box-shadow: 0 0 0 3px var(--an-primary-soft, rgba(236, 78, 54, 0.08));
}
.users-venues-search i {
  font-size: 15px;
  color: var(--an-text-faint);
  flex-shrink: 0;
}
.users-venues-search input {
  flex: 1;
  min-width: 0;
  border: none;
  outline: none;
  background: transparent;
  font-size: 13px;
  color: var(--an-text);
}
.users-venues-search input::placeholder {
  color: var(--an-placeholder);
}

.users-venues-count {
  flex-shrink: 0;
  font-size: 11.5px;
  font-weight: 600;
  color: var(--an-text-muted);
  background: var(--an-bg-subtle);
  border: 1px solid var(--an-border);
  border-radius: 999px;
  padding: 3px 10px;
  white-space: nowrap;
}

.users-venues-link {
  appearance: none;
  border: none;
  background: transparent;
  padding: 4px 6px;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 600;
  color: var(--an-primary);
  cursor: pointer;
  white-space: nowrap;
  transition: background-color 0.15s;
}
.users-venues-link:hover {
  background: var(--an-primary-soft, rgba(236, 78, 54, 0.08));
}

.users-venues-link-sep {
  width: 1px;
  height: 14px;
  background: var(--an-border);
  flex-shrink: 0;
}

.users-venues-list {
  border: 1px solid var(--an-border);
  border-radius: 10px;
  max-height: min(46vh, 460px);
  overflow-y: auto;
}
.waitry-dark-theme .users-venues-list {
  border-color: rgba(255, 255, 255, 0.07);
}

.users-venues-empty {
  padding: 22px 14px;
  text-align: center;
  font-size: 12.5px;
  color: var(--an-text-faint);
}

.users-venue-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 44px;
  padding: 2px 12px;
  border-bottom: 1px solid var(--an-border);
  transition: background-color 0.12s, opacity 0.15s;
}
.waitry-dark-theme .users-venue-row {
  border-bottom-color: rgba(255, 255, 255, 0.07);
}
.users-venue-row:hover {
  background: var(--an-bg-subtle);
}
.waitry-dark-theme .users-venue-row:hover {
  background: rgba(255, 255, 255, 0.03);
}
.users-venue-row:last-child {
  border-bottom: none;
}
.users-venue-row--off md-checkbox .md-label,
.users-venue-row--off md-select {
  opacity: 0.55;
}
.users-venue-row-dash {
  min-width: 250px;
  text-align: left;
  padding-left: 2px;
  color: var(--an-text-faint);
  font-size: 13px;
}
.users-venue-row md-checkbox {
  margin: 0;
  flex: 1;
  min-width: 0;
}
.users-venue-row md-checkbox .md-label {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
.users-venue-row-name {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.users-venue-row-badge {
  flex: 0 0 auto;
}
.users-venue-row md-select {
  margin: 0;
  width: 250px;
  flex: 0 0 auto;
  height: 32px;
}
.users-venue-row md-select .md-select-value > span:not(.md-select-icon) {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.users-venue-row md-select .md-select-value .md-select-icon {
  flex: 0 0 auto;
}

@keyframes wt-shimmer {
  0% {
    background-position: -600px 0;
  }
  100% {
    background-position: 600px 0;
  }
}
@keyframes wt-pulse-dot {
  0%, 80%, 100% {
    transform: scale(0.6);
    opacity: 0.4;
  }
  40% {
    transform: scale(1);
    opacity: 1;
  }
}
@keyframes wt-venue-spin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes wt-venue-overlay-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes wt-venue-modal-in {
  from {
    opacity: 0;
    transform: scale(0.92);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
.wt-glass-overlay {
  position: fixed;
  inset: 0;
  z-index: 2147483100;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.55);
  backdrop-filter: blur(18px) saturate(1.6);
  -webkit-backdrop-filter: blur(18px) saturate(1.6);
  animation: wt-venue-overlay-in 0.22s ease both;
}
.wt-glass-overlay.ng-hide {
  opacity: 0;
  pointer-events: none;
}

.wt-glass-modal {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  padding: 40px 48px;
  background: rgba(255, 255, 255, 0.85);
  border: 1px solid rgba(255, 255, 255, 0.9);
  border-radius: 24px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.12), 0 4px 16px rgba(0, 0, 0, 0.06), inset 0 1px 0 rgba(255, 255, 255, 0.95);
  animation: wt-venue-modal-in 0.28s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

.wt-glass-spinner {
  position: relative;
  width: 80px;
  height: 80px;
}
.wt-glass-spinner svg {
  width: 80px;
  height: 80px;
  animation: wt-venue-spin 1.1s linear infinite;
  transform-origin: center;
}
.wt-glass-spinner .wt-glass-track {
  stroke: var(--an-surface2);
}
.wt-glass-spinner .wt-glass-arc {
  stroke: url(#wt-glass-gradient);
  stroke: var(--an-rose);
}

.wt-glass-logo {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.wt-glass-logo img {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  object-fit: contain;
  background-color: #fff;
  padding: 6px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
}
.wt-glass-logo md-icon {
  font-size: 22px;
  color: var(--an-text-muted);
  margin: 0;
}

.wt-glass-name {
  font-family: var(--font-sans);
  font-size: 15px;
  font-weight: 700;
  color: var(--an-text);
  letter-spacing: -0.2px;
  margin: 0;
  text-align: center;
  max-width: 140px;
  line-height: 1.2;
}

.wt-glass-label {
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text-muted);
  margin: 0;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.wt-glass-modal-switcher {
  padding: 48px 56px;
  min-width: 440px;
  gap: 24px;
}

.wt-glass-venues-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  width: 100%;
}

.wt-glass-venue-side {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  flex: 1;
}

.wt-glass-logo-static {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: white;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px;
  border: 1px solid rgba(0, 0, 0, 0.04);
}
.wt-glass-logo-static img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  border-radius: 50%;
}
.wt-glass-logo-static md-icon {
  font-size: 32px;
  color: var(--an-text-muted);
  margin: 0;
}

@keyframes wt-slide-left-fade {
  from {
    opacity: 0;
    transform: translateX(-20px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes wt-slide-right-fade {
  from {
    opacity: 0;
    transform: translateX(20px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes wt-arrow-pulse {
  0% {
    transform: translateX(-4px);
    opacity: 0.5;
  }
  50% {
    transform: translateX(4px);
    opacity: 1;
  }
  100% {
    transform: translateX(-4px);
    opacity: 0.5;
  }
}
.wt-old-venue {
  animation: wt-slide-left-fade 0.5s ease-out both;
}

.wt-new-venue {
  animation: wt-slide-right-fade 0.5s ease-out both;
  animation-delay: 0.15s;
}

.wt-glass-spinner-center {
  position: relative;
  width: 64px;
  height: 64px;
  flex-shrink: 0;
}
.wt-glass-spinner-center svg {
  width: 64px;
  height: 64px;
  animation: wt-venue-spin 1.1s linear infinite;
  transform-origin: center;
}
.wt-glass-spinner-center .wt-glass-track {
  stroke: var(--an-surface2);
}
.wt-glass-spinner-center .wt-glass-arc {
  stroke: url(#wt-glass-gradient);
  stroke: var(--an-rose);
}
.wt-glass-spinner-center .wt-switch-arrow {
  position: absolute;
  inset: 0;
  margin: auto;
  font-size: 28px;
  width: 28px;
  height: 28px;
  color: var(--an-rose);
  animation: wt-arrow-pulse 1.1s ease-in-out infinite;
}

@keyframes wt-skeleton-fade {
  0% {
    opacity: 0;
    transform: translateY(4px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes wt-spin-ring {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.sk-table-cell, .sk-menu-header-card__subheader, .sk-menu-header-card__sub, .sk-menu-header-card__title, .sk-menu-header-card__banner, .sk-layout-pill, .sk-live-table__btn, .sk-live-table__sub, .sk-live-table__title, .sk-live-table__avatar, .sk-place-card__btn, .sk-place-card__addr, .sk-place-card__desc, .sk-place-card__name, .sk-place-card__avatar, .sk-place-card__banner, .sk-item-row__desc, .sk-item-row__price, .sk-item-row__name, .sk-item-row__avatar, .sk-category-item__icon, .sk-category-item__title, .sk-category-item__dot, .sk-menu-item__icon, .sk-menu-item__sub, .sk-menu-item__title, .sk-chip, .sk-avatar, .sk-line {
  background: linear-gradient(90deg, var(--an-surface2) 25%, var(--an-surface3) 37%, var(--an-surface2) 63%);
  background-size: 1200px 100%;
  animation: wt-shimmer 1.6s ease-in-out infinite;
  border-radius: var(--an-radius-xs);
}

.sk-wrap {
  animation: wt-skeleton-fade 0.3s var(--ease-out) both;
}

.sk-line {
  display: block;
  height: 13px;
  width: 100%;
  border-radius: var(--an-radius-pill);
  margin-bottom: 8px;
}
.sk-line.sk-line--xs {
  height: 10px;
}
.sk-line.sk-line--sm {
  height: 12px;
}
.sk-line.sk-line--md {
  height: 16px;
}
.sk-line.sk-line--lg {
  height: 20px;
}
.sk-line.sk-line--xl {
  height: 28px;
}
.sk-line.sk-line--w25 {
  width: 25%;
}
.sk-line.sk-line--w40 {
  width: 40%;
}
.sk-line.sk-line--w55 {
  width: 55%;
}
.sk-line.sk-line--w70 {
  width: 70%;
}
.sk-line.sk-line--w85 {
  width: 85%;
}

.sk-avatar {
  display: block;
  flex-shrink: 0;
  border-radius: 50%;
}
.sk-avatar.sk-avatar--sm {
  width: 32px;
  height: 32px;
}
.sk-avatar.sk-avatar--md {
  width: 40px;
  height: 40px;
}
.sk-avatar.sk-avatar--lg {
  width: 56px;
  height: 56px;
}
.sk-avatar.sk-avatar--xl {
  width: 72px;
  height: 72px;
}

.sk-chip {
  display: inline-block;
  height: 32px;
  border-radius: var(--an-radius-pill);
}

.sk-menu-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
  animation: wt-skeleton-fade 0.3s var(--ease-out) both;
}
.sk-menu-item__body {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.sk-menu-item__title {
  height: 13px;
  border-radius: var(--an-radius-pill);
  width: 75%;
}
.sk-menu-item__sub {
  height: 10px;
  border-radius: var(--an-radius-pill);
  width: 45%;
}
.sk-menu-item__icon {
  width: 18px;
  height: 18px;
  border-radius: 4px;
  flex-shrink: 0;
}
.sk-menu-item:nth-child(1) {
  animation-delay: 0ms;
}
.sk-menu-item:nth-child(2) {
  animation-delay: 60ms;
}
.sk-menu-item:nth-child(3) {
  animation-delay: 120ms;
}
.sk-menu-item:nth-child(4) {
  animation-delay: 180ms;
}
.sk-menu-item:nth-child(5) {
  animation-delay: 240ms;
}
.sk-menu-item:nth-child(6) {
  animation-delay: 300ms;
}
.sk-menu-item:nth-child(7) {
  animation-delay: 360ms;
}
.sk-menu-item:nth-child(8) {
  animation-delay: 420ms;
}

.sk-category-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
  animation: wt-skeleton-fade 0.3s var(--ease-out) both;
}
.sk-category-item__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
}
.sk-category-item__body {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.sk-category-item__title {
  height: 13px;
  border-radius: var(--an-radius-pill);
  width: 70%;
}
.sk-category-item__icon {
  width: 18px;
  height: 18px;
  border-radius: 4px;
  flex-shrink: 0;
}
.sk-category-item:nth-child(1) {
  animation-delay: 0ms;
}
.sk-category-item:nth-child(2) {
  animation-delay: 50ms;
}
.sk-category-item:nth-child(3) {
  animation-delay: 100ms;
}
.sk-category-item:nth-child(4) {
  animation-delay: 150ms;
}
.sk-category-item:nth-child(5) {
  animation-delay: 200ms;
}
.sk-category-item:nth-child(6) {
  animation-delay: 250ms;
}

.sk-item-row {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 14px 16px;
  border-bottom: 1px solid var(--an-border);
  animation: wt-skeleton-fade 0.3s var(--ease-out) both;
}
.sk-item-row__avatar {
  width: 48px;
  height: 48px;
  border-radius: var(--an-radius-sm);
  flex-shrink: 0;
}
.sk-item-row__body {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.sk-item-row__name {
  height: 14px;
  border-radius: var(--an-radius-pill);
  width: 65%;
}
.sk-item-row__price {
  height: 11px;
  border-radius: var(--an-radius-pill);
  width: 35%;
}
.sk-item-row__desc {
  height: 10px;
  border-radius: var(--an-radius-pill);
  width: 80%;
}
.sk-item-row:nth-child(1) {
  animation-delay: 0ms;
}
.sk-item-row:nth-child(2) {
  animation-delay: 55ms;
}
.sk-item-row:nth-child(3) {
  animation-delay: 110ms;
}
.sk-item-row:nth-child(4) {
  animation-delay: 165ms;
}
.sk-item-row:nth-child(5) {
  animation-delay: 220ms;
}
.sk-item-row:nth-child(6) {
  animation-delay: 275ms;
}
.sk-item-row:nth-child(7) {
  animation-delay: 330ms;
}
.sk-item-row:nth-child(8) {
  animation-delay: 385ms;
}

.sk-place-card {
  background: var(--an-surface);
  border-radius: var(--an-radius);
  overflow: hidden;
  box-shadow: var(--an-shadow);
  animation: wt-skeleton-fade 0.4s var(--ease-out) both;
}
.sk-place-card__banner {
  height: 120px;
  border-radius: 0;
}
.sk-place-card__body {
  padding: 20px 16px 16px;
  position: relative;
}
.sk-place-card__avatar {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  position: absolute;
  top: -28px;
  left: 16px;
  border: 3px solid var(--an-surface);
}
.sk-place-card__name {
  height: 18px;
  width: 60%;
  border-radius: var(--an-radius-pill);
  margin-top: 32px;
  margin-bottom: 10px;
}
.sk-place-card__desc {
  height: 11px;
  width: 85%;
  border-radius: var(--an-radius-pill);
  margin-bottom: 6px;
}
.sk-place-card__addr {
  height: 11px;
  width: 55%;
  border-radius: var(--an-radius-pill);
  margin-bottom: 16px;
}
.sk-place-card__actions {
  display: flex;
  gap: 8px;
  padding: 8px 16px 16px;
  justify-content: flex-end;
}
.sk-place-card__btn {
  width: 32px;
  height: 32px;
  border-radius: 50%;
}
.sk-place-card:nth-child(1) {
  animation-delay: 0ms;
}
.sk-place-card:nth-child(2) {
  animation-delay: 80ms;
}
.sk-place-card:nth-child(3) {
  animation-delay: 160ms;
}
.sk-place-card:nth-child(4) {
  animation-delay: 240ms;
}

.sk-live-table {
  background: var(--an-surface);
  border-radius: var(--an-radius);
  box-shadow: var(--an-shadow-md);
  padding: 16px;
  width: 220px;
  min-width: 180px;
  animation: wt-skeleton-fade 0.35s var(--ease-out) both;
  flex-shrink: 0;
}
.sk-live-table__header {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
}
.sk-live-table__avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  flex-shrink: 0;
}
.sk-live-table__meta {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.sk-live-table__title {
  height: 14px;
  width: 70%;
  border-radius: var(--an-radius-pill);
}
.sk-live-table__sub {
  height: 11px;
  width: 50%;
  border-radius: var(--an-radius-pill);
}
.sk-live-table__actions {
  display: flex;
  gap: 6px;
  justify-content: center;
}
.sk-live-table__btn {
  width: 32px;
  height: 32px;
  border-radius: 50%;
}
.sk-live-table:nth-child(1) {
  animation-delay: 0ms;
}
.sk-live-table:nth-child(2) {
  animation-delay: 45ms;
}
.sk-live-table:nth-child(3) {
  animation-delay: 90ms;
}
.sk-live-table:nth-child(4) {
  animation-delay: 135ms;
}
.sk-live-table:nth-child(5) {
  animation-delay: 180ms;
}
.sk-live-table:nth-child(6) {
  animation-delay: 225ms;
}
.sk-live-table:nth-child(7) {
  animation-delay: 270ms;
}
.sk-live-table:nth-child(8) {
  animation-delay: 315ms;
}
.sk-live-table:nth-child(9) {
  animation-delay: 360ms;
}
.sk-live-table:nth-child(10) {
  animation-delay: 405ms;
}
.sk-live-table:nth-child(11) {
  animation-delay: 450ms;
}
.sk-live-table:nth-child(12) {
  animation-delay: 495ms;
}

.sk-live-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  padding: 16px;
  align-content: flex-start;
}

.sk-layout-pill {
  display: inline-flex;
  align-items: center;
  height: 32px;
  border-radius: var(--an-radius-pill);
  flex-shrink: 0;
}
.sk-layout-pill--sm {
  width: 80px;
}
.sk-layout-pill--md {
  width: 110px;
}
.sk-layout-pill--lg {
  width: 140px;
}
.sk-layout-pill:nth-child(1) {
  animation-delay: 0ms;
}
.sk-layout-pill:nth-child(2) {
  animation-delay: 60ms;
}
.sk-layout-pill:nth-child(3) {
  animation-delay: 120ms;
}
.sk-layout-pill:nth-child(4) {
  animation-delay: 180ms;
}
.sk-layout-pill:nth-child(5) {
  animation-delay: 240ms;
}

.sk-pills-row {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 8px;
  overflow: hidden;
}

.wt-pulse-loader {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.wt-pulse-loader__dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--an-rose);
  animation: wt-pulse-dot 1.4s ease-in-out infinite both;
}
.wt-pulse-loader__dot:nth-child(1) {
  animation-delay: 0s;
}
.wt-pulse-loader__dot:nth-child(2) {
  animation-delay: 0.16s;
  background: var(--an-orange);
}
.wt-pulse-loader__dot:nth-child(3) {
  animation-delay: 0.32s;
}

.wt-live-loading {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 48px 24px;
  width: 100%;
}
.wt-live-loading__label {
  font-size: 13px;
  font-weight: 500;
  color: var(--an-text-muted);
  letter-spacing: 0.3px;
}

.sk-menu-header-card {
  background: var(--an-surface);
  border-radius: var(--an-radius);
  box-shadow: var(--an-shadow);
  overflow: hidden;
  animation: wt-skeleton-fade 0.35s var(--ease-out) both;
}
.sk-menu-header-card__banner {
  height: 130px;
  border-radius: 0;
}
.sk-menu-header-card__body {
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.sk-menu-header-card__title {
  height: 20px;
  width: 50%;
  border-radius: var(--an-radius-pill);
}
.sk-menu-header-card__sub {
  height: 12px;
  width: 75%;
  border-radius: var(--an-radius-pill);
}
.sk-menu-header-card__subheader {
  height: 12px;
  width: 30%;
  border-radius: var(--an-radius-pill);
  margin-top: 8px;
  margin-bottom: 4px;
}

.sk-table-wrap {
  padding: 8px 24px;
  animation: wt-skeleton-fade 0.25s var(--ease-out) both;
  flex-shrink: 0;
}

.sk-table-row {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 14px 0;
  border-bottom: 1px solid var(--an-border);
  animation: wt-skeleton-fade 0.3s var(--ease-out) both;
}
.sk-table-row:nth-child(1) {
  animation-delay: 0ms;
}
.sk-table-row:nth-child(2) {
  animation-delay: 40ms;
}
.sk-table-row:nth-child(3) {
  animation-delay: 80ms;
}
.sk-table-row:nth-child(4) {
  animation-delay: 120ms;
}
.sk-table-row:nth-child(5) {
  animation-delay: 160ms;
}
.sk-table-row:nth-child(6) {
  animation-delay: 200ms;
}
.sk-table-row:nth-child(7) {
  animation-delay: 240ms;
}
.sk-table-row:nth-child(8) {
  animation-delay: 280ms;
}
.sk-table-row:nth-child(9) {
  animation-delay: 320ms;
}
.sk-table-row:nth-child(10) {
  animation-delay: 360ms;
}

.sk-table-cell {
  height: 13px;
  border-radius: var(--an-radius-pill);
  flex-shrink: 0;
}
.sk-table-cell--xs {
  width: 48px;
}
.sk-table-cell--sm {
  width: 90px;
}
.sk-table-cell--md {
  flex: 1;
  min-width: 120px;
}
.sk-table-cell--icon {
  width: 32px;
  height: 32px;
  border-radius: 50%;
}

.sk-section {
  animation: wt-skeleton-fade 0.25s var(--ease-out) both;
}

.wt-handoff-overlay {
  position: fixed;
  inset: 0;
  z-index: 2147483200;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.72);
  backdrop-filter: blur(20px) saturate(1.6);
  -webkit-backdrop-filter: blur(20px) saturate(1.6);
  animation: wt-venue-overlay-in 0.22s ease both;
}

.wt-handoff-overlay__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  max-width: 380px;
  padding: 40px 44px;
  text-align: center;
  background: var(--an-surface);
  border: 1px solid var(--an-border-strong, rgba(0, 0, 0, 0.06));
  border-radius: 24px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.12), 0 4px 16px rgba(0, 0, 0, 0.06);
  animation: wt-venue-modal-in 0.28s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

.wt-handoff-overlay__title {
  margin: 0;
  font-size: 16px;
  font-weight: 600;
  color: var(--an-text);
}

.wt-handoff-overlay__text {
  margin: 0;
  font-size: 13px;
  line-height: 1.55;
  color: var(--an-text-muted, var(--an-text-faint));
}

.waitry-dark-theme .wt-glass-overlay {
  background: rgba(0, 0, 0, 0.55);
  backdrop-filter: blur(18px) saturate(1.4);
  -webkit-backdrop-filter: blur(18px) saturate(1.4);
}
.waitry-dark-theme .wt-handoff-overlay {
  background: rgba(0, 0, 0, 0.62);
  backdrop-filter: blur(20px) saturate(1.4);
  -webkit-backdrop-filter: blur(20px) saturate(1.4);
}
.waitry-dark-theme .wt-handoff-overlay__card {
  border-color: rgba(255, 255, 255, 0.08);
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5), 0 4px 16px rgba(0, 0, 0, 0.3);
}
.waitry-dark-theme .wt-glass-modal {
  background: rgba(26, 29, 39, 0.92);
  border-color: rgba(255, 255, 255, 0.08);
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5), 0 4px 16px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.06);
}
.waitry-dark-theme .wt-glass-logo-static {
  background: var(--an-surface2);
  border-color: rgba(255, 255, 255, 0.07);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
}
.waitry-dark-theme .wt-glass-logo img {
  background-color: var(--an-surface2);
}
.waitry-dark-theme .sk-table-cell,
.waitry-dark-theme .sk-line,
.waitry-dark-theme .sk-avatar,
.waitry-dark-theme .sk-chip,
.waitry-dark-theme .sk-menu-item__title,
.waitry-dark-theme .sk-menu-item__sub,
.waitry-dark-theme .sk-menu-item__icon,
.waitry-dark-theme .sk-category-item__dot,
.waitry-dark-theme .sk-category-item__title,
.waitry-dark-theme .sk-category-item__icon,
.waitry-dark-theme .sk-item-row__avatar,
.waitry-dark-theme .sk-item-row__name,
.waitry-dark-theme .sk-item-row__price,
.waitry-dark-theme .sk-item-row__desc,
.waitry-dark-theme .sk-place-card__banner,
.waitry-dark-theme .sk-place-card__avatar,
.waitry-dark-theme .sk-place-card__name,
.waitry-dark-theme .sk-place-card__desc,
.waitry-dark-theme .sk-place-card__addr,
.waitry-dark-theme .sk-place-card__btn,
.waitry-dark-theme .sk-live-table__avatar,
.waitry-dark-theme .sk-live-table__title,
.waitry-dark-theme .sk-live-table__sub,
.waitry-dark-theme .sk-live-table__btn,
.waitry-dark-theme .sk-layout-pill,
.waitry-dark-theme .sk-menu-header-card__banner,
.waitry-dark-theme .sk-menu-header-card__title,
.waitry-dark-theme .sk-menu-header-card__sub,
.waitry-dark-theme .sk-menu-header-card__subheader {
  background: linear-gradient(90deg, var(--an-surface2) 25%, var(--an-surface3) 37%, var(--an-surface2) 63%);
  background-size: 1200px 100%;
  animation: wt-shimmer 1.6s ease-in-out infinite;
}

.waitry-table-container {
  width: 100%;
  overflow-x: auto;
  background: #ffffff;
  border-radius: 12px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
  margin-top: 16px;
}
.waitry-table-container::-webkit-scrollbar {
  height: 8px;
}
.waitry-table-container::-webkit-scrollbar-thumb {
  background: #e0e0e0;
  border-radius: 4px;
}

.waitry-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  text-align: left;
  min-width: 800px;
}
.waitry-table th, .waitry-table td {
  padding: 16px 24px;
  vertical-align: middle;
}
.waitry-table th {
  font-weight: 600;
  font-size: 13px;
  color: #64625E; /* $gray2 */
  text-transform: uppercase;
  letter-spacing: 0.5px;
  border-bottom: 2px solid #F7F7F7; /* $gray3 */
  background: #FAFAFA;
}
.waitry-table th:first-child {
  border-top-left-radius: 12px;
}
.waitry-table th:last-child {
  border-top-right-radius: 12px;
}
.waitry-table tbody tr {
  transition: background-color 0.2s ease, transform 0.2s ease;
  border-bottom: 1px solid #F7F7F7;
}
.waitry-table tbody tr:last-child {
  border-bottom: none;
}
.waitry-table tbody tr:last-child td:first-child {
  border-bottom-left-radius: 12px;
}
.waitry-table tbody tr:last-child td:last-child {
  border-bottom-right-radius: 12px;
}
.waitry-table tbody tr:hover {
  background-color: #F9FAFB;
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.02);
}
.waitry-table td {
  font-size: 15px;
  color: #333333;
  border-bottom: 1px solid #F7F7F7;
}
.waitry-table td h5 {
  margin: 0;
  font-size: 14px;
  font-weight: 500;
  color: #64625E;
  display: flex;
  align-items: center;
  gap: 6px;
}
.waitry-table td h5 md-icon {
  font-size: 18px;
  color: #888888; /* $darkGray */
  min-height: 18px;
  min-width: 18px;
  height: 18px;
  width: 18px;
}
.waitry-table td .table-banner-img {
  width: 80px;
  height: 50px;
  border-radius: 6px;
  object-fit: cover;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.waitry-table td .table-actions {
  display: flex;
  gap: 4px;
  justify-content: flex-end;
}
.waitry-table td .table-actions md-button {
  margin: 0;
  width: 36px;
  height: 36px;
  padding: 0;
}
.waitry-table td .table-actions md-button md-icon {
  font-size: 20px;
  color: #888888;
  transition: color 0.2s ease;
}
.waitry-table td .table-actions md-button:hover md-icon {
  color: #ec4e36; /* $red */
}

.waitry-dark-theme .waitry-table-container {
  background: var(--an-surface) !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4) !important;
}
.waitry-dark-theme .waitry-table-container::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.12) !important;
}
.waitry-dark-theme .waitry-table th {
  color: var(--an-text-muted) !important;
  border-bottom: 2px solid var(--an-border) !important;
  background: var(--an-surface2) !important;
}
.waitry-dark-theme .waitry-table tbody tr {
  border-bottom: 1px solid var(--an-border) !important;
}
.waitry-dark-theme .waitry-table tbody tr:hover {
  background-color: var(--an-surface2) !important;
  box-shadow: none;
}
.waitry-dark-theme .waitry-table td {
  color: var(--an-text) !important;
  border-bottom: 1px solid var(--an-border) !important;
}
.waitry-dark-theme .waitry-table td h5 {
  color: var(--an-text-muted) !important;
}
.waitry-dark-theme .waitry-table td h5 md-icon {
  color: var(--an-text-faint) !important;
}
.waitry-dark-theme .waitry-table td .table-actions md-button md-icon {
  color: var(--an-text-muted) !important;
}
.waitry-dark-theme .waitry-table td .table-actions md-button:hover md-icon {
  color: var(--an-rose) !important;
}

.md-switch-compact.md-switch {
  margin: 0 !important;
  height: 20px !important;
  min-height: 20px !important;
  line-height: 20px !important;
}
.md-switch-compact .md-container {
  width: 30px !important;
  height: 16px !important;
}
.md-switch-compact .md-bar {
  height: 12px !important;
  width: 28px !important;
  top: 2px !important;
  left: 1px !important;
  border-radius: 6px !important;
}
.md-switch-compact .md-thumb-container {
  top: -2px !important;
}
.md-switch-compact .md-thumb {
  width: 16px !important;
  height: 16px !important;
}
.md-switch-compact.md-checked .md-thumb-container {
  transform: translate3d(14px, 0, 0) !important;
}
.md-switch-compact .md-label {
  margin-left: 36px !important;
  font-size: 13px !important;
}

.waitry-dark-theme .md-switch-compact.md-switch .md-bar {
  background-color: rgba(255, 255, 255, 0.2) !important;
}

.section-kpi-banner {
  padding: 24px 24px 0;
  flex-shrink: 0;
  animation: sectionKpiBannerIn 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.section-kpi-banner--compact {
  padding: 16px 16px 0;
}
.section-kpi-banner--compact .section-kpi-card {
  padding: 12px 16px;
}
.section-kpi-banner--compact .section-kpi-val {
  font-size: 20px;
}

@keyframes sectionKpiBannerIn {
  from {
    opacity: 0;
    transform: translateY(-6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.section-kpi-row,
.clients-loy-kpi-row {
  display: flex;
  flex-wrap: wrap;
  gap: 1px;
  margin-bottom: 0;
  background: var(--an-border, rgba(0, 0, 0, 0.08));
  border: 1px solid var(--an-border, rgba(0, 0, 0, 0.08));
  border-radius: 12px;
  overflow: hidden;
}

.section-kpi-card,
.clients-loy-kpi-card {
  flex: 1 1 180px;
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0;
  padding: 14px 20px;
  background: var(--an-surface, #fff);
  border: 0;
  border-radius: 0;
  transition: background 0.15s ease;
}
.section-kpi-card--interactive,
.clients-loy-kpi-card--interactive {
  cursor: pointer;
}
.section-kpi-card--interactive:hover,
.clients-loy-kpi-card--interactive:hover {
  background: var(--an-bg-subtle, rgba(15, 23, 42, 0.03));
}
.section-kpi-card--active,
.clients-loy-kpi-card--active {
  background: var(--an-bg-active, rgba(15, 23, 42, 0.04));
  box-shadow: inset 0 -2px 0 var(--an-text, #111);
}

.section-kpi-icon,
.clients-loy-kpi-icon {
  display: none !important;
}

.section-kpi-body,
.clients-loy-kpi-body {
  flex: 1;
  min-width: 0;
}

.section-kpi-val,
.clients-loy-kpi-val {
  font-size: 22px;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: var(--an-text, #111) !important;
  line-height: 1.15;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.section-kpi-lbl,
.clients-loy-kpi-lbl {
  margin-top: 2px;
  font-size: 12.5px;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none;
  color: var(--an-text-muted, #6b7280);
}

.section-kpi-lbl [waitry-help] md-icon {
  --an-icon-size: 14px;
  vertical-align: -2px;
  color: var(--an-text-faint);
  cursor: help;
}

.section-kpi-lbl a,
.section-kpi-sub a {
  font-weight: 500;
}

.section-kpi-sub,
.clients-loy-kpi-sub {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-top: 4px;
  font-size: 11.5px;
  color: var(--an-text-faint, #9ca3af);
  line-height: 1.3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.section-kpi-sub i,
.clients-loy-kpi-sub i {
  display: none !important;
}
.section-kpi-sub--muted,
.clients-loy-kpi-sub--muted {
  margin-top: 2px;
}
.section-kpi-sub--green,
.clients-loy-kpi-sub--green {
  color: #059669;
}
.section-kpi-sub--rose,
.clients-loy-kpi-sub--rose {
  color: #e80032;
}
.section-kpi-sub--amber,
.clients-loy-kpi-sub--amber {
  color: #d97706;
}
.section-kpi-sub--blue,
.clients-loy-kpi-sub--blue {
  color: #2563eb;
}

.section-filters-bar {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 16px 24px 12px;
  overflow-x: auto;
  flex-shrink: 0;
  -webkit-overflow-scrolling: touch;
}
.section-filters-bar::-webkit-scrollbar {
  height: 0;
}
.section-filters-bar--compact {
  padding: 12px 16px 10px;
  gap: 8px;
}

.section-filter-chip,
.clients-seg-chip,
.catalog-kpi-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 32px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid transparent !important;
  background: transparent !important;
  color: var(--an-text-muted, #4b5563) !important;
  font-family: var(--font-sans, inherit);
  font-size: 13px;
  font-weight: 500;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
  box-shadow: none !important;
  transition: background 0.15s ease, color 0.15s ease;
}
.section-filter-chip i,
.clients-seg-chip i,
.catalog-kpi-chip i {
  font-size: 14px;
  flex-shrink: 0;
}
.section-filter-chip:hover,
.clients-seg-chip:hover,
.catalog-kpi-chip:hover {
  background: var(--an-bg-subtle, rgba(15, 23, 42, 0.05)) !important;
  color: var(--an-text, #111) !important;
}
.section-filter-chip.clients-seg-chip--add, .section-filter-chip.clients-seg-chip--custom:not(.clients-seg-chip--active),
.clients-seg-chip.clients-seg-chip--add,
.clients-seg-chip.clients-seg-chip--custom:not(.clients-seg-chip--active),
.catalog-kpi-chip.clients-seg-chip--add,
.catalog-kpi-chip.clients-seg-chip--custom:not(.clients-seg-chip--active) {
  border: 1px dashed var(--an-border-strong, rgba(0, 0, 0, 0.2)) !important;
}
.section-filter-chip.section-filter-chip--active, .section-filter-chip.clients-seg-chip--active, .section-filter-chip.catalog-kpi-chip--active,
.clients-seg-chip.section-filter-chip--active,
.clients-seg-chip.clients-seg-chip--active,
.clients-seg-chip.catalog-kpi-chip--active,
.catalog-kpi-chip.section-filter-chip--active,
.catalog-kpi-chip.clients-seg-chip--active,
.catalog-kpi-chip.catalog-kpi-chip--active {
  background: var(--an-text, #111) !important;
  color: var(--an-surface, #fff) !important;
  font-weight: 600;
}
.section-filter-chip.section-filter-chip--active i, .section-filter-chip.section-filter-chip--active md-icon, .section-filter-chip.clients-seg-chip--active i, .section-filter-chip.clients-seg-chip--active md-icon, .section-filter-chip.catalog-kpi-chip--active i, .section-filter-chip.catalog-kpi-chip--active md-icon,
.clients-seg-chip.section-filter-chip--active i,
.clients-seg-chip.section-filter-chip--active md-icon,
.clients-seg-chip.clients-seg-chip--active i,
.clients-seg-chip.clients-seg-chip--active md-icon,
.clients-seg-chip.catalog-kpi-chip--active i,
.clients-seg-chip.catalog-kpi-chip--active md-icon,
.catalog-kpi-chip.section-filter-chip--active i,
.catalog-kpi-chip.section-filter-chip--active md-icon,
.catalog-kpi-chip.clients-seg-chip--active i,
.catalog-kpi-chip.clients-seg-chip--active md-icon,
.catalog-kpi-chip.catalog-kpi-chip--active i,
.catalog-kpi-chip.catalog-kpi-chip--active md-icon {
  color: inherit !important;
}
.section-filter-chip.section-filter-chip--active .section-filter-chip-count,
.section-filter-chip.section-filter-chip--active .clients-seg-chip-count, .section-filter-chip.clients-seg-chip--active .section-filter-chip-count,
.section-filter-chip.clients-seg-chip--active .clients-seg-chip-count, .section-filter-chip.catalog-kpi-chip--active .section-filter-chip-count,
.section-filter-chip.catalog-kpi-chip--active .clients-seg-chip-count,
.clients-seg-chip.section-filter-chip--active .section-filter-chip-count,
.clients-seg-chip.section-filter-chip--active .clients-seg-chip-count,
.clients-seg-chip.clients-seg-chip--active .section-filter-chip-count,
.clients-seg-chip.clients-seg-chip--active .clients-seg-chip-count,
.clients-seg-chip.catalog-kpi-chip--active .section-filter-chip-count,
.clients-seg-chip.catalog-kpi-chip--active .clients-seg-chip-count,
.catalog-kpi-chip.section-filter-chip--active .section-filter-chip-count,
.catalog-kpi-chip.section-filter-chip--active .clients-seg-chip-count,
.catalog-kpi-chip.clients-seg-chip--active .section-filter-chip-count,
.catalog-kpi-chip.clients-seg-chip--active .clients-seg-chip-count,
.catalog-kpi-chip.catalog-kpi-chip--active .section-filter-chip-count,
.catalog-kpi-chip.catalog-kpi-chip--active .clients-seg-chip-count {
  background: rgba(255, 255, 255, 0.2);
  color: inherit;
}

.section-filter-chip-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  height: 18px;
  padding: 0 5px;
  border-radius: 9px;
  background: rgba(0, 0, 0, 0.08);
  color: inherit;
  font-size: 0.7rem;
  font-weight: 700;
  line-height: 1;
  transition: all 0.18s ease;
}
.waitry-dark-theme .section-filter-chip-count {
  background: rgba(255, 255, 255, 0.1);
}

.section-count-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  height: 20px;
  padding: 0 7px;
  border-radius: 10px;
  background: rgba(232, 0, 50, 0.1);
  color: var(--an-rose, #e80032);
  font-size: 11px;
  font-weight: 700;
  margin-left: 8px;
  border: 1px solid rgba(232, 0, 50, 0.15);
  line-height: 1;
  vertical-align: middle;
  letter-spacing: -0.01em;
}

.table-empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 14px;
  padding: 56px 24px;
  color: var(--an-text-muted, #6b7280);
  flex-shrink: 0;
  text-align: center;
}
.table-empty-state i,
.table-empty-state md-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: rgba(107, 114, 128, 0.08);
  font-size: 28px;
  color: var(--an-text-faint, #9ca3af);
}
.waitry-dark-theme .table-empty-state i,
.waitry-dark-theme .table-empty-state md-icon {
  background: rgba(255, 255, 255, 0.08);
}
.table-empty-state h3 {
  font-size: 15px;
  font-weight: 700;
  color: var(--an-text, #1f2937);
  margin: 0;
}
.table-empty-state p {
  font-size: 13px;
  font-weight: 500;
  margin: 0;
  max-width: 320px;
  line-height: 1.5;
}
.table-empty-state md-button {
  margin-top: 4px;
}

.table-card-container:has(+ .table-empty-state:not(.ng-hide)) {
  display: none;
}

.table-card-container + .table-empty-state {
  flex: 1 1 0;
  min-height: 0;
  margin: 0 24px 12px;
  border-radius: 12px;
  border: 1.5px solid var(--an-border, rgba(0, 0, 0, 0.08));
  background: var(--an-surface, #fff);
}

md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) {
  min-height: 56px;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools {
  min-height: 56px;
  padding: 8px var(--space-lg);
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools h1,
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools h2 {
  font-size: 16px !important;
  font-weight: 700 !important;
  letter-spacing: -0.3px;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools h1 span[translate],
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools h2 span[translate] {
  font-size: 16px !important;
  font-weight: 700 !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools > .table-toolbar-filters {
  order: 10;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters {
  flex: 0 0 calc(100% + 2 * var(--space-lg));
  width: calc(100% + 2 * var(--space-lg));
  margin: 0 calc(-1 * var(--space-lg)) -8px;
  padding: 10px var(--space-lg);
  background: var(--an-bg-subtle);
  border-top: 1px solid var(--an-border);
  gap: 10px 16px;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group:has(> md-datepicker + md-datepicker) {
  background: var(--an-bg);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  height: 32px;
  gap: 0;
  transition: border-color var(--duration-fast) var(--ease-default), box-shadow var(--duration-fast) var(--ease-default);
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group:has(> md-datepicker + md-datepicker):focus-within {
  border-color: var(--an-text);
  box-shadow: 0 0 0 2px var(--an-surface), 0 0 0 4px var(--an-border-strong);
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group:has(> md-datepicker + md-datepicker) md-datepicker {
  background: transparent !important;
  border: none !important;
  height: 30px !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group:has(> md-datepicker + md-datepicker) md-datepicker:focus-within {
  box-shadow: none !important;
  border: none !important;
}
md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group:has(> md-datepicker + md-datepicker) md-datepicker + md-datepicker {
  border-left: 1px solid var(--an-border) !important;
  border-radius: 0 !important;
}
@media (max-width: 767px) {
  md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools > .table-toolbar-filters,
  md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters {
    flex-wrap: nowrap;
    justify-content: flex-start;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools > .table-toolbar-filters::-webkit-scrollbar,
  md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters::-webkit-scrollbar {
    display: none;
  }
  md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools > .table-toolbar-filters .table-filter-group,
  md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters .table-filter-group {
    flex-shrink: 0;
  }
  md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools > .table-toolbar-filters md-datepicker .md-datepicker-input,
  md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-toolbar-filters md-datepicker .md-datepicker-input {
    min-width: 74px !important;
  }
  md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .table-inline-search {
    flex: 1 1 100%;
    max-width: none;
    order: 5;
  }
  md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools h1,
  md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools h2 {
    font-size: 14px !important;
  }
  md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools h1 span[translate],
  md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools h2 span[translate] {
    font-size: 14px !important;
  }
}

section-toolbar {
  display: block;
  flex-shrink: 0;
  container-type: inline-size;
  container-name: st;
}

st-title,
st-search,
st-filters,
st-actions {
  display: contents;
}

md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools.section-toolbar__grid {
  display: grid;
  grid-template-columns: auto auto minmax(0, 1fr) auto;
  grid-template-areas: "title search filters actions";
  align-items: center;
  column-gap: 12px;
  row-gap: 0;
}
md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools.section-toolbar__grid .section-toolbar__title {
  grid-area: title;
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools.section-toolbar__grid .section-toolbar__back {
  margin: 0 !important;
  padding: 0 8px !important;
  min-width: 0 !important;
  height: 28px !important;
  line-height: 28px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  letter-spacing: -0.2px;
  color: var(--an-text-muted) !important;
  text-transform: none !important;
}
md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools.section-toolbar__grid .section-toolbar__back md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  color: var(--an-text-muted) !important;
}
md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools.section-toolbar__grid .section-toolbar__back:hover:not([disabled]) {
  color: var(--an-text) !important;
}
md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools.section-toolbar__grid .section-toolbar__back:hover:not([disabled]) md-icon {
  color: var(--an-text) !important;
}
md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools.section-toolbar__grid .section-toolbar__sep {
  opacity: 0.35;
  font-weight: 300;
}
md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools.section-toolbar__grid .section-toolbar__search {
  grid-area: search;
  display: flex;
  align-items: center;
  min-width: 0;
}
md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools.section-toolbar__grid .section-toolbar__actions {
  grid-area: actions;
  display: flex;
  align-items: center;
  gap: 4px;
  justify-self: end;
  white-space: nowrap;
}
md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools.section-toolbar__grid .section-toolbar__filters {
  grid-area: filters;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 8px 16px;
  min-width: 0;
  width: auto;
  margin: 0;
  padding: 0;
  border-top: none;
  background: transparent;
  order: 0;
}

@container st (min-width: 900px) {
  md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools.section-toolbar__grid:has(.section-toolbar__filters st-filters > :nth-child(n+5)) {
    grid-template-columns: auto minmax(0, 1fr) auto;
    grid-template-areas: "title search actions" "filters filters filters";
  }
  md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools.section-toolbar__grid:has(.section-toolbar__filters st-filters > :nth-child(n+5)) .section-toolbar__filters {
    justify-content: flex-start;
    width: calc(100% + 2 * var(--space-lg));
    margin: 8px calc(-1 * var(--space-lg)) -8px;
    padding: 10px var(--space-lg);
    background: var(--an-bg-subtle);
    border-top: 1px solid var(--an-border);
  }
}
@container st (max-width: 899px) {
  md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools.section-toolbar__grid {
    grid-template-columns: auto minmax(0, 1fr) auto;
    grid-template-areas: "title search actions" "filters filters filters";
  }
  md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools.section-toolbar__grid .section-toolbar__filters {
    justify-content: flex-start;
    width: calc(100% + 2 * var(--space-lg));
    margin: 8px calc(-1 * var(--space-lg)) -8px;
    padding: 10px var(--space-lg);
    background: var(--an-bg-subtle);
    border-top: 1px solid var(--an-border);
  }
}
@container st (max-width: 599px) {
  md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools.section-toolbar__grid {
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas: "title actions" "search search" "filters filters";
  }
  md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools.section-toolbar__grid .section-toolbar__search {
    margin-top: 6px;
  }
  md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools.section-toolbar__grid .section-toolbar__search .table-inline-search {
    flex: 1 1 100%;
    max-width: none;
    width: 100%;
  }
  md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools.section-toolbar__grid .section-toolbar__filters {
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools.section-toolbar__grid .section-toolbar__filters::-webkit-scrollbar {
    display: none;
  }
  md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools.section-toolbar__grid .section-toolbar__filters .table-filter-group {
    flex-shrink: 0;
  }
  md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools.section-toolbar__grid .section-toolbar__filters md-datepicker .md-datepicker-input {
    min-width: 74px !important;
  }
}
.filter-tray {
  position: relative;
}

md-toolbar:has(.filter-tray--open),
section-toolbar:has(.filter-tray--open) {
  position: relative;
  z-index: 100 !important;
}

.filter-tray__toggle {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex: none;
  height: 34px;
  padding: 0 12px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
  color: var(--an-text);
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 500;
  white-space: nowrap;
  cursor: pointer;
  transition: background var(--duration-fast) var(--ease-default), border-color var(--duration-fast) var(--ease-default);
}
.filter-tray__toggle i {
  --an-icon-size: 16px;
  color: var(--an-text-muted);
}
.filter-tray__toggle:hover {
  background: var(--an-bg-subtle);
}
.filter-tray__toggle--active {
  border-color: var(--an-text);
}
.filter-tray--open .filter-tray__toggle {
  background: var(--an-bg-active);
}

.filter-tray__count {
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  box-sizing: border-box;
  border-radius: 9px;
  background: var(--an-text);
  color: var(--an-surface);
  font-size: 11px;
  font-weight: 600;
  line-height: 18px;
  text-align: center;
}
.filter-tray__count:empty {
  display: none;
}

.filter-tray__panel {
  display: none;
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 60;
  flex-direction: column;
  gap: 16px;
  width: 340px;
  max-height: 70vh;
  overflow-y: auto;
  box-sizing: border-box;
  padding: 18px;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 12px;
  box-shadow: var(--an-shadow-lg);
  text-align: left;
}
.filter-tray--open .filter-tray__panel {
  display: flex;
}
.filter-tray__panel > .ng-hide {
  display: none !important;
}
.filter-tray__panel > *:not(.filter-tray__done):not(.ng-hide) {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 6px 8px;
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
}
.filter-tray__panel label {
  flex: 1 1 100%;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  color: var(--an-text-muted) !important;
}
.filter-tray__panel md-select,
.filter-tray__panel md-input-container {
  flex: 1 1 100%;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
}
.filter-tray__panel md-datepicker {
  flex: 1 1 150px;
  min-width: 0 !important;
  margin: 0 !important;
}
.filter-tray__panel md-checkbox {
  margin: 0 !important;
  min-height: 0;
}

.filter-tray__done {
  align-self: flex-end;
  height: 34px;
  padding: 0 16px;
  border: 0;
  border-radius: var(--an-radius-sm);
  background: var(--an-text);
  color: var(--an-surface);
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
}

w-action-bar {
  display: block;
  flex: 1 1 auto;
  min-width: 0;
}

.w-action-bar {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  overflow: hidden;
}
.w-action-bar md-menu {
  display: flex;
  flex-shrink: 0;
}

.w-action-bar__measure {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  gap: 8px;
  visibility: hidden;
  pointer-events: none;
  white-space: nowrap;
}

.w-action-bar__btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
  height: 40px;
  padding: 0 14px 0 12px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
  color: var(--an-text);
  font: inherit;
  font-size: 13.5px;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
  transition: background var(--duration-fast), border-color var(--duration-fast), color var(--duration-fast);
}
.w-action-bar__btn md-icon {
  margin: 0;
  font-size: 18px;
  width: 18px;
  height: 18px;
  min-width: 18px;
  min-height: 18px;
  line-height: 18px;
  color: var(--an-text-muted) !important;
}
.w-action-bar__btn:hover:not([disabled]) {
  border-color: var(--an-border-strong);
  background: var(--an-surface2);
}
.w-action-bar__btn:hover:not([disabled]) md-icon {
  color: var(--an-text) !important;
}
.w-action-bar__btn:focus-visible {
  outline: 2px solid var(--an-primary);
  outline-offset: 2px;
}
.w-action-bar__btn[disabled] {
  opacity: 0.5;
  cursor: not-allowed;
}
.w-action-bar__btn--busy {
  cursor: progress;
}
.w-action-bar__btn md-progress-circular {
  margin: 0;
  flex-shrink: 0;
}
.w-action-bar__btn--more {
  width: 40px;
  padding: 0;
  justify-content: center;
}
.w-action-bar__btn--accent {
  border-color: var(--an-rose-ring);
  background: var(--an-rose-soft);
  color: var(--an-rose);
}
.w-action-bar__btn--accent md-icon {
  color: var(--an-rose) !important;
}
.w-action-bar__btn--accent:hover:not([disabled]) {
  border-color: var(--an-rose);
  background: var(--an-rose-soft);
  color: var(--an-rose);
}
.w-action-bar__btn--accent:hover:not([disabled]) md-icon {
  color: var(--an-rose) !important;
}
.w-action-bar__btn--success {
  border-color: color-mix(in srgb, var(--an-emerald) 35%, transparent);
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
}
.w-action-bar__btn--success md-icon {
  color: var(--an-emerald) !important;
}
.w-action-bar__btn--success:hover:not([disabled]) {
  border-color: var(--an-emerald);
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
}
.w-action-bar__btn--success:hover:not([disabled]) md-icon {
  color: var(--an-emerald) !important;
}
.w-action-bar__btn--danger {
  margin-left: auto;
  border-color: transparent;
  background: transparent;
  color: var(--an-danger);
}
.w-action-bar__btn--danger md-icon {
  color: var(--an-danger) !important;
}
.w-action-bar__btn--danger:hover:not([disabled]) {
  border-color: var(--an-rose-ring);
  background: var(--an-rose-soft);
  color: var(--an-danger);
}
.w-action-bar__btn--danger:hover:not([disabled]) md-icon {
  color: var(--an-danger) !important;
}
.w-action-bar__btn--active {
  border-color: color-mix(in srgb, var(--an-amber) 45%, transparent);
  background: var(--an-amber-soft);
  color: var(--an-amber);
}
.w-action-bar__btn--active md-icon {
  color: var(--an-amber) !important;
}

md-menu-content.w-action-bar__menu md-menu-item.w-action-bar__divider {
  min-height: 0;
}
md-menu-content.w-action-bar__menu md-menu-item.w-action-bar__divider md-menu-divider {
  margin: 4px 0;
}
md-menu-content.w-action-bar__menu .md-button.w-action-bar__item--success md-icon {
  color: var(--an-emerald) !important;
}
md-menu-content.w-action-bar__menu .md-button.w-action-bar__item--active md-icon {
  color: var(--an-amber) !important;
}

.w-timeline {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.w-timeline__loading,
.w-timeline__empty {
  display: flex;
  justify-content: center;
  padding: 16px 0;
  font-size: 13px;
  color: var(--an-text-muted);
}

.w-timeline__more {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 0;
  border: 0;
  background: transparent;
  color: var(--an-rose);
  font: inherit;
  font-size: 12.5px;
  font-weight: 600;
  cursor: pointer;
}
.w-timeline__more md-icon {
  --an-icon-size: 14px;
  margin: 0;
  color: inherit;
}
.w-timeline__more:hover span {
  text-decoration: underline;
}

.w-timeline__list {
  position: relative;
  margin: 0;
  padding: 0;
  list-style: none;
}
.w-timeline__list::before {
  content: "";
  position: absolute;
  top: 14px;
  bottom: 14px;
  left: 13px;
  width: 2px;
  border-radius: 1px;
  background: var(--an-border);
}

.w-timeline__day {
  position: relative;
  margin: 10px 0 6px 40px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--an-text-muted);
}
.w-timeline__day:first-child {
  margin-top: 0;
}

.w-timeline__item {
  --tl-tone: var(--an-text-muted);
  --tl-soft: var(--an-surface2);
  position: relative;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  column-gap: 12px;
  align-items: start;
  padding-bottom: 14px;
}
.w-timeline__item--last {
  padding-bottom: 0;
}
.w-timeline__item--brand {
  --tl-tone: var(--an-rose);
  --tl-soft: var(--an-rose-soft);
}
.w-timeline__item--info {
  --tl-tone: var(--an-sky);
  --tl-soft: var(--an-sky-soft);
}
.w-timeline__item--ok {
  --tl-tone: var(--an-emerald);
  --tl-soft: var(--an-emerald-soft);
}
.w-timeline__item--warn {
  --tl-tone: var(--an-amber);
  --tl-soft: var(--an-amber-soft);
}
.w-timeline__item--danger {
  --tl-tone: var(--an-danger);
  --tl-soft: var(--an-rose-soft);
}

.w-timeline__dot {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: linear-gradient(var(--tl-soft), var(--tl-soft)), var(--an-surface);
  box-shadow: 0 0 0 3px var(--an-surface);
}
.w-timeline__dot md-icon {
  --an-icon-size: 14px;
  margin: 0;
  color: var(--tl-tone);
}
.w-timeline__item--last .w-timeline__dot {
  box-shadow: 0 0 0 3px var(--an-surface), 0 0 0 5px var(--tl-soft);
}

.w-timeline__gap {
  position: relative;
  margin: -8px 0 6px;
  padding: 2px 0 2px 40px;
  font-size: 11px;
  font-weight: 600;
  color: var(--an-text-faint);
  font-variant-numeric: tabular-nums;
}

.w-timeline__body {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
  padding-top: 4px;
}

.w-timeline__title {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13.5px;
  font-weight: 600;
  color: var(--an-text);
}

.w-timeline__count {
  padding: 0 6px;
  border-radius: var(--an-radius-pill);
  background: var(--tl-soft);
  color: var(--tl-tone);
  font-size: 11px;
  font-weight: 700;
}

.w-timeline__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 2px 10px;
  font-size: 12px;
  color: var(--an-text-muted);
  font-variant-numeric: tabular-nums;
}

.w-timeline__actor {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

.order-history-timeline {
  padding: 8px 10px 4px;
}
.order-history-timeline h5 {
  margin: 0 0 12px;
}

.rpt-pop-anchor {
  position: relative;
  display: inline-block;
}

.rpt-pop-trigger {
  height: 32px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 10px;
  border: 1px solid var(--an-border-strong);
  border-radius: var(--an-radius-sm);
  background: var(--an-bg);
  font-family: inherit;
  font-size: 12.5px;
  font-weight: 600;
  color: var(--an-text);
  cursor: pointer;
  max-width: 100%;
}
.rpt-pop-trigger:hover {
  border-color: var(--an-primary);
}
.rpt-pop-trigger md-icon {
  color: var(--an-text-muted);
  font-size: 16px;
  width: 16px;
  height: 16px;
}
.rpt-pop-trigger .rpt-pop-chev {
  color: var(--an-text-faint);
  transition: transform 0.15s ease;
  font-size: 14px;
  width: 14px;
  height: 14px;
}
.rpt-pop-trigger.open .rpt-pop-chev {
  transform: rotate(180deg);
}

.rpt-pop-trigger-text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.rpt-dp-compare-label {
  color: var(--an-text-muted);
  font-weight: 500;
}

.rpt-pop-panel {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  z-index: 20;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  box-shadow: var(--an-shadow-lg);
  display: none;
  overflow: hidden;
  width: min(640px, 92vw);
}
.rpt-pop-panel.open {
  display: block;
}
.rpt-pop-panel.rpt-pop-panel--narrow {
  width: 280px;
}

.rpt-pop-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 14px;
  border-top: 1px solid var(--an-border);
  background: var(--an-surface);
}
.rpt-pop-footer.rpt-pop-footer--end {
  justify-content: flex-end;
}
.rpt-pop-footer md-switch {
  margin: 0;
}

.rpt-pop-actions {
  display: flex;
  gap: 8px;
  flex: none;
}

.rpt-pop-btn {
  font-family: inherit;
  font-size: 12px;
  font-weight: 650;
  border-radius: var(--an-radius-xs);
  padding: 6px 13px;
  cursor: pointer;
  border: 1px solid var(--an-border);
  background: transparent;
}
.rpt-pop-btn.ghost {
  color: var(--an-text-muted);
}
.rpt-pop-btn.ghost:hover {
  background: var(--an-surface3);
}
.rpt-pop-btn.primary {
  background: var(--an-primary);
  border-color: var(--an-primary);
  color: #fff;
}
.rpt-pop-btn.primary:hover {
  filter: brightness(1.06);
}

.rpt-dp-body {
  display: flex;
}

.rpt-dp-presets {
  width: 160px;
  flex: none;
  border-right: 1px solid var(--an-border);
  padding: 8px;
  display: flex;
  flex-direction: column;
  gap: 2px;
  background: var(--an-surface2);
}

.rpt-dp-preset-btn {
  text-align: left;
  font-family: inherit;
  border: none;
  background: transparent;
  color: var(--an-text);
  font-size: 12.5px;
  padding: 7px 9px;
  border-radius: var(--an-radius-xs);
  cursor: pointer;
}
.rpt-dp-preset-btn:hover {
  background: var(--an-surface3);
}
.rpt-dp-preset-btn.active {
  background: var(--an-primary);
  color: #fff;
  font-weight: 600;
}

.rpt-dp-calendars {
  flex: 1;
  min-width: 0;
  padding: 12px 14px 4px;
  display: flex;
  gap: 20px;
}

.rpt-dp-month {
  flex: 1;
  min-width: 0;
}

.rpt-dp-month-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 6px;
}
.rpt-dp-month-head .rpt-dp-mname {
  font-size: 12.5px;
  font-weight: 700;
  text-transform: capitalize;
}

.rpt-dp-nav {
  border: none;
  background: transparent;
  color: var(--an-text-faint);
  cursor: pointer;
  padding: 2px;
  border-radius: 6px;
  display: flex;
}
.rpt-dp-nav md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
}
.rpt-dp-nav:hover {
  background: var(--an-surface3);
  color: var(--an-text);
}

.rpt-dp-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 2px;
}

.rpt-dp-dow {
  font-size: 9.5px;
  font-weight: 700;
  color: var(--an-text-faint);
  text-align: center;
  padding-bottom: 4px;
  text-transform: uppercase;
}

.rpt-dp-day {
  height: 27px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11.5px;
  color: var(--an-text);
  cursor: pointer;
  border-radius: 6px;
  font-family: inherit;
  border: none;
  background: transparent;
}
.rpt-dp-day.pad {
  visibility: hidden;
  cursor: default;
}
.rpt-dp-day:hover:not(.pad) {
  background: var(--an-surface3);
}
.rpt-dp-day.in-range {
  background: var(--an-primary-soft);
  border-radius: 0;
}
.rpt-dp-day.range-start {
  background: var(--an-primary);
  color: #fff;
  border-radius: 6px 0 0 6px;
}
.rpt-dp-day.range-end {
  background: var(--an-primary);
  color: #fff;
  border-radius: 0 6px 6px 0;
}
.rpt-dp-day.range-start.range-end {
  border-radius: 6px;
}
.rpt-dp-day.today:not(.range-start):not(.range-end) {
  box-shadow: inset 0 0 0 1.5px var(--an-primary);
}

.rpt-lp-body {
  padding: 8px;
  max-height: 60vh;
  overflow: auto;
}

.rpt-lp-types {
  display: flex;
  flex-direction: column;
  gap: 1px;
}

.rpt-lp-type-row {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 8px;
  border-radius: var(--an-radius-xs);
  cursor: pointer;
  font-size: 12.5px;
  color: var(--an-text);
  border: none;
  background: transparent;
  font-family: inherit;
  width: 100%;
  text-align: left;
}
.rpt-lp-type-row md-icon {
  color: var(--an-text-muted);
  font-size: 16px;
  width: 16px;
  height: 16px;
}
.rpt-lp-type-row:hover {
  background: var(--an-surface3);
}
.rpt-lp-type-row.active {
  background: var(--an-primary-soft);
  color: var(--an-primary);
  font-weight: 650;
}
.rpt-lp-type-row.active md-icon {
  color: var(--an-primary);
}
.rpt-lp-type-row.nodata {
  opacity: 0.45;
  cursor: not-allowed;
}
.rpt-lp-type-row.nodata:hover {
  background: transparent;
}

.rpt-lp-tag {
  margin-left: auto;
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--an-rose, #EC4E36);
  letter-spacing: 0.03em;
  flex: none;
}

.rpt-lp-layouts {
  margin-top: 6px;
  padding: 10px 8px 2px;
  border-top: 1px dashed var(--an-border);
}

.rpt-lp-layouts-label {
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--an-text-faint);
  margin-bottom: 8px;
}

.rpt-lp-layout-opts {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.rpt-lp-layout-opt {
  height: 27px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 10px 0 8px;
  border-radius: var(--an-radius-pill);
  border: 1px solid var(--an-border);
  background: var(--an-surface);
  font-family: inherit;
  font-size: 12px;
  cursor: pointer;
  color: var(--an-text-muted);
}
.rpt-lp-layout-opt .rpt-lp-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  border: 1.5px solid var(--an-text-faint);
  flex: none;
}
.rpt-lp-layout-opt.selected {
  border-color: var(--an-primary);
  color: var(--an-primary);
  background: var(--an-primary-soft);
}
.rpt-lp-layout-opt.selected .rpt-lp-dot {
  background: var(--an-primary);
  border-color: var(--an-primary);
}

.rpt-lp-compare-note {
  margin-top: 10px;
  font-size: 11.5px;
  color: var(--an-primary);
  display: flex;
  align-items: center;
  gap: 6px;
}
.rpt-lp-compare-note md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  color: var(--an-primary);
}

@keyframes bv-spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
.bv-spin {
  animation: bv-spin 1.1s linear infinite;
  display: inline-block;
}

.bv-overwrite-dialog {
  max-width: 480px;
}
.bv-overwrite-dialog .bv-overwrite-content {
  padding: 24px;
}
.bv-overwrite-dialog .bv-overwrite-title {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 12px 0;
  font-size: 18px;
  font-weight: 700;
  color: #0f172a;
}
.bv-overwrite-dialog .bv-overwrite-title i {
  color: #d97706;
  font-size: 22px;
  flex-shrink: 0;
}
.bv-overwrite-dialog .bv-overwrite-body {
  margin: 0 0 16px 0;
  color: #64748b;
  font-size: 13px;
  line-height: 1.6;
}
.bv-overwrite-dialog .bv-overwrite-list {
  max-height: 280px;
  overflow-y: auto;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
}
.bv-overwrite-dialog .bv-overwrite-row {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  font-size: 13px;
  border-bottom: 1px solid #e2e8f0;
}
.bv-overwrite-dialog .bv-overwrite-row:last-child {
  border-bottom: none;
}
.bv-overwrite-dialog .bv-overwrite-row .bv-overwrite-place {
  flex: 1 1 auto;
  font-weight: 600;
  color: #0f172a;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.bv-overwrite-dialog .bv-overwrite-row .bv-overwrite-current {
  color: #94a3b8;
  white-space: nowrap;
}
.bv-overwrite-dialog .bv-overwrite-row i {
  color: #94a3b8;
  font-size: 14px;
  flex-shrink: 0;
}
.bv-overwrite-dialog .bv-overwrite-row .bv-overwrite-new {
  font-weight: 700;
  color: #d97706;
  white-space: nowrap;
}
.bv-overwrite-dialog .bv-overwrite-auditing {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 24px 14px;
  color: #64748b;
  font-size: 13px;
  border: 1px dashed #cbd5e1;
  border-radius: 8px;
}

#bvOverwriteConfirmBtn {
  background: #dc2626 !important;
  border: none !important;
  border-radius: 8px !important;
  font-weight: 700 !important;
  text-transform: none !important;
  color: #ffffff !important;
}
#bvOverwriteConfirmBtn span, #bvOverwriteConfirmBtn i, #bvOverwriteConfirmBtn .md-button-wrapper {
  color: #ffffff !important;
}
#bvOverwriteConfirmBtn:hover:not([disabled]) {
  background: #b91c1c !important;
}
#bvOverwriteConfirmBtn[disabled] {
  background: #fca5a5 !important;
  color: #ffffff !important;
}
#bvOverwriteConfirmBtn[disabled] span, #bvOverwriteConfirmBtn[disabled] i {
  color: #ffffff !important;
}

.waitry-dark-theme .bv-overwrite-dialog {
  background: #1e293b;
}
.waitry-dark-theme .bv-overwrite-dialog .bv-overwrite-title {
  color: #e2e8f0;
}
.waitry-dark-theme .bv-overwrite-dialog .bv-overwrite-body {
  color: #94a3b8;
}
.waitry-dark-theme .bv-overwrite-dialog .bv-overwrite-list {
  border-color: #2e3348;
}
.waitry-dark-theme .bv-overwrite-dialog .bv-overwrite-auditing {
  border-color: #334155;
  color: #94a3b8;
}
.waitry-dark-theme .bv-overwrite-dialog .bv-overwrite-row {
  border-bottom-color: #2e3348;
}
.waitry-dark-theme .bv-overwrite-dialog .bv-overwrite-row .bv-overwrite-place {
  color: #f1f5f9;
}
.waitry-dark-theme .bv-overwrite-dialog .bv-overwrite-row .bv-overwrite-current {
  color: #64748b;
}
.waitry-dark-theme .bv-overwrite-dialog .bv-overwrite-row i {
  color: #64748b;
}
.waitry-dark-theme .bv-overwrite-dialog .bv-overwrite-row .bv-overwrite-new {
  color: #fbbf24;
}

.brand-voice-container {
  background: #f8fafc !important;
  min-height: calc(100vh - 64px);
}
.brand-voice-container .bv-page-content {
  padding: 20px 24px 24px;
}
.brand-voice-container .bv-main-layout {
  gap: 24px;
}
.brand-voice-container .bv-desc {
  margin: 0 0 20px 0;
  color: #64748b;
  font-size: 14px;
  line-height: 1.6;
  max-width: 700px;
}
.brand-voice-container .bv-skeleton {
  margin-bottom: 24px;
}
.brand-voice-container .bv-skeleton .bv-skeleton-card {
  min-height: 420px;
  border-radius: 16px;
  background: linear-gradient(90deg, #ffffff 25%, #f8fafc 37%, #ffffff 63%);
  background-size: 400% 100%;
  animation: bv-skeleton-shimmer 1.4s ease infinite;
  border: 1px solid #e2e8f0;
}
.brand-voice-container .bv-skeleton .bv-skeleton-card--sidebar {
  min-height: 220px;
}
@keyframes bv-skeleton-shimmer {
  0% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0 50%;
  }
}
.brand-voice-container .bv-section-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  padding: 24px;
  margin-bottom: 24px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
  transition: box-shadow 0.25s ease;
}
.brand-voice-container .bv-section-card h3 {
  margin-top: 0;
  margin-bottom: 16px;
  font-size: 16px;
  font-weight: 600;
  color: #0f172a;
  display: flex;
  align-items: center;
  gap: 8px;
}
.brand-voice-container .bv-section-card h3 i {
  color: #6366f1;
  font-size: 18px;
}
.brand-voice-container .bv-section-card .section-desc {
  margin-top: -8px;
  margin-bottom: 20px;
  color: #64748b;
  font-size: 13px;
  line-height: 1.5;
}
.brand-voice-container .bv-scope-selector {
  display: flex;
  align-items: center;
  gap: 16px;
  background: #f8fafc;
  padding: 14px 16px;
  border-radius: 12px;
  border: 1px solid #e2e8f0;
  margin-bottom: 8px;
}
.brand-voice-container .bv-scope-selector .scope-label {
  font-weight: 600;
  color: #475569;
  font-size: 14px;
  white-space: nowrap;
}
.brand-voice-container .bv-scope-selector md-select {
  margin: 0;
  min-width: 220px;
}
.brand-voice-container .bv-scope-selector .bv-scope-select-container {
  margin: 0;
}
.brand-voice-container .bv-section-h3 {
  margin-top: 24px;
}
.brand-voice-container .bv-sidebar-col {
  align-self: flex-start;
}
.brand-voice-container .bv-detect-action {
  margin-top: 12px;
}
.brand-voice-container .bv-presets-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 14px;
  margin-bottom: 28px;
}
.brand-voice-container .bv-preset-card {
  border: 1.5px solid #e2e8f0;
  border-radius: 12px;
  padding: 16px;
  cursor: pointer;
  background: #ffffff;
  position: relative;
  transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1);
  overflow: hidden;
}
.brand-voice-container .bv-preset-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 4px;
  height: 100%;
  background: transparent;
  transition: background-color 0.2s ease;
}
.brand-voice-container .bv-preset-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.07);
  border-color: #cbd5e1;
}
.brand-voice-container .bv-preset-card:focus-visible {
  outline: 2px solid #6366f1;
  outline-offset: 2px;
}
.brand-voice-container .bv-preset-card.active {
  border-color: #6366f1;
  background: #f5f3ff;
  box-shadow: 0 4px 16px rgba(99, 102, 241, 0.1);
}
.brand-voice-container .bv-preset-card.active::before {
  background: #6366f1;
}
.brand-voice-container .bv-preset-card.active .card-check {
  opacity: 1;
  transform: scale(1);
}
.brand-voice-container .bv-preset-card.active .preset-icon {
  background: rgba(99, 102, 241, 0.15);
  color: #6366f1;
}
.brand-voice-container .bv-preset-card .preset-icon {
  width: 40px;
  height: 40px;
  border-radius: 8px;
  background: #f1f5f9;
  color: #64748b;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 12px;
  font-size: 20px;
  transition: all 0.2s ease;
}
.brand-voice-container .bv-preset-card .preset-title {
  font-weight: 600;
  font-size: 14px;
  color: #0f172a;
  margin-bottom: 6px;
  line-height: 1.3;
}
.brand-voice-container .bv-preset-card .preset-desc {
  font-size: 12px;
  color: #64748b;
  line-height: 1.5;
}
.brand-voice-container .bv-preset-card .card-check {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #6366f1;
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  opacity: 0;
  transform: scale(0.6);
  transition: all 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.brand-voice-container .bv-preset-card.gourmet:hover {
  border-color: rgba(217, 119, 6, 0.4);
}
.brand-voice-container .bv-preset-card.gourmet.active {
  background: #fef9ed;
  border-color: #d97706;
}
.brand-voice-container .bv-preset-card.gourmet.active::before {
  background: #d97706;
}
.brand-voice-container .bv-preset-card.gourmet.active .card-check {
  background: #d97706;
}
.brand-voice-container .bv-preset-card.gourmet.active .preset-icon {
  color: #b45309;
  background: rgba(217, 119, 6, 0.12);
}
.brand-voice-container .bv-preset-card.casual:hover {
  border-color: rgba(16, 185, 129, 0.4);
}
.brand-voice-container .bv-preset-card.casual.active {
  background: #f0fdf4;
  border-color: #10b981;
}
.brand-voice-container .bv-preset-card.casual.active::before {
  background: #10b981;
}
.brand-voice-container .bv-preset-card.casual.active .card-check {
  background: #10b981;
}
.brand-voice-container .bv-preset-card.casual.active .preset-icon {
  color: #059669;
  background: rgba(16, 185, 129, 0.12);
}
.brand-voice-container .bv-preset-card.cool:hover {
  border-color: rgba(236, 72, 153, 0.4);
}
.brand-voice-container .bv-preset-card.cool.active {
  background: #fdf2f8;
  border-color: #ec4899;
}
.brand-voice-container .bv-preset-card.cool.active::before {
  background: #ec4899;
}
.brand-voice-container .bv-preset-card.cool.active .card-check {
  background: #ec4899;
}
.brand-voice-container .bv-preset-card.cool.active .preset-icon {
  color: #db2777;
  background: rgba(236, 72, 153, 0.12);
}
.brand-voice-container .bv-preset-card.formal:hover {
  border-color: rgba(71, 85, 105, 0.4);
}
.brand-voice-container .bv-preset-card.formal.active {
  background: #f8fafc;
  border-color: #475569;
}
.brand-voice-container .bv-preset-card.formal.active::before {
  background: #475569;
}
.brand-voice-container .bv-preset-card.formal.active .card-check {
  background: #475569;
}
.brand-voice-container .bv-preset-card.formal.active .preset-icon {
  color: #334155;
  background: rgba(71, 85, 105, 0.12);
}
.brand-voice-container .bv-preset-card.young:hover {
  border-color: rgba(99, 102, 241, 0.4);
}
.brand-voice-container .bv-preset-card.familiar:hover {
  border-color: rgba(14, 165, 233, 0.4);
}
.brand-voice-container .bv-preset-card.familiar.active {
  background: #f0f9ff;
  border-color: #0ea5e9;
}
.brand-voice-container .bv-preset-card.familiar.active::before {
  background: #0ea5e9;
}
.brand-voice-container .bv-preset-card.familiar.active .card-check {
  background: #0ea5e9;
}
.brand-voice-container .bv-preset-card.familiar.active .preset-icon {
  color: #0284c7;
  background: rgba(14, 165, 233, 0.12);
}
.brand-voice-container .bv-preset-card.custom:hover {
  border-color: rgba(168, 85, 247, 0.4);
}
.brand-voice-container .bv-preset-card.custom.active {
  background: #faf5ff;
  border-color: #a855f7;
}
.brand-voice-container .bv-preset-card.custom.active::before {
  background: #a855f7;
}
.brand-voice-container .bv-preset-card.custom.active .card-check {
  background: #a855f7;
}
.brand-voice-container .bv-preset-card.custom.active .preset-icon {
  color: #9333ea;
  background: rgba(168, 85, 247, 0.12);
}
@keyframes bv-detected-pulse {
  0%, 100% {
    box-shadow: 0 0 0 0 rgba(99, 102, 241, 0);
  }
  50% {
    box-shadow: 0 0 0 6px rgba(99, 102, 241, 0.18);
  }
}
.brand-voice-container .bv-preset-card.detected {
  border-color: #6366f1 !important;
  border-style: dashed !important;
  animation: bv-detected-pulse 2s ease-in-out infinite;
}
.brand-voice-container .bv-preset-card.detected .card-detected-badge {
  opacity: 1;
  transform: scale(1);
}
.brand-voice-container .card-detected-badge {
  position: absolute;
  top: 10px;
  left: 10px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #6366f1;
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  opacity: 0;
  transform: scale(0.5);
  transition: all 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.brand-voice-container .bv-textarea-container {
  margin-bottom: 20px;
  position: relative;
}
.brand-voice-container .bv-textarea-container textarea {
  width: 100%;
  min-height: 130px;
  border: 1.5px solid #cbd5e1;
  border-radius: 12px;
  padding: 14px 16px;
  font-size: 14px;
  color: #0f172a;
  font-family: inherit;
  line-height: 1.6;
  resize: vertical;
  transition: all 0.2s ease;
  box-sizing: border-box;
  background: #ffffff;
}
.brand-voice-container .bv-textarea-container textarea::placeholder {
  color: #94a3b8;
}
.brand-voice-container .bv-textarea-container textarea:focus {
  border-color: #6366f1;
  outline: none;
  box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.12);
}
.brand-voice-container .bv-chips-container {
  background: #f8fafc;
  padding: 14px 16px;
  border-radius: 12px;
  border: 1px solid #e2e8f0;
  margin-bottom: 24px;
}
.brand-voice-container .bv-chips-container .chips-title {
  font-size: 11px;
  font-weight: 700;
  color: #94a3b8;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin-bottom: 10px;
}
.brand-voice-container .bv-chips-container .chips-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.brand-voice-container .bv-chips-container .chip-item {
  background: #ffffff;
  border: 1px solid #cbd5e1;
  border-radius: 20px;
  padding: 5px 12px;
  font-size: 13px;
  color: #334155;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 5px;
  transition: all 0.18s ease;
  user-select: none;
}
.brand-voice-container .bv-chips-container .chip-item i {
  font-size: 13px;
  color: #64748b;
  transition: color 0.18s ease;
}
.brand-voice-container .bv-chips-container .chip-item:hover {
  border-color: #6366f1;
  background: #f5f3ff;
  color: #6366f1;
  transform: translateY(-1px);
  box-shadow: 0 3px 8px rgba(99, 102, 241, 0.12);
}
.brand-voice-container .bv-chips-container .chip-item:hover i {
  color: #6366f1;
}
.brand-voice-container .bv-chips-container .chip-item:active {
  transform: scale(0.96);
}
.brand-voice-container .bv-chips-container .chip-item:focus-visible {
  outline: 2px solid #6366f1;
  outline-offset: 2px;
}
.brand-voice-container .bv-inline-hint {
  margin: -12px 0 20px 0;
  font-size: 12px;
  color: #b45309;
}
.brand-voice-container .bv-actions-bar {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
  padding-top: 16px;
  border-top: 1px solid #e2e8f0;
  margin-top: auto;
}
.brand-voice-container .bv-actions-bar .btn-secondary {
  background: #ffffff;
  border: 1px solid #cbd5e1;
  color: #475569;
  border-radius: 8px;
  font-weight: 600;
  font-size: 14px;
  text-transform: none;
  padding: 8px 20px;
  transition: all 0.18s ease;
  line-height: 1;
}
.brand-voice-container .bv-actions-bar .btn-secondary:hover:not([disabled]) {
  background: #f8fafc;
  border-color: #94a3b8;
  color: #1e293b;
}
.brand-voice-container .bv-actions-bar .btn-primary {
  background: linear-gradient(135deg, #4f46e5 0%, #6366f1 100%) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 8px !important;
  font-weight: 600 !important;
  font-size: 14px;
  text-transform: none !important;
  padding: 8px 20px;
  box-shadow: 0 4px 14px rgba(79, 70, 229, 0.28);
  transition: all 0.18s ease;
  line-height: 1;
}
.brand-voice-container .bv-actions-bar .btn-primary span, .brand-voice-container .bv-actions-bar .btn-primary i, .brand-voice-container .bv-actions-bar .btn-primary .md-button-wrapper {
  color: #ffffff !important;
}
.brand-voice-container .bv-actions-bar .btn-primary:hover:not([disabled]) {
  box-shadow: 0 6px 18px rgba(79, 70, 229, 0.38);
  transform: translateY(-1px);
  color: #ffffff !important;
}
.brand-voice-container .bv-actions-bar .btn-primary:active:not([disabled]) {
  transform: translateY(0);
}
.brand-voice-container .bv-actions-bar .btn-primary[disabled], .brand-voice-container .bv-actions-bar .btn-primary.md-button[disabled] {
  background: #cbd5e1 !important;
  box-shadow: none !important;
  color: #94a3b8 !important;
}
.brand-voice-container .bv-actions-bar .btn-primary[disabled] span, .brand-voice-container .bv-actions-bar .btn-primary[disabled] i, .brand-voice-container .bv-actions-bar .btn-primary.md-button[disabled] span, .brand-voice-container .bv-actions-bar .btn-primary.md-button[disabled] i {
  color: #94a3b8 !important;
}
.brand-voice-container .bv-sidebar-card {
  height: auto !important;
  justify-content: flex-start !important;
}
.brand-voice-container .bv-sidebar-card > div[style*=margin-top] {
  margin-top: 12px !important;
}
.brand-voice-container .bv-detect-desc {
  color: #64748b;
  font-size: 13px;
  margin-top: 0;
  line-height: 1.6;
}
.brand-voice-container .bv-detect-btn {
  width: 100%;
  margin: 0 !important;
  border-radius: 8px !important;
  font-weight: 600 !important;
  text-transform: none !important;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  color: #ffffff !important;
}
.brand-voice-container .bv-detect-btn span, .brand-voice-container .bv-detect-btn i, .brand-voice-container .bv-detect-btn .md-button-wrapper {
  color: #ffffff !important;
}
.brand-voice-container .bv-detect-btn[disabled], .brand-voice-container .bv-detect-btn.md-button[disabled] {
  background: #cbd5e1 !important;
  box-shadow: none !important;
  color: #64748b !important;
}
.brand-voice-container .bv-detect-btn[disabled] span, .brand-voice-container .bv-detect-btn[disabled] i, .brand-voice-container .bv-detect-btn.md-button[disabled] span, .brand-voice-container .bv-detect-btn.md-button[disabled] i {
  color: #64748b !important;
}
.brand-voice-container .bv-detect-btn i {
  font-size: 16px;
}
.brand-voice-container .bv-auto-detect-box {
  margin-top: 12px;
  padding: 18px;
  border-radius: 12px;
  border: 1.5px dashed #cbd5e1;
  background: #f8fafc;
  transition: all 0.25s ease;
}
.brand-voice-container .bv-auto-detect-box.loading {
  border-style: solid;
  border-color: #6366f1;
  background: rgba(99, 102, 241, 0.03);
}
.brand-voice-container .bv-auto-detect-box .detect-header {
  display: flex;
  align-items: flex-start;
  margin-bottom: 10px;
}
.brand-voice-container .bv-auto-detect-box .detect-header .title {
  font-weight: 600;
  color: #0f172a;
  font-size: 14px;
  display: flex;
  align-items: center;
  gap: 7px;
}
.brand-voice-container .bv-auto-detect-box .detect-body {
  font-size: 13px;
  color: #64748b;
  line-height: 1.6;
}
.brand-voice-container .bv-detect-result-box {
  border-style: solid;
  border-color: #e2e8f0;
  background: #ffffff;
}
.brand-voice-container .bv-success-title {
  color: #10b981 !important;
}
.brand-voice-container .detect-result {
  margin-top: 14px;
  padding: 14px;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  animation: bv-fade-in 0.3s ease;
}
.brand-voice-container .detect-result .result-tone-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: linear-gradient(135deg, #4f46e5 0%, #6366f1 100%);
  color: white;
  font-weight: 700;
  font-size: 13px;
  padding: 5px 12px;
  border-radius: 20px;
  margin-bottom: 12px;
}
.brand-voice-container .detect-result .result-tone-badge i {
  font-size: 13px;
}
.brand-voice-container .detect-result .result-confidence {
  margin-bottom: 12px;
}
.brand-voice-container .detect-result .result-confidence .confidence-label {
  display: flex;
  justify-content: space-between;
  font-size: 11px;
  font-weight: 600;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 5px;
}
.brand-voice-container .detect-result .result-confidence .confidence-label .confidence-pct {
  color: #6366f1;
  font-weight: 700;
}
.brand-voice-container .detect-result .result-confidence .confidence-bar {
  height: 4px;
  background: #e2e8f0;
  border-radius: 2px;
  overflow: hidden;
}
.brand-voice-container .detect-result .result-confidence .confidence-bar .confidence-fill {
  height: 100%;
  background: linear-gradient(90deg, #4f46e5, #6366f1);
  border-radius: 2px;
  transition: width 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}
.brand-voice-container .detect-result .result-title {
  font-weight: 700;
  color: #6366f1;
  font-size: 14px;
  margin-bottom: 8px;
  display: flex;
  align-items: center;
  gap: 6px;
}
.brand-voice-container .detect-result .result-reason {
  font-size: 13px;
  color: #475569;
  line-height: 1.5;
}
.brand-voice-container .detect-result .result-reason p {
  margin: 4px 0 0 0;
}
.brand-voice-container .loader-pulse {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 2px 0;
}
.brand-voice-container .loader-pulse span {
  width: 7px;
  height: 7px;
  background: currentColor;
  border-radius: 50%;
  animation: bv-bounce 1.4s infinite ease-in-out both;
}
.brand-voice-container .loader-pulse span:nth-child(1) {
  animation-delay: -0.32s;
}
.brand-voice-container .loader-pulse span:nth-child(2) {
  animation-delay: -0.16s;
}
.brand-voice-container .bv-preview-results {
  margin-top: 16px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  animation: bv-fade-in 0.3s ease;
}
.brand-voice-container .bv-preview-item .bv-preview-label {
  font-size: 11px;
  font-weight: 700;
  color: #94a3b8;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  margin-bottom: 6px;
}
.brand-voice-container .bv-preview-bubble {
  margin: 0;
  padding: 12px 14px;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  font-size: 13px;
  color: #0f172a;
  line-height: 1.6;
}

@keyframes bv-bounce {
  0%, 80%, 100% {
    transform: scale(0.6);
    opacity: 0.4;
  }
  40% {
    transform: scale(1);
    opacity: 1;
  }
}
@keyframes bv-fade-in {
  from {
    opacity: 0;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.waitry-dark-theme .brand-voice-container {
  background: #0f111a !important;
}
.waitry-dark-theme .brand-voice-container .bv-desc {
  color: #94a3b8;
}
.waitry-dark-theme .brand-voice-container .bv-skeleton .bv-skeleton-card {
  background: linear-gradient(90deg, #1e293b 25%, #0f111a 37%, #1e293b 63%);
  background-size: 400% 100%;
  border-color: #2e3348;
}
.waitry-dark-theme .brand-voice-container .bv-section-card {
  background: #1e293b;
  border-color: #2e3348;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}
.waitry-dark-theme .brand-voice-container .bv-section-card h3 {
  color: #e2e8f0;
}
.waitry-dark-theme .brand-voice-container .bv-section-card .section-desc {
  color: #94a3b8;
}
.waitry-dark-theme .brand-voice-container .bv-scope-selector {
  background: #0f111a;
  border-color: #2e3348;
}
.waitry-dark-theme .brand-voice-container .bv-scope-selector .scope-label {
  color: #94a3b8;
}
.waitry-dark-theme .brand-voice-container .bv-preset-card {
  background: #1e293b;
  border-color: #2e3348;
  color: #e2e8f0;
}
.waitry-dark-theme .brand-voice-container .bv-preset-card .preset-icon {
  background: #334155;
  color: #94a3b8;
}
.waitry-dark-theme .brand-voice-container .bv-preset-card .preset-title {
  color: #f1f5f9;
}
.waitry-dark-theme .brand-voice-container .bv-preset-card .preset-desc {
  color: #94a3b8;
}
.waitry-dark-theme .brand-voice-container .bv-preset-card:hover {
  background: #263348;
  border-color: #3d4a66;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25);
}
.waitry-dark-theme .brand-voice-container .bv-preset-card.active {
  background: rgba(99, 102, 241, 0.12);
  border-color: #6366f1;
}
.waitry-dark-theme .brand-voice-container .bv-preset-card.gourmet.active {
  background: rgba(217, 119, 6, 0.12);
  border-color: #d97706;
}
.waitry-dark-theme .brand-voice-container .bv-preset-card.casual.active {
  background: rgba(16, 185, 129, 0.1);
  border-color: #10b981;
}
.waitry-dark-theme .brand-voice-container .bv-preset-card.cool.active {
  background: rgba(236, 72, 153, 0.1);
  border-color: #ec4899;
}
.waitry-dark-theme .brand-voice-container .bv-preset-card.formal.active {
  background: rgba(100, 116, 139, 0.15);
  border-color: #64748b;
}
.waitry-dark-theme .brand-voice-container .bv-preset-card.familiar.active {
  background: rgba(14, 165, 233, 0.1);
  border-color: #0ea5e9;
}
.waitry-dark-theme .brand-voice-container .bv-preset-card.custom.active {
  background: rgba(168, 85, 247, 0.1);
  border-color: #a855f7;
}
.waitry-dark-theme .brand-voice-container .bv-textarea-container textarea {
  background: #1e293b;
  border-color: #334155;
  color: #e2e8f0;
}
.waitry-dark-theme .brand-voice-container .bv-textarea-container textarea::placeholder {
  color: #94A3B8;
}
.waitry-dark-theme .brand-voice-container .bv-textarea-container textarea:focus {
  border-color: #6366f1;
  box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.18);
}
.waitry-dark-theme .brand-voice-container .bv-chips-container {
  background: #0f111a;
  border-color: #2e3348;
}
.waitry-dark-theme .brand-voice-container .bv-chips-container .chips-title {
  color: #475569;
}
.waitry-dark-theme .brand-voice-container .bv-chips-container .chip-item {
  background: #1e293b;
  border-color: #334155;
  color: #94a3b8;
}
.waitry-dark-theme .brand-voice-container .bv-chips-container .chip-item i {
  color: #64748b;
}
.waitry-dark-theme .brand-voice-container .bv-chips-container .chip-item:hover {
  background: rgba(99, 102, 241, 0.15);
  border-color: #6366f1;
  color: #a5b4fc;
}
.waitry-dark-theme .brand-voice-container .bv-chips-container .chip-item:hover i {
  color: #a5b4fc;
}
.waitry-dark-theme .brand-voice-container .bv-actions-bar {
  border-top-color: #2e3348;
}
.waitry-dark-theme .brand-voice-container .bv-actions-bar .btn-secondary {
  background: #1e293b !important;
  border-color: #334155 !important;
  color: #94a3b8 !important;
}
.waitry-dark-theme .brand-voice-container .bv-actions-bar .btn-secondary:hover:not([disabled]) {
  background: #263348 !important;
  border-color: #475569 !important;
  color: #e2e8f0 !important;
}
.waitry-dark-theme .brand-voice-container .bv-actions-bar .btn-primary {
  background: linear-gradient(135deg, #3730a3 0%, #4f46e5 100%) !important;
  color: #ffffff !important;
  border: none !important;
  box-shadow: 0 4px 14px rgba(79, 70, 229, 0.4) !important;
}
.waitry-dark-theme .brand-voice-container .bv-actions-bar .btn-primary span, .waitry-dark-theme .brand-voice-container .bv-actions-bar .btn-primary i, .waitry-dark-theme .brand-voice-container .bv-actions-bar .btn-primary .md-button-wrapper {
  color: #ffffff !important;
}
.waitry-dark-theme .brand-voice-container .bv-actions-bar .btn-primary:hover:not([disabled]) {
  box-shadow: 0 6px 20px rgba(79, 70, 229, 0.5) !important;
}
.waitry-dark-theme .brand-voice-container .bv-actions-bar .btn-primary[disabled], .waitry-dark-theme .brand-voice-container .bv-actions-bar .btn-primary.md-button[disabled] {
  background: #1e293b !important;
  border: 1px solid #334155 !important;
  color: #475569 !important;
  box-shadow: none !important;
}
.waitry-dark-theme .brand-voice-container .bv-actions-bar .btn-primary[disabled] span, .waitry-dark-theme .brand-voice-container .bv-actions-bar .btn-primary[disabled] i, .waitry-dark-theme .brand-voice-container .bv-actions-bar .btn-primary.md-button[disabled] span, .waitry-dark-theme .brand-voice-container .bv-actions-bar .btn-primary.md-button[disabled] i {
  color: #475569 !important;
}
.waitry-dark-theme .brand-voice-container .bv-detect-desc {
  color: #94a3b8;
}
.waitry-dark-theme .brand-voice-container .bv-detect-btn[disabled], .waitry-dark-theme .brand-voice-container .bv-detect-btn.md-button[disabled] {
  background: #1e293b !important;
  border: 1px solid #334155 !important;
  color: #475569 !important;
}
.waitry-dark-theme .brand-voice-container .bv-detect-btn[disabled] span, .waitry-dark-theme .brand-voice-container .bv-detect-btn[disabled] i, .waitry-dark-theme .brand-voice-container .bv-detect-btn.md-button[disabled] span, .waitry-dark-theme .brand-voice-container .bv-detect-btn.md-button[disabled] i {
  color: #475569 !important;
}
.waitry-dark-theme .brand-voice-container .bv-auto-detect-box {
  background: #0f111a;
  border-color: #334155;
}
.waitry-dark-theme .brand-voice-container .bv-auto-detect-box.loading {
  background: rgba(99, 102, 241, 0.05);
  border-color: #6366f1;
}
.waitry-dark-theme .brand-voice-container .bv-auto-detect-box .detect-header .title {
  color: #e2e8f0;
}
.waitry-dark-theme .brand-voice-container .bv-auto-detect-box .detect-body {
  color: #94a3b8;
}
.waitry-dark-theme .brand-voice-container .bv-detect-result-box {
  background: #1e293b;
  border-color: #2e3348;
}
.waitry-dark-theme .brand-voice-container .detect-result {
  background: #0f111a;
  border-color: #2e3348;
}
.waitry-dark-theme .brand-voice-container .detect-result .result-tone-badge {
  background: linear-gradient(135deg, #3730a3 0%, #4f46e5 100%);
}
.waitry-dark-theme .brand-voice-container .detect-result .result-confidence .confidence-label {
  color: #64748b;
}
.waitry-dark-theme .brand-voice-container .detect-result .result-confidence .confidence-bar {
  background: #2e3348;
}
.waitry-dark-theme .brand-voice-container .detect-result .result-title {
  color: #a5b4fc;
}
.waitry-dark-theme .brand-voice-container .detect-result .result-reason {
  color: #94a3b8;
}
.waitry-dark-theme .brand-voice-container .bv-preset-card.detected {
  border-color: #6366f1 !important;
}
.waitry-dark-theme .brand-voice-container .bv-inline-hint {
  color: #fbbf24;
}
.waitry-dark-theme .brand-voice-container .bv-preview-bubble {
  background: #0f111a;
  border-color: #2e3348;
  color: #e2e8f0;
}

.sm-toolbar .sm-toolbar__sep {
  margin: 0 6px;
  opacity: 0.4;
  font-weight: 300;
}
.sm-toolbar .sm-toolbar__title {
  font-weight: 600;
  opacity: 0.85;
}
.sm-toolbar .sm-toolbar__section {
  font-weight: 700;
  color: var(--an-primary, #EC4E36);
}
.sm-toolbar .sm-view-btn {
  opacity: 0.7;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.sm-toolbar .sm-view-btn:hover {
  opacity: 1;
}
.sm-toolbar .sm-add-btn {
  background: var(--an-primary, #EC4E36);
  color: #fff !important;
  border-radius: 8px;
  padding: 0 16px;
  font-weight: 600;
  letter-spacing: 0.3px;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  margin-right: 8px;
}
.sm-toolbar .sm-add-btn md-icon {
  margin-right: 6px;
  font-size: 18px;
}
.sm-toolbar .sm-add-btn:hover {
  opacity: 0.9;
  transform: translateY(-1px);
  box-shadow: 0 4px 16px rgba(236, 78, 54, 0.35);
}

.sm-workspace {
  flex: 1;
  min-height: 0;
  overflow: hidden;
  margin-top: 0 !important;
}

.sm-layout-panel {
  background: #f8f9fa;
  border-right: 1px solid rgba(0, 0, 0, 0.1);
  height: 100%;
  width: 320px;
  flex-shrink: 0;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.waitry-dark-theme .sm-layout-panel {
  background: #13151e;
  border-right-color: rgba(255, 255, 255, 0.12);
}

.sm-panel-controls {
  padding: 0;
  position: sticky;
  top: 0;
  z-index: 2;
  background: #f8f9fa;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
.waitry-dark-theme .sm-panel-controls {
  background: #13151e;
  border-bottom-color: rgba(255, 255, 255, 0.12);
}

.sm-search-wrap {
  display: flex;
  align-items: center;
  margin: 12px 12px 8px;
  background: #ffffff;
  border-radius: 8px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  padding: 0 8px;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.waitry-dark-theme .sm-search-wrap {
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(255, 255, 255, 0.12);
}
.sm-search-wrap:focus-within {
  border-color: var(--an-primary, #EC4E36);
  box-shadow: 0 0 0 3px rgba(236, 78, 54, 0.1);
}
.sm-search-wrap .sm-search-icon {
  font-size: 16px;
  color: rgba(0, 0, 0, 0.35);
  margin-right: 6px;
}
.waitry-dark-theme .sm-search-wrap .sm-search-icon {
  color: rgba(255, 255, 255, 0.35);
}
.sm-search-wrap .sm-search-input {
  flex: 1;
  border: none;
  outline: none;
  background: transparent;
  font-size: 13px;
  padding: 9px 0;
  color: inherit;
}
.sm-search-wrap .sm-search-input::placeholder {
  color: var(--an-placeholder);
}
.sm-search-wrap .sm-search-clear {
  min-width: 28px;
  min-height: 28px;
  width: 28px;
  height: 28px;
}
.sm-search-wrap .sm-search-clear md-icon {
  font-size: 14px;
}

.sm-filter-row {
  padding: 0 10px 10px;
  align-items: center;
  gap: 6px;
  display: flex;
}

.sm-type-chips {
  display: flex;
  gap: 5px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  padding-bottom: 2px;
  scrollbar-width: none;
}
.sm-type-chips::-webkit-scrollbar {
  display: none;
}

.sm-type-chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  flex-shrink: 0;
  scroll-snap-align: start;
  padding: 5px 10px;
  border-radius: 20px;
  border: 1.5px solid rgba(0, 0, 0, 0.1);
  background: transparent;
  font-size: 11px;
  font-weight: 600;
  color: inherit;
  cursor: pointer;
  white-space: nowrap;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  line-height: 1;
  outline: none;
}
.waitry-dark-theme .sm-type-chip {
  border-color: rgba(255, 255, 255, 0.12);
}
.sm-type-chip md-icon {
  font-size: 13px;
  margin: 0;
  opacity: 0.65;
}
.sm-type-chip span {
  opacity: 0.65;
}
.sm-type-chip:hover {
  border-color: rgba(236, 78, 54, 0.4);
  background: rgba(236, 78, 54, 0.06);
}
.sm-type-chip:hover md-icon, .sm-type-chip:hover span {
  opacity: 1;
}
.sm-type-chip--active {
  border-color: #EC4E36;
  background: rgba(236, 78, 54, 0.1);
  color: #EC4E36;
}
.sm-type-chip--active md-icon, .sm-type-chip--active span {
  opacity: 1;
}
.waitry-dark-theme .sm-type-chip--active {
  background: rgba(236, 78, 54, 0.18);
}

.sm-sort-toggle {
  flex-shrink: 0;
  width: 30px;
  height: 30px;
  border-radius: 8px;
  border: 1.5px solid rgba(0, 0, 0, 0.1);
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  outline: none;
  padding: 0;
  color: inherit;
}
.waitry-dark-theme .sm-sort-toggle {
  border-color: rgba(255, 255, 255, 0.12);
}
.sm-sort-toggle md-icon {
  font-size: 15px;
  margin: 0;
  opacity: 0.5;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.sm-sort-toggle:hover {
  border-color: rgba(236, 78, 54, 0.4);
  background: rgba(236, 78, 54, 0.06);
}
.sm-sort-toggle:hover md-icon {
  opacity: 1;
}
.sm-sort-toggle--active {
  border-color: #EC4E36;
  background: rgba(236, 78, 54, 0.1);
  color: #EC4E36;
}
.sm-sort-toggle--active md-icon {
  opacity: 1;
}
.waitry-dark-theme .sm-sort-toggle--active {
  background: rgba(236, 78, 54, 0.18);
}

.sm-layout-list {
  flex: 1;
  padding: 6px 8px 16px;
}

.sm-layout-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  margin-bottom: 4px;
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  border: 1.5px solid transparent;
  position: relative;
}
.sm-layout-item:hover {
  background: rgba(0, 0, 0, 0.045);
}
.waitry-dark-theme .sm-layout-item:hover {
  background: rgba(255, 255, 255, 0.06);
}
.sm-layout-item--active {
  background: rgba(236, 78, 54, 0.09) !important;
  border-color: rgba(236, 78, 54, 0.25);
}
.sm-layout-item--active .sm-layout-item__name {
  color: #EC4E36;
  font-weight: 700;
}
.sm-layout-item--active .sm-layout-item__arrow {
  color: #EC4E36;
  opacity: 1;
}
.waitry-dark-theme .sm-layout-item--active {
  background: rgba(236, 78, 54, 0.14) !important;
}
.sm-layout-item__status {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.sm-layout-item__icon-wrap {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.06);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.waitry-dark-theme .sm-layout-item__icon-wrap {
  background: rgba(255, 255, 255, 0.08);
}
.sm-layout-item__type-icon {
  font-size: 16px;
  color: rgba(0, 0, 0, 0.55);
}
.waitry-dark-theme .sm-layout-item__type-icon {
  color: rgba(255, 255, 255, 0.6);
}
.sm-layout-item__info {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
}
.sm-layout-item__name {
  font-size: 13px;
  font-weight: 600;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.3;
}
.sm-layout-item__meta {
  font-size: 11px;
  opacity: 0.5;
  margin-top: 1px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.sm-layout-item__badge {
  flex-shrink: 0;
}
.sm-layout-item__arrow {
  font-size: 14px;
  --an-icon-size: 14px;
  opacity: 0.25;
  flex-shrink: 0;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.sm-layout-item__handle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  cursor: grab;
  margin-left: -4px;
}
.sm-layout-item__handle md-icon {
  font-size: 15px !important;
  width: 15px !important;
  height: 15px !important;
  min-width: 15px !important;
  color: var(--an-text-faint, rgba(0, 0, 0, 0.35));
  opacity: 0.5;
  transition: opacity 0.15s, color 0.15s;
}
.sm-layout-item__handle:hover md-icon {
  opacity: 1;
  color: #EC4E36;
}
.sm-layout-item.as-sortable-item, .sm-layout-item.as-sortable-placeholder {
  display: flex;
}

.sm-layout-item-list .as-sortable-placeholder {
  border: 1px dashed #EC4E36 !important;
  background: rgba(236, 78, 54, 0.05) !important;
}

.sm-status--on {
  background: #16c57a;
  box-shadow: 0 0 6px rgba(22, 197, 122, 0.5);
}

.sm-status--off {
  background: #ccc;
}

.sm-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  border-radius: 10px;
  background: var(--an-primary, #EC4E36);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
}

.sm-empty-layouts {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 48px 24px;
  text-align: center;
}
.sm-empty-layouts .sm-empty-icon {
  font-size: 48px;
  opacity: 0.2;
  margin-bottom: 16px;
}
.sm-empty-layouts .sm-empty-text {
  font-size: 13px;
  opacity: 0.5;
  margin-bottom: 16px;
  line-height: 1.5;
}
.sm-empty-layouts .sm-empty-btn {
  font-size: 13px;
  border-radius: 8px;
}

.sm-no-results {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 32px 16px;
  opacity: 0.4;
  font-size: 13px;
}
.sm-no-results md-icon {
  font-size: 24px;
}

.sm-ap-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 40px 24px;
  opacity: 0.3;
  font-size: 13px;
  text-align: center;
}
.sm-ap-empty md-icon {
  font-size: 32px;
}

@keyframes sm-shimmer {
  0% {
    background-position: -400px 0;
  }
  100% {
    background-position: 400px 0;
  }
}
.sm-ap-skeleton-title,
.sm-ap-skeleton-sub, .sm-skeleton-sub, .sm-skeleton-title, .sm-skeleton-dot {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.06) 25%, rgba(0, 0, 0, 0.12) 50%, rgba(0, 0, 0, 0.06) 75%);
  background-size: 800px 100%;
  animation: sm-shimmer 1.6s infinite;
  border-radius: 4px;
}
.waitry-dark-theme .sm-ap-skeleton-title,
.waitry-dark-theme .sm-ap-skeleton-sub, .waitry-dark-theme .sm-skeleton-sub, .waitry-dark-theme .sm-skeleton-title, .waitry-dark-theme .sm-skeleton-dot {
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.05) 25%, rgba(255, 255, 255, 0.1) 50%, rgba(255, 255, 255, 0.05) 75%);
  background-size: 800px 100%;
}

.sm-skeleton-list {
  padding: 8px;
}

.sm-skeleton-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  margin-bottom: 4px;
}

.sm-skeleton-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
}

.sm-skeleton-body {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.sm-skeleton-title {
  height: 13px;
  width: 70%;
  display: block;
}

.sm-skeleton-sub {
  height: 10px;
  width: 45%;
  display: block;
}

.sm-detail-panel {
  background: #ffffff;
  height: 100%;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
}
.waitry-dark-theme .sm-detail-panel {
  background: #1a1c24;
}

.sm-select-hint {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
.sm-select-hint__inner {
  text-align: center;
  padding: 48px;
}
.sm-select-hint .sm-hint-icon {
  font-size: 56px;
  opacity: 0.12;
  margin-bottom: 24px;
}
.sm-select-hint .sm-hint-title {
  font-size: 18px;
  font-weight: 600;
  opacity: 0.5;
  margin: 0 0 8px;
}
.sm-select-hint .sm-hint-sub {
  font-size: 13px;
  opacity: 0.3;
  margin: 0;
}

.sm-detail-content {
  flex: 1;
  padding: 20px 24px;
  gap: 20px;
}

.sm-layout-header {
  background: #ffffff;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 12px;
  padding: 20px 24px 16px;
  margin-bottom: 20px;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.04);
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.waitry-dark-theme .sm-layout-header {
  background: rgba(255, 255, 255, 0.04);
  border-color: rgba(255, 255, 255, 0.12);
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.25);
}
.sm-layout-header__top {
  margin-bottom: 14px;
  gap: 12px;
}
.sm-layout-header__title-block {
  min-width: 0;
}

.sm-layout-name {
  font-size: 20px;
  font-weight: 700;
  margin: 0 0 4px;
  line-height: 1.2;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.sm-layout-description {
  font-size: 13px;
  opacity: 0.55;
  display: block;
}

.sm-layout-toggle-wrap {
  flex-shrink: 0;
  margin-right: 8px;
}
.sm-layout-toggle-wrap md-switch {
  margin: 0 !important;
}
.sm-layout-toggle-wrap .sm-toggle-label {
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.sm-layout-actions {
  gap: 2px;
}

.sm-action-btn {
  width: 36px;
  height: 36px;
  min-width: 36px;
  border-radius: 8px !important;
  opacity: 0.65;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.sm-action-btn md-icon {
  font-size: 18px;
}
.sm-action-btn:hover {
  opacity: 1;
  background: rgba(0, 0, 0, 0.06);
}
.waitry-dark-theme .sm-action-btn:hover {
  background: rgba(255, 255, 255, 0.08);
}
.sm-action-btn--design:hover {
  color: #7c3aed !important;
  background: rgba(124, 58, 237, 0.1) !important;
}
.sm-action-btn--danger:hover {
  color: #ef4444 !important;
  background: rgba(239, 68, 68, 0.1) !important;
}

.sm-layout-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 4px;
}

.sm-chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 10px;
  border-radius: 20px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.2px;
  background: rgba(0, 0, 0, 0.05);
  border: 1px solid transparent;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.waitry-dark-theme .sm-chip {
  background: rgba(255, 255, 255, 0.07);
}
.sm-chip .sm-chip__icon {
  font-size: 12px;
  margin: 0;
}
.sm-chip--type {
  background: rgba(236, 78, 54, 0.1);
  color: #EC4E36;
  border-color: rgba(236, 78, 54, 0.2);
}
.sm-chip--electronic {
  background: rgba(59, 130, 246, 0.1);
  color: #3b82f6;
  border-color: rgba(59, 130, 246, 0.2);
}
.sm-chip--geo {
  background: rgba(16, 185, 129, 0.1);
  color: #10b981;
  border-color: rgba(16, 185, 129, 0.2);
}
.sm-chip--booking {
  background: rgba(139, 92, 246, 0.1);
  color: #8b5cf6;
  border-color: rgba(139, 92, 246, 0.2);
}

.sm-ap-section__header {
  margin-bottom: 14px;
  gap: 10px;
}
.sm-ap-section__title {
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  opacity: 0.5;
  margin: 0;
}

.sm-ap-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  height: 22px;
  padding: 0 7px;
  border-radius: 11px;
  background: rgba(0, 0, 0, 0.06);
  font-size: 11px;
  font-weight: 700;
}
.waitry-dark-theme .sm-ap-count {
  background: rgba(255, 255, 255, 0.1);
}

.sm-ap-grid {
  display: grid;
  gap: 12px;
}
.sm-ap-grid--comfortable {
  grid-template-columns: repeat(auto-fill, minmax(110px, 1fr));
}
.sm-ap-grid--dense {
  grid-template-columns: repeat(auto-fill, minmax(80px, 1fr));
  gap: 8px;
}

.sm-ap-card {
  position: relative;
  border-radius: 12px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  background: #ffffff;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1;
  cursor: default;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.04);
}
.waitry-dark-theme .sm-ap-card {
  background: rgba(255, 255, 255, 0.04);
  border-color: rgba(255, 255, 255, 0.12);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
}
.sm-ap-card:hover {
  border-color: var(--sm-ap-accent, #EC4E36);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
  transform: translateY(-2px);
}
.sm-ap-card:hover .sm-ap-card__actions {
  opacity: 1;
  transform: translateY(0);
}
.sm-ap-card:hover .sm-ap-card__body {
  opacity: 0.25;
}
.waitry-dark-theme .sm-ap-card:hover {
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4);
}
.sm-ap-card__accent {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: var(--sm-ap-accent, #EC4E36);
  border-radius: 12px 12px 0 0;
}
.sm-ap-card__body {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 12px 8px 8px;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  text-align: center;
  flex: 1;
}
.sm-ap-card__number {
  font-size: 20px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.5px;
}
.sm-ap-card__name {
  font-size: 10px;
  opacity: 0.5;
  margin-top: 4px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 90px;
}
.sm-ap-card__actions {
  position: absolute;
  inset: 0;
  top: 3px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 2px;
  padding: 6px;
  opacity: 0;
  transform: translateY(4px);
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.sm-ap-card--skeleton {
  cursor: default;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.05) 25%, rgba(0, 0, 0, 0.09) 50%, rgba(0, 0, 0, 0.05) 75%);
  background-size: 800px 100%;
  animation: sm-shimmer 1.6s infinite;
  border: none;
  box-shadow: none;
}
.waitry-dark-theme .sm-ap-card--skeleton {
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.03) 25%, rgba(255, 255, 255, 0.07) 50%, rgba(255, 255, 255, 0.03) 75%);
  background-size: 800px 100%;
}
.sm-ap-card--skeleton .sm-ap-card__accent {
  background: rgba(0, 0, 0, 0.08);
}
.sm-ap-card--add, .sm-ap-card--bulk {
  cursor: pointer;
  border-style: dashed;
  background: transparent;
  flex-direction: column;
  gap: 6px;
  opacity: 0.5;
  box-shadow: none;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.sm-ap-card--add:hover, .sm-ap-card--bulk:hover {
  opacity: 1;
  border-color: var(--sm-ap-accent, #EC4E36);
  background: rgba(236, 78, 54, 0.05);
  transform: translateY(-2px);
  box-shadow: none;
}
.sm-ap-card--add:hover .sm-ap-card__actions, .sm-ap-card--bulk:hover .sm-ap-card__actions {
  opacity: 0;
}
.sm-ap-card--add:hover .sm-ap-card__body, .sm-ap-card--bulk:hover .sm-ap-card__body {
  opacity: 1;
}
.sm-ap-card--add:hover .sm-ap-add-icon, .sm-ap-card--bulk:hover .sm-ap-add-icon {
  color: var(--sm-ap-accent, #EC4E36);
}

.sm-ap-btn {
  width: 30px;
  height: 30px;
  min-width: 30px;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.9) !important;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.12);
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.sm-ap-btn md-icon {
  font-size: 15px;
  color: rgba(0, 0, 0, 0.7);
}
.sm-ap-btn--danger md-icon {
  color: #ef4444;
}
.sm-ap-btn--danger:hover {
  background: rgba(239, 68, 68, 0.15) !important;
}
.waitry-dark-theme .sm-ap-btn {
  background: rgba(30, 30, 40, 0.95) !important;
}
.waitry-dark-theme .sm-ap-btn md-icon {
  color: rgba(255, 255, 255, 0.7);
}

.sm-ap-add-icon {
  font-size: 24px;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.sm-ap-add-label {
  font-size: 11px;
  font-weight: 600;
  text-align: center;
}

.sm-ap-skeleton-title,
.sm-ap-skeleton-sub {
  border-radius: 4px;
}

.sm-ap-skeleton-title {
  width: 40px;
  height: 24px;
  margin-bottom: 6px;
}

.sm-ap-skeleton-sub {
  width: 28px;
  height: 10px;
}

.tqr-dialog {
  width: min(360px, 92vw);
  max-width: 92vw;
}
.tqr-dialog .tqr-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  padding: 24px 24px 8px;
}
.tqr-dialog .tqr-title-row {
  text-align: center;
}
.tqr-dialog .tqr-table-name {
  font-size: 22px;
  font-weight: 800;
  letter-spacing: -0.3px;
  color: var(--an-text);
}
.tqr-dialog .tqr-layout-name {
  font-size: 13px;
  color: var(--an-text-muted);
  margin-top: 2px;
}
.tqr-dialog .tqr-qr-frame {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 220px;
  height: 220px;
  padding: 16px;
  background: #fff;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  box-shadow: var(--an-shadow-sm);
}
.tqr-dialog .tqr-qr-img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.tqr-dialog .tqr-pin-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 8px 6px 14px;
  background: var(--an-rose-soft);
  border-radius: var(--an-radius-pill);
}
.tqr-dialog .tqr-pin-label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.4px;
  color: var(--an-rose);
}
.tqr-dialog .tqr-pin-value {
  font-family: var(--font-mono);
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.5px;
  color: var(--an-text);
}
.tqr-dialog .tqr-link-row {
  display: flex;
  align-items: center;
  gap: 6px;
  width: 100%;
  padding: 8px 8px 8px 14px;
  background: var(--an-surface2);
  border-radius: var(--an-radius-sm);
}
.tqr-dialog .tqr-link-row md-icon {
  color: var(--an-text-faint);
  font-size: 16px;
  min-width: 16px;
  min-height: 16px;
}
.tqr-dialog .tqr-link-text {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 12px;
  color: var(--an-text-muted);
}
.tqr-dialog .tqr-mini-btn {
  margin: 0;
  min-width: 0;
  width: 32px;
  height: 32px;
  line-height: 32px;
  padding: 0;
}
.tqr-dialog .tqr-mini-btn md-icon {
  color: var(--an-text-muted);
  font-size: 17px;
}
.tqr-dialog .tqr-mini-btn:hover md-icon {
  color: var(--an-rose);
}
.tqr-dialog .tqr-download-row {
  display: flex;
  gap: 10px;
  width: 100%;
  margin: 4px 0 8px;
}
.tqr-dialog .tqr-download-btn {
  flex: 1;
  margin: 0;
}

@media (max-width: 599px) {
  .sm-layout-header__top {
    flex-wrap: wrap;
    row-gap: 8px;
  }
  .sm-layout-header__title-block {
    flex: 1 1 calc(100% - 56px) !important;
    max-width: calc(100% - 56px) !important;
  }
  .sm-layout-actions {
    margin-left: auto;
  }
}
.pm-workspace {
  display: flex;
  flex-direction: row;
  width: 100%;
  min-height: calc(100vh - 64px - 48px);
  align-items: stretch;
}

.pm-toolbar {
  flex-shrink: 0;
}
.pm-toolbar .pm-toolbar__sep {
  margin: 0 6px;
  opacity: 0.35;
  font-weight: 300;
}
.pm-toolbar .pm-toolbar__place {
  font-weight: 600;
  opacity: 0.85;
}
.pm-toolbar .pm-toolbar__section {
  font-weight: 700;
  color: #EC4E36;
}

.pm-sidenav {
  width: 260px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding-bottom: 16px;
  background: #f8f9fa;
  border-right: 1px solid rgba(0, 0, 0, 0.07);
  min-height: calc(100vh - 64px - 48px);
  max-height: calc(100vh - 64px);
  box-sizing: border-box;
  position: sticky;
  top: 0;
  align-self: flex-start;
  overflow-y: auto;
  overflow-x: hidden;
}
@media (max-width: 1180px) {
  .pm-sidenav {
    width: 208px;
  }
}
.waitry-dark-theme .pm-sidenav {
  background: #13151e;
  border-right-color: rgba(255, 255, 255, 0.07);
}
.pm-sidenav {
  scrollbar-width: none;
}
.pm-sidenav::-webkit-scrollbar {
  display: none;
}
.pm-sidenav a {
  text-decoration: none !important;
}
.pm-sidenav a:hover, .pm-sidenav a:focus, .pm-sidenav a:active {
  text-decoration: none !important;
}

.pm-sidenav-container {
  display: contents;
}

.pm-place-card {
  padding: 20px 16px 16px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.07);
  margin-bottom: 8px;
}
.waitry-dark-theme .pm-place-card {
  border-bottom-color: rgba(255, 255, 255, 0.07);
}

.pm-place-card__name {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin: 0 0 4px;
}

.pm-place-card__address {
  font-size: 11px;
  opacity: 0.45;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-bottom: 10px;
}

.pm-place-card__plan {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 9px;
  border-radius: 20px;
  background: rgba(236, 78, 54, 0.1);
  color: #EC4E36;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  border: 1px solid rgba(236, 78, 54, 0.2);
}
.pm-place-card__plan md-icon {
  font-size: 12px;
  margin: 0;
}

.pm-place-card__back {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  opacity: 0.45;
  cursor: pointer;
  margin-top: 10px;
  transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1);
  background: none;
  border: none;
  padding: 0;
  color: inherit;
}
.pm-place-card__back md-icon {
  font-size: 14px;
  margin: 0;
}
.pm-place-card__back:hover {
  opacity: 0.8;
}

.pm-sidenav__section {
  display: block;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  opacity: 0.35;
  padding: 14px 16px 6px;
}

.pm-sidenav__pill {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 9px 16px;
  border: none;
  background: transparent;
  cursor: pointer;
  font-size: 13px;
  font-weight: 500;
  color: inherit;
  text-align: left;
  transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1);
  border-radius: 0;
  position: relative;
  outline: none;
  -webkit-tap-highlight-color: transparent;
}
.pm-sidenav__pill md-icon {
  font-size: 18px;
  flex-shrink: 0;
  opacity: 0.5;
  transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1);
}
.pm-sidenav__pill .pm-sidenav__pill-text {
  flex: 1;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.pm-sidenav__pill .pm-sidenav__pill-badge {
  font-size: 10px;
  font-weight: 700;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 9px;
  background: rgba(0, 0, 0, 0.08);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.waitry-dark-theme .pm-sidenav__pill .pm-sidenav__pill-badge {
  background: rgba(255, 255, 255, 0.12);
}
.pm-sidenav__pill:hover {
  background: rgba(0, 0, 0, 0.04);
}
.pm-sidenav__pill:hover md-icon {
  opacity: 0.8;
}
.waitry-dark-theme .pm-sidenav__pill:hover {
  background: rgba(255, 255, 255, 0.06);
}
.pm-sidenav__pill--active {
  background: rgba(236, 78, 54, 0.08);
  color: #EC4E36;
  font-weight: 700;
}
.pm-sidenav__pill--active md-icon {
  opacity: 1;
  color: #EC4E36;
}
.pm-sidenav__pill--active::before {
  content: "";
  position: absolute;
  left: 0;
  top: 4px;
  bottom: 4px;
  width: 3px;
  background: #EC4E36;
  border-radius: 0 3px 3px 0;
}
.waitry-dark-theme .pm-sidenav__pill--active {
  background: rgba(236, 78, 54, 0.14);
}
.pm-sidenav__pill--external {
  opacity: 0.65;
}
.pm-sidenav__pill--external:hover {
  opacity: 1;
  background: rgba(0, 0, 0, 0.04);
}
.pm-sidenav__pill--external .pm-pill-ext-icon {
  font-size: 12px;
  opacity: 0.4;
  flex-shrink: 0;
}

.pm-sidenav__divider {
  height: 1px;
  background: rgba(0, 0, 0, 0.07);
  margin: 8px 16px;
}
.waitry-dark-theme .pm-sidenav__divider {
  background: rgba(255, 255, 255, 0.07);
}

.pm-content {
  flex: 1;
  min-width: 0;
  overflow: visible;
  position: relative;
  padding: 28px 32px;
  background: #f1f3f5;
  display: flex;
  flex-direction: column;
  gap: 20px;
  min-height: calc(100vh - 64px - 48px);
  box-sizing: border-box;
}
.waitry-dark-theme .pm-content {
  background: #111318;
}
.pm-content {
  align-self: flex-start;
}
@media (max-width: 1180px) {
  .pm-content {
    padding: 24px 20px;
  }
}

.pm-section-header {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 4px;
}

.pm-section-header__icon {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.pm-section-header__icon md-icon {
  font-size: 24px;
  margin: 0;
  color: #fff;
}

.pm-section-header__text {
  flex: 1;
  min-width: 0;
}

.pm-section-header__title {
  font-size: 22px;
  font-weight: 800;
  margin: 0 0 4px;
  line-height: 1.2;
  letter-spacing: -0.3px;
}

.pm-section-header__subtitle {
  font-size: 13px;
  opacity: 0.5;
  margin: 0;
  line-height: 1.5;
}

.pm-card {
  background: #ffffff;
  border-radius: 12px;
  border: 1px solid rgba(0, 0, 0, 0.07);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04), 0 0 1px rgba(0, 0, 0, 0.06);
  overflow: hidden;
  transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1);
}
.waitry-dark-theme .pm-card {
  background: #1a1c24;
  border-color: rgba(255, 255, 255, 0.07);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
}

.pm-card__header {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 16px 20px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.07);
  flex-wrap: wrap;
}
.waitry-dark-theme .pm-card__header {
  border-bottom-color: rgba(255, 255, 255, 0.07);
}
.pm-card__header > md-icon {
  font-size: 20px;
  flex-shrink: 0;
  opacity: 0.7;
  margin-top: 1px;
}

.pm-card__header-text {
  flex: 1;
  min-width: 0;
}

.pm-card__title {
  font-size: 14px;
  font-weight: 700;
  margin: 0;
  line-height: 1.3;
}

.pm-card__desc {
  font-size: 12px;
  opacity: 0.45;
  margin: 2px 0 0;
  line-height: 1.4;
}

.pm-card__actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
  margin-left: auto;
}
.pm-card__actions .md-button {
  margin: 0;
}

.pm-card__body {
  padding: 20px;
}
.pm-card__body > div[layout=row] {
  gap: 16px;
}
.pm-card__body md-input-container .md-caption {
  display: block;
  margin-top: 6px;
  line-height: 1.4;
  color: var(--an-text-faint);
}

.pm-field-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: 20px;
  align-items: start;
}
.pm-field-grid > * {
  grid-column: 1/-1;
  min-width: 0;
}
@media (min-width: 1100px) {
  .pm-field-grid > .pm-col-1 {
    grid-column: span 1;
  }
  .pm-field-grid > .pm-col-2 {
    grid-column: span 2;
  }
  .pm-field-grid > .pm-col-3 {
    grid-column: span 3;
  }
  .pm-field-grid > .pm-col-4 {
    grid-column: span 4;
  }
  .pm-field-grid > .pm-col-5 {
    grid-column: span 5;
  }
  .pm-field-grid > .pm-col-6 {
    grid-column: span 6;
  }
  .pm-field-grid > .pm-col-7 {
    grid-column: span 7;
  }
  .pm-field-grid > .pm-col-8 {
    grid-column: span 8;
  }
  .pm-field-grid > .pm-col-9 {
    grid-column: span 9;
  }
  .pm-field-grid > .pm-col-10 {
    grid-column: span 10;
  }
  .pm-field-grid > .pm-col-11 {
    grid-column: span 11;
  }
  .pm-field-grid > .pm-col-12 {
    grid-column: span 12;
  }
}
.pm-field-grid > md-input-container {
  margin-top: 0;
  margin-bottom: 8px;
}

.pm-card__body > .pm-field-grid:last-child > md-input-container:last-child {
  margin-bottom: 0;
}

.pm-card__footer {
  padding: 12px 20px;
  border-top: 1px solid rgba(0, 0, 0, 0.07);
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}
.waitry-dark-theme .pm-card__footer {
  border-top-color: rgba(255, 255, 255, 0.07);
}

.pm-sticky-bar {
  position: fixed;
  left: 324px;
  right: 0;
  bottom: 0;
  z-index: 20;
  padding: 12px 32px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  background: #ffffff;
  border-top: 1px solid rgba(0, 0, 0, 0.07);
  box-shadow: 0 -6px 18px rgba(0, 0, 0, 0.08);
}
.waitry-dark-theme .pm-sticky-bar {
  background: #1a1c24;
  border-top-color: rgba(255, 255, 255, 0.07);
  box-shadow: 0 -6px 18px rgba(0, 0, 0, 0.35);
}
@media (max-width: 1180px) {
  .pm-sticky-bar {
    left: 272px;
    padding: 12px 20px;
  }
}

.pm-panel:has(> .pm-sticky-bar) {
  padding-bottom: 72px;
}

.pm-cards-row {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}

.pm-cards-row--3 {
  grid-template-columns: repeat(3, 1fr);
}
@media (max-width: 1100px) {
  .pm-cards-row--3 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 700px) {
  .pm-cards-row--3 {
    grid-template-columns: 1fr;
  }
}

.pm-status {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 3px 10px;
  border-radius: 20px;
  font-size: 11px;
  font-weight: 700;
}
.pm-status::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  flex-shrink: 0;
}
.pm-status--ok {
  background: rgba(16, 185, 129, 0.1);
  color: #10b981;
  border: 1px solid rgba(16, 185, 129, 0.2);
}
.pm-status--ok::before {
  background: #10b981;
  box-shadow: 0 0 6px rgba(16, 185, 129, 0.5);
}
.pm-status--warn {
  background: rgba(245, 158, 11, 0.1);
  color: #f59e0b;
  border: 1px solid rgba(245, 158, 11, 0.2);
}
.pm-status--warn::before {
  background: #f59e0b;
}
.pm-status--off {
  background: rgba(0, 0, 0, 0.05);
  color: rgba(0, 0, 0, 0.4);
  border: 1px solid rgba(0, 0, 0, 0.08);
}
.pm-status--off::before {
  background: #cbd5e1;
}
.waitry-dark-theme .pm-status--off {
  background: rgba(255, 255, 255, 0.05);
  color: rgba(255, 255, 255, 0.3);
  border-color: rgba(255, 255, 255, 0.08);
}

.pm-overview-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
}

.pm-overview-card {
  background: #ffffff;
  border-radius: 12px;
  border: 1px solid rgba(0, 0, 0, 0.07);
  padding: 18px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  cursor: pointer;
  transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
}
.waitry-dark-theme .pm-overview-card {
  background: #1a1c24;
  border-color: rgba(255, 255, 255, 0.07);
}
.pm-overview-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
  border-color: rgba(0, 0, 0, 0.12);
}
.waitry-dark-theme .pm-overview-card:hover {
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);
}
.pm-overview-card__accent {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  border-radius: 12px 12px 0 0;
}
.pm-overview-card__icon-wrap {
  width: 40px;
  height: 40px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.pm-overview-card__icon-wrap md-icon {
  font-size: 20px;
  margin: 0;
  color: #fff;
}
.pm-overview-card__label {
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;
}
.pm-overview-card__status {
  margin-top: auto;
}
.pm-overview-card__action {
  font-size: 11px;
  font-weight: 600;
  opacity: 0.55;
  display: flex;
  align-items: center;
  gap: 4px;
  margin-top: 4px;
  transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1);
}
.pm-overview-card__action md-icon {
  font-size: 12px;
  margin: 0;
  transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1);
}
.pm-overview-card:hover .pm-overview-card__action {
  opacity: 1;
  color: #EC4E36;
}
.pm-overview-card:hover .pm-overview-card__action md-icon {
  color: #EC4E36;
  transform: translateX(2px);
}

.pm-btn-primary {
  background: #EC4E36 !important;
  color: #fff !important;
  border-radius: 8px !important;
  padding: 0 18px !important;
  font-weight: 600;
  font-size: 13px;
  border: 1px solid transparent !important;
  transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1);
}
.pm-btn-primary md-icon, .pm-btn-primary [class^=iconoir-], .pm-btn-primary [class*=" iconoir-"], .pm-btn-primary md-progress-circular {
  color: #fff !important;
}
.pm-btn-primary md-progress-circular path {
  stroke: #fff !important;
}
.pm-btn-primary:hover {
  opacity: 0.9;
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(236, 78, 54, 0.35);
}

.pm-btn-secondary {
  background-color: var(--an-surface) !important;
  color: var(--an-text) !important;
  border-radius: 8px !important;
  font-weight: 600;
  font-size: 13px;
  border: 1px solid var(--an-border) !important;
  transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1);
}
.pm-btn-secondary md-icon, .pm-btn-secondary [class^=iconoir-], .pm-btn-secondary [class*=" iconoir-"], .pm-btn-secondary md-progress-circular {
  color: var(--an-text) !important;
}
.pm-btn-secondary:hover {
  background-color: var(--an-surface2) !important;
  border-color: var(--an-border-strong) !important;
}

.pm-btn-danger {
  background-color: transparent !important;
  border-radius: 8px !important;
  color: #ef4444 !important;
  font-weight: 600;
  font-size: 13px;
  border: 1px solid transparent !important;
  transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1);
}
.pm-btn-danger md-icon, .pm-btn-danger [class^=iconoir-], .pm-btn-danger [class*=" iconoir-"], .pm-btn-danger md-progress-circular {
  color: #ef4444 !important;
}
.pm-btn-danger:hover {
  background-color: rgba(239, 68, 68, 0.08) !important;
  border-color: rgba(239, 68, 68, 0.15) !important;
}

.pm-btn-icon {
  width: 36px;
  height: 36px;
  min-width: 36px;
  border-radius: 8px !important;
  opacity: 0.6;
  transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1);
}
.pm-btn-icon md-icon {
  font-size: 18px;
}
.pm-btn-icon:hover {
  opacity: 1;
  background: rgba(0, 0, 0, 0.06);
}
.waitry-dark-theme .pm-btn-icon:hover {
  background: rgba(255, 255, 255, 0.08);
}

.pm-btn-icon-only {
  min-width: 44px !important;
  width: 44px;
  padding: 0 !important;
}
.pm-btn-icon-only md-icon, .pm-btn-icon-only [class^=iconoir-], .pm-btn-icon-only [class*=" iconoir-"], .pm-btn-icon-only md-progress-circular {
  margin-right: 0 !important;
}

.pm-form-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.07);
}
.waitry-dark-theme .pm-form-row {
  border-bottom-color: rgba(255, 255, 255, 0.07);
}

.pm-card__body > .pm-form-row:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.pm-card__body > .pm-form-row:first-child {
  padding-top: 0;
}

.pm-form-row__label {
  flex: 1;
  min-width: 0;
}
.pm-form-row__label-title {
  font-size: 13px;
  font-weight: 600;
  line-height: 1.3;
}
.pm-form-row__label-desc {
  font-size: 11px;
  opacity: 0.45;
  margin-top: 2px;
  line-height: 1.4;
}

.pm-form-row__control {
  flex-shrink: 0;
}

.pm-form-row--skeleton .pm-form-row__label {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.pm-form-row--skeleton .pm-form-row__control {
  display: flex;
  gap: 12px;
}
.pm-form-row--skeleton .sk-table-cell {
  display: block;
}
.pm-form-row--skeleton .sk-table-cell--title {
  width: 140px;
}
.pm-form-row--skeleton .sk-table-cell--desc {
  width: 200px;
  height: 10px;
}

.pm-sk-input {
  height: 40px;
  border-radius: var(--an-radius-sm);
  margin-bottom: 0;
}

.pm-sk-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 8px;
}
.pm-sk-chip-row .sk-chip {
  width: 76px;
}
.pm-sk-chip-row .sk-chip:nth-child(2n) {
  width: 58px;
}
.pm-sk-chip-row .sk-chip:nth-child(3n) {
  width: 96px;
}

.pm-sk-track-row {
  display: flex;
  gap: 24px;
  padding: 6px 4px 2px;
  overflow: hidden;
}

.pm-sk-track-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  flex: 0 0 auto;
}
.pm-sk-track-item .sk-line {
  width: 40px;
  margin: 0;
}

.pm-checkup-sk__score {
  display: flex;
  justify-content: center;
  margin-bottom: 20px;
}
.pm-checkup-sk__row {
  padding: 10px 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.07);
}
.waitry-dark-theme .pm-checkup-sk__row {
  border-bottom-color: rgba(255, 255, 255, 0.07);
}
.pm-checkup-sk__row:last-child {
  border-bottom: none;
}

.pm-connection-card {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px 20px;
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.03);
  border: 1px dashed rgba(0, 0, 0, 0.07);
  transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1);
}
.waitry-dark-theme .pm-connection-card {
  background: rgba(255, 255, 255, 0.03);
  border-color: rgba(255, 255, 255, 0.07);
}
.pm-connection-card--connected {
  background: rgba(16, 185, 129, 0.06);
  border-color: rgba(16, 185, 129, 0.2);
  border-style: solid;
}
.pm-connection-card__icon {
  width: 44px;
  height: 44px;
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.06);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.pm-connection-card__icon md-icon {
  font-size: 22px;
  margin: 0;
}
.waitry-dark-theme .pm-connection-card__icon {
  background: rgba(255, 255, 255, 0.08);
}
.pm-connection-card__info {
  flex: 1;
  min-width: 0;
}
.pm-connection-card__name {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.3;
}
.pm-connection-card__meta {
  font-size: 12px;
  opacity: 0.5;
  margin-top: 4px;
  line-height: 1.45;
}
.pm-connection-card__status {
  flex-shrink: 0;
  margin-left: auto;
}
@media (max-width: 700px) {
  .pm-connection-card {
    flex-wrap: wrap;
  }
  .pm-connection-card__status {
    margin-left: 60px;
  }
}

@keyframes pm-section-in {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes pm-panel-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.pm-panel {
  animation: pm-panel-in 0.18s ease both;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.pm-panel > *:not(.pm-sticky-bar) {
  animation: pm-section-in 0.24s cubic-bezier(0.4, 0, 0.2, 1) both;
}

.pm-stack {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.pm-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 48px 24px;
  text-align: center;
  opacity: 0.5;
}
.pm-empty md-icon {
  font-size: 40px;
  margin-bottom: 12px;
}
.pm-empty p {
  font-size: 13px;
  margin: 0;
  line-height: 1.5;
}

.pm-loading {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 32px;
}

.pm-usage-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 16px;
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.03);
  border: 1px solid rgba(0, 0, 0, 0.07);
  margin-bottom: 16px;
}
.waitry-dark-theme .pm-usage-bar {
  background: rgba(255, 255, 255, 0.04);
  border-color: rgba(255, 255, 255, 0.07);
}
.pm-usage-bar__label {
  font-size: 13px;
  opacity: 0.55;
}
.pm-usage-bar__value {
  font-weight: 600;
  font-size: 13px;
}

.pm-info-banner {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 16px;
  border-radius: 8px;
  background: rgba(59, 130, 246, 0.08);
  border: 1px solid rgba(59, 130, 246, 0.2);
  font-size: 12.5px;
  line-height: 1.5;
  color: inherit;
}
.pm-info-banner md-icon {
  font-size: 16px;
  flex-shrink: 0;
  margin-top: 1px;
  color: #3b82f6;
}

.pm-warn-banner {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 16px;
  border-radius: 8px;
  background: rgba(245, 158, 11, 0.08);
  border: 1px solid rgba(245, 158, 11, 0.2);
  font-size: 12px;
  line-height: 1.5;
  color: #d97706;
}
.pm-warn-banner md-icon {
  font-size: 16px;
  flex-shrink: 0;
  margin-top: 1px;
}

.pm-upsell {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 40px 24px;
  text-align: center;
  gap: 12px;
}
.pm-upsell md-icon {
  font-size: 40px;
  opacity: 0.25;
}
.pm-upsell__title {
  font-size: 16px;
  font-weight: 700;
  margin: 0;
}
.pm-upsell__desc {
  font-size: 13px;
  opacity: 0.5;
  margin: 0;
  max-width: 300px;
  line-height: 1.5;
}

.pm-swatch-row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
@media (max-width: 700px) {
  .pm-swatch-row {
    grid-template-columns: 1fr;
  }
}
.pm-swatch-row__item {
  min-width: 0;
}

.pm-social-field {
  position: relative;
}
.pm-social-field__icon {
  position: absolute;
  left: 12px;
  bottom: 13px;
  top: auto;
  width: 18px;
  height: 18px;
  min-width: 18px;
  min-height: 18px;
  line-height: 18px;
  font-size: 18px;
  --an-icon-size: 18px;
  pointer-events: none;
  z-index: 1;
}
.pm-social-field label {
  left: 0 !important;
  width: 100% !important;
}
.pm-social-field input {
  text-indent: 26px;
}
.pm-social-field.md-icon-left, .pm-social-field.md-icon-float {
  padding-left: 2px !important;
  padding-right: 2px !important;
}

.wf-country-field {
  position: relative;
}
.wf-country-field md-autocomplete {
  width: 100%;
  background: transparent;
}
.wf-country-field__flag {
  position: absolute;
  left: 12px;
  bottom: 15px;
  width: 20px;
  height: 14px;
  object-fit: cover;
  border-radius: 2px;
  pointer-events: none;
  z-index: 1;
}
.wf-country-field--has-flag input {
  text-indent: 26px;
}

.pm-slug-field {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.pm-slug-field__prefix {
  margin: 0;
  flex-shrink: 0;
}
.pm-slug-field__prefix span {
  font-size: 14px;
  font-weight: 600;
  opacity: 0.5;
  white-space: nowrap;
}
.pm-slug-field__input {
  flex: 1;
  min-width: 200px;
  margin: 0;
}
.pm-slug-field__link {
  width: 100%;
  opacity: 0.6;
  margin-top: 4px;
}
.pm-slug-field__link a {
  color: #EC4E36;
}

.pm-special-row {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 12px 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.07);
  flex-wrap: wrap;
}
.waitry-dark-theme .pm-special-row {
  border-bottom-color: rgba(255, 255, 255, 0.07);
}
.pm-special-row:last-of-type {
  border-bottom: none;
}
.pm-special-row__switch {
  margin: 0;
  white-space: nowrap;
}
.pm-special-row--closed {
  opacity: 0.7;
}

.pm-map {
  height: 380px;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid rgba(0, 0, 0, 0.07);
}
.waitry-dark-theme .pm-map {
  border-color: rgba(255, 255, 255, 0.07);
}
.pm-map .angular-google-map-container {
  height: 100%;
}
.pm-map ng-map {
  display: block;
  width: 100%;
  height: 100%;
}

.pm-translation-card {
  padding: 16px 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.07);
}
.waitry-dark-theme .pm-translation-card {
  border-bottom-color: rgba(255, 255, 255, 0.07);
}
.pm-translation-card:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.pm-translation-card:first-child {
  padding-top: 0;
}
.pm-translation-card__actions {
  display: flex;
  justify-content: flex-end;
  margin-top: 4px;
}

.pm-checkup-hero {
  display: flex;
  align-items: center;
  padding: 24px 28px;
  margin-bottom: 24px;
  border-radius: 12px;
  background: linear-gradient(120deg, rgba(244, 63, 94, 0.07), rgba(251, 113, 133, 0.03));
  border: 1px solid rgba(244, 63, 94, 0.15);
}
.waitry-dark-theme .pm-checkup-hero {
  background: linear-gradient(120deg, rgba(244, 63, 94, 0.12), rgba(251, 113, 133, 0.04));
  border-color: rgba(244, 63, 94, 0.2);
}
@media (max-width: 700px) {
  .pm-checkup-hero {
    flex-direction: column;
    align-items: stretch;
    text-align: center;
    gap: 16px;
  }
}
.pm-checkup-hero__empty, .pm-checkup-hero__result {
  display: flex;
  align-items: center;
  gap: 20px;
  width: 100%;
}
@media (max-width: 700px) {
  .pm-checkup-hero__empty, .pm-checkup-hero__result {
    flex-direction: column;
  }
}
.pm-checkup-hero__empty-icon {
  flex-shrink: 0;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #f43f5e, #fb7185);
  box-shadow: 0 6px 16px rgba(244, 63, 94, 0.3);
  transition: box-shadow 0.3s ease;
}
.pm-checkup-hero__empty-icon md-icon {
  color: #fff;
  font-size: 26px;
  width: 26px;
  height: 26px;
  margin: 0;
}
.pm-checkup-hero__empty-icon--pulse {
  animation: pm-checkup-pulse 1.4s ease-in-out infinite;
  box-shadow: 0 6px 20px rgba(244, 63, 94, 0.5);
}
.pm-checkup-hero__empty-text, .pm-checkup-hero__text {
  flex: 1;
  min-width: 0;
}
.pm-checkup-hero__title {
  font-size: 17px;
  font-weight: 700;
  margin: 0 0 2px;
}
.pm-checkup-hero__desc {
  font-size: 13px;
  opacity: 0.6;
  margin: 0;
  line-height: 1.4;
}
.pm-checkup-hero__score-tag {
  font-size: 13px;
  font-weight: 700;
  margin: 0 0 2px;
}
.pm-checkup-hero__issues {
  font-size: 13px;
  opacity: 0.6;
  margin: 0;
}
.pm-checkup-hero__last-run {
  font-size: 11px;
  opacity: 0.4;
  margin: 4px 0 0;
}
.pm-checkup-hero__cta {
  flex-shrink: 0;
}
.pm-checkup-hero__actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}
.pm-checkup-hero__ring {
  flex-shrink: 0;
  width: 84px;
  height: 84px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.6s ease;
}
.pm-checkup-hero__ring-inner {
  width: 68px;
  height: 68px;
  border-radius: 50%;
  background: #ffffff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.waitry-dark-theme .pm-checkup-hero__ring-inner {
  background: #1a1c24;
}
.pm-checkup-hero__ring-number {
  font-size: 22px;
  font-weight: 800;
  line-height: 1;
}
.pm-checkup-hero__ring-label {
  font-size: 10px;
  opacity: 0.45;
  font-weight: 600;
}

.pm-checkup-score {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 2px;
  padding: 20px;
  margin-bottom: 16px;
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.03);
}
.waitry-dark-theme .pm-checkup-score {
  background: rgba(255, 255, 255, 0.04);
}
.pm-checkup-score__number {
  font-size: 40px;
  font-weight: 800;
  color: #ec4899;
}
.pm-checkup-score__label {
  font-size: 14px;
  opacity: 0.5;
  font-weight: 600;
}
.pm-checkup-score__last-run {
  text-align: center;
  font-size: 11px;
  opacity: 0.4;
  margin: -10px 0 20px;
}

.pm-checkup-cat {
  border-radius: 8px;
  border: 1px solid rgba(0, 0, 0, 0.07);
  margin-bottom: 14px;
  overflow: hidden;
}
.waitry-dark-theme .pm-checkup-cat {
  border-color: rgba(255, 255, 255, 0.07);
}
.pm-checkup-cat:last-child {
  margin-bottom: 0;
}
.pm-checkup-cat__header {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 18px;
  cursor: pointer;
  background: rgba(16, 185, 129, 0.06);
  border-bottom: 1px solid rgba(0, 0, 0, 0.07);
}
.waitry-dark-theme .pm-checkup-cat__header {
  background: rgba(16, 185, 129, 0.1);
  border-bottom-color: rgba(255, 255, 255, 0.07);
}
.pm-checkup-cat--warning .pm-checkup-cat__header {
  background: rgba(245, 158, 11, 0.08);
}
.waitry-dark-theme .pm-checkup-cat--warning .pm-checkup-cat__header {
  background: rgba(245, 158, 11, 0.12);
}
.pm-checkup-cat--critical .pm-checkup-cat__header {
  background: rgba(239, 68, 68, 0.08);
}
.waitry-dark-theme .pm-checkup-cat--critical .pm-checkup-cat__header {
  background: rgba(239, 68, 68, 0.12);
}
.pm-checkup-cat__status-icon {
  font-size: 18px;
  color: #10b981;
  flex-shrink: 0;
}
.pm-checkup-cat--warning .pm-checkup-cat__status-icon {
  color: #f59e0b;
}
.pm-checkup-cat--critical .pm-checkup-cat__status-icon {
  color: #ef4444;
}
.pm-checkup-cat__name {
  flex: 1;
  font-size: 13px;
  font-weight: 700;
}
.pm-checkup-cat__chevron {
  opacity: 0.4;
  font-size: 16px;
}
.pm-checkup-cat__body {
  padding: 12px 8px;
}
.pm-checkup-cat__item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px 14px 12px 8px;
  margin-bottom: 8px;
  border-radius: 7px;
  border-left: 3px solid transparent;
  font-size: 13px;
}
.pm-checkup-cat__item:last-child {
  margin-bottom: 0;
}
.pm-checkup-cat__item md-icon {
  font-size: 16px;
  margin-top: 1px;
  flex-shrink: 0;
}
.pm-checkup-cat__item--good {
  border-left-color: rgba(16, 185, 129, 0.4);
}
.pm-checkup-cat__item--good md-icon {
  color: #10b981;
}
.pm-checkup-cat__item--warning {
  border-left-color: rgba(245, 158, 11, 0.5);
  background: rgba(245, 158, 11, 0.05);
}
.pm-checkup-cat__item--warning md-icon {
  color: #f59e0b;
}
.pm-checkup-cat__item--critical {
  border-left-color: rgba(239, 68, 68, 0.6);
  background: rgba(239, 68, 68, 0.05);
}
.pm-checkup-cat__item--critical md-icon {
  color: #ef4444;
}
.pm-checkup-cat__item-text {
  display: flex;
  flex-direction: column;
  gap: 5px;
  flex: 1;
  min-width: 0;
  line-height: 1.45;
}
.pm-checkup-cat__item-action {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  opacity: 0.55;
  font-style: italic;
}
.pm-checkup-cat__item-action md-icon {
  font-size: 14px;
  margin: 0;
  opacity: 1;
}
.pm-checkup-cat__item-link {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
  align-self: center;
  margin-left: 12px;
  padding: 5px 12px;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 700;
  color: #EC4E36;
  background: rgba(236, 78, 54, 0.08);
  white-space: nowrap;
  transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1);
}
.pm-checkup-cat__item-link, .pm-checkup-cat__item-link:hover, .pm-checkup-cat__item-link:focus, .pm-checkup-cat__item-link:active {
  text-decoration: none !important;
}
.pm-checkup-cat__item-link md-icon {
  font-size: 13px;
  width: 13px;
  height: 13px;
  margin: 0;
  color: #EC4E36;
}
.pm-checkup-cat__item-link:hover {
  background: rgba(236, 78, 54, 0.16);
  transform: translateX(2px);
}

.pm-checkup-loading {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 36px 20px;
  text-align: center;
}
.pm-checkup-loading__icon {
  font-size: 30px;
  --an-icon-size: 30px;
  width: 30px;
  height: 30px;
  color: #ec4899;
  animation: pm-checkup-pulse 1.4s ease-in-out infinite;
}
.pm-checkup-loading__text {
  font-size: 13px;
  font-weight: 600;
  opacity: 0.6;
  margin: 0;
}

@keyframes pm-checkup-pulse {
  0%, 100% {
    transform: scale(1);
    opacity: 0.6;
  }
  50% {
    transform: scale(1.15);
    opacity: 1;
  }
}
.of-journey {
  margin-bottom: 24px;
}

.of-journey__summary {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin-bottom: 18px;
}

.of-journey__count {
  font-size: 20px;
  font-weight: 800;
  color: #6366f1;
  line-height: 1;
}

.of-journey__count-total {
  font-size: 13px;
  font-weight: 700;
  opacity: 0.4;
  color: var(--an-text);
}

.of-journey__count-label {
  font-size: 12px;
  opacity: 0.5;
}

.of-journey__scroll {
  overflow-x: auto;
  overflow-y: hidden;
  padding: 4px 0 2px;
  mask-image: linear-gradient(to right, transparent 0, #000 18px, #000 calc(100% - 18px), transparent 100%);
  -webkit-mask-image: linear-gradient(to right, transparent 0, #000 18px, #000 calc(100% - 18px), transparent 100%);
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
}
.of-journey__scroll::-webkit-scrollbar {
  height: 6px;
}
.of-journey__scroll::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.15);
  border-radius: 3px;
}
.waitry-dark-theme .of-journey__scroll::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.15);
}
.of-journey__scroll::-webkit-scrollbar-track {
  background: transparent;
}

.of-journey__track {
  display: flex;
  align-items: flex-start;
  min-width: min-content;
}

.of-stage {
  position: relative;
  flex: 1 0 80px;
  max-width: 132px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 9px;
  padding: 2px 4px 4px;
  background: none;
  border: 0;
  cursor: pointer;
  color: inherit;
  outline: none;
  -webkit-tap-highlight-color: transparent;
  transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1);
}
.of-stage::before {
  content: "";
  position: absolute;
  top: 23px;
  left: -50%;
  right: 50%;
  height: 2px;
  background: #6366f1;
  opacity: 0.35;
  transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1);
}
.of-stage:first-child::before {
  display: none;
}
.of-stage--gap::before {
  background: none;
  border-top: 2px dashed var(--an-border-strong);
  height: 0;
  opacity: 0.9;
}
.of-stage__node {
  position: relative;
  z-index: 1;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background: var(--an-surface2);
  border: 2px dashed var(--an-border-strong);
  transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1);
}
.of-stage__node > md-icon {
  font-size: 20px;
  width: 20px;
  height: 20px;
  margin: 0;
  opacity: 0.62;
  transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1);
}
.of-stage__lock {
  position: absolute;
  right: -4px;
  bottom: -4px;
  width: 19px;
  height: 19px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--an-surface);
  border: 1px solid var(--an-border-strong);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
}
.of-stage__lock md-icon {
  font-size: 11px;
  width: 11px;
  height: 11px;
  min-width: 11px;
  min-height: 11px;
  margin: 0;
  opacity: 1;
  color: var(--an-text-muted) !important;
}
.of-stage__name {
  font-size: 11.5px;
  font-weight: 600;
  line-height: 1.25;
  text-align: center;
  opacity: 0.55;
  max-width: 100%;
  min-height: 29px;
  transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1);
}
.of-stage--on .of-stage__node {
  background: linear-gradient(135deg, #6366f1, #818cf8);
  border-style: solid;
  border-color: transparent;
  box-shadow: 0 3px 10px rgba(99, 102, 241, 0.32);
}
.of-stage--on .of-stage__node > md-icon {
  opacity: 1;
  color: #fff;
}
.of-stage--on .of-stage__name {
  opacity: 0.95;
}
.of-stage--selected .of-stage__node {
  box-shadow: 0 0 0 3px var(--an-surface), 0 0 0 5px rgba(99, 102, 241, 0.55);
}
.of-stage--selected .of-stage__name {
  opacity: 1;
  color: #6366f1;
  font-weight: 700;
}
.of-stage--on.of-stage--selected .of-stage__node {
  box-shadow: 0 0 0 3px var(--an-surface), 0 0 0 5px rgba(99, 102, 241, 0.55), 0 3px 10px rgba(99, 102, 241, 0.32);
}
.of-stage:hover:not(.of-stage--selected) .of-stage__node {
  transform: translateY(-2px);
}
.of-stage:hover:not(.of-stage--selected) .of-stage__name {
  opacity: 0.85;
}

.of-editor {
  border-radius: 8px;
  border: 1px solid rgba(0, 0, 0, 0.07);
  background: rgba(99, 102, 241, 0.035);
  overflow: hidden;
}
.waitry-dark-theme .of-editor {
  border-color: rgba(255, 255, 255, 0.07);
  background: rgba(99, 102, 241, 0.07);
}
.of-editor__head {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px 18px;
}
.of-editor__icon {
  width: 40px;
  height: 40px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background: var(--an-surface2);
}
.of-editor__icon md-icon {
  font-size: 19px;
  margin: 0;
  opacity: 0.45;
}
.of-editor__icon--on {
  background: linear-gradient(135deg, #6366f1, #818cf8);
}
.of-editor__icon--on md-icon {
  color: #fff;
  opacity: 1;
}
.of-editor__heading {
  flex: 1;
  min-width: 0;
}
.of-editor__title {
  font-size: 15px;
  font-weight: 700;
  margin: 0;
  line-height: 1.3;
}
.of-editor__meta {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin: 5px 0 0;
}
.of-editor__locked-hint {
  font-size: 11.5px;
  opacity: 0.5;
  line-height: 1.4;
}
.of-editor__switch {
  margin: 0 !important;
  flex-shrink: 0;
}
.of-editor__body {
  padding: 4px 18px 18px;
}

.of-tag {
  display: inline-flex;
  align-items: center;
  padding: 2px 9px;
  border-radius: 20px;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  background: rgba(0, 0, 0, 0.05);
  color: var(--an-text-muted);
  border: 1px solid rgba(0, 0, 0, 0.07);
}
.waitry-dark-theme .of-tag {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.07);
}
.of-tag--required {
  background: rgba(99, 102, 241, 0.1);
  color: #6366f1;
  border-color: rgba(99, 102, 241, 0.25);
}

.of-preview {
  margin-top: 14px;
}
.of-preview__label {
  display: block;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  opacity: 0.4;
  margin-bottom: 7px;
}
.of-preview__bubble {
  display: inline-flex;
  align-items: flex-start;
  gap: 9px;
  max-width: 100%;
  padding: 11px 15px;
  border-radius: 14px 14px 14px 4px;
  background: var(--an-surface);
  border: 1px solid rgba(0, 0, 0, 0.07);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  font-size: 13px;
  line-height: 1.45;
}
.waitry-dark-theme .of-preview__bubble {
  border-color: rgba(255, 255, 255, 0.07);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}
.of-preview__bubble md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  margin: 0;
  flex-shrink: 0;
  color: #6366f1;
  margin-top: 1px;
}

.kd-header-icon {
  color: var(--an-indigo, #6366f1) !important;
}

.kd-new-btn.md-button {
  margin: 0 0 0 8px;
  text-transform: none;
  font-weight: 600;
}
.kd-new-btn.md-button md-icon {
  margin-right: 4px;
  font-size: 16px;
  color: inherit !important;
}

.kd-seats-full {
  margin: -8px 0 16px;
}

.kd-row {
  padding: 14px 0;
  border-bottom: 1px solid var(--an-border);
}
.kd-row:first-of-type {
  padding-top: 0;
}
.kd-row:last-of-type {
  border-bottom: none;
}
.kd-row__head {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
}
.kd-row__head .md-icon-button {
  margin: 0;
}
.kd-row__title {
  min-width: 0;
}
.kd-row__switch.md-switch,
.kd-row md-switch.kd-row__switch {
  margin: 0 8px 0 0;
  font-size: 13px;
  color: var(--an-text-muted);
}
.kd-row .tvs-code {
  margin-bottom: 0;
}
.kd-row--off .tvs-code {
  opacity: 0.6;
}

.kd-device {
  flex-wrap: wrap;
}
.kd-device__text strong {
  font-weight: 600;
  color: var(--an-text);
}
.kd-device__unlink.md-button {
  margin: 0;
  min-height: 30px;
  line-height: 30px;
  text-transform: none;
  font-size: 12.5px;
  font-weight: 600;
  color: var(--an-rose);
}
.kd-device__unlink.md-button md-icon {
  margin-right: 4px;
  font-size: 15px;
  color: var(--an-rose) !important;
}

.kd-field {
  margin: 0;
}

.kd-form-actions {
  margin-top: 20px;
}
.kd-form-actions md-progress-circular {
  display: inline-block;
  margin-right: 6px;
}

.pm-device-tabs.wf-segmented-control {
  max-width: 360px;
  margin: 0;
}
.pm-device-tabs.wf-segmented-control .wf-segment {
  border: none;
  font-family: inherit;
}
.pm-device-tabs.wf-segmented-control .wf-segment:not(.active):not(:hover) {
  background: transparent;
}

.google-actions-page {
  display: block;
}
.google-actions-page .page-header-fixed {
  position: sticky;
  top: 0;
  z-index: 10;
  background: var(--bg-surface, #fff);
  border-bottom: 1px solid var(--color-border, #e0e0e0);
  padding: 14px 24px;
}
.waitry-dark-theme .google-actions-page .page-header-fixed {
  background: var(--an-surface);
  border-bottom-color: var(--an-border);
}
.google-actions-page .page-header-fixed .page-header-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.google-actions-page .page-header-fixed .page-header-title {
  display: flex;
  align-items: center;
  gap: 12px;
}
.google-actions-page .page-header-fixed .page-header-title h1 {
  margin: 0;
  font-size: 20px;
  font-weight: 600;
  color: var(--color-text-primary, #1a1a1a);
}
.waitry-dark-theme .google-actions-page .page-header-fixed .page-header-title h1 {
  color: var(--an-text);
}
.google-actions-page .page-header-fixed .google-actions-icon-wrapper {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  width: 26px;
  height: 26px;
}
.google-actions-page .page-header-fixed .google-g-icon {
  width: 26px;
  height: 26px;
  min-width: 26px;
  min-height: 26px;
  max-width: 26px;
  max-height: 26px;
  display: block;
}
.google-actions-page .page-header-fixed .page-header-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}
.google-actions-page .ga-loading {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 64px;
}
.google-actions-page .ga-content {
  padding: 20px 24px;
  max-width: 820px;
}
@media (max-width: 600px) {
  .google-actions-page .ga-content {
    padding: 12px;
  }
}
.google-actions-page .ga-config-grid {
  display: grid;
  grid-template-columns: minmax(260px, 340px) 1fr;
  gap: 20px;
  align-items: start;
}
@media (max-width: 900px) {
  .google-actions-page .ga-config-grid {
    grid-template-columns: 1fr;
  }
}
.google-actions-page .ga-config-grid__col {
  display: flex;
  flex-direction: column;
  gap: 20px;
  min-width: 0;
}
.google-actions-page .ga-intro-banner {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 14px;
}
.google-actions-page .ga-intro-banner .ga-intro-visual {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.google-actions-page .ga-intro-banner .ga-intro-visual svg {
  width: 40px;
  height: 40px;
  min-width: 40px;
  min-height: 40px;
  max-width: 40px;
  max-height: 40px;
  display: block;
}
.google-actions-page .ga-intro-banner .ga-intro-text {
  margin: 0;
  font-size: 13.5px;
  color: var(--color-text-secondary, #555);
  line-height: 1.55;
}
.waitry-dark-theme .google-actions-page .ga-intro-banner .ga-intro-text {
  color: var(--an-text-muted);
}
.google-actions-page .ga-intro-banner .ga-intro-features {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
  padding-top: 4px;
  border-top: 1px solid rgba(0, 0, 0, 0.06);
}
.waitry-dark-theme .google-actions-page .ga-intro-banner .ga-intro-features {
  border-top-color: var(--an-border);
}
.google-actions-page .ga-intro-banner .ga-intro-features .ga-intro-feature {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: var(--color-text-secondary, #555);
}
.waitry-dark-theme .google-actions-page .ga-intro-banner .ga-intro-features .ga-intro-feature {
  color: var(--an-text-muted);
}
.google-actions-page .ga-intro-banner .ga-intro-features .ga-intro-feature md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  min-width: 16px;
  min-height: 16px;
  line-height: 16px;
  color: #4285F4;
  margin: 0;
  flex-shrink: 0;
}
.google-actions-page .ga-place-search__input {
  width: 100%;
  margin: 8px 0 0;
}
.google-actions-page .ga-place-search__input input {
  width: 100%;
}
.google-actions-page .ga-place-linked {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-top: 8px;
  padding: 12px 12px 12px 14px;
  background: rgba(16, 185, 129, 0.06);
  border: 1px solid rgba(16, 185, 129, 0.2);
  border-radius: 10px;
}
.waitry-dark-theme .google-actions-page .ga-place-linked {
  background: rgba(16, 185, 129, 0.1);
  border-color: rgba(16, 185, 129, 0.25);
}
.google-actions-page .ga-place-linked .ga-place-linked__icon {
  flex-shrink: 0;
  margin: 1px 0 0;
  font-size: 18px;
  width: 18px;
  height: 18px;
  min-width: 18px;
  line-height: 18px;
  color: #059669;
}
.google-actions-page .ga-place-linked .ga-place-linked__text {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.google-actions-page .ga-place-linked .ga-place-linked__name {
  font-size: 13.5px;
  font-weight: 600;
  color: var(--color-text-primary, #1a1a1a);
}
.google-actions-page .ga-place-linked .ga-place-linked__name--loading {
  font-weight: 400;
  font-style: italic;
  color: var(--color-text-secondary, #777);
}
.waitry-dark-theme .google-actions-page .ga-place-linked .ga-place-linked__name {
  color: var(--an-text);
}
.google-actions-page .ga-place-linked .ga-place-linked__address {
  font-size: 12px;
  color: var(--color-text-secondary, #777);
  line-height: 1.4;
}
.waitry-dark-theme .google-actions-page .ga-place-linked .ga-place-linked__address {
  color: var(--an-text-muted);
}
.google-actions-page .ga-place-linked .ga-place-linked__clear {
  flex-shrink: 0;
  margin: -6px -6px 0 0;
  width: 28px;
  height: 28px;
  min-height: 28px;
  line-height: 28px;
}
.google-actions-page .ga-place-linked .ga-place-linked__clear md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  min-width: 16px;
  line-height: 16px;
  margin: 0;
  color: var(--color-text-secondary, #999);
}
.waitry-dark-theme .google-actions-page .ga-place-linked .ga-place-linked__clear md-icon {
  color: var(--an-text-faint);
}
.google-actions-page .ga-tabs md-tabs-wrapper {
  border-radius: 8px 8px 0 0;
}
.google-actions-page .ga-card {
  border-radius: 0 0 12px 12px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  margin-bottom: 0;
}
.google-actions-page .ga-card md-card-title {
  padding-bottom: 0;
}
.google-actions-page .ga-card .md-headline {
  font-size: 16px;
  font-weight: 600;
}
.google-actions-page .ga-card .md-subhead {
  color: var(--color-text-secondary, #777);
  font-size: 13px;
  margin-top: 2px;
}
.waitry-dark-theme .google-actions-page .ga-card .md-subhead {
  color: var(--an-text-muted);
}
.google-actions-page .ga-field-label {
  display: block;
  font-size: 12px;
  font-weight: 600;
  color: var(--color-text-secondary, #666);
  margin-bottom: 6px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.waitry-dark-theme .google-actions-page .ga-field-label {
  color: var(--an-text-muted);
}
.google-actions-page .ga-field-hint {
  display: block;
  font-size: 12px;
  color: var(--color-text-secondary, #999);
  margin-top: 4px;
  font-style: italic;
}
.waitry-dark-theme .google-actions-page .ga-field-hint {
  color: var(--an-text-faint);
}
.google-actions-page .ga-input-container {
  width: 100%;
  margin: 0;
}
.google-actions-page .ga-input-container input {
  width: 100%;
}
.google-actions-page .ga-section-label {
  font-size: 12px;
  font-weight: 600;
  color: var(--color-text-secondary, #666);
  margin: 0 0 12px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.waitry-dark-theme .google-actions-page .ga-section-label {
  color: var(--an-text-muted);
}
.google-actions-page .ga-toggles-grid--2col {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
@media (max-width: 640px) {
  .google-actions-page .ga-toggles-grid--2col {
    grid-template-columns: 1fr;
  }
}
.google-actions-page .ga-toggle-card {
  border: 1px solid rgba(0, 0, 0, 0.07);
  border-radius: 10px;
  padding: 4px 14px;
  transition: border-color 0.15s ease;
}
.waitry-dark-theme .google-actions-page .ga-toggle-card {
  border-color: var(--an-border);
}
.google-actions-page .ga-toggle-card:hover {
  border-color: rgba(0, 0, 0, 0.14);
}
.waitry-dark-theme .google-actions-page .ga-toggle-card:hover {
  border-color: var(--an-text-faint);
}
.google-actions-page .ga-toggle-card--span2 {
  grid-column: 1/-1;
}
.google-actions-page .ga-toggle-main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 0;
  gap: 16px;
}
.google-actions-page .ga-toggle-main.ga-toggle-sub {
  padding: 10px 0 12px;
  margin-left: 4px;
  border-top: 1px solid rgba(0, 0, 0, 0.06);
}
.waitry-dark-theme .google-actions-page .ga-toggle-main.ga-toggle-sub {
  border-top-color: var(--an-border);
}
.google-actions-page .ga-toggle-main .ga-toggle-label {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 1;
  min-width: 0;
}
.google-actions-page .ga-toggle-main .ga-toggle-label .ga-toggle-icon {
  font-size: 20px;
  width: 20px;
  height: 20px;
  min-width: 20px;
  min-height: 20px;
  line-height: 20px;
  color: var(--color-primary, #6644dd);
  flex-shrink: 0;
  margin: 0;
}
.google-actions-page .ga-toggle-main .ga-toggle-label .ga-toggle-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.google-actions-page .ga-toggle-main .ga-toggle-label .ga-toggle-title {
  font-size: 14px;
  font-weight: 500;
  color: var(--color-text-primary, #333);
}
.waitry-dark-theme .google-actions-page .ga-toggle-main .ga-toggle-label .ga-toggle-title {
  color: var(--an-text);
}
.google-actions-page .ga-toggle-main .ga-toggle-label .ga-toggle-desc {
  font-size: 12px;
  color: var(--color-text-secondary, #888);
  line-height: 1.4;
}
.waitry-dark-theme .google-actions-page .ga-toggle-main .ga-toggle-label .ga-toggle-desc {
  color: var(--an-text-muted);
}
.google-actions-page .ga-toggle-main md-switch {
  margin: 0;
  flex-shrink: 0;
}
.google-actions-page .ga-toggle-url {
  padding: 0 0 12px;
}
.google-actions-page .ga-toggle-url .ga-url-input {
  width: 100%;
  margin: 0;
}
.google-actions-page .ga-toggle-url .ga-url-input input {
  font-size: 13px;
  width: 100%;
}
.google-actions-page .ga-divider {
  margin: 16px 0;
}
.google-actions-page .status-badge {
  display: inline-flex;
  align-items: center;
  padding: 4px 12px;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.4px;
}
.google-actions-page .status-badge.status-pending {
  background: #FFF3E0;
  color: #E65100;
}
.google-actions-page .status-badge.status-sandbox {
  background: #E3F2FD;
  color: #1565C0;
}
.google-actions-page .status-badge.status-production {
  background: #E8F5E9;
  color: #2E7D32;
}
.google-actions-page .status-badge.status-suspended {
  background: #FFEBEE;
  color: #B71C1C;
}
.google-actions-page .ga-info-box {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  background: rgba(66, 133, 244, 0.07);
  border-left: 3px solid #4285F4;
  border-radius: 0 8px 8px 0;
  padding: 14px 16px;
  margin-bottom: 16px;
}
.google-actions-page .ga-info-box md-icon {
  color: #4285F4;
  margin: 0;
  flex-shrink: 0;
  font-size: 18px;
  width: 18px;
  height: 18px;
}
.google-actions-page .ga-info-box p {
  margin: 0;
  font-size: 14px;
  color: var(--color-text-secondary, #555);
  line-height: 1.5;
}
.waitry-dark-theme .google-actions-page .ga-info-box p {
  color: var(--an-text-muted);
}
.google-actions-page .ga-preview-btns {
  margin-bottom: 16px;
}
.google-actions-page .ga-preview-btns .ga-btn-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 8px;
}
.google-actions-page .ga-preview-btns .ga-btn-row md-button {
  margin: 0;
}
.google-actions-page .ga-preview-output {
  background: #1e1e2e;
  border-radius: 8px;
  padding: 16px;
  margin-bottom: 16px;
  overflow-x: auto;
  max-height: 320px;
}
.google-actions-page .ga-preview-output .ga-json-preview {
  margin: 0;
  font-family: "Fira Code", "Monaco", monospace;
  font-size: 12px;
  color: #a6e3a1;
  white-space: pre;
}
.google-actions-page .ga-trigger-section {
  margin-bottom: 16px;
}
.google-actions-page .ga-trigger-section md-button {
  margin-left: 0;
}
.google-actions-page .ga-logs-section {
  margin-top: 8px;
}
.google-actions-page .ga-logs-table-wrapper {
  overflow-x: auto;
}
.google-actions-page .ga-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}
.google-actions-page .ga-table th {
  padding: 10px 12px;
  text-align: left;
  font-weight: 600;
  font-size: 12px;
  color: var(--color-text-secondary, #777);
  border-bottom: 2px solid var(--color-border, #e0e0e0);
  white-space: nowrap;
}
.waitry-dark-theme .google-actions-page .ga-table th {
  color: var(--an-text-muted);
  border-bottom-color: var(--an-border);
}
.google-actions-page .ga-table td {
  padding: 10px 12px;
  border-bottom: 1px solid var(--color-border, #f0f0f0);
  vertical-align: middle;
}
.waitry-dark-theme .google-actions-page .ga-table td {
  border-bottom-color: var(--an-border);
}
.google-actions-page .ga-table tr:last-child td {
  border-bottom: none;
}
.google-actions-page .ga-table tr:hover td {
  background: rgba(0, 0, 0, 0.02);
}
.waitry-dark-theme .google-actions-page .ga-table tr:hover td {
  background: rgba(255, 255, 255, 0.04);
}
.google-actions-page .ga-feed-type-badge {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 4px;
  background: rgba(66, 133, 244, 0.12);
  color: #4285F4;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
}
.google-actions-page .ga-filename {
  font-family: monospace;
  font-size: 12px;
  color: var(--color-text-secondary, #666);
}
.waitry-dark-theme .google-actions-page .ga-filename {
  color: var(--an-text-muted);
}
.google-actions-page .ga-log-status {
  font-size: 11px;
  padding: 2px 8px;
}
.google-actions-page .ga-empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 48px 24px;
  text-align: center;
}
.google-actions-page .ga-empty-state .ga-empty-icon {
  font-size: 40px;
  width: 40px;
  height: 40px;
  color: var(--color-border, #ccc);
  margin-bottom: 12px;
}
.waitry-dark-theme .google-actions-page .ga-empty-state .ga-empty-icon {
  color: var(--an-text-faint);
}
.google-actions-page .ga-empty-state p {
  margin: 0;
  color: var(--color-text-secondary, #999);
  font-size: 14px;
}
.waitry-dark-theme .google-actions-page .ga-empty-state p {
  color: var(--an-text-muted);
}
.google-actions-page .ga-kpi-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}
.google-actions-page .ga-kpi-grid .ga-kpi-card {
  background: linear-gradient(135deg, rgba(102, 68, 221, 0.07), rgba(102, 68, 221, 0.02));
  border-radius: 10px;
  padding: 20px 16px;
  text-align: center;
  border: 1px solid rgba(102, 68, 221, 0.1);
}
.google-actions-page .ga-kpi-grid .ga-kpi-card .ga-kpi-value {
  display: block;
  font-size: 28px;
  font-weight: 700;
  color: var(--color-primary, #6644dd);
  line-height: 1.2;
  margin-bottom: 6px;
}
.google-actions-page .ga-kpi-grid .ga-kpi-card .ga-kpi-label {
  display: block;
  font-size: 11px;
  color: var(--color-text-secondary, #777);
  text-transform: uppercase;
  letter-spacing: 0.4px;
}
.waitry-dark-theme .google-actions-page .ga-kpi-grid .ga-kpi-card .ga-kpi-label {
  color: var(--an-text-muted);
}
.google-actions-page .ga-kpi-grid .ga-kpi-card.ga-kpi-card--highlight {
  background: linear-gradient(135deg, rgba(16, 185, 129, 0.09), rgba(16, 185, 129, 0.03));
  border-color: rgba(16, 185, 129, 0.18);
}
.google-actions-page .ga-kpi-grid .ga-kpi-card.ga-kpi-card--highlight .ga-kpi-value {
  color: #059669;
}
.google-actions-page md-card-actions {
  padding: 8px 16px;
}
.google-actions-page .ga-kpi-grid--revenue {
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
}
.google-actions-page .ga-kpi-grid--revenue .ga-kpi-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 18px 14px;
}
.google-actions-page .ga-kpi-grid--revenue .ga-kpi-card .ga-kpi-icon {
  font-size: 22px;
  width: 22px;
  height: 22px;
  min-width: 22px;
  line-height: 22px;
  margin: 0 0 8px;
  color: inherit;
  opacity: 0.7;
}
.google-actions-page .ga-stats-loading {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 48px 24px;
}
.google-actions-page .ga-kpi-strip {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-bottom: 20px;
  background: var(--bg-surface, #fff);
  border: 1px solid var(--color-border, #e8e8e8);
  border-radius: 14px;
  padding: 20px 16px;
  overflow-x: auto;
}
.waitry-dark-theme .google-actions-page .ga-kpi-strip {
  background: rgba(255, 255, 255, 0.04);
  border-color: rgba(255, 255, 255, 0.08);
}
.google-actions-page .ga-kpi-strip .ga-kpi-strip__card {
  flex: 1;
  min-width: 90px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding: 10px 8px;
  border-radius: 10px;
  transition: background 0.2s;
}
.google-actions-page .ga-kpi-strip .ga-kpi-strip__card--highlight {
  background: linear-gradient(135deg, rgba(99, 102, 241, 0.1), rgba(99, 102, 241, 0.04));
  border: 1px solid rgba(99, 102, 241, 0.18);
}
.google-actions-page .ga-kpi-strip .ga-kpi-strip__card--highlight .ga-kpi-strip__value {
  color: #6366F1;
}
.waitry-dark-theme .google-actions-page .ga-kpi-strip .ga-kpi-strip__card--highlight {
  background: rgba(99, 102, 241, 0.15);
}
.google-actions-page .ga-kpi-strip .ga-kpi-strip__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 10px;
  flex-shrink: 0;
}
.google-actions-page .ga-kpi-strip .ga-kpi-strip__icon md-icon {
  font-size: 18px;
  width: 18px;
  height: 18px;
  min-width: 18px;
  line-height: 18px;
  margin: 0;
}
.google-actions-page .ga-kpi-strip .ga-kpi-strip__icon--blue {
  background: rgba(66, 133, 244, 0.1);
  color: #4285F4;
}
.google-actions-page .ga-kpi-strip .ga-kpi-strip__icon--green {
  background: rgba(16, 185, 129, 0.1);
  color: #10B981;
}
.google-actions-page .ga-kpi-strip .ga-kpi-strip__icon--purple {
  background: rgba(99, 102, 241, 0.1);
  color: #6366F1;
}
.google-actions-page .ga-kpi-strip .ga-kpi-strip__icon--orange {
  background: rgba(245, 158, 11, 0.1);
  color: #F59E0B;
}
.google-actions-page .ga-kpi-strip .ga-kpi-strip__value {
  font-size: 24px;
  font-weight: 700;
  color: var(--color-text-primary, #1a1a1a);
  line-height: 1;
}
.waitry-dark-theme .google-actions-page .ga-kpi-strip .ga-kpi-strip__value {
  color: rgba(255, 255, 255, 0.9);
}
.google-actions-page .ga-kpi-strip .ga-kpi-strip__label {
  font-size: 10px;
  font-weight: 600;
  color: var(--color-text-secondary, #888);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  text-align: center;
}
.waitry-dark-theme .google-actions-page .ga-kpi-strip .ga-kpi-strip__label {
  color: var(--an-text-muted);
}
.google-actions-page .ga-kpi-strip .ga-kpi-strip__arrow {
  font-size: 18px;
  color: var(--color-border, #ccc);
  flex-shrink: 0;
  padding: 0 2px;
  user-select: none;
}
.waitry-dark-theme .google-actions-page .ga-kpi-strip .ga-kpi-strip__arrow {
  color: var(--an-text-faint);
}
.google-actions-page .ga-type-breakdown {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.google-actions-page .ga-type-row {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.google-actions-page .ga-type-row__header {
  display: flex;
  align-items: center;
  gap: 10px;
}
.google-actions-page .ga-type-row__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  flex-shrink: 0;
}
.google-actions-page .ga-type-row__icon md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  min-width: 16px;
  line-height: 16px;
  margin: 0;
}
.google-actions-page .ga-type-row__label {
  flex: 1;
  font-size: 14px;
  font-weight: 600;
  color: var(--color-text-primary, #333);
}
.waitry-dark-theme .google-actions-page .ga-type-row__label {
  color: rgba(255, 255, 255, 0.85);
}
.google-actions-page .ga-type-row__rate {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-primary, #6644dd);
  flex-shrink: 0;
  min-width: 46px;
  text-align: right;
}
.google-actions-page .ga-type-row__bar-wrap {
  height: 6px;
  background: var(--color-border, #eee);
  border-radius: 3px;
  overflow: hidden;
}
.waitry-dark-theme .google-actions-page .ga-type-row__bar-wrap {
  background: rgba(255, 255, 255, 0.08);
}
.google-actions-page .ga-type-row__bar {
  height: 100%;
  border-radius: 3px;
  transition: width 0.6s cubic-bezier(0.4, 0, 0.2, 1);
  min-width: 4px;
}
.google-actions-page .ga-type-row__stats {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}
.google-actions-page .ga-type-stat {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.google-actions-page .ga-type-stat__val {
  font-size: 15px;
  font-weight: 600;
  color: var(--color-text-primary, #333);
}
.waitry-dark-theme .google-actions-page .ga-type-stat__val {
  color: rgba(255, 255, 255, 0.85);
}
.google-actions-page .ga-type-stat__key {
  font-size: 10px;
  font-weight: 600;
  color: var(--color-text-secondary, #999);
  text-transform: uppercase;
  letter-spacing: 0.4px;
}
.waitry-dark-theme .google-actions-page .ga-type-stat__key {
  color: var(--an-text-faint);
}
.google-actions-page .ga-revenue-card {
  background: linear-gradient(135deg, rgba(16, 185, 129, 0.04) 0%, rgba(16, 185, 129, 0.01) 100%);
  border: 1px solid rgba(16, 185, 129, 0.12);
  border-radius: 12px;
}
.waitry-dark-theme .google-actions-page .ga-revenue-card {
  background: rgba(16, 185, 129, 0.06);
  border-color: rgba(16, 185, 129, 0.15);
}

/* ── Utility classes for pristine delivery (no inline styles) ── */
/* Block spacing for conversion stats cards */
.ga-card-block {
  margin-bottom: 20px;
}

/* Standard padded card body */
.pm-card__body--padded {
  padding: 24px !important;
}

/* ═══════════════════════════════════════════════════════════════════════════
   Google compatibility card
   Tells a venue whether it ships to Google and, when it does not, exactly what
   to change. Status colours are declared per theme rather than hardcoded, so
   the card follows the light/dark toggle like everything else.
   ═══════════════════════════════════════════════════════════════════════════ */
.ga-ready {
  --ga-ready-ok: #10b981;
  --ga-ready-warn: #f59e0b;
  --ga-ready-bad: #ef4444;
  margin-bottom: 24px;
}
.ga-ready__verdict {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  border-radius: 8px;
  border: 1px solid var(--an-border);
  background: var(--an-surface2);
}
.ga-ready__verdict md-icon {
  font-size: 22px;
  flex-shrink: 0;
}
.ga-ready__verdict--ok md-icon {
  color: var(--ga-ready-ok) !important;
}
.ga-ready__verdict--bad md-icon {
  color: var(--ga-ready-bad) !important;
}
.ga-ready__verdict-text {
  display: flex;
  flex-direction: column;
}
.ga-ready__verdict-title {
  font-weight: 600;
  font-size: 14px;
  color: var(--an-text);
}
.ga-ready__verdict-sub {
  font-size: 12px;
  color: var(--an-text-muted);
  margin-top: 2px;
}
.ga-ready__list {
  margin-top: 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.ga-ready__row {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px 14px;
  border-radius: 8px;
  border: 1px solid var(--an-border);
  background: var(--an-surface);
  /* The status colour lives on the left edge, not on the whole row: a
     full red fill reads as "everything is broken" when one field is. */
}
.ga-ready__row--blocked {
  border-left: 3px solid var(--ga-ready-bad);
}
.ga-ready__row--warning {
  border-left: 3px solid var(--ga-ready-warn);
}
.ga-ready__row--blocked .ga-ready__row-icon {
  color: var(--ga-ready-bad) !important;
}
.ga-ready__row--warning .ga-ready__row-icon {
  color: var(--ga-ready-warn) !important;
}
.ga-ready__row-icon {
  font-size: 18px;
  flex-shrink: 0;
  margin-top: 1px;
}
.ga-ready__row-text {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-width: 0;
}
.ga-ready__row-title {
  font-weight: 600;
  font-size: 13px;
  color: var(--an-text);
}
.ga-ready__row-desc {
  font-size: 12px;
  color: var(--an-text-muted);
  margin-top: 2px;
  line-height: 1.45;
}
.ga-ready__row-detail {
  font-size: 12px;
  color: var(--an-text-muted);
  margin-top: 6px;
}
.ga-ready__row-detail em {
  font-style: normal;
  color: var(--an-text-faint);
}
.ga-ready {
  /* Fix button sits at the end of the row and never shrinks below its label. */
}
.ga-ready__row-fix {
  flex-shrink: 0;
  align-self: center;
  margin: 0 !important;
  min-width: 0 !important;
}

@media (max-width: 600px) {
  .ga-ready__row {
    flex-wrap: wrap;
  }
  .ga-ready__row .ga-ready__row-fix {
    width: 100%;
    margin-top: 8px !important;
  }
}
/* Verified checks: collapsed reassurance, deliberately quieter than the issues */
.ga-ready__verified {
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid var(--an-border);
}

.ga-ready__verified-toggle {
  display: flex;
  align-items: center;
  gap: 6px;
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text-muted);
}
.ga-ready__verified-toggle md-icon {
  font-size: 16px;
  color: var(--an-text-muted) !important;
}
.ga-ready__verified-toggle:hover {
  color: var(--an-text);
}

.ga-ready__verified-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
  gap: 6px 16px;
  margin-top: 10px;
}

.ga-ready__verified-row {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  color: var(--an-text-muted);
}
.ga-ready__verified-row md-icon {
  font-size: 14px;
  color: var(--ga-ready-ok) !important;
}

/* Danger zone: visually apart, and it has to read as consequential */
.ga-ready__danger {
  display: flex;
  align-items: center;
  gap: 16px;
  border-top: 1px solid var(--an-border);
  background: rgba(239, 68, 68, 0.04);
}
.ga-ready__danger .ga-ready__danger-text {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-width: 0;
}
.ga-ready__danger .ga-ready__danger-title {
  font-weight: 600;
  font-size: 13px;
  color: var(--ga-ready-bad);
}
.ga-ready__danger .ga-ready__danger-desc {
  font-size: 12px;
  color: var(--an-text-muted);
  margin-top: 2px;
  line-height: 1.45;
}
.ga-ready__danger .md-button {
  flex-shrink: 0;
  margin: 0 !important;
}

@media (max-width: 600px) {
  .ga-ready__danger {
    flex-wrap: wrap;
  }
  .ga-ready__danger .md-button {
    width: 100%;
  }
}
.meta-connect-page {
  padding: 0;
  height: 100%;
  overflow-y: auto;
}
.meta-connect-page .page-header-fixed {
  position: sticky;
  top: 0;
  z-index: 10;
  background: var(--bg-surface, #fff);
  border-bottom: 1px solid var(--color-border, #e0e0e0);
  padding: 14px 24px;
}
.waitry-dark-theme .meta-connect-page .page-header-fixed {
  background: var(--an-surface);
  border-bottom-color: var(--an-border);
}
.meta-connect-page .page-header-fixed .page-header-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.meta-connect-page .page-header-fixed .page-header-title {
  display: flex;
  align-items: center;
  gap: 12px;
}
.meta-connect-page .page-header-fixed .page-header-title h1 {
  margin: 0;
  font-size: 20px;
  font-weight: 600;
  color: var(--color-text-primary, #1a1a1a);
}
.waitry-dark-theme .meta-connect-page .page-header-fixed .page-header-title h1 {
  color: var(--an-text);
}
.meta-connect-page .page-header-fixed .mc-icon-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  background: #0866FF;
  border-radius: 50%;
}
.meta-connect-page .page-header-fixed .mc-icon-wrapper img {
  width: 16px;
  height: 16px;
  filter: brightness(0) invert(1);
}
.meta-connect-page .page-header-fixed .page-header-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}
.meta-connect-page .mc-content {
  padding: 20px 24px;
  max-width: min(1600px, 96vw);
}
@media (max-width: 600px) {
  .meta-connect-page .mc-content {
    padding: 12px;
  }
}
.meta-connect-page .mc-intro-banner {
  display: flex;
  align-items: center;
  gap: 20px;
  background: linear-gradient(135deg, rgba(8, 102, 255, 0.06) 0%, rgba(8, 102, 255, 0.02) 100%);
  border: 1px solid rgba(8, 102, 255, 0.15);
  border-radius: 12px;
  padding: 18px 20px;
  margin-bottom: 20px;
  flex-wrap: wrap;
}
.meta-connect-page .mc-intro-banner .mc-intro-visual {
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.meta-connect-page .mc-intro-banner .mc-intro-visual img {
  width: 48px;
  height: 48px;
  display: block;
}
.meta-connect-page .mc-intro-banner .mc-intro-text {
  flex: 1;
  min-width: 180px;
}
.meta-connect-page .mc-intro-banner .mc-intro-text p {
  margin: 0;
  font-size: 14px;
  color: var(--color-text-secondary, #555);
  line-height: 1.55;
}
.waitry-dark-theme .meta-connect-page .mc-intro-banner .mc-intro-text p {
  color: var(--an-text-muted);
}
.meta-connect-page .mc-cards-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(380px, 1fr));
  gap: 20px;
  align-items: start;
}
.meta-connect-page .mc-card {
  border-radius: 12px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  margin: 0;
}
.meta-connect-page .mc-card md-card-title {
  padding-bottom: 0;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}
.meta-connect-page .mc-card md-card-title .status-badge {
  flex-shrink: 0;
}
.meta-connect-page .mc-card .md-headline {
  font-size: 16px;
  font-weight: 600;
}
.meta-connect-page .mc-card .md-subhead {
  color: var(--color-text-secondary, #777);
  font-size: 13px;
  margin-top: 2px;
}
.waitry-dark-theme .meta-connect-page .mc-card .md-subhead {
  color: var(--an-text-muted);
}
.meta-connect-page .mc-field-group {
  margin-bottom: 20px;
}
.meta-connect-page .mc-field-group .mc-field-label {
  display: block;
  font-size: 12px;
  font-weight: 600;
  color: var(--color-text-secondary, #666);
  margin-bottom: 6px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.waitry-dark-theme .meta-connect-page .mc-field-group .mc-field-label {
  color: var(--an-text-muted);
}
.meta-connect-page .mc-field-hint {
  display: block;
  font-size: 12px;
  color: var(--color-text-secondary, #999);
  margin-top: 4px;
  font-style: italic;
}
.waitry-dark-theme .meta-connect-page .mc-field-hint {
  color: var(--an-text-faint);
}
.meta-connect-page .mc-inline-link {
  background: none;
  border: none;
  padding: 0;
  margin: 0 0 0 32px;
  font-size: 12px;
  font-weight: 600;
  color: #0866FF;
  cursor: pointer;
}
.meta-connect-page .mc-inline-link:hover {
  text-decoration: underline;
}
.meta-connect-page .mc-input-container {
  width: 100%;
  margin: 0;
}
.meta-connect-page .mc-input-container input {
  width: 100%;
}
.meta-connect-page .mc-section-label {
  font-size: 12px;
  font-weight: 600;
  color: var(--color-text-secondary, #666);
  margin: 0 0 12px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.waitry-dark-theme .meta-connect-page .mc-section-label {
  color: var(--an-text-muted);
}
.meta-connect-page .mc-toggles-grid {
  display: flex;
  flex-direction: column;
}
.meta-connect-page .mc-toggle-row {
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}
.waitry-dark-theme .meta-connect-page .mc-toggle-row {
  border-bottom-color: var(--an-border);
}
.meta-connect-page .mc-toggle-row:last-child {
  border-bottom: none;
}
.meta-connect-page .mc-toggle-row.mc-disabled {
  opacity: 0.5;
  pointer-events: none;
}
.meta-connect-page .mc-toggle-main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 0;
  gap: 16px;
  cursor: pointer;
}
.meta-connect-page .mc-toggle-main .mc-toggle-label {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 1;
  min-width: 0;
}
.meta-connect-page .mc-toggle-main .mc-toggle-label .mc-toggle-icon {
  font-size: 20px;
  width: 20px;
  height: 20px;
  min-width: 20px;
  min-height: 20px;
  line-height: 20px;
  color: #0866FF;
  flex-shrink: 0;
  margin: 0;
}
.meta-connect-page .mc-toggle-main .mc-toggle-label .mc-toggle-icon.mc-toggle-icon--success {
  color: #1B873F;
}
.meta-connect-page .mc-toggle-main .mc-toggle-label .mc-toggle-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.meta-connect-page .mc-toggle-main .mc-toggle-label .mc-toggle-title {
  font-size: 14px;
  font-weight: 500;
  color: var(--color-text-primary, #333);
}
.waitry-dark-theme .meta-connect-page .mc-toggle-main .mc-toggle-label .mc-toggle-title {
  color: var(--an-text);
}
.meta-connect-page .mc-toggle-main .mc-toggle-label .mc-toggle-desc {
  font-size: 12px;
  color: var(--color-text-secondary, #888);
  line-height: 1.4;
}
.waitry-dark-theme .meta-connect-page .mc-toggle-main .mc-toggle-label .mc-toggle-desc {
  color: var(--an-text-muted);
}
.meta-connect-page .mc-toggle-main .mc-toggle-label .mc-toggle-warn {
  font-size: 12px;
  color: #E65100;
}
.meta-connect-page .mc-toggle-main .mc-option-radio {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 2px solid #ccc;
  margin-right: 4px;
  position: relative;
  flex-shrink: 0;
}
.waitry-dark-theme .meta-connect-page .mc-toggle-main .mc-option-radio {
  border-color: var(--an-border-strong);
}
.meta-connect-page .mc-toggle-main .mc-option-radio.selected {
  border-color: #0866FF;
}
.meta-connect-page .mc-toggle-main .mc-option-radio.selected:after {
  content: "";
  position: absolute;
  top: 4px;
  left: 4px;
  width: 8px;
  height: 8px;
  background: #0866FF;
  border-radius: 50%;
}
.meta-connect-page .mc-toggle-url {
  padding: 0 0 12px 32px;
  display: flex;
  align-items: center;
}
.meta-connect-page .mc-toggle-url .mc-slug-prefix {
  font-size: 13px;
  color: #666;
  padding-right: 4px;
}
.waitry-dark-theme .meta-connect-page .mc-toggle-url .mc-slug-prefix {
  color: var(--an-text-muted);
}
.meta-connect-page .mc-toggle-url .mc-url-input {
  width: 100%;
  margin: 0;
  flex: 1;
}
.meta-connect-page .mc-toggle-url .mc-url-input input {
  font-size: 13px;
  width: 100%;
}
.meta-connect-page .mc-toggle-url .mc-slug-error {
  color: #d32f2f;
  font-size: 12px;
  margin-top: 4px;
}
.meta-connect-page .mc-divider {
  margin: 16px 0;
}
.meta-connect-page .status-badge {
  display: inline-flex;
  align-items: center;
  padding: 4px 12px;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.4px;
}
.meta-connect-page .status-badge.status-disconnected {
  background: #FFF3E0;
  color: #E65100;
}
.meta-connect-page .status-badge.status-connected {
  background: #E3F2FD;
  color: #0866FF;
}
.meta-connect-page md-card-actions {
  padding: 8px 16px;
  margin: 0;
}
.meta-connect-page md-card-actions .mc-actions-info {
  font-size: 13px;
  color: #666;
  font-style: italic;
}
.waitry-dark-theme .meta-connect-page md-card-actions .mc-actions-info {
  color: var(--an-text-muted);
}
.meta-connect-page md-card-actions .mc-btn-connect {
  background-color: #0866FF !important;
  color: white !important;
  margin: 0;
}
.meta-connect-page md-card-actions .mc-btn-connect img {
  width: 16px;
  height: 16px;
  vertical-align: middle;
  margin-right: 8px;
  filter: brightness(0) invert(1);
}
.meta-connect-page md-card-actions .mc-btn-disconnect {
  color: #d32f2f !important;
}
.meta-connect-page md-card-actions .mc-btn-disconnect img {
  width: 16px;
  height: 16px;
  vertical-align: middle;
  margin-right: 8px;
}

#variationManager {
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  padding-bottom: 0 !important;
}

.vm-page {
  display: flex;
  flex-direction: row;
  flex: 1;
  min-height: 0;
  overflow: hidden;
}

.vm-sidebar {
  width: 280px;
  min-width: 280px;
  border-right: 1px solid var(--an-border);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background: var(--an-surface);
}
.waitry-dark-theme .vm-sidebar {
  border-right-color: rgba(255, 255, 255, 0.07);
  background: #16171d;
}

.vm-sidebar__header {
  padding: 12px 12px 10px;
  border-bottom: 1px solid var(--an-border);
  flex-shrink: 0;
}
.waitry-dark-theme .vm-sidebar__header {
  border-bottom-color: rgba(255, 255, 255, 0.07);
}

.vm-sidebar__search {
  position: relative;
  display: flex;
  align-items: center;
}
.vm-sidebar__search input {
  width: 100% !important;
  height: 36px !important;
  border: 1.5px solid var(--an-border) !important;
  border-radius: 8px !important;
  padding: 0 12px 0 34px !important;
  font-family: var(--font-sans) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  color: var(--an-text) !important;
  background: var(--an-surface2, #f5f5f7) !important;
  outline: none !important;
  box-sizing: border-box !important;
  transition: border-color 0.15s, box-shadow 0.15s;
  -webkit-appearance: none;
  appearance: none;
  margin: 0 !important;
}
.vm-sidebar__search input::placeholder {
  color: var(--an-placeholder) !important;
}
.vm-sidebar__search input:focus {
  border-color: var(--an-primary) !important;
  box-shadow: 0 0 0 3px rgba(236, 78, 54, 0.08) !important;
  background: var(--an-surface) !important;
}
.waitry-dark-theme .vm-sidebar__search input {
  background: rgba(255, 255, 255, 0.04) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
  color: #e5e7eb !important;
}
.waitry-dark-theme .vm-sidebar__search input:focus {
  background: rgba(255, 255, 255, 0.06) !important;
}
.vm-sidebar__search md-icon {
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 16px;
  width: 16px;
  height: 16px;
  color: var(--an-text-faint, #9ca3af);
  pointer-events: none;
  z-index: 1;
}

.vm-sidebar__list {
  flex: 1;
  overflow-y: auto;
  padding: 6px;
  min-height: 0;
}
.vm-sidebar__list::-webkit-scrollbar {
  width: 4px;
}
.vm-sidebar__list::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.1);
  border-radius: 4px;
}
.vm-sidebar__list::-webkit-scrollbar-track {
  background: transparent;
}

.vm-sidebar__add {
  padding: 10px 12px;
  border-top: 1px solid var(--an-border);
  flex-shrink: 0;
}
.waitry-dark-theme .vm-sidebar__add {
  border-top-color: rgba(255, 255, 255, 0.07);
}

.vm-add-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
  padding: 9px 14px;
  border-radius: 8px;
  border: 1.5px dashed var(--an-border);
  background: transparent;
  color: var(--an-text-muted);
  font-family: var(--font-sans);
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s;
  box-sizing: border-box;
}
.waitry-dark-theme .vm-add-btn {
  border-color: rgba(255, 255, 255, 0.12);
}
.vm-add-btn:hover {
  background: var(--an-primary-soft, rgba(236, 78, 54, 0.06));
  border-color: var(--an-primary);
  color: var(--an-primary);
}
.vm-add-btn md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  margin: 0;
}

.vm-type-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 10px;
  border-radius: 8px;
  cursor: pointer;
  transition: background 0.15s, box-shadow 0.15s;
  margin-bottom: 1px;
  position: relative;
}
.vm-type-item:hover {
  background: var(--an-bg-subtle, rgba(0, 0, 0, 0.03));
}
.waitry-dark-theme .vm-type-item:hover {
  background: rgba(255, 255, 255, 0.04);
}
.vm-type-item--active {
  background: var(--an-primary-soft, rgba(236, 78, 54, 0.07));
  box-shadow: inset 3px 0 0 var(--an-primary);
}
.waitry-dark-theme .vm-type-item--active {
  background: rgba(236, 78, 54, 0.12);
}
.vm-type-item--active:hover {
  background: var(--an-primary-soft, rgba(236, 78, 54, 0.1));
}
.vm-type-item--active .vm-type-item__name {
  color: var(--an-primary);
  font-weight: 600;
}

.vm-type-item__drag {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  flex-shrink: 0;
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  min-width: 14px !important;
  min-height: 14px !important;
  color: var(--an-text-muted) !important;
  opacity: 0.45;
  cursor: grab;
  margin: 0 !important;
  transition: opacity 0.15s, color 0.15s;
}
.vm-type-item:hover .vm-type-item__drag {
  opacity: 1;
  color: var(--an-primary) !important;
}

.vm-type-item__icon {
  width: 30px;
  height: 30px;
  border-radius: 7px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}
.vm-type-item__icon--eleccion {
  background: rgba(59, 130, 246, 0.1);
  color: #3b82f6;
}
.waitry-dark-theme .vm-type-item__icon--eleccion {
  background: rgba(59, 130, 246, 0.18);
}
.vm-type-item__icon--externo {
  background: rgba(16, 185, 129, 0.1);
  color: #10b981;
}
.waitry-dark-theme .vm-type-item__icon--externo {
  background: rgba(16, 185, 129, 0.18);
}
.vm-type-item__icon--agregado {
  background: rgba(245, 158, 11, 0.1);
  color: #f59e0b;
}
.waitry-dark-theme .vm-type-item__icon--agregado {
  background: rgba(245, 158, 11, 0.18);
}
.vm-type-item__icon--default {
  background: rgba(139, 92, 246, 0.1);
  color: #8b5cf6;
}
.waitry-dark-theme .vm-type-item__icon--default {
  background: rgba(139, 92, 246, 0.18);
}

.vm-type-item__content {
  flex: 1;
  min-width: 0;
}

.vm-type-item__name {
  font-size: 13px;
  font-weight: 500;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.3;
}

.vm-type-item__desc {
  font-size: 11px;
  color: var(--an-text-faint, #9ca3af);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-top: 1px;
  line-height: 1.3;
}

.vm-type-item__count {
  flex-shrink: 0;
  font-size: 11px;
  font-weight: 600;
  color: var(--an-text-faint);
  background: var(--an-bg-subtle, rgba(0, 0, 0, 0.04));
  padding: 2px 7px;
  border-radius: 100px;
  min-width: 22px;
  text-align: center;
}
.waitry-dark-theme .vm-type-item__count {
  background: rgba(255, 255, 255, 0.06);
}

.vm-type-item__arrow {
  flex-shrink: 0;
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  min-width: 14px !important;
  min-height: 14px !important;
  color: var(--an-text-faint) !important;
  opacity: 0.4;
  transition: opacity 0.15s, transform 0.15s;
  margin: 0 !important;
}
.vm-type-item:hover .vm-type-item__arrow {
  opacity: 0.8;
  transform: translateX(2px);
}
.vm-type-item--active .vm-type-item__arrow {
  opacity: 0.8;
  color: var(--an-primary) !important;
}

.vm-detail {
  flex: 1;
  overflow-y: auto;
  padding: 20px;
  min-width: 0;
  min-height: 0;
}
.vm-detail + .vm-detail {
  padding-left: 0;
}
.vm-detail::-webkit-scrollbar {
  width: 4px;
}
.vm-detail::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.08);
  border-radius: 4px;
}
.vm-detail::-webkit-scrollbar-track {
  background: transparent;
}

.vm-detail-card {
  background: var(--an-surface, #fff);
  border: 1px solid var(--an-border);
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04), 0 4px 12px rgba(0, 0, 0, 0.02);
}
.waitry-dark-theme .vm-detail-card {
  background: #1e2029;
  border-color: rgba(255, 255, 255, 0.07);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}

.vm-detail-card__header {
  padding: 16px 20px;
  border-bottom: 1px solid var(--an-border);
  background: var(--an-surface, #fff);
}
.waitry-dark-theme .vm-detail-card__header {
  border-bottom-color: rgba(255, 255, 255, 0.07);
  background: #1e2029;
}

.vm-detail-card__title-row {
  display: flex;
  align-items: center;
  gap: 12px;
}

.vm-detail-card__title {
  flex: 1;
  min-width: 0;
  font-size: 17px;
  font-weight: 700;
  color: var(--an-text);
  letter-spacing: -0.2px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.vm-detail-card__actions {
  display: flex;
  align-items: center;
  gap: 2px;
  flex-shrink: 0;
}

.vm-action-btn {
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  min-height: 32px !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 7px !important;
  background: var(--an-surface2, #f3f4f6) !important;
  transition: all 0.15s !important;
}
.waitry-dark-theme .vm-action-btn {
  background: rgba(255, 255, 255, 0.06) !important;
}
.vm-action-btn:hover {
  background: var(--an-bg-subtle, rgba(0, 0, 0, 0.06)) !important;
  transform: translateY(-1px);
}
.vm-action-btn md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  color: var(--an-text-muted) !important;
}
.vm-action-btn--danger:hover {
  background: rgba(239, 68, 68, 0.08) !important;
}
.vm-action-btn--danger:hover md-icon {
  color: #ef4444 !important;
}
.vm-action-btn__icon--blocked {
  color: #ef4444 !important;
}
.vm-action-btn--primary {
  background: var(--an-primary) !important;
  box-shadow: 0 2px 8px rgba(236, 78, 54, 0.25);
}
.vm-action-btn--primary md-icon {
  color: #fff !important;
}
.vm-action-btn--primary:hover {
  box-shadow: 0 4px 14px rgba(236, 78, 54, 0.35);
  background: var(--an-primary) !important;
}

.vm-action-divider {
  width: 1px;
  height: 18px;
  background: var(--an-border);
  margin: 0 4px;
  flex-shrink: 0;
}
.waitry-dark-theme .vm-action-divider {
  background: rgba(255, 255, 255, 0.08);
}

.vm-meta-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 14px;
}

.vm-meta-chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 10px;
  border-radius: 100px;
  font-size: 12px;
  background: var(--an-surface2, #f3f4f6);
  border: 1px solid var(--an-border);
}
.waitry-dark-theme .vm-meta-chip {
  background: rgba(255, 255, 255, 0.04);
  border-color: rgba(255, 255, 255, 0.08);
}
.vm-meta-chip md-icon {
  font-size: 13px !important;
  width: 13px !important;
  height: 13px !important;
  min-width: 13px !important;
  min-height: 13px !important;
  margin: 0 !important;
  color: var(--an-text-faint) !important;
}
.vm-meta-chip__label {
  color: var(--an-text-muted);
  font-weight: 400;
}
.vm-meta-chip__value {
  font-weight: 600;
  color: var(--an-text);
}
.vm-meta-chip--yes {
  background: rgba(16, 185, 129, 0.08);
  border-color: rgba(16, 185, 129, 0.2);
}
.vm-meta-chip--yes md-icon {
  color: #10b981 !important;
}
.vm-meta-chip--yes .vm-meta-chip__value {
  color: #10b981;
}
.vm-meta-chip--no {
  background: rgba(156, 163, 175, 0.08);
  border-color: rgba(156, 163, 175, 0.15);
}

.vm-description {
  margin-top: 10px;
  font-size: 13px;
  color: var(--an-text-muted);
  line-height: 1.5;
}

.vm-section-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}
.vm-section-header .vm-section-title {
  margin: 0;
}

.vm-filter-toggle {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 10px 4px 8px;
  border-radius: 100px;
  border: 1px solid var(--an-border);
  background: transparent;
  color: var(--an-text-muted);
  font-size: 11px;
  font-weight: 500;
  font-family: inherit;
  cursor: pointer;
  transition: all 0.2s ease;
  white-space: nowrap;
  line-height: 1;
}
.vm-filter-toggle md-icon {
  font-size: 13px !important;
  width: 13px !important;
  height: 13px !important;
  min-width: 13px !important;
  min-height: 13px !important;
  color: inherit !important;
  margin: 0 !important;
}
.vm-filter-toggle:hover {
  background: var(--an-surface2);
  border-color: var(--an-border-hover, var(--an-text-muted));
  color: var(--an-text);
}
.vm-filter-toggle--active {
  background: rgba(236, 78, 54, 0.08);
  border-color: rgba(236, 78, 54, 0.25);
  color: var(--an-primary);
}
.waitry-dark-theme .vm-filter-toggle--active {
  background: rgba(236, 78, 54, 0.12);
  border-color: rgba(236, 78, 54, 0.3);
}
.vm-filter-toggle--active:hover {
  background: rgba(236, 78, 54, 0.12);
  border-color: rgba(236, 78, 54, 0.35);
}
.waitry-dark-theme .vm-filter-toggle {
  border-color: rgba(255, 255, 255, 0.1);
}
.waitry-dark-theme .vm-filter-toggle:hover {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.18);
}

.vm-detail-card__body {
  padding: 16px 20px 20px;
}

.vm-section-title {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  color: var(--an-text-faint);
  margin: 0 0 10px;
}

.vm-variation-list {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.vm-variation-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 10px;
  border: 1px solid var(--an-border);
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.15s;
  background: var(--an-surface, #fff);
}
.waitry-dark-theme .vm-variation-item {
  background: rgba(255, 255, 255, 0.02);
  border-color: rgba(255, 255, 255, 0.07);
}
.vm-variation-item:hover {
  border-color: var(--an-border-hover, #d1d5db);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.04);
}
.vm-variation-item:hover .vm-variation-item__arrow {
  opacity: 0.8;
  transform: translateX(2px);
}
.vm-variation-item--active {
  border-color: var(--an-primary);
  background: var(--an-primary-soft, rgba(236, 78, 54, 0.04));
  box-shadow: 0 0 0 1px var(--an-primary);
}
.waitry-dark-theme .vm-variation-item--active {
  background: rgba(236, 78, 54, 0.08);
}
.vm-variation-item--disabled {
  opacity: 0.55;
}
.vm-variation-item--disabled .vm-variation-item__name {
  text-decoration: line-through;
  text-decoration-color: var(--an-text-faint);
}
.vm-variation-item--blocked {
  opacity: 0.4;
  background: rgba(239, 68, 68, 0.02);
  border-color: rgba(239, 68, 68, 0.15);
}
.vm-variation-item--blocked .vm-variation-item__name {
  text-decoration: line-through;
  text-decoration-color: #ef4444;
}

.vm-variation-item__drag {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  flex-shrink: 0;
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  min-width: 14px !important;
  min-height: 14px !important;
  color: var(--an-text-muted) !important;
  opacity: 0.45;
  cursor: grab;
  margin: 0 !important;
  transition: opacity 0.15s, color 0.15s;
}
.vm-variation-item:hover .vm-variation-item__drag {
  opacity: 1;
  color: var(--an-primary) !important;
}

.vm-variation-item__avatar {
  width: 28px;
  height: 28px;
  border-radius: 6px;
  object-fit: cover;
  flex-shrink: 0;
  border: 1.5px solid var(--an-border, rgba(0, 0, 0, 0.08));
  background: var(--an-surface2, #f5f5f7);
  transition: transform 0.15s, box-shadow 0.15s;
}
.vm-variation-item:hover .vm-variation-item__avatar {
  transform: scale(1.05);
}
.vm-variation-item--active .vm-variation-item__avatar {
  border-color: var(--an-primary);
  box-shadow: 0 0 0 2px rgba(236, 78, 54, 0.12);
}
.waitry-dark-theme .vm-variation-item__avatar {
  border-color: rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.06);
}

.vm-detail-card__avatar {
  width: 48px;
  height: 48px;
  border-radius: 10px;
  object-fit: cover;
  flex-shrink: 0;
  border: 2px solid var(--an-border, rgba(0, 0, 0, 0.08));
  background: var(--an-surface2, #f5f5f7);
  cursor: pointer;
  transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
}
.vm-detail-card__avatar:hover {
  transform: scale(1.08);
  border-color: var(--an-primary);
  box-shadow: 0 2px 12px rgba(236, 78, 54, 0.18);
}
.waitry-dark-theme .vm-detail-card__avatar {
  border-color: rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.06);
}
.waitry-dark-theme .vm-detail-card__avatar:hover {
  border-color: var(--an-primary);
  box-shadow: 0 2px 12px rgba(236, 78, 54, 0.25);
}

.vm-detail-card__avatar--product {
  cursor: default;
}
.vm-detail-card__avatar--product:hover {
  transform: none;
  border-color: var(--an-border, rgba(0, 0, 0, 0.08));
  box-shadow: none;
}
.waitry-dark-theme .vm-detail-card__avatar--product:hover {
  border-color: rgba(255, 255, 255, 0.12);
  box-shadow: none;
}

.vm-variation-item--droptarget {
  box-shadow: inset 0 0 0 2px var(--an-primary) !important;
  background: rgba(236, 78, 54, 0.08) !important;
}

.vm-variation-item__status {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  flex-shrink: 0;
}
.vm-variation-item__status--active {
  background: #10b981;
  box-shadow: 0 0 5px rgba(16, 185, 129, 0.35);
}
.vm-variation-item__status--disabled {
  background: #f59e0b;
  box-shadow: 0 0 5px rgba(245, 158, 11, 0.35);
}
.vm-variation-item__status--blocked {
  background: #ef4444;
  box-shadow: 0 0 5px rgba(239, 68, 68, 0.35);
}

.vm-variation-item__name {
  flex: 1;
  min-width: 0;
  font-size: 13px;
  font-weight: 500;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: flex;
  align-items: center;
  gap: 5px;
}

.vm-variation-item__link-icon {
  font-size: 13px !important;
  width: 13px !important;
  height: 13px !important;
  min-width: 13px !important;
  min-height: 13px !important;
  color: var(--an-primary) !important;
  margin: 0 !important;
  opacity: 0.6;
}

.vm-variation-item__price {
  flex-shrink: 0;
  font-size: 12px;
  font-weight: 600;
  color: var(--an-primary);
  background: var(--an-primary-soft, rgba(236, 78, 54, 0.08));
  padding: 2px 8px;
  border-radius: 100px;
  white-space: nowrap;
}
.waitry-dark-theme .vm-variation-item__price {
  background: rgba(236, 78, 54, 0.15);
}

.vm-variation-item__arrow {
  flex-shrink: 0;
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  min-width: 14px !important;
  min-height: 14px !important;
  color: var(--an-text-faint) !important;
  opacity: 0.3;
  transition: opacity 0.15s, transform 0.15s;
  margin: 0 !important;
}

.vm-translation-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  border: 1px solid var(--an-border);
  border-radius: 8px;
  margin-bottom: 6px;
  transition: all 0.15s;
  background: var(--an-surface, #fff);
  cursor: pointer;
}
.waitry-dark-theme .vm-translation-item {
  background: rgba(255, 255, 255, 0.02);
  border-color: rgba(255, 255, 255, 0.07);
}
.vm-translation-item:hover {
  border-color: var(--an-border-hover, #d1d5db);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.04);
}
.vm-translation-item:last-child {
  margin-bottom: 0;
}

.vm-translation-item__flag {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--an-surface2, #f3f4f6);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--an-text-muted);
}
.waitry-dark-theme .vm-translation-item__flag {
  background: rgba(255, 255, 255, 0.06);
}

.vm-translation-item__content {
  flex: 1;
  min-width: 0;
}

.vm-translation-item__name {
  font-size: 13px;
  font-weight: 500;
  color: var(--an-text);
  line-height: 1.3;
}

.vm-translation-item__lang {
  font-size: 11px;
  color: var(--an-text-faint);
  text-transform: uppercase;
  letter-spacing: 0.3px;
  margin-top: 2px;
}

.vm-translation-item__actions {
  display: flex;
  align-items: center;
  gap: 2px;
  flex-shrink: 0;
}

.vm-status-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 11px;
  font-weight: 600;
  padding: 3px 10px;
  border-radius: 100px;
}
.vm-status-badge--active {
  background: rgba(16, 185, 129, 0.1);
  color: #10b981;
}
.vm-status-badge--disabled {
  background: rgba(245, 158, 11, 0.1);
  color: #f59e0b;
}
.vm-status-badge--blocked {
  background: rgba(239, 68, 68, 0.1);
  color: #ef4444;
}
.vm-status-badge__dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
}

.vm-lang-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 10px;
  border-radius: 100px;
  font-size: 12px;
  background: var(--an-surface2, #f3f4f6);
  border: 1px solid var(--an-border);
  cursor: default;
}
.waitry-dark-theme .vm-lang-badge {
  background: rgba(255, 255, 255, 0.04);
  border-color: rgba(255, 255, 255, 0.08);
}
.vm-lang-badge md-icon {
  font-size: 13px !important;
  width: 13px !important;
  height: 13px !important;
  min-width: 13px !important;
  min-height: 13px !important;
  margin: 0 !important;
  color: var(--an-text-faint) !important;
}
.vm-lang-badge__label {
  color: var(--an-text-muted);
  font-weight: 400;
}
.vm-lang-badge__value {
  font-weight: 600;
  color: var(--an-text);
  text-transform: uppercase;
}

.vm-empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 40px 24px;
  text-align: center;
}
.vm-empty-state .vm-empty-icon-wrap {
  width: 64px;
  height: 64px;
  border-radius: 20px;
  background: var(--an-surface2);
  border: 1.5px solid var(--an-border);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 16px;
  flex-shrink: 0;
}
.vm-empty-state md-icon {
  font-size: 28px;
  width: 28px;
  height: 28px;
  color: var(--an-text-muted);
  opacity: 0.5;
  margin-bottom: 12px;
}
.vm-empty-state .vm-empty-icon-wrap md-icon {
  opacity: 0.7;
  margin-bottom: 0;
}
.vm-empty-state__title {
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text-muted);
  margin: 0 0 6px;
  letter-spacing: -0.1px;
}
.vm-empty-state__desc {
  font-size: 12px;
  color: var(--an-text-faint);
  margin: 0;
  max-width: 260px;
  line-height: 1.6;
}
.vm-empty-state__action {
  margin-top: 16px;
}
.vm-empty-state--full {
  height: 100%;
}
.vm-empty-state--compact {
  padding: 20px 16px;
}
.vm-empty-state--compact .vm-empty-icon-wrap {
  width: 48px;
  height: 48px;
  border-radius: 14px;
  margin-bottom: 12px;
}
.vm-empty-state--compact md-icon {
  font-size: 28px;
  width: 28px;
  height: 28px;
}

.vm-badges-row {
  margin-top: 10px;
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.vm-allergen-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 6px;
  padding: 6px 0;
}

.vm-allergen-item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 8px;
  border: 1px solid var(--an-border);
  background: var(--an-surface);
  transition: all 0.15s;
}
.waitry-dark-theme .vm-allergen-item {
  background: rgba(255, 255, 255, 0.02);
  border-color: rgba(255, 255, 255, 0.07);
}
.vm-allergen-item:hover {
  border-color: var(--an-border-hover, #d1d5db);
  background: var(--an-surface2, #fafafa);
}
.vm-allergen-item md-checkbox {
  margin: 0 !important;
}
.vm-allergen-item img {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
}
.vm-allergen-item span {
  font-size: 13px;
  font-weight: 500;
  color: var(--an-text);
}

.vm-variation-list .as-sortable-dragging {
  opacity: 0.9;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
  z-index: 100;
}
.vm-variation-list .as-sortable-placeholder {
  background: var(--an-primary-soft, rgba(236, 78, 54, 0.06));
  border: 2px dashed var(--an-primary);
  border-radius: 8px;
  min-height: 40px;
}

.vm-sidebar__list .as-sortable-dragging {
  opacity: 0.9;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
  z-index: 100;
}
.vm-sidebar__list .as-sortable-placeholder {
  background: var(--an-primary-soft, rgba(236, 78, 54, 0.06));
  border: 2px dashed var(--an-primary);
  border-radius: 8px;
  min-height: 40px;
}

@media (max-width: 1200px) {
  .vm-sidebar {
    width: 240px;
    min-width: 240px;
  }
}
@media (max-width: 960px) {
  .vm-page {
    flex-direction: column;
  }
  .vm-sidebar {
    width: 100%;
    min-width: 100%;
    max-height: 260px;
    border-right: none;
    border-bottom: 1px solid var(--an-border);
  }
  .vm-detail {
    padding: 12px;
  }
}
.ivf-dialog {
  width: 1080px;
  max-width: 94vw;
  height: min(820px, 90vh);
  max-height: 92vh;
  border-radius: var(--an-radius, 14px);
  overflow: hidden;
}
.ivf-dialog form {
  height: 100%;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.ivf-toolbar {
  flex-shrink: 0;
}
.ivf-toolbar .md-toolbar-tools {
  gap: 12px;
}

.ivf-header-icon {
  width: 38px;
  height: 38px;
  min-width: 38px;
  border-radius: 12px;
  background: var(--an-primary-soft, rgba(73, 127, 228, 0.08));
  display: flex;
  align-items: center;
  justify-content: center;
}
.ivf-header-icon md-icon {
  color: var(--an-primary) !important;
  font-size: 20px;
  width: 20px;
  height: 20px;
  min-width: 20px;
  min-height: 20px;
}

.ivf-header-titles {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
}
.ivf-header-titles .ivf-title {
  font-size: 16px;
  font-weight: 700;
  letter-spacing: -0.2px;
  margin: 0;
  line-height: 1.2;
}
.ivf-header-titles .ivf-subtitle {
  font-size: 12px;
  font-weight: 500;
  opacity: 0.75;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 480px;
}

.ivf-controls {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
  padding: 12px 24px;
  background: var(--an-surface, #fff);
  border-bottom: 1px solid var(--an-border);
  flex-shrink: 0;
}

.ivf-search {
  position: relative;
  flex: 1 1 220px;
  min-width: 180px;
  max-width: 340px;
}
.ivf-search > md-icon {
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 15px !important;
  width: 15px !important;
  height: 15px !important;
  min-width: 15px !important;
  min-height: 15px !important;
  color: var(--an-text-faint) !important;
  pointer-events: none;
}
.ivf-search input {
  width: 100%;
  height: 36px;
  padding: 0 32px 0 32px;
  border: 1.5px solid var(--an-border);
  border-radius: 10px;
  background: var(--an-surface2, #f3f4f6);
  color: var(--an-text);
  font-size: 13px;
  font-family: inherit;
  outline: none;
  transition: border-color 0.15s ease, background 0.15s ease;
}
.ivf-search input::placeholder {
  color: var(--an-placeholder);
}
.ivf-search input:focus {
  border-color: var(--an-primary);
  background: var(--an-surface);
}

.ivf-search-clear {
  position: absolute;
  right: 6px;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  border: none;
  border-radius: 50%;
  background: transparent;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}
.ivf-search-clear md-icon {
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  min-width: 14px !important;
  min-height: 14px !important;
  color: var(--an-text-muted) !important;
}
.ivf-search-clear:hover {
  background: var(--an-surface3, #e5e7eb);
}

.ivf-controls-toggles {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 18px;
  margin-left: auto;
}

.ivf-mini-switch {
  margin: 0;
  height: auto;
  max-width: 100%;
}
.ivf-mini-switch, .ivf-mini-switch .md-label {
  white-space: normal !important;
  word-break: break-word;
}
.ivf-mini-switch .md-label {
  font-size: 12.5px;
  font-weight: 600;
  color: var(--an-text-muted);
  line-height: 1.4;
  display: inline-flex !important;
  align-items: center;
  flex-wrap: nowrap;
  gap: 2px;
}

.ivf-help-icon {
  font-size: 15px !important;
  height: 15px !important;
  width: 15px !important;
  min-height: 15px !important;
  min-width: 15px !important;
  color: var(--an-text-muted, #9ca3af) !important;
  opacity: 0.6;
  margin-left: 6px;
  cursor: help;
  vertical-align: middle;
  transition: opacity 0.15s, color 0.15s;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
}
.ivf-help-icon:hover {
  opacity: 1;
  color: var(--an-primary, #ec4e36) !important;
}

.ivf-content-wrap {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  overflow: hidden !important;
  background: var(--an-bg, #f5f7fa);
}

.ivf-loading {
  padding: 60px 0;
}

.ivf-layout {
  display: flex;
  flex: 1;
  min-height: 0;
}

.ivf-sidebar {
  width: 290px;
  min-width: 240px;
  flex-shrink: 0;
  overflow-y: auto;
  padding: 10px;
  background: var(--an-surface, #fff);
  border-right: 1px solid var(--an-border);
}

.ivf-side-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 10px;
  border-radius: 10px;
  cursor: pointer;
  user-select: none;
  margin-bottom: 2px;
  transition: background 0.12s ease;
}
.ivf-side-item:hover {
  background: var(--an-bg-subtle, rgba(0, 0, 0, 0.03));
}
.ivf-side-item--active {
  background: var(--an-primary-soft, rgba(73, 127, 228, 0.07));
  box-shadow: inset 3px 0 0 var(--an-primary);
}
.ivf-side-item--active:hover {
  background: var(--an-primary-soft, rgba(73, 127, 228, 0.1));
}
.ivf-side-item--active .ivf-side-name {
  color: var(--an-primary);
}
.ivf-side-item--active .ivf-side-arrow {
  color: var(--an-primary) !important;
  opacity: 1;
}

.ivf-side-grip {
  cursor: grab;
  color: var(--an-text-faint) !important;
  opacity: 0.5;
  flex-shrink: 0;
  font-size: 15px !important;
  width: 15px !important;
  height: 15px !important;
  min-width: 15px !important;
  min-height: 15px !important;
}
.ivf-side-grip:hover {
  opacity: 1;
  color: var(--an-primary) !important;
}

.ivf-sidebar .as-sortable-item-dragged .ivf-side-item {
  background: var(--an-surface);
  box-shadow: var(--an-shadow-md);
  border-radius: 10px;
}
.ivf-sidebar .as-sortable-placeholder {
  border: 1.5px dashed var(--an-border-strong, rgba(0, 0, 0, 0.18));
  border-radius: 10px;
  background: var(--an-bg-subtle, rgba(0, 0, 0, 0.02));
  margin-bottom: 2px;
  height: 52px;
  min-height: 52px;
}

.as-sortable-item-dragged .ivf-side-item {
  background: var(--an-surface);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.14);
  border-radius: 10px;
  opacity: 0.96;
  pointer-events: none;
}

.ivf-side-check {
  margin: 0 !important;
  flex-shrink: 0;
}

.ivf-side-info {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
}

.ivf-side-name {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.ivf-side-dot {
  width: 7px;
  height: 7px;
  min-width: 7px;
  border-radius: 50%;
  background: var(--an-violet, #6c63ff);
  display: inline-block;
}

.ivf-side-count {
  font-size: 11px;
  font-weight: 500;
  color: var(--an-text-faint);
  margin-top: 1px;
}
.ivf-side-count--on {
  color: var(--an-primary);
  font-weight: 600;
}

.ivf-side-arrow {
  color: var(--an-text-faint) !important;
  opacity: 0.55;
  flex-shrink: 0;
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  min-height: 16px !important;
}

.ivf-detail {
  flex: 1;
  min-width: 0;
  overflow-y: auto;
  padding: 18px 22px 22px;
}
.ivf-detail--empty {
  display: flex;
  align-items: center;
  justify-content: center;
}

.ivf-detail-header {
  margin-bottom: 14px;
}

.ivf-detail-title-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.ivf-detail-titles {
  min-width: 0;
  display: flex;
  flex-direction: column;
}

.ivf-detail-name {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 17px;
  font-weight: 700;
  letter-spacing: -0.2px;
  color: var(--an-text);
}

.ivf-detail-sub {
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  color: var(--an-text-faint);
  margin-top: 3px;
}

.ivf-detail-use {
  margin: 2px 0 0 !important;
  flex-shrink: 0;
}
.ivf-detail-use .md-label {
  font-size: 12.5px;
  font-weight: 600;
  color: var(--an-text-muted);
  white-space: nowrap;
  display: inline-flex !important;
  align-items: center;
  gap: 2px;
}

.ivf-detail-body {
  min-width: 0;
}

.ivf-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 2px 8px;
  border-radius: 100px;
  font-size: 10.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.3px;
}
.ivf-badge md-icon {
  font-size: 11px !important;
  width: 11px !important;
  height: 11px !important;
  min-width: 11px !important;
  min-height: 11px !important;
  margin: 0 !important;
}
.ivf-badge--custom {
  background: var(--an-violet-soft, rgba(108, 99, 255, 0.08));
  color: var(--an-violet, #6c63ff);
}
.ivf-badge--custom md-icon {
  color: var(--an-violet, #6c63ff) !important;
}
.waitry-dark-theme .ivf-badge--custom {
  background: rgba(108, 99, 255, 0.18);
}

.ivf-group-desc {
  font-size: 12.5px;
  color: var(--an-text-muted);
  line-height: 1.5;
  margin: 8px 0 0;
}

.ivf-meta-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
  margin-bottom: 14px;
}

.ivf-chip--warn {
  background: var(--an-amber-soft, rgba(245, 158, 11, 0.08)) !important;
  border-color: rgba(245, 158, 11, 0.25) !important;
}
.ivf-chip--warn md-icon {
  color: var(--an-amber, #f59e0b) !important;
}
.ivf-chip--warn .vm-meta-chip__value {
  color: var(--an-amber, #f59e0b);
}

.ivf-customize-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-left: auto;
  padding: 5px 12px;
  border: 1.5px dashed var(--an-border-strong, rgba(0, 0, 0, 0.18));
  border-radius: 100px;
  background: transparent;
  color: var(--an-text-muted);
  font-size: 12px;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
  transition: all 0.15s ease;
  white-space: nowrap;
}
.ivf-customize-btn md-icon {
  font-size: 13px !important;
  width: 13px !important;
  height: 13px !important;
  min-width: 13px !important;
  min-height: 13px !important;
  color: inherit !important;
}
.ivf-customize-btn:hover {
  border-color: var(--an-primary);
  color: var(--an-primary);
  background: var(--an-primary-soft, rgba(73, 127, 228, 0.06));
}

.ivf-edit-panel {
  background: var(--an-surface, #fff);
  border: 1px solid var(--an-border);
  border-radius: 10px;
  padding: 14px 16px 10px;
  margin-bottom: 14px;
}
.waitry-dark-theme .ivf-edit-panel {
  background: rgba(255, 255, 255, 0.03);
}
.ivf-edit-panel md-input-container {
  margin: 0 0 4px;
}

.ivf-edit-title {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  color: var(--an-text-muted);
  margin-bottom: 10px;
}
.ivf-edit-title md-icon {
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  min-width: 14px !important;
  min-height: 14px !important;
  color: var(--an-violet, #6c63ff) !important;
}

.ivf-edit-switches {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(290px, 1fr));
  gap: 8px 20px;
  padding: 6px 0;
}

.ivf-edit-limits {
  display: flex;
  gap: 16px;
  margin-top: 6px;
}
.ivf-edit-limits md-input-container {
  flex: 0 1 140px;
}

.ivf-edit-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-top: 8px;
  padding-top: 10px;
  border-top: 1px solid var(--an-border-light, rgba(0, 0, 0, 0.05));
}

.ivf-text-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  border: none;
  background: transparent;
  padding: 4px 10px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  font-family: inherit;
  color: var(--an-text-muted);
  cursor: pointer;
  transition: all 0.15s ease;
  white-space: nowrap;
}
.ivf-text-btn md-icon {
  font-size: 13px !important;
  width: 13px !important;
  height: 13px !important;
  min-width: 13px !important;
  min-height: 13px !important;
  color: inherit !important;
}
.ivf-text-btn:hover {
  background: var(--an-bg-subtle, rgba(0, 0, 0, 0.04));
  color: var(--an-text);
}
.ivf-text-btn--primary {
  color: var(--an-primary);
}
.ivf-text-btn--primary:hover {
  background: var(--an-primary-soft, rgba(73, 127, 228, 0.08));
  color: var(--an-primary);
}
.ivf-text-btn--danger {
  color: #ef4444;
}
.ivf-text-btn--danger:hover {
  background: rgba(239, 68, 68, 0.08);
  color: #ef4444;
}

.ivf-options-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
}

.ivf-options-title {
  font-size: 11.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
}

.ivf-options-count {
  font-weight: 600;
  color: var(--an-text-faint);
  text-transform: none;
  letter-spacing: 0;
  margin-left: 4px;
}

.ivf-options-bulk {
  display: flex;
  align-items: center;
  gap: 4px;
}

.ivf-option-grip {
  cursor: grab;
  color: var(--an-text-secondary, #6b7280) !important;
  opacity: 0.55;
  flex-shrink: 0;
  font-size: 15px !important;
  width: 15px !important;
  height: 15px !important;
  min-width: 15px !important;
  min-height: 15px !important;
  transition: opacity 0.15s ease, color 0.15s ease;
}
.ivf-option-grip:hover {
  opacity: 1;
  color: var(--an-primary) !important;
}

.ivf-option {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 7px 12px;
  border: 1.5px solid var(--an-border-light, rgba(0, 0, 0, 0.05));
  border-radius: 10px;
  background: var(--an-surface, #fff);
  margin-bottom: 6px;
  transition: border-color 0.15s ease, background 0.15s ease;
}
.ivf-option:hover {
  border-color: var(--an-border-strong, rgba(0, 0, 0, 0.18));
}
.ivf-option:hover .ivf-option-grip {
  opacity: 0.75;
}
.ivf-option--on {
  border-color: rgba(var(--an-primary-rgb, 73, 127, 228), 0.35);
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.025);
}
.ivf-option .ivf-option-check {
  flex: 1;
  min-width: 0;
  margin: 0 !important;
}
.ivf-option .ivf-option-check .md-label {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.ivf-option-avatar {
  width: 28px;
  height: 28px;
  min-width: 28px;
  border-radius: 8px;
  object-fit: cover;
  border: 1px solid var(--an-border-light, rgba(0, 0, 0, 0.05));
  background: var(--an-surface2, #f3f4f6);
}

.ivf-option-name {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.ivf-option-sub {
  font-size: 11px;
  color: var(--an-text-faint);
  white-space: nowrap;
}

.ivf-option-link,
.ivf-option-hidden {
  font-size: 13px !important;
  width: 13px !important;
  height: 13px !important;
  min-width: 13px !important;
  min-height: 13px !important;
  margin: 0 !important;
  flex-shrink: 0;
}

.ivf-option-link {
  color: var(--an-primary) !important;
}

.ivf-option-hidden {
  color: var(--an-text-faint) !important;
}

.ivf-option-ref {
  font-size: 11px;
  font-style: italic;
  color: var(--an-text-faint);
  white-space: nowrap;
  flex-shrink: 0;
}

.ivf-option-price {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
  transition: opacity 0.15s ease;
}
.ivf-option-price--off {
  opacity: 0.45;
}
.ivf-option-price .ivf-option-price-symbol {
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text-faint);
}
.ivf-option-price input {
  width: 88px;
  height: 32px;
  padding: 0 10px;
  border: 1.5px solid var(--an-border);
  border-radius: 8px;
  background: var(--an-surface2, #f8fafc);
  color: var(--an-text);
  font-size: 13px;
  font-weight: 600;
  font-family: inherit;
  text-align: right;
  outline: none;
  transition: border-color 0.15s ease, background 0.15s ease;
}
.ivf-option-price input:focus {
  border-color: var(--an-primary);
  background: var(--an-surface);
}
.ivf-option-price input:disabled {
  cursor: not-allowed;
}
.ivf-option-price input {
  appearance: textfield;
  -moz-appearance: textfield;
}
.ivf-option-price input::-webkit-outer-spin-button, .ivf-option-price input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.ivf-actions {
  border-top: 1px solid var(--an-border);
  padding: 10px 24px !important;
  align-items: center;
  flex-shrink: 0;
}

.ivf-summary {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 12.5px;
  font-weight: 600;
  color: var(--an-text-muted);
}
.ivf-summary md-icon {
  font-size: 15px !important;
  width: 15px !important;
  height: 15px !important;
  min-width: 15px !important;
  min-height: 15px !important;
  color: var(--an-emerald, #10b981) !important;
}

@media (max-width: 700px) {
  .ivf-dialog {
    width: 100vw;
    max-width: 100vw;
    height: 96vh;
    max-height: 96vh;
  }
  .ivf-controls-toggles {
    margin-left: 0;
    width: 100%;
    justify-content: space-between;
    gap: 10px;
  }
  .ivf-layout {
    flex-direction: column;
  }
  .ivf-sidebar {
    width: 100%;
    min-width: 100%;
    max-height: 200px;
    border-right: none;
    border-bottom: 1px solid var(--an-border);
  }
  .ivf-detail {
    padding: 14px 12px 16px;
  }
  .ivf-detail-title-row {
    flex-wrap: wrap;
  }
  .ivf-option {
    flex-wrap: wrap;
  }
  .ivf-option .ivf-option-check {
    flex: 1 1 100%;
  }
  .ivf-option .ivf-option-ref {
    order: 3;
  }
  .ivf-option .ivf-option-price {
    margin-left: auto;
  }
  .ivf-meta-row .ivf-customize-btn {
    margin-left: 0;
    width: 100%;
    justify-content: center;
  }
  .ivf-edit-limits {
    flex-wrap: wrap;
  }
  .ivf-summary {
    display: none;
  }
}
.ivf-copy-panel {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 10px 24px 14px;
  border-bottom: 1px solid var(--an-border);
  background: var(--an-surface2, #f8fafc);
}
.ivf-copy-panel md-autocomplete {
  min-height: 36px;
}

.ivf-copy-actions {
  display: flex;
  align-items: center;
  gap: 6px;
}

.cvb-controls .ivf-search {
  flex: 1;
}

.cvb-layout .ivf-sidebar {
  display: flex;
  flex-direction: column;
}

.cvb-side-item.ivf-side-item--inuse .ivf-side-name {
  color: var(--an-primary);
}

.cvb-copy-footer {
  margin-top: auto;
  padding: 10px 12px;
  border-top: 1px solid var(--an-border);
}

.cvb-copy-panel {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-top: 8px;
}

.cvb-copy-hint {
  font-size: 11px;
  color: var(--an-text-faint);
  margin: 0;
}

.cvb-group-shortcuts {
  display: flex;
  gap: 4px;
  margin-bottom: 12px;
}

.cvb-options-table {
  border: 1.5px solid var(--an-border-light, rgba(0, 0, 0, 0.05));
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 16px;
}

.cvb-options-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 60px 232px minmax(76px, 100px);
  gap: 8px;
  padding: 7px 12px;
  border-bottom: 1px solid var(--an-border);
  font-size: 10.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-faint);
}

.cvb-options-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 60px 232px minmax(76px, 100px);
  gap: 8px;
  align-items: center;
  padding: 8px 12px;
  border-bottom: 1px solid var(--an-border-light, rgba(0, 0, 0, 0.05));
  font-size: 13px;
}
.cvb-options-row:last-child {
  border-bottom: none;
}

.cvb-option-name {
  font-weight: 600;
  color: var(--an-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.cvb-option-usage {
  font-size: 12px;
  color: var(--an-text-faint);
}

.cvb-option-pills {
  display: inline-flex;
  border: 1px solid var(--an-border);
  border-radius: 999px;
  overflow: hidden;
  width: fit-content;
  max-width: 100%;
}

.cvb-option-price input {
  width: 100%;
  max-width: 84px;
  height: 30px;
  padding: 0 8px;
  border: 1.5px solid var(--an-border);
  border-radius: 8px;
  background: var(--an-surface2, #f8fafc);
  color: var(--an-text);
  font-size: 12.5px;
  font-weight: 600;
  font-family: inherit;
  text-align: right;
  outline: none;
}
.cvb-option-price input:focus {
  border-color: var(--an-primary);
  background: var(--an-surface);
}
.cvb-option-price input:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

.cvb-pill {
  border: none;
  background: transparent;
  padding: 4px 9px;
  font-size: 11px;
  font-weight: 600;
  font-family: inherit;
  color: var(--an-text-muted);
  cursor: pointer;
  white-space: nowrap;
  transition: background 0.15s ease, color 0.15s ease;
}
.cvb-pill + .cvb-pill {
  border-left: 1px solid var(--an-border);
}
.cvb-pill--active {
  background: rgba(var(--an-primary-rgb, 73, 127, 228), 0.12);
  color: var(--an-primary);
}
.cvb-pill--danger.cvb-pill--active {
  background: rgba(239, 68, 68, 0.12);
  color: #ef4444;
}

.cvb-config-block {
  border: 1.5px solid var(--an-border-light, rgba(0, 0, 0, 0.05));
  border-radius: 10px;
  padding: 12px;
  background: var(--an-surface2, #f8fafc);
}

.cvb-config-head {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12.5px;
  font-weight: 700;
  color: var(--an-text);
  margin-bottom: 8px;
}
.cvb-config-head md-icon {
  font-size: 15px !important;
  width: 15px !important;
  height: 15px !important;
  min-width: 15px !important;
  min-height: 15px !important;
}

.cvb-config-modes {
  display: inline-flex;
  border: 1px solid var(--an-border);
  border-radius: 999px;
  overflow: hidden;
  margin-bottom: 4px;
}

.cvb-preview {
  padding: 4px 4px 12px;
}

.cvb-preview-intro {
  font-size: 13px;
  color: var(--an-text-muted);
  margin: 0 0 14px;
}

.cvb-preview-line {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 12px;
  border: 1.5px solid var(--an-border-light, rgba(0, 0, 0, 0.05));
  border-radius: 10px;
  margin-bottom: 6px;
  font-size: 13px;
}

.cvb-preview-group {
  font-weight: 600;
  color: var(--an-text);
  flex: 1;
  min-width: 0;
}

.cvb-preview-add {
  color: var(--an-emerald, #10b981);
  font-weight: 600;
  font-size: 12px;
}

.cvb-preview-remove {
  color: #ef4444;
  font-weight: 600;
  font-size: 12px;
}

.cvb-preview-config {
  font-size: 11px;
  color: var(--an-text-faint);
  padding: 2px 8px;
  border-radius: 999px;
  background: var(--an-surface2, #f8fafc);
}

.cvb-preview-empty {
  font-size: 13px;
  color: var(--an-text-faint);
  text-align: center;
  padding: 24px 0;
}

.cvb-done {
  text-align: center;
  padding: 24px 12px;
}
.cvb-done .vm-empty-icon-wrap md-icon {
  color: var(--an-emerald, #10b981) !important;
}

.cvb-done-title {
  font-size: 14px;
  color: var(--an-text);
  margin: 12px 0 16px;
}

.cvb-results {
  max-width: 420px;
  margin: 0 auto;
  text-align: left;
}

.cvb-result-row {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 10px;
  border-radius: 8px;
  font-size: 12.5px;
  margin-bottom: 4px;
}
.cvb-result-row--error {
  background: rgba(239, 68, 68, 0.08);
  color: #ef4444;
}
.cvb-result-row--error md-icon {
  font-size: 15px !important;
  width: 15px !important;
  height: 15px !important;
  min-width: 15px !important;
  min-height: 15px !important;
  color: #ef4444 !important;
}

.cvb-skipped {
  font-size: 12px;
  color: var(--an-text-faint);
  text-align: center;
  margin-top: 8px;
}

.cvb-replace-toggle {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12.5px;
  font-weight: 600;
  color: #ef4444;
  cursor: pointer;
}
.cvb-replace-toggle md-checkbox {
  margin: 0 !important;
}

.cvb-replace-confirm {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12.5px;
  font-weight: 600;
  color: #ef4444;
}

@media (max-width: 700px) {
  .cvb-options-head {
    display: none;
  }
  .cvb-options-row {
    grid-template-columns: 1fr;
    gap: 4px;
  }
  .cvb-options-row .cvb-option-usage,
  .cvb-options-row .cvb-option-pills,
  .cvb-options-row .cvb-option-price {
    justify-self: start;
  }
}
@media (max-width: 599px) {
  .vm-detail-card__title-row {
    flex-wrap: wrap;
    row-gap: 8px;
  }
  .vm-detail-card__actions {
    flex: 1 1 100%;
    justify-content: flex-end;
  }
  .vm-detail {
    padding: 12px !important;
  }
}
/* ─────────────────────────────────────────────────────────────────────────
   Waitry · Image Uploader — v2 (Compact + Usable)
   Two patterns:
     1. Avatar/Logo  → compact circle + pick button row
     2. Banner/Image → full-width zone, FIXED px height (not aspect-ratio)
   Crop is always a SEPARATE element below, never absolute inside the zone.
   ─────────────────────────────────────────────────────────────────────────

   Save UX: each card has a contextual save chip in the HEADER (not footer).
   It appears only when hasPending() is true → no two big save CTAs.
   ─────────────────────────────────────────────────────────────────────────
*/
/* ── Drawer dialog ────────────────────────────────────────────────────── */
/* ── Studio body ──────────────────────────────────────────────────────── */
/* ── Card shell ───────────────────────────────────────────────────────── */
/* ── Card header ──────────────────────────────────────────────────────── */
/* ── Contextual save chip (in header, only when pending) ─────────────── */
/* ── Card body / footer ───────────────────────────────────────────────── */
/* Single dialog close footer ─────────────────────────────────────────── */
/* ══════════════════════════════════════════════════════════════════════════
   1. AVATAR / LOGO — compact inline layout
   ══════════════════════════════════════════════════════════════════════════ */
.wf-avatar-uploader {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 4px 0;
}

/* The circle */
.wf-avatar-uploader__circle {
  width: 84px;
  height: 84px;
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
  position: relative;
  cursor: pointer;
  border: 2px dashed rgba(0, 0, 0, 0.14);
  background: var(--an-bg-subtle, #f4f4f5);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: border-color 0.2s ease, background 0.2s ease;
}
.waitry-dark-theme .wf-avatar-uploader__circle {
  border-color: var(--an-border-strong);
}
.wf-avatar-uploader__circle img,
.wf-avatar-uploader__circle video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}
.wf-avatar-uploader__circle {
  /* Empty icon */
}
.wf-avatar-uploader__circle .wf-avatar-icon {
  font-size: 32px;
  width: 32px;
  height: 32px;
  color: rgba(0, 0, 0, 0.18);
  transition: color 0.2s ease;
}
.waitry-dark-theme .wf-avatar-uploader__circle .wf-avatar-icon {
  color: var(--an-text-faint);
}
.wf-avatar-uploader__circle {
  /* When has image: no dashed border */
}
.wf-avatar-uploader__circle.has-content {
  border: none;
  background: transparent;
}
.wf-avatar-uploader__circle {
  /* Hover overlay */
}
.wf-avatar-uploader__circle .wf-avatar-overlay {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.42);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.2s ease;
  gap: 2px;
}
.wf-avatar-uploader__circle .wf-avatar-overlay md-icon {
  font-size: 20px;
  width: 20px;
  height: 20px;
  color: #fff;
}
.wf-avatar-uploader__circle .wf-avatar-overlay span {
  font-size: 10px;
  font-weight: 600;
  color: #fff;
}
.wf-avatar-uploader__circle:hover {
  border-color: var(--an-primary, #e53935);
}
.wf-avatar-uploader__circle:hover .wf-avatar-overlay {
  opacity: 1;
}
.wf-avatar-uploader__circle:hover .wf-avatar-icon {
  color: var(--an-primary, #e53935);
}
.wf-avatar-uploader__circle.has-content:hover .wf-avatar-overlay {
  opacity: 1;
}

/* Actions column next to circle */
.wf-avatar-uploader__actions {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
}
.wf-avatar-uploader__actions .md-button {
  margin: 0;
}
.wf-avatar-uploader__actions .md-button md-icon {
  margin-right: 6px;
  font-size: 16px;
  width: 16px;
  height: 16px;
}

.wf-avatar-uploader__hint {
  font-size: 11px;
  color: var(--an-text-muted, #aaa);
  line-height: 1.5;
  margin: 0;
}

.wf-avatar-uploader__delete {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  color: var(--an-error, #c62828);
  cursor: pointer;
  text-decoration: none;
}
.waitry-dark-theme .wf-avatar-uploader__delete {
  color: var(--an-rose);
}
.wf-avatar-uploader__delete md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  color: var(--an-error, #c62828);
}
.waitry-dark-theme .wf-avatar-uploader__delete md-icon {
  color: var(--an-rose);
}
.wf-avatar-uploader__delete:hover {
  text-decoration: underline;
}

/* ══════════════════════════════════════════════════════════════════════════
   2. IMAGE ZONE — for banner / TV logo / portrait
   Fixed-height full-width zones. NO absolute children. Clean state swap.
   ══════════════════════════════════════════════════════════════════════════ */
/* ── Empty state ──────────────────────────────────────────────────────── */
/* ── Crop area ────────────────────────────────────────────────────────── */
.wf-img-crop {
  width: 100%;
  min-height: 220px;
  background: var(--an-bg-muted, #e0e0e0);
  border-radius: 12px;
  overflow: hidden;
}
.waitry-dark-theme .wf-img-crop {
  background: var(--an-surface3);
}
.wf-img-crop img-crop,
.wf-img-crop .cropArea {
  width: 100%;
  min-height: 220px;
  display: block;
}

/* Crop control bar */
/* ── <waitry-crop> — embeddable canvas cropper (img-crop replacement) ──
   Reuses the iis-* stage/controls styles; this block only adapts them to
   inline hosts (.wf-img-crop containers, form sections). */
waitry-crop {
  display: block;
}
waitry-crop .wcrop__stage {
  height: clamp(220px, 38vh, 360px);
  border-radius: 12px;
}
waitry-crop .wcrop__controls {
  padding: 8px 6px 6px;
}

/* ── imgCropDialog — the shared one-step crop dialog ───────────────────
   Same shell as every other wf-dialog; the editor inside is <waitry-crop>. */
.img-crop-dialog {
  width: 560px;
  max-width: 92vw;
  height: auto;
  min-height: 0;
  max-height: 92vh;
}
.img-crop-dialog__content {
  padding: 20px;
}
.img-crop-dialog__note {
  margin: 4px 0 0;
  text-align: center;
  font-size: 11px;
  color: var(--an-text-faint, #9CA3AF);
}

/* ── Error block ──────────────────────────────────────────────────────── */
.wf-media-error {
  font-size: 12px;
  color: var(--an-error, #d32f2f);
  padding: 6px 10px;
  background: rgba(211, 47, 47, 0.06);
  border-radius: 8px;
  border-left: 3px solid var(--an-error, #d32f2f);
}
.waitry-dark-theme .wf-media-error {
  color: var(--an-rose);
  border-left-color: var(--an-rose);
}

/* ── Video processing ─────────────────────────────────────────────────── */
.wf-media-processing {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 40px 24px;
  color: var(--an-text-muted, #888);
  font-size: 13px;
  text-align: center;
}

/* ══════════════════════════════════════════════════════════════════════════
   3. CmsWeb carousel grid
   ══════════════════════════════════════════════════════════════════════════ */
.wf-media-carousel-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(88px, 1fr));
  gap: 10px;
  margin-top: 4px;
}

.wf-media-carousel-thumb {
  position: relative;
  border-radius: 10px;
  overflow: hidden;
  aspect-ratio: 1;
  background: var(--an-bg-subtle, #f4f4f5);
  border: 1px solid var(--an-border, rgba(0, 0, 0, 0.1));
  cursor: pointer;
}
.wf-media-carousel-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.wf-media-carousel-thumb .wf-media-preview__delete {
  position: absolute;
  top: 4px;
  right: 4px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.55);
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  cursor: pointer;
  transition: opacity 0.2s ease;
}
.wf-media-carousel-thumb .wf-media-preview__delete md-icon {
  font-size: 12px;
  width: 12px;
  height: 12px;
  color: #fff;
}
.wf-media-carousel-thumb .wf-media-preview__delete:hover {
  background: rgba(211, 47, 47, 0.85);
}
.wf-media-carousel-thumb:hover .wf-media-preview__delete,
.wf-media-carousel-thumb .wf-media-preview__delete:focus-visible {
  opacity: 1;
}

.wf-media-carousel-add {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  border-radius: 10px;
  border: 2px dashed rgba(0, 0, 0, 0.14);
  aspect-ratio: 1;
  cursor: pointer;
  color: #aaa;
  font-size: 11px;
  font-weight: 500;
  transition: border-color 0.2s ease, background 0.2s ease, color 0.2s ease;
  user-select: none;
}
.waitry-dark-theme .wf-media-carousel-add {
  border-color: var(--an-border-strong);
  color: var(--an-text-faint);
}
.wf-media-carousel-add md-icon {
  font-size: 22px;
  width: 22px;
  height: 22px;
  color: #aaa;
  transition: color 0.2s ease;
}
.waitry-dark-theme .wf-media-carousel-add md-icon {
  color: var(--an-text-faint);
}
.wf-media-carousel-add:hover {
  border-color: var(--an-primary, #e53935);
  background: rgba(229, 57, 53, 0.04);
  color: var(--an-primary, #e53935);
}
.wf-media-carousel-add:hover md-icon {
  color: var(--an-primary, #e53935);
}

/* ══════════════════════════════════════════════════════════════════════════
   4. Item Image Studio (iis-*) — the product image edit dialog
   (itemImgForm.html). Master-detail: slot rail on the left, one large
   stage (preview / canvas crop editor) on the right.
   ══════════════════════════════════════════════════════════════════════════ */
.iis-dialog.iis-dialog {
  width: 980px;
  max-width: 96vw;
  height: auto;
  min-height: 0;
  max-height: 94vh;
}

.iis-inline {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 14px;
  padding: 10px 12px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface2);
}
.iis-inline__thumb {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 40px;
  border-radius: var(--an-radius-xs);
  background: var(--an-surface);
  overflow: hidden;
}
.iis-inline__thumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.iis-inline__thumb md-icon {
  color: var(--an-text-faint) !important;
}
.iis-inline--portrait .iis-inline__thumb {
  width: 36px;
  height: 64px;
}
.iis-inline__text {
  flex: 1 1 auto;
  min-width: 0;
}
.iis-inline__title {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
}
.iis-inline__hint {
  font-size: 12px;
  color: var(--an-text-muted);
}
.iis-inline__pending {
  color: var(--an-rose);
  font-weight: 600;
}
.iis-inline__change.md-button {
  margin: 0;
  text-transform: none;
  font-weight: 600;
}

.iis-gallery {
  margin-bottom: 14px;
  padding: 12px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface2);
}
.iis-gallery__head {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 10px;
}
.iis-gallery__count {
  flex: 0 0 auto;
  padding: 2px 10px;
  border-radius: var(--an-radius-pill);
  background: var(--an-surface);
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text-muted);
}
.iis-gallery .wf-media-carousel-add {
  border-color: var(--an-border-strong);
  color: var(--an-text-muted);
}
.iis-gallery .wf-media-carousel-add md-icon {
  color: var(--an-text-muted);
}
.iis-gallery .wf-media-carousel-add:hover {
  border-color: var(--an-rose);
  background: var(--an-rose-soft);
  color: var(--an-rose);
}
.iis-gallery .wf-media-carousel-add:hover md-icon {
  color: var(--an-rose);
}

.iis-dialog.iis-dialog.iis-dialog--single {
  width: 620px;
}

.iis-single-meta {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin: 0 0 12px;
}
.iis-single-meta strong {
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text);
}
.iis-single-meta small {
  font-size: 12px;
  color: var(--an-text-muted);
}

.iis-content {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  gap: 0;
  padding: 0;
  min-height: 0;
}
@media (max-width: 760px) {
  .iis-content {
    flex-direction: column;
    min-height: 0;
  }
}

/* ── Slot rail ────────────────────────────────────────────────────────── */
.iis-rail {
  flex: 0 0 248px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 18px 16px;
  border-right: 1px solid var(--an-border, #e5e7eb);
  background: var(--an-bg-subtle, #f9fafb);
}
.waitry-dark-theme .iis-rail {
  border-right-color: var(--an-border, #374151);
  background: rgba(255, 255, 255, 0.02);
}
@media (max-width: 760px) {
  .iis-rail {
    flex: 0 0 auto;
    flex-direction: row;
    overflow-x: auto;
    border-right: none;
    border-bottom: 1px solid var(--an-border, #e5e7eb);
    padding: 12px 14px;
  }
  .waitry-dark-theme .iis-rail {
    border-bottom-color: var(--an-border, #374151);
  }
}

.iis-slot {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  border: 1px solid var(--an-border, #e5e7eb);
  border-radius: 14px;
  background: var(--an-surface, #fff);
  font: inherit;
  text-align: left;
  cursor: pointer;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}
.iis-slot:hover {
  border-color: var(--an-primary, #6366f1);
}
.iis-slot--active {
  border-color: var(--an-primary, #6366f1);
  box-shadow: 0 0 0 1px var(--an-primary, #6366f1), 0 4px 14px rgba(var(--an-primary-rgb, 99, 102, 241), 0.14);
}
.iis-slot--over {
  border-style: dashed;
  border-color: var(--an-primary, #6366f1);
  background: rgba(var(--an-primary-rgb, 99, 102, 241), 0.06);
}
@media (max-width: 760px) {
  .iis-slot {
    flex: 0 0 auto;
  }
}
.waitry-dark-theme .iis-slot {
  border-color: var(--an-border, #374151);
  background: rgba(255, 255, 255, 0.04);
}
.waitry-dark-theme .iis-slot--active {
  border-color: var(--an-primary, #818cf8);
  box-shadow: 0 0 0 1px var(--an-primary, #818cf8);
}

.iis-slot__thumb {
  flex: 0 0 auto;
  width: 64px;
  height: 40px;
  border-radius: 8px;
  overflow: hidden;
  background: linear-gradient(45deg, rgba(0, 0, 0, 0.045) 25%, transparent 25%, transparent 75%, rgba(0, 0, 0, 0.045) 75%), linear-gradient(45deg, rgba(0, 0, 0, 0.045) 25%, transparent 25%, transparent 75%, rgba(0, 0, 0, 0.045) 75%);
  background-size: 12px 12px;
  background-position: 0 0, 6px 6px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.iis-slot__thumb--circle {
  width: 44px;
  height: 44px;
  border-radius: 50%;
}
.iis-slot__thumb img, .iis-slot__thumb video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.iis-slot__thumb md-icon {
  font-size: 18px;
  width: 18px;
  height: 18px;
  min-width: 18px;
  color: var(--an-text-secondary, #9ca3af);
}
.waitry-dark-theme .iis-slot__thumb {
  background: linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%), linear-gradient(45deg, rgba(255, 255, 255, 0.05) 25%, transparent 25%, transparent 75%, rgba(255, 255, 255, 0.05) 75%);
  background-size: 12px 12px;
  background-position: 0 0, 6px 6px;
}

.iis-slot__meta {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.iis-slot__meta strong {
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: 0.2px;
  color: var(--an-text, #111827);
}
.waitry-dark-theme .iis-slot__meta strong {
  color: var(--an-text, #f9fafb);
}
.iis-slot__meta small {
  font-size: 10.5px;
  color: var(--an-text-secondary, #6b7280);
  white-space: nowrap;
}

/* Unsaved-work dot */
.iis-slot__dot {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--an-warning, #f59e0b);
  box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.22);
}

.iis-rail__hint {
  margin: auto 2px 0;
  font-size: 11px;
  line-height: 1.55;
  color: var(--an-text-secondary, #9ca3af);
}
@media (max-width: 760px) {
  .iis-rail__hint {
    display: none;
  }
}

/* ── Stage column ─────────────────────────────────────────────────────── */
.iis-main {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 18px 22px 16px;
  border-radius: 0;
  transition: background 0.15s ease;
}
.iis-main--over {
  background: rgba(var(--an-primary-rgb, 99, 102, 241), 0.05);
  box-shadow: inset 0 0 0 2px var(--an-primary, #6366f1);
  border-radius: 0 0 0 0;
}

.iis-processing {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 12px;
  border-radius: 10px;
  font-size: 12.5px;
  color: var(--an-primary, #6366f1);
  background: rgba(var(--an-primary-rgb, 99, 102, 241), 0.08);
}

/* ── Crop editor ──────────────────────────────────────────────────────── */
.iis-editor {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.iis-stage {
  position: relative;
  height: clamp(240px, 44vh, 400px);
  border-radius: 16px;
  overflow: hidden;
  outline: none;
  background: #0f1117;
}
.iis-stage:focus-visible {
  box-shadow: 0 0 0 2px var(--an-primary, #6366f1);
}
@media (max-width: 760px) {
  .iis-stage {
    height: 300px;
  }
}

.w-cropper-canvas {
  display: block;
  cursor: grab;
}
.w-cropper-canvas:active {
  cursor: grabbing;
}

.iis-editor__controls {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 4px;
}
.iis-editor__controls > md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  min-width: 15px;
  color: var(--an-text-secondary, #9ca3af);
}

.iis-editor__sep {
  width: 1px;
  height: 20px;
  background: var(--an-border, #e5e7eb);
  margin: 0 2px;
}
.waitry-dark-theme .iis-editor__sep {
  background: var(--an-border, #374151);
}

/* Modern flat range slider */
.iis-zoom {
  -webkit-appearance: none;
  appearance: none;
  flex: 1 1 auto;
  max-width: 300px;
  height: 28px;
  background: transparent;
  outline: none;
  cursor: pointer;
}
.iis-zoom::-webkit-slider-runnable-track {
  height: 4px;
  border-radius: 999px;
  background: var(--an-border, #e5e7eb);
}
.iis-zoom::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 16px;
  height: 16px;
  margin-top: -6px;
  border-radius: 50%;
  background: var(--an-primary, #6366f1);
  border: 2.5px solid #fff;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.25);
  transition: transform 0.12s ease;
}
.iis-zoom::-webkit-slider-thumb:hover {
  transform: scale(1.15);
}
.iis-zoom::-moz-range-track {
  height: 4px;
  border-radius: 999px;
  background: var(--an-border, #e5e7eb);
}
.iis-zoom::-moz-range-thumb {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: var(--an-primary, #6366f1);
  border: 2.5px solid #fff;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.25);
}
.waitry-dark-theme .iis-zoom::-webkit-slider-runnable-track {
  background: var(--an-border, #374151);
}
.waitry-dark-theme .iis-zoom::-moz-range-track {
  background: var(--an-border, #374151);
}

.iis-tool {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border: 1px solid var(--an-border, #e5e7eb);
  border-radius: 9px;
  background: var(--an-surface, #fff);
  cursor: pointer;
  transition: border-color 0.15s ease, color 0.15s ease;
}
.iis-tool md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  min-width: 15px;
  color: var(--an-text-secondary, #6b7280);
}
.iis-tool:hover {
  border-color: var(--an-primary, #6366f1);
}
.iis-tool:hover md-icon {
  color: var(--an-primary, #6366f1);
}
.waitry-dark-theme .iis-tool {
  border-color: var(--an-border, #374151);
  background: rgba(255, 255, 255, 0.04);
}

.iis-editor__hint {
  margin: 0;
  font-size: 11.5px;
  color: var(--an-text-secondary, #9ca3af);
}

/* ── GIF / video ready preview ────────────────────────────────────────── */
.iis-media-preview {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: clamp(220px, 38vh, 340px);
  border-radius: 16px;
  background: var(--an-surface-100, #f3f4f6);
  padding: 18px;
}
.iis-media-preview img, .iis-media-preview video {
  max-width: 100%;
  max-height: 340px;
  border-radius: 12px;
  display: block;
}
.iis-media-preview .iis-media--circle {
  width: 220px;
  height: 220px;
  object-fit: cover;
  border-radius: 50%;
}
.waitry-dark-theme .iis-media-preview {
  background: rgba(255, 255, 255, 0.04);
}

/* ── Current image / empty dropzone ───────────────────────────────────── */
.iis-current {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1 1 auto;
  min-height: clamp(220px, 38vh, 340px);
}

.iis-current__frame {
  position: relative;
  max-width: 100%;
  border-radius: 16px;
  overflow: hidden;
  cursor: pointer;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
}
.iis-current__frame img {
  display: block;
  max-width: 100%;
  max-height: 340px;
}
.iis-current__frame--circle {
  border-radius: 50%;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.16);
}
.iis-current__frame--circle img {
  width: 240px;
  height: 240px;
  object-fit: cover;
}
.iis-current__frame .iis-current__overlay {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  background: rgba(0, 0, 0, 0.45);
  opacity: 0;
  transition: opacity 0.15s ease;
}
.iis-current__frame .iis-current__overlay md-icon {
  font-size: 22px;
  width: 22px;
  height: 22px;
  min-width: 22px;
  color: #fff !important;
}
.iis-current__frame .iis-current__overlay span {
  font-size: 12px;
  font-weight: 600;
  color: #fff;
}
.iis-current__frame:hover .iis-current__overlay {
  opacity: 1;
}
.iis-current__frame .iis-current__delete {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 30px;
  height: 30px;
  border: none;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.55);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  opacity: 0;
  transition: opacity 0.15s ease, background 0.15s ease;
  z-index: 3;
}
.iis-current__frame .iis-current__delete md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  min-width: 14px;
  color: #fff !important;
}
.iis-current__frame .iis-current__delete:hover {
  background: var(--an-danger, #ef4444);
}
.iis-current__frame--circle .iis-current__delete {
  top: 16px;
  right: 16px;
}
.iis-current__frame:hover .iis-current__delete {
  opacity: 1;
}

.iis-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  min-height: clamp(220px, 38vh, 340px);
  border: 2px dashed var(--an-border, #d1d5db);
  border-radius: 16px;
  padding: 24px;
  text-align: center;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease;
}
.iis-empty md-icon {
  font-size: 34px;
  width: 34px;
  height: 34px;
  min-width: 34px;
  color: var(--an-text-secondary, #9ca3af);
  transition: color 0.15s ease, transform 0.15s ease;
}
.iis-empty strong {
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text, #374151);
}
.waitry-dark-theme .iis-empty strong {
  color: var(--an-text, #e5e7eb);
}
.iis-empty span {
  font-size: 12px;
  color: var(--an-text-secondary, #6b7280);
  max-width: 340px;
  line-height: 1.5;
}
.iis-empty:hover {
  border-color: var(--an-primary, #6366f1);
  background: rgba(var(--an-primary-rgb, 99, 102, 241), 0.04);
}
.iis-empty:hover md-icon {
  color: var(--an-primary, #6366f1);
  transform: translateY(-2px);
}
.waitry-dark-theme .iis-empty {
  border-color: var(--an-border, #374151);
}

/* ── Action pills ─────────────────────────────────────────────────────── */
.iis-actions-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.iis-action {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  border: 1px solid var(--an-border, #e5e7eb);
  border-radius: 999px;
  background: var(--an-surface, #ffffff);
  font: inherit;
  font-size: 12.5px;
  font-weight: 600;
  color: var(--an-text, #374151);
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}
.iis-action md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  min-width: 15px;
  color: var(--an-text-secondary, #6b7280);
}
.iis-action:hover {
  border-color: var(--an-primary, #6366f1);
  color: var(--an-primary, #6366f1);
}
.iis-action:hover md-icon {
  color: var(--an-primary, #6366f1);
}
.iis-action--generate {
  color: #7c3aed;
}
.iis-action--generate md-icon {
  color: #7c3aed;
}
.iis-action--generate:hover {
  border-color: #7c3aed;
  background: rgba(124, 58, 237, 0.05);
  color: #7c3aed;
}
.iis-action--generate:hover md-icon {
  color: #7c3aed;
}
.iis-action--enhance {
  color: #0d9488;
}
.iis-action--enhance md-icon {
  color: #0d9488;
}
.iis-action--enhance:hover {
  border-color: #0d9488;
  background: rgba(13, 148, 136, 0.05);
  color: #0d9488;
}
.iis-action--enhance:hover md-icon {
  color: #0d9488;
}
.waitry-dark-theme .iis-action {
  border-color: var(--an-border, #374151);
  background: rgba(255, 255, 255, 0.04);
  color: var(--an-text, #e5e7eb);
}
.waitry-dark-theme .iis-action--generate {
  color: #a78bfa;
}
.waitry-dark-theme .iis-action--generate md-icon {
  color: #a78bfa;
}
.waitry-dark-theme .iis-action--enhance {
  color: #2dd4bf;
}
.waitry-dark-theme .iis-action--enhance md-icon {
  color: #2dd4bf;
}

/* ── Save bar (only with unsaved work) ────────────────────────────────── */
.iis-savebar {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: auto;
  padding: 10px 14px;
  border: 1px solid rgba(var(--an-primary-rgb, 99, 102, 241), 0.25);
  border-radius: 14px;
  background: rgba(var(--an-primary-rgb, 99, 102, 241), 0.05);
}
.iis-savebar__status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 12.5px;
  color: var(--an-text-secondary, #6b7280);
}
.iis-savebar__status--ready {
  color: var(--an-success, #10b981);
}
.iis-savebar__status--ready md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  min-width: 16px;
  color: var(--an-success, #10b981) !important;
}
.iis-savebar .iis-discard-btn {
  color: var(--an-text-secondary, #6b7280);
}
.iis-savebar .iis-save-btn md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  min-width: 15px;
  margin-right: 5px;
  color: #fff !important;
}

.iis-main .wf-media-error {
  margin: 0;
}

.iis-footer {
  border-top: 1px solid var(--an-border, #e5e7eb);
  padding: 6px 16px;
}
.waitry-dark-theme .iis-footer {
  border-top-color: var(--an-border, #374151);
}

/* ── Venue Images Studio Custom Viewports ───────────────────────────── */
.iis-slot__thumb--portrait {
  width: 32px;
  height: 52px;
  border-radius: 6px;
}
.iis-slot__thumb--portrait video, .iis-slot__thumb--portrait img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.iis-banner-frame {
  position: relative;
  width: 100%;
  max-width: 520px;
  aspect-ratio: 16/9;
  border-radius: 16px;
  overflow: hidden;
  cursor: pointer;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
  margin: 0 auto;
}
.iis-banner-frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.iis-banner-frame__overlay {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  background: rgba(0, 0, 0, 0.45);
  opacity: 0;
  transition: opacity 0.15s ease;
}
.iis-banner-frame__overlay md-icon {
  font-size: 22px;
  width: 22px;
  height: 22px;
  min-width: 22px;
  color: #fff !important;
}
.iis-banner-frame__overlay span {
  font-size: 12px;
  font-weight: 600;
  color: #fff;
}
.iis-banner-frame:hover .iis-banner-frame__overlay {
  opacity: 1;
}
.iis-banner-frame__delete {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 30px;
  height: 30px;
  border: none;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.55);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  opacity: 0;
  transition: opacity 0.15s ease, background 0.15s ease;
  z-index: 3;
}
.iis-banner-frame__delete md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  min-width: 14px;
  color: #fff !important;
}
.iis-banner-frame__delete:hover {
  background: var(--an-danger, #ef4444);
}
.iis-banner-frame:hover .iis-banner-frame__delete {
  opacity: 1;
}

.iis-video-hint {
  font-size: 11.5px;
  color: var(--an-text-secondary, #6b7280);
  line-height: 1.5;
  margin: 0 0 10px;
}

/* 9:16 Vertical Reel Mobile Viewport Mockup */
.iis-video-mockup {
  position: relative;
  width: 200px;
  height: 355px;
  aspect-ratio: 9/16;
  border-radius: 20px;
  overflow: hidden;
  border: 3px solid var(--an-border-strong, #374151);
  box-shadow: 0 12px 36px rgba(0, 0, 0, 0.2);
  margin: 0 auto;
  background: #000;
}
.iis-video-mockup video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.iis-video-mockup__delete {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 28px;
  height: 28px;
  border: none;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.65);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  opacity: 0;
  transition: opacity 0.15s ease, background 0.15s ease;
  z-index: 5;
}
.iis-video-mockup__delete md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  min-width: 14px;
  color: #fff !important;
}
.iis-video-mockup__delete:hover {
  background: var(--an-danger, #ef4444);
}
.iis-video-mockup:hover .iis-video-mockup__delete {
  opacity: 1;
}

.iis-empty--portrait {
  max-width: 220px;
  min-height: 320px;
  aspect-ratio: 9/16;
  margin: 0 auto;
}

/* ══════════════════════════════════════════════════════════════════════════
   5. Legacy aliases — kept for any code not yet migrated
   ══════════════════════════════════════════════════════════════════════════ */
.pricelist-table-container {
  width: 100%;
  overflow-x: auto;
  background: var(--an-surface, #ffffff);
  border-radius: 12px;
  border: 1px solid var(--an-border);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);
  margin-top: 16px;
  position: relative;
  max-height: calc(100vh - 350px);
  min-height: 300px;
}
.pricelist-table-container::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
.pricelist-table-container::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.1);
  border-radius: 4px;
}
.pricelist-table-container::-webkit-scrollbar-track {
  background: transparent;
}
.waitry-dark-theme .pricelist-table-container {
  background: var(--an-surface) !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3) !important;
}
.waitry-dark-theme .pricelist-table-container::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.12) !important;
}

.pricelist-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  text-align: left;
  min-width: 1000px;
}
.pricelist-table th, .pricelist-table td {
  padding: 12px 16px;
  vertical-align: middle;
  border-bottom: 1px solid var(--an-border);
  box-sizing: border-box;
}
.waitry-dark-theme .pricelist-table th, .waitry-dark-theme .pricelist-table td {
  border-bottom-color: rgba(255, 255, 255, 0.07) !important;
}
.pricelist-table th {
  font-weight: 600;
  font-size: 12px;
  color: var(--an-text-muted, #64625E);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  background: var(--an-surface2, #FAFAFA);
  position: sticky;
  top: 0;
  z-index: 10;
  box-shadow: inset 0 -1.5px 0 var(--an-border);
}
.waitry-dark-theme .pricelist-table th {
  background: var(--an-surface2) !important;
  color: var(--an-text-muted) !important;
  box-shadow: inset 0 -1.5px 0 rgba(255, 255, 255, 0.08) !important;
}
.pricelist-table tbody tr {
  transition: background-color var(--duration-fast, 150ms) var(--ease-default);
}
.pricelist-table tbody tr:hover {
  background-color: var(--an-primary-soft, rgba(236, 78, 54, 0.02));
}
.waitry-dark-theme .pricelist-table tbody tr:hover {
  background-color: rgba(236, 78, 54, 0.04) !important;
}
.pricelist-table tbody tr:last-child td {
  border-bottom: none;
}
.pricelist-table td {
  font-size: 14px;
  color: var(--an-text);
}

.pricelist-col-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.pricelist-col-header h4 {
  margin: 0;
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text);
}
.pricelist-col-header h5 {
  margin: 2px 0 0 0;
  font-size: 10px;
  font-weight: 500;
  color: var(--an-text-faint);
  text-transform: uppercase;
  letter-spacing: 0.2px;
}
.pricelist-col-header md-menu {
  margin: 0;
}
.pricelist-col-header md-menu md-icon {
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  color: var(--an-text-muted);
  transition: color 0.15s;
}
.pricelist-col-header md-menu button {
  margin: 0 !important;
  padding: 0 !important;
  width: 28px !important;
  height: 28px !important;
  min-height: 28px !important;
  min-width: 28px !important;
}
.pricelist-col-header md-menu button:hover md-icon {
  color: var(--an-primary);
}

.pricelist-item-code {
  font-family: monospace;
  font-size: 11px;
  color: var(--an-text-muted);
  background: var(--an-surface2, #f5f5f7);
  padding: 2px 6px;
  border-radius: 4px;
  border: 1px solid var(--an-border);
}
.waitry-dark-theme .pricelist-item-code {
  background: rgba(255, 255, 255, 0.04);
  border-color: rgba(255, 255, 255, 0.08);
}

.pricelist-category-cell {
  font-size: 12px;
  color: var(--an-text-muted);
}
.pricelist-category-cell span {
  display: block;
  font-size: 10px;
  color: var(--an-text-faint);
  margin-bottom: 2px;
}

.pricelist-base-price {
  font-weight: 600;
  color: var(--an-text);
}

.pricelist-price-input {
  display: flex;
  align-items: center;
  border: 1.5px solid var(--an-border);
  border-radius: 8px;
  background: var(--an-surface, #ffffff);
  padding: 0 10px;
  width: 120px;
  height: 36px;
  box-sizing: border-box;
  transition: border-color var(--duration-fast, 150ms), box-shadow var(--duration-fast, 150ms);
}
.waitry-dark-theme .pricelist-price-input {
  background: rgba(255, 255, 255, 0.02);
  border-color: rgba(255, 255, 255, 0.12);
}
.pricelist-price-input .pricelist-currency-prefix {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text-faint);
  margin-right: 4px;
  user-select: none;
}
.pricelist-price-input input {
  border: none !important;
  outline: none !important;
  background: transparent !important;
  width: 100% !important;
  height: 100% !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--an-text) !important;
  font-family: var(--font-sans) !important;
  padding: 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  -webkit-appearance: none;
  appearance: none;
}
.pricelist-price-input input::-webkit-outer-spin-button, .pricelist-price-input input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.pricelist-price-input input[type=number] {
  -moz-appearance: textfield;
}
.pricelist-price-input:focus-within {
  border-color: var(--an-primary) !important;
  box-shadow: 0 0 0 3px rgba(236, 78, 54, 0.08) !important;
  background: var(--an-surface, #ffffff) !important;
}
.pricelist-price-input:focus-within .pricelist-currency-prefix {
  color: var(--an-primary);
}

.pricelist-layout-price {
  font-style: italic;
  font-weight: 500;
  color: var(--an-text-muted);
  font-size: 13px;
}
.pricelist-layout-price--active {
  color: var(--an-rose);
  font-weight: 600;
}

.pricelist-save-bar {
  position: fixed;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
  background: var(--an-surface, #ffffff);
  border: 1px solid var(--an-border);
  box-shadow: var(--an-shadow-xl, 0 10px 30px rgba(0, 0, 0, 0.08));
  border-radius: 100px;
  padding: 10px 16px 10px 24px;
  display: flex;
  align-items: center;
  gap: 20px;
  z-index: 100;
  animation: pricelistSlideUp 0.3s var(--ease-default, cubic-bezier(0.4, 0, 0.2, 1));
}
.waitry-dark-theme .pricelist-save-bar {
  background: var(--an-surface2, #1e2029) !important;
  border-color: rgba(255, 255, 255, 0.1) !important;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.4) !important;
}
.pricelist-save-bar .pricelist-save-bar__text {
  font-family: var(--font-sans, inherit);
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
  display: flex;
  align-items: center;
  gap: 8px;
}
.pricelist-save-bar .pricelist-save-bar__text md-icon {
  color: var(--an-primary);
  margin: 0;
  font-size: 18px !important;
  width: 18px !important;
  height: 18px !important;
}
.pricelist-save-bar .pricelist-save-bar__actions {
  display: flex;
  gap: 8px;
}
.pricelist-save-bar .pricelist-save-bar__actions button {
  margin: 0 !important;
  text-transform: none;
  font-weight: 600;
  font-size: 13px;
  border-radius: 100px;
  height: 36px;
  line-height: 36px;
  padding: 0 18px;
  min-height: 36px;
}
.pricelist-save-bar .pricelist-save-bar__actions .save-btn {
  background: var(--an-primary, #ec4e36);
  color: #ffffff;
  box-shadow: 0 2px 8px rgba(236, 78, 54, 0.2);
}
.pricelist-save-bar .pricelist-save-bar__actions .save-btn:hover {
  background: var(--an-primary, #ec4e36);
  box-shadow: 0 4px 12px rgba(236, 78, 54, 0.3);
}
.pricelist-save-bar .pricelist-save-bar__actions .cancel-btn {
  color: var(--an-text-muted);
  background: transparent;
  border: 1px solid var(--an-border);
}
.waitry-dark-theme .pricelist-save-bar .pricelist-save-bar__actions .cancel-btn {
  border-color: rgba(255, 255, 255, 0.12);
  color: var(--an-text-muted);
}
.pricelist-save-bar .pricelist-save-bar__actions .cancel-btn:hover {
  background: var(--an-surface2, #f5f5f7);
}
.waitry-dark-theme .pricelist-save-bar .pricelist-save-bar__actions .cancel-btn:hover {
  background: rgba(255, 255, 255, 0.04);
}

@keyframes pricelistSlideUp {
  from {
    transform: translate(-50%, 40px);
    opacity: 0;
  }
  to {
    transform: translate(-50%, 0);
    opacity: 1;
  }
}
.table-card-container:has(.pricelist-empty-state) {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  height: 100%;
}

.pricelist-empty-state {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1;
  padding: 32px 20px;
  margin: 0 !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

.pricelist-empty-inner {
  text-align: center;
  max-width: 560px;
}

.pricelist-empty-icon-wrap {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 160px;
  height: 160px;
  margin-bottom: 32px;
}

.pricelist-empty-rings {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.pricelist-ring {
  position: absolute;
  border-radius: 50%;
  border: 1.5px solid var(--an-primary);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  animation: pricelist-ring-pulse 3s ease-in-out infinite;
}
.pricelist-ring.pricelist-ring--1 {
  width: 80px;
  height: 80px;
  opacity: 0.35;
  animation-delay: 0s;
}
.pricelist-ring.pricelist-ring--2 {
  width: 120px;
  height: 120px;
  opacity: 0.2;
  animation-delay: 0.6s;
}
.pricelist-ring.pricelist-ring--3 {
  width: 160px;
  height: 160px;
  opacity: 0.1;
  animation-delay: 1.2s;
}

@keyframes pricelist-ring-pulse {
  0%, 100% {
    transform: translate(-50%, -50%) scale(1);
    opacity: 0.25;
  }
  50% {
    transform: translate(-50%, -50%) scale(1.08);
    opacity: 0.4;
  }
}
.pricelist-empty-icon {
  font-size: 52px;
  --an-icon-size: 52px;
  color: var(--an-primary);
  display: block;
  position: relative;
  z-index: 1;
  line-height: 1;
}

.pricelist-empty-headline {
  font-size: 26px;
  font-weight: 800;
  margin: 0 0 12px;
  color: var(--an-text, #111);
  letter-spacing: -0.02em;
}

.pricelist-empty-sub {
  color: var(--an-text2, #666);
  font-size: 15px;
  margin: 0 0 28px;
  line-height: 1.6;
}

.pricelist-empty-features {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
  margin-bottom: 32px;
}

.pricelist-feat-pill {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 7px 14px;
  border-radius: 99px;
  border: 1.5px solid var(--an-border);
  background: var(--an-surface2);
  font-size: 13px;
  color: var(--an-text-muted, #555);
}
.waitry-dark-theme .pricelist-feat-pill {
  background: rgba(255, 255, 255, 0.03);
  border-color: rgba(255, 255, 255, 0.08);
  color: var(--an-text-muted);
}
.pricelist-feat-pill i {
  font-size: 16px;
  color: var(--an-primary);
}

.pricelist-empty-cta {
  background: var(--an-rose) !important;
  color: #fff !important;
  border-radius: 99px !important;
  padding: 0 28px;
  height: 44px;
  font-size: 15px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: transform 0.18s, box-shadow 0.18s;
  box-shadow: 0 4px 20px rgba(236, 78, 54, 0.3);
}
.pricelist-empty-cta:hover:not([disabled]) {
  transform: translateY(-2px);
  box-shadow: 0 8px 28px rgba(236, 78, 54, 0.4);
}
.pricelist-empty-cta[disabled] {
  opacity: 0.5;
  cursor: not-allowed;
  box-shadow: none;
}
.pricelist-empty-cta i {
  font-size: 18px;
}

.profile-wrapper {
  max-width: 1000px;
  margin: 40px auto;
  padding: 0 24px;
}
@media (max-width: 767px) {
  .profile-wrapper {
    margin: 16px auto;
    padding: 0 12px;
  }
}

.profile-card {
  background: var(--an-surface);
  border-radius: 16px;
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.03), 0 8px 10px -6px rgba(0, 0, 0, 0.03), 0 0 0 1px rgba(0, 0, 0, 0.04);
  overflow: visible;
  transition: all 0.3s ease;
}

.profile-banner-hero {
  height: 240px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-color: var(--an-surface2);
  border-top-left-radius: 16px;
  border-top-right-radius: 16px;
  position: relative;
}
@media (max-width: 767px) {
  .profile-banner-hero {
    height: 140px;
  }
}
.profile-banner-hero .banner-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.05) 0%, rgba(0, 0, 0, 0.2) 100%);
  border-top-left-radius: 16px;
  border-top-right-radius: 16px;
}
.profile-banner-hero .banner-upload-btn {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 10;
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  color: #1e293b;
  border: none;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  margin: 0;
}
.profile-banner-hero .banner-upload-btn:hover {
  background: #ffffff;
  transform: scale(1.05);
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.15);
}
.profile-banner-hero .banner-upload-btn md-icon {
  font-size: 20px;
  height: 20px;
  width: 20px;
  margin: 0;
}

.profile-header-info-bar {
  padding: 0 40px;
  position: relative;
  margin-top: -60px;
  margin-bottom: 24px;
  z-index: 10;
}
@media (max-width: 767px) {
  .profile-header-info-bar {
    padding: 0 20px;
    margin-top: -50px;
    margin-bottom: 16px;
  }
}

.avatar-edit-container {
  position: relative;
  width: 120px;
  height: 120px;
  border-radius: 50%;
  background: var(--an-surface);
  padding: 4px;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08), 0 0 0 1px rgba(0, 0, 0, 0.02);
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .avatar-edit-container {
    width: 100px;
    height: 100px;
  }
}
.avatar-edit-container .avatar-img-element {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  background: var(--an-surface2);
}
.avatar-edit-container .avatar-camera-btn {
  position: absolute;
  bottom: 4px;
  right: 4px;
  background: #3b82f6;
  color: #ffffff;
  border: 3px solid var(--an-surface);
  border-radius: 50%;
  width: 36px;
  height: 36px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  outline: none;
  padding: 0;
}
.avatar-edit-container .avatar-camera-btn:hover {
  background: #2563eb;
  transform: scale(1.1);
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.2);
}
.avatar-edit-container .avatar-camera-btn md-icon {
  font-size: 16px;
  height: 16px;
  width: 16px;
  margin: 0;
  color: #ffffff !important;
}

.profile-name-section {
  margin-left: 24px;
  margin-top: 68px;
}
@media (max-width: 767px) {
  .profile-name-section {
    margin-left: 0;
    margin-top: 12px;
    text-align: center;
  }
}
.profile-name-section .profile-fullname-title {
  font-size: 26px;
  font-weight: 700;
  color: var(--an-text);
  margin: 0 0 6px 0;
  letter-spacing: -0.5px;
}
@media (max-width: 767px) {
  .profile-name-section .profile-fullname-title {
    font-size: 20px;
  }
}
.profile-name-section .profile-username-badge {
  display: inline-flex;
  align-items: center;
  background: var(--an-surface2);
  color: var(--an-text-muted);
  font-size: 13px;
  font-weight: 600;
  padding: 4px 12px;
  border-radius: 20px;
}

.profile-navigation-tabs {
  display: flex;
  background: var(--an-surface2);
  border-radius: 12px;
  padding: 6px;
  margin: 0 40px 24px;
  gap: 8px;
}
@media (max-width: 767px) {
  .profile-navigation-tabs {
    margin: 0 16px 24px;
    padding: 4px;
    gap: 4px;
  }
}
.profile-navigation-tabs .nav-tab-item {
  flex: 1;
  background: transparent;
  border: none;
  border-radius: 8px;
  padding: 12px 4px;
  font-size: 14px;
  font-weight: 600;
  color: var(--an-text-muted);
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  outline: none;
}
.profile-navigation-tabs .nav-tab-item md-icon {
  font-size: 18px;
  height: 18px;
  width: 18px;
  color: var(--an-text-faint);
  transition: color 0.3s;
  margin: 0;
}
.profile-navigation-tabs .nav-tab-item:hover:not(.active) {
  background: rgba(0, 0, 0, 0.04);
}
.waitry-dark-theme .profile-navigation-tabs .nav-tab-item:hover:not(.active) {
  background: rgba(255, 255, 255, 0.06);
}
.profile-navigation-tabs .nav-tab-item:hover:not(.active) {
  color: var(--an-text);
}
.profile-navigation-tabs .nav-tab-item:hover:not(.active) md-icon {
  color: var(--an-text-muted);
}
.profile-navigation-tabs .nav-tab-item.active {
  background: var(--an-surface-brighter);
  color: #497fe4;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05), 0 1px 2px rgba(0, 0, 0, 0.04);
}
.profile-navigation-tabs .nav-tab-item.active md-icon {
  color: #497fe4;
}

.profile-form-content {
  padding: 40px;
}
@media (max-width: 767px) {
  .profile-form-content {
    padding: 24px 16px;
  }
}

.profile-form div[layout=row] {
  gap: 24px;
}

.profile-card md-input-container {
  margin: 8px 0 16px !important;
  width: 100%;
  position: relative;
  padding-left: 0 !important;
}
.profile-card md-input-container .md-errors-spacer {
  display: none !important;
  min-height: 0 !important;
  height: 0 !important;
}
.profile-card md-input-container label {
  font-size: 13px !important;
  color: var(--an-text-muted) !important;
  font-weight: 600;
  letter-spacing: 0.2px;
  left: 0 !important;
}
.profile-card md-input-container label.md-input-focused label {
  color: #497fe4 !important;
}
.profile-card md-input-container label md-select {
  display: flex !important;
  align-items: center !important;
}
.profile-card md-input-container label md-select .md-select-value {
  border: none !important;
  height: 100%;
}
.profile-card md-input-container label md-select .md-select-value span:not(.md-select-icon) {
  transform: translateY(-1px);
}
.profile-card md-input-container.md-input-focused input, .profile-card md-input-container.md-input-focused .md-input, .profile-card md-input-container.md-input-focused md-select, .profile-card md-input-container.md-input-focused textarea {
  background: var(--an-surface) !important;
  border-color: #497fe4 !important;
  box-shadow: 0 0 0 4px rgba(73, 127, 228, 0.1) !important;
}
.profile-card md-input-container input[type=date] {
  padding-top: 2px;
}
.profile-card md-input-container md-icon {
  position: absolute !important;
  top: 44px !important;
  transform: translateY(-50%) !important;
  left: 14px !important;
  margin: 0 !important;
  color: var(--an-text-faint);
  transition: all 0.2s ease;
  z-index: 5;
  pointer-events: none;
  font-size: 20px;
  height: 20px;
  width: 20px;
}
.profile-card md-input-container md-icon.iconoir-lock {
  opacity: 0.8;
}
.profile-card md-input-container.md-input-focused md-icon {
  color: #497fe4;
  transform: translateY(-50%) scale(1.05) !important;
}

#user-profile-view .profile-card md-input-container input,
#user-profile-view .profile-card md-input-container .md-input,
#user-profile-view .profile-card md-input-container md-select .md-select-value,
#user-profile-view .profile-card md-input-container textarea {
  font-size: 14px !important;
  margin-top: 0 !important;
  background: var(--an-bg-subtle) !important;
  border: 1px solid var(--an-border) !important;
  border-radius: 10px !important;
  padding: 0 16px 0 44px !important;
  color: var(--an-text) !important;
  height: 44px !important;
  line-height: 44px !important;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.02) !important;
  box-sizing: border-box !important;
}

.security-sections-container {
  display: flex;
  gap: 32px;
  margin-bottom: 12px;
}
@media (max-width: 767px) {
  .security-sections-container {
    flex-direction: column;
    gap: 24px;
  }
}
.security-sections-container .security-section-card {
  flex: 1;
  background: var(--an-bg-subtle);
  border: 1px solid var(--an-border);
  border-radius: 12px;
  padding: 28px;
  box-sizing: border-box;
}
@media (max-width: 767px) {
  .security-sections-container .security-section-card {
    padding: 20px;
  }
}
.security-sections-container .security-section-card .security-card-title {
  font-size: 16px;
  font-weight: 700;
  color: var(--an-text);
  margin: 0 0 24px 0;
  display: flex;
  align-items: center;
  gap: 10px;
}
.security-sections-container .security-section-card .security-card-title md-icon {
  color: #497fe4;
  font-size: 20px;
  height: 20px;
  width: 20px;
  margin: 0;
}

.profile-submit-btn-container {
  display: flex;
  justify-content: flex-end;
  margin-top: 16px;
}
@media (max-width: 767px) {
  .profile-submit-btn-container {
    margin-top: 8px;
  }
}
.profile-submit-btn-container .premium-submit-btn {
  background: linear-gradient(135deg, #E23E2B 0%, #d12e1c 100%);
  color: #ffffff;
  border: none;
  border-radius: 10px;
  padding: 0 32px;
  height: 48px;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.3px;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 6px 16px rgba(226, 62, 43, 0.25), inset 0 1px 0 rgba(255, 255, 255, 0.15);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  text-transform: none;
  margin: 0;
  outline: none;
}
.profile-submit-btn-container .premium-submit-btn:hover {
  background: linear-gradient(135deg, #e94b39 0%, #c52d1b 100%);
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(226, 62, 43, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.2);
}
.profile-submit-btn-container .premium-submit-btn:active {
  transform: translateY(1px);
  box-shadow: 0 2px 8px rgba(226, 62, 43, 0.25);
}
.profile-submit-btn-container .premium-submit-btn[disabled] {
  background: var(--an-surface3);
  color: var(--an-text-faint);
  box-shadow: none;
  cursor: not-allowed;
  transform: none;
}

.select-source-dialog {
  border-radius: 16px;
  padding: 0;
  max-width: 500px;
  width: 90%;
  overflow: hidden;
}
.select-source-dialog .dialog-header {
  background: #f8fafc;
}
.waitry-dark-theme .select-source-dialog .dialog-header {
  background: var(--an-surface2);
}
.select-source-dialog .dialog-header {
  padding: 24px;
  border-bottom: 1px solid #e2e8f0;
  position: relative;
}
.select-source-dialog .dialog-header .dialog-title {
  font-size: 20px;
  font-weight: 700;
  color: var(--an-text);
  margin: 0 0 6px 0;
}
.select-source-dialog .dialog-header .dialog-subtitle {
  font-size: 14px;
  color: var(--an-text-muted);
  margin: 0;
}
.select-source-dialog .dialog-header .close-btn {
  position: absolute;
  top: 16px;
  right: 16px;
  margin: 0;
  min-width: 32px;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  padding: 0;
}
.select-source-dialog .dialog-header .close-btn md-icon {
  color: #94a3b8;
}
.select-source-dialog .dialog-body {
  padding: 24px;
  display: flex;
  flex-direction: row;
  gap: 16px;
}
@media (max-width: 767px) {
  .select-source-dialog .dialog-body {
    flex-direction: column;
  }
}
.select-source-dialog .dialog-body .source-card {
  flex: 1;
  border: 2px solid #e2e8f0;
  border-radius: 12px;
  padding: 24px 16px;
  text-align: center;
  cursor: pointer;
  background: #fff;
}
.waitry-dark-theme .select-source-dialog .dialog-body .source-card {
  background: var(--an-surface2);
}
.select-source-dialog .dialog-body .source-card {
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  display: flex;
  flex-direction: column;
  align-items: center;
}
.select-source-dialog .dialog-body .source-card:hover {
  border-color: #497fe4;
  background: rgba(73, 127, 228, 0.02);
  transform: translateY(-4px);
  box-shadow: 0 8px 20px rgba(73, 127, 228, 0.08);
}
.select-source-dialog .dialog-body .source-card:hover .card-icon {
  background: rgba(73, 127, 228, 0.1);
  color: #497fe4;
}
.select-source-dialog .dialog-body .source-card .card-icon {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background: #f1f5f9;
}
.waitry-dark-theme .select-source-dialog .dialog-body .source-card .card-icon {
  background: var(--an-surface3);
}
.select-source-dialog .dialog-body .source-card .card-icon {
  color: #64748b;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 16px;
  transition: all 0.3s ease;
}
.select-source-dialog .dialog-body .source-card .card-icon md-icon {
  font-size: 32px;
  height: 32px;
  width: 32px;
  margin: 0;
}
.select-source-dialog .dialog-body .source-card .card-title {
  font-size: 16px;
  font-weight: 600;
  color: var(--an-text);
  margin: 0 0 8px 0;
}
.select-source-dialog .dialog-body .source-card .card-desc {
  font-size: 12px;
  color: var(--an-text-muted);
  margin: 0;
  line-height: 1.5;
}

.avatar-creator-dialog {
  border-radius: 16px;
  padding: 0;
  max-width: 800px;
  width: 95%;
  height: 90%;
  max-height: 600px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
@media (max-width: 767px) {
  .avatar-creator-dialog {
    max-height: 90%;
    height: auto;
  }
}
.avatar-creator-dialog .dialog-header {
  background: #f8fafc;
}
.waitry-dark-theme .avatar-creator-dialog .dialog-header {
  background: var(--an-surface2);
}
.avatar-creator-dialog .dialog-header {
  padding: 20px 24px;
  border-bottom: 1px solid #e2e8f0;
  position: relative;
  flex-shrink: 0;
}
.avatar-creator-dialog .dialog-header .dialog-title {
  font-size: 20px;
  font-weight: 700;
  color: var(--an-text);
  margin: 0 0 4px 0;
}
.avatar-creator-dialog .dialog-header .dialog-subtitle {
  font-size: 13px;
  color: var(--an-text-muted);
  margin: 0;
}
.avatar-creator-dialog .dialog-header .close-btn {
  position: absolute;
  top: 16px;
  right: 16px;
  margin: 0;
  min-width: 32px;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  padding: 0;
}
.avatar-creator-dialog .dialog-header .close-btn md-icon {
  color: #94a3b8;
}
.avatar-creator-dialog .creator-body {
  display: flex;
  flex-direction: row;
  flex: 1;
  overflow: hidden;
}
@media (max-width: 767px) {
  .avatar-creator-dialog .creator-body {
    flex-direction: column;
    overflow-y: auto;
  }
}
.avatar-creator-dialog .creator-body .preview-column {
  width: 280px;
  background: #f8fafc;
}
.waitry-dark-theme .avatar-creator-dialog .creator-body .preview-column {
  background: var(--an-surface2);
}
.avatar-creator-dialog .creator-body .preview-column {
  border-right: 1px solid #e2e8f0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 24px;
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .avatar-creator-dialog .creator-body .preview-column {
    width: 100%;
    border-right: none;
    border-bottom: 1px solid #e2e8f0;
    padding: 20px;
  }
}
.avatar-creator-dialog .creator-body .preview-column .avatar-preview-box {
  width: 180px;
  height: 180px;
  border-radius: 50%;
  background: #fff;
}
.waitry-dark-theme .avatar-creator-dialog .creator-body .preview-column .avatar-preview-box {
  background: var(--an-surface3);
}
.avatar-creator-dialog .creator-body .preview-column .avatar-preview-box {
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.06);
  border: 4px solid #fff;
  position: relative;
  overflow: hidden;
  margin-bottom: 20px;
}
.avatar-creator-dialog .creator-body .preview-column .avatar-preview-box img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
}
.avatar-creator-dialog .creator-body .preview-column .btn-randomize {
  margin: 0;
  text-transform: none;
  font-weight: 600;
  border-radius: 20px;
  padding: 4px 16px;
  border: 1px solid #cbd5e1;
  background: #fff;
}
.waitry-dark-theme .avatar-creator-dialog .creator-body .preview-column .btn-randomize {
  background: var(--an-surface2);
}
.avatar-creator-dialog .creator-body .preview-column .btn-randomize {
  color: #475569;
}
.avatar-creator-dialog .creator-body .preview-column .btn-randomize:hover {
  background: #f1f5f9;
}
.waitry-dark-theme .avatar-creator-dialog .creator-body .preview-column .btn-randomize:hover {
  background: var(--an-surface3);
}
.avatar-creator-dialog .creator-body .preview-column .btn-randomize md-icon {
  margin-right: 6px;
  color: #497fe4;
  font-size: 18px;
  height: 18px;
  width: 18px;
}
.avatar-creator-dialog .creator-body .editor-column {
  flex: 1;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
@media (max-width: 767px) {
  .avatar-creator-dialog .creator-body .editor-column {
    overflow: visible;
  }
}
.avatar-creator-dialog .creator-body .editor-column md-tabs {
  flex: 1;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.avatar-creator-dialog .creator-body .editor-column md-tabs md-tabs-wrapper {
  background: #fff;
}
.waitry-dark-theme .avatar-creator-dialog .creator-body .editor-column md-tabs md-tabs-wrapper {
  background: var(--an-surface2);
}
.avatar-creator-dialog .creator-body .editor-column md-tabs md-tabs-wrapper {
  border-bottom: 1px solid #e2e8f0;
}
.avatar-creator-dialog .creator-body .editor-column md-tabs md-tab-item {
  text-transform: none;
  font-weight: 600;
  font-size: 13px;
}
.avatar-creator-dialog .creator-body .editor-column md-tabs md-tab-content {
  overflow-y: auto;
  flex: 1;
}
.avatar-creator-dialog .creator-body .editor-column md-tabs .options-grid {
  padding: 20px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}
@media (max-width: 767px) {
  .avatar-creator-dialog .creator-body .editor-column md-tabs .options-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
.avatar-creator-dialog .creator-body .editor-column md-tabs .options-grid .option-item {
  border: 2px solid #e2e8f0;
  border-radius: 12px;
  aspect-ratio: 1;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
}
.waitry-dark-theme .avatar-creator-dialog .creator-body .editor-column md-tabs .options-grid .option-item {
  background: var(--an-surface2);
}
.avatar-creator-dialog .creator-body .editor-column md-tabs .options-grid .option-item {
  transition: all 0.2s ease;
  position: relative;
  padding: 8px;
}
.avatar-creator-dialog .creator-body .editor-column md-tabs .options-grid .option-item:hover {
  border-color: #cbd5e1;
  background: #f8fafc;
}
.waitry-dark-theme .avatar-creator-dialog .creator-body .editor-column md-tabs .options-grid .option-item:hover {
  background: var(--an-surface3);
}
.avatar-creator-dialog .creator-body .editor-column md-tabs .options-grid .option-item.selected {
  border-color: #497fe4;
  background: rgba(73, 127, 228, 0.03);
}
.avatar-creator-dialog .creator-body .editor-column md-tabs .options-grid .option-item.selected::after {
  content: "check_circle";
  font-family: "Material Icons";
  font-size: 16px;
  color: #497fe4;
  position: absolute;
  top: 6px;
  right: 6px;
}
.avatar-creator-dialog .creator-body .editor-column md-tabs .options-grid .option-item .color-preview {
  width: 70%;
  height: 70%;
  border-radius: 50%;
  box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1);
}
.avatar-creator-dialog .creator-body .editor-column md-tabs .options-grid .option-item .svg-preview {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.avatar-creator-dialog .creator-body .editor-column md-tabs .options-grid .option-item .svg-preview svg, .avatar-creator-dialog .creator-body .editor-column md-tabs .options-grid .option-item .svg-preview img {
  max-width: 90%;
  max-height: 90%;
}
.avatar-creator-dialog .creator-footer {
  background: #f8fafc;
}
.waitry-dark-theme .avatar-creator-dialog .creator-footer {
  background: var(--an-surface2);
}
.avatar-creator-dialog .creator-footer {
  padding: 16px 24px;
  border-top: 1px solid #e2e8f0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .avatar-creator-dialog .creator-footer {
    flex-direction: column-reverse;
    gap: 16px;
    padding: 16px;
    align-items: stretch;
  }
}
.avatar-creator-dialog .creator-footer .dont-show-container md-checkbox {
  margin: 0;
}
.avatar-creator-dialog .creator-footer .dont-show-container md-checkbox .md-label {
  font-size: 12px;
  color: #64748b;
  font-weight: 500;
}
.avatar-creator-dialog .creator-footer .footer-actions {
  display: flex;
  gap: 12px;
}
@media (max-width: 767px) {
  .avatar-creator-dialog .creator-footer .footer-actions {
    flex-direction: column;
    gap: 8px;
  }
}
.avatar-creator-dialog .creator-footer .footer-actions md-button {
  margin: 0;
  text-transform: none;
  font-weight: 600;
  border-radius: 8px;
  padding: 4px 20px;
  height: 38px;
  font-size: 13px;
}
.avatar-creator-dialog .creator-footer .footer-actions md-button.md-warn {
  color: #64748b;
  background: transparent;
  border: 1px solid #cbd5e1;
}
.avatar-creator-dialog .creator-footer .footer-actions md-button.md-warn:hover {
  background: #f1f5f9;
}
.waitry-dark-theme .avatar-creator-dialog .creator-footer .footer-actions md-button.md-warn:hover {
  background: var(--an-surface3);
}
.avatar-creator-dialog .creator-footer .footer-actions md-button.md-primary {
  background: #497fe4;
  color: #fff;
}
.avatar-creator-dialog .creator-footer .footer-actions md-button.md-primary:hover {
  background: rgb(37.4708133971, 102.0124401914, 222.7291866029);
}

.banner-preset-dialog {
  border-radius: 16px;
  padding: 0;
  max-width: 800px;
  width: 95%;
  height: 90%;
  max-height: 600px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
@media (max-width: 767px) {
  .banner-preset-dialog {
    max-height: 90%;
    height: auto;
  }
}
.banner-preset-dialog .dialog-header {
  background: #f8fafc;
}
.waitry-dark-theme .banner-preset-dialog .dialog-header {
  background: var(--an-surface2);
}
.banner-preset-dialog .dialog-header {
  padding: 20px 24px;
  border-bottom: 1px solid #e2e8f0;
  position: relative;
  flex-shrink: 0;
}
.banner-preset-dialog .dialog-header .dialog-title {
  font-size: 20px;
  font-weight: 700;
  color: var(--an-text);
  margin: 0 0 4px 0;
}
.banner-preset-dialog .dialog-header .dialog-subtitle {
  font-size: 13px;
  color: var(--an-text-muted);
  margin: 0;
}
.banner-preset-dialog .dialog-header .close-btn {
  position: absolute;
  top: 16px;
  right: 16px;
  margin: 0;
  min-width: 32px;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  padding: 0;
}
.banner-preset-dialog .dialog-header .close-btn md-icon {
  color: #94a3b8;
}
.banner-preset-dialog .creator-body {
  flex: 1;
  overflow-y: auto;
  padding: 20px 24px;
}
@media (max-width: 767px) {
  .banner-preset-dialog .creator-body {
    padding: 16px;
  }
}
.banner-preset-dialog .creator-body .banner-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
@media (max-width: 767px) {
  .banner-preset-dialog .creator-body .banner-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }
}
.banner-preset-dialog .creator-body .banner-grid .banner-option {
  position: relative;
  aspect-ratio: 2;
  border-radius: 10px;
  overflow: hidden;
  cursor: pointer;
  border: 2px solid transparent;
  background: #f1f5f9;
}
.waitry-dark-theme .banner-preset-dialog .creator-body .banner-grid .banner-option {
  background: var(--an-surface3);
}
.banner-preset-dialog .creator-body .banner-grid .banner-option {
  transition: transform 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}
.banner-preset-dialog .creator-body .banner-grid .banner-option img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.banner-preset-dialog .creator-body .banner-grid .banner-option:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.12);
}
.banner-preset-dialog .creator-body .banner-grid .banner-option.selected {
  border-color: #497fe4;
  box-shadow: 0 0 0 3px rgba(73, 127, 228, 0.15);
}
.banner-preset-dialog .creator-body .banner-grid .banner-option.selected .selected-badge {
  opacity: 1;
  transform: scale(1);
}
.banner-preset-dialog .creator-body .banner-grid .banner-option .selected-badge {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #497fe4;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transform: scale(0.6);
  transition: all 0.15s ease;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}
.banner-preset-dialog .creator-body .banner-grid .banner-option .selected-badge md-icon {
  color: #fff;
  margin: 0;
  font-size: 16px;
  height: 16px;
  width: 16px;
}
.banner-preset-dialog .creator-footer {
  background: #f8fafc;
}
.waitry-dark-theme .banner-preset-dialog .creator-footer {
  background: var(--an-surface2);
}
.banner-preset-dialog .creator-footer {
  padding: 16px 24px;
  border-top: 1px solid #e2e8f0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .banner-preset-dialog .creator-footer {
    flex-direction: column-reverse;
    gap: 16px;
    padding: 16px;
    align-items: stretch;
  }
}
.banner-preset-dialog .creator-footer .footer-actions {
  display: flex;
  gap: 12px;
}
@media (max-width: 767px) {
  .banner-preset-dialog .creator-footer .footer-actions {
    flex-direction: column;
    gap: 8px;
  }
}
.banner-preset-dialog .creator-footer .footer-actions md-button {
  margin: 0;
  text-transform: none;
  font-weight: 600;
  border-radius: 8px;
  padding: 4px 20px;
  height: 38px;
  font-size: 13px;
}
.banner-preset-dialog .creator-footer .footer-actions md-button.md-warn {
  color: #64748b;
  background: transparent;
  border: 1px solid #cbd5e1;
}
.banner-preset-dialog .creator-footer .footer-actions md-button.md-warn:hover {
  background: #f1f5f9;
}
.waitry-dark-theme .banner-preset-dialog .creator-footer .footer-actions md-button.md-warn:hover {
  background: var(--an-surface3);
}
.banner-preset-dialog .creator-footer .footer-actions md-button.md-primary {
  background: #497fe4;
  color: #fff;
}
.banner-preset-dialog .creator-footer .footer-actions md-button.md-primary:hover {
  background: rgb(37.4708133971, 102.0124401914, 222.7291866029);
}

.ld-page-wrap {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  height: 100%;
  min-height: 0;
  background: #F4F6F8;
  font-family: "Inter", sans-serif;
}
.waitry-dark-theme .ld-page-wrap {
  background: #1C1F24;
}

.ld-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 56px;
  min-height: 56px;
  padding: 0 8px;
  background: #FFFFFF;
  border-bottom: 1px solid #E0E4E8;
  box-shadow: 0 1px 8px rgba(0, 0, 0, 0.08), 0 0 1px rgba(0, 0, 0, 0.06);
  position: relative;
  z-index: 10;
}
.waitry-dark-theme .ld-toolbar {
  background: #15171C;
  border-color: #2D3139;
}
.ld-toolbar md-button.md-icon-button {
  margin: 0 !important;
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  min-height: 36px !important;
  padding: 0 !important;
  border-radius: 6px !important;
  transition: all 0.18s ease;
}
.ld-toolbar md-button.md-icon-button md-icon {
  font-size: 20px !important;
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  min-height: 20px !important;
  line-height: 20px !important;
  color: #6B7280;
}
.ld-toolbar md-button.md-icon-button:hover:not([disabled]) {
  background: rgba(0, 0, 0, 0.05) !important;
}
.ld-toolbar md-button.md-icon-button:hover:not([disabled]) md-icon {
  color: #1A1A2E !important;
}
.ld-toolbar md-button.md-icon-button[disabled] {
  opacity: 0.35;
}
.waitry-dark-theme .ld-toolbar md-button.md-icon-button md-icon {
  color: #9CA3AF;
}
.waitry-dark-theme .ld-toolbar md-button.md-icon-button:hover:not([disabled]) {
  background: rgba(255, 255, 255, 0.08) !important;
}
.waitry-dark-theme .ld-toolbar md-button.md-icon-button:hover:not([disabled]) md-icon {
  color: #E2E8F0 !important;
}

.ld-toolbar-left,
.ld-toolbar-right {
  display: flex;
  align-items: center;
  gap: 2px;
}

.ld-toolbar-divider {
  width: 1px !important;
  height: 28px !important;
  margin: 0 6px !important;
  min-height: unset !important;
  background: #E0E4E8;
}
.waitry-dark-theme .ld-toolbar-divider {
  background: #2D3139;
}

.ld-back-btn {
  color: #6B7280 !important;
}
.ld-back-btn:hover {
  color: #1A1A2E !important;
}

.ld-layout-name {
  display: flex;
  flex-direction: column;
  margin-left: 4px;
  line-height: 1.2;
}
.ld-layout-name .ld-layout-label {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #6B7280;
  font-weight: 600;
}
.ld-layout-name .ld-layout-value {
  font-size: 13px;
  font-weight: 700;
  color: #1A1A2E;
}
.waitry-dark-theme .ld-layout-name .ld-layout-value {
  color: #E2E8F0;
}

.ld-zoom-label {
  font-size: 12px;
  font-weight: 600;
  color: #6B7280;
  min-width: 42px;
  text-align: center;
  font-variant-numeric: tabular-nums;
}

.ld-active-btn md-icon {
  color: #1565C0 !important;
}
.ld-active-btn {
  background: #E3F2FD !important;
  border-radius: 6px;
}
.waitry-dark-theme .ld-active-btn {
  background: rgba(144, 202, 249, 0.15) !important;
}
.waitry-dark-theme .ld-active-btn md-icon {
  color: #90CAF9 !important;
}

.ld-sm-btn {
  min-width: 32px !important;
  min-height: 32px !important;
  width: 32px !important;
  height: 32px !important;
  padding: 0 !important;
}
.ld-sm-btn md-icon {
  font-size: 18px !important;
}

.ld-align-group {
  display: flex;
  align-items: center;
  gap: 1px;
}

.ld-unsaved-dot {
  color: #FF6D00;
  font-size: 18px;
  line-height: 1;
  animation: ld-pulse 2s ease-in-out infinite;
}

@keyframes ld-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.4;
  }
}
.ld-save-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: #1565C0 !important;
  color: #fff !important;
  border-radius: 20px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em;
  padding: 0 20px !important;
  margin: 0 !important;
  min-height: 36px !important;
  transition: all 0.25s ease !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
}
.ld-save-btn md-icon {
  color: #fff !important;
  font-size: 18px !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  margin: 0 !important;
}
.ld-save-btn:hover:not([disabled]) {
  background: rgb(16.9774647887, 81.6535211268, 155.2225352113) !important;
  box-shadow: 0 4px 16px rgba(21, 101, 192, 0.4) !important;
  transform: translateY(-1px);
}
.ld-save-btn[disabled] {
  opacity: 0.45;
}

.ld-add-all-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: #F4F6F8 !important;
  color: #1565C0 !important;
  border: 1px solid #E0E4E8 !important;
  border-radius: 20px !important;
  padding: 4px 12px !important;
  margin: 0 !important;
  min-height: 28px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  transition: all 0.2s ease !important;
}
.ld-add-all-btn md-icon {
  color: #1565C0 !important;
  font-size: 16px !important;
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  min-height: 16px !important;
  margin: 0 !important;
}
.ld-add-all-btn:hover {
  background: #1565C0 !important;
  color: #fff !important;
  border-color: #1565C0 !important;
  box-shadow: 0 2px 8px rgba(21, 101, 192, 0.25) !important;
}
.ld-add-all-btn:hover md-icon {
  color: #fff !important;
}
.waitry-dark-theme .ld-add-all-btn {
  background: rgba(255, 255, 255, 0.04) !important;
  border-color: #2D3139 !important;
  color: #90CAF9 !important;
}
.waitry-dark-theme .ld-add-all-btn md-icon {
  color: #90CAF9 !important;
}
.waitry-dark-theme .ld-add-all-btn:hover {
  background: rgba(21, 101, 192, 0.2) !important;
  border-color: #90CAF9 !important;
  color: #fff !important;
}
.waitry-dark-theme .ld-add-all-btn:hover md-icon {
  color: #fff !important;
}

.ld-content-area {
  display: flex;
  flex-direction: row;
  flex: 1;
  overflow: hidden;
  min-height: 0;
}

.ld-left-panel {
  width: var(--ld-panel-width, 280px);
  min-width: var(--ld-panel-width, 280px);
  max-width: var(--ld-panel-width, 280px);
  display: flex;
  flex-direction: column;
  background: #FFFFFF;
  border-right: 1px solid #E0E4E8;
  overflow: visible !important;
  z-index: 5;
  position: relative;
}
.ld-left-panel .ld-panel-resize-handle {
  position: absolute;
  top: 0;
  right: -3px;
  width: 6px;
  height: 100%;
  cursor: col-resize;
  z-index: 1000;
  background: transparent;
  transition: background 0.15s ease;
}
.ld-left-panel .ld-panel-resize-handle:hover, .ld-left-panel .ld-panel-resize-handle.resizing {
  background: rgba(236, 78, 54, 0.25);
}
.waitry-dark-theme .ld-left-panel {
  background: #1E2128;
  border-color: #2D3139;
}

.ld-panel-tabs {
  display: flex;
  border-bottom: 1px solid #E0E4E8;
}
.waitry-dark-theme .ld-panel-tabs {
  border-color: #2D3139;
}

.ld-panel-tab {
  flex: 1;
  padding: 10px 6px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #6B7280;
  background: transparent;
  border: none;
  border-bottom: 2px solid transparent;
  cursor: pointer;
  transition: all 0.2s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
}
.ld-panel-tab:hover {
  color: #1565C0;
}
.ld-panel-tab.active {
  color: #1565C0;
  border-bottom-color: #1565C0;
  background: #E3F2FD;
}
.ld-panel-tab.disabled {
  opacity: 0.4;
  cursor: not-allowed;
}
.waitry-dark-theme .ld-panel-tab {
  color: #9CA3AF;
}
.waitry-dark-theme .ld-panel-tab.active {
  color: #90CAF9;
  border-color: #90CAF9;
  background: rgba(144, 202, 249, 0.1);
}

.ld-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  background: #FF6D00;
  color: #fff;
  border-radius: 9px;
  font-size: 10px;
  font-weight: 700;
  line-height: 1;
}

.ld-panel-content {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 12px;
}
.ld-panel-content::-webkit-scrollbar {
  width: 4px;
}
.ld-panel-content::-webkit-scrollbar-track {
  background: transparent;
}
.ld-panel-content::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.15);
  border-radius: 4px;
}
.waitry-dark-theme .ld-panel-content::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.15);
}

.ld-asset-search {
  display: flex;
  align-items: center;
  height: 36px;
  padding: 0 10px;
  border: 1px solid #E0E4E8;
  border-radius: 6px;
  background: #F4F6F8;
  margin-bottom: 10px;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.ld-asset-search:focus-within {
  border-color: #1565C0;
  box-shadow: 0 0 0 2px rgba(21, 101, 192, 0.15);
}
.ld-asset-search .ld-search-icon {
  font-size: 18px !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  color: #6B7280;
  margin-right: 8px;
  display: flex !important;
  align-items: center;
  justify-content: center;
}
.ld-asset-search .ld-search-input {
  flex: 1;
  border: none !important;
  background: transparent !important;
  outline: none !important;
  font-size: 13px;
  color: #1A1A2E;
  padding: 0 !important;
  height: 100%;
  margin: 0 !important;
}
.ld-asset-search .ld-search-input::placeholder {
  color: #6B7280;
  opacity: 1;
}
.waitry-dark-theme .ld-asset-search {
  background: rgba(255, 255, 255, 0.06);
  border-color: #2D3139;
}
.waitry-dark-theme .ld-asset-search:focus-within {
  border-color: #90CAF9;
  box-shadow: 0 0 0 2px rgba(144, 202, 249, 0.15);
}
.waitry-dark-theme .ld-asset-search .ld-search-input {
  color: #E2E8F0;
}
.waitry-dark-theme .ld-asset-search .ld-search-input::placeholder {
  color: #9CA3AF;
}

.ld-category-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-bottom: 10px;
}

.ld-cat-pill {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 4px 10px;
  border-radius: 20px;
  font-size: 11px;
  font-weight: 600;
  border: 1px solid #E0E4E8;
  background: transparent;
  color: #6B7280;
  cursor: pointer;
  transition: all 0.2s;
  white-space: nowrap;
}
.ld-cat-pill:hover {
  border-color: #1565C0;
  color: #1565C0;
  background: #E3F2FD;
}
.ld-cat-pill.active {
  background: #1565C0;
  color: #fff;
  border-color: #1565C0;
  box-shadow: 0 2px 8px rgba(21, 101, 192, 0.3);
}
.ld-cat-pill.active md-icon {
  color: #fff !important;
}
.ld-cat-pill .ld-cat-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  line-height: 1;
}
.waitry-dark-theme .ld-cat-pill {
  border-color: #2D3139;
  color: #9CA3AF;
}
.waitry-dark-theme .ld-cat-pill:hover {
  border-color: #90CAF9;
  color: #90CAF9;
  background: rgba(21, 101, 192, 0.2);
}
.waitry-dark-theme .ld-cat-pill.active {
  background: #1565C0;
  color: #fff;
}

.ld-asset-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 6px;
}

.ld-asset-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 10px 6px 8px;
  border: 1px solid #E0E4E8;
  border-radius: 6px;
  cursor: grab;
  background: #F4F6F8;
  transition: all 0.2s ease;
  text-align: center;
  min-height: 66px;
}
.ld-asset-card:hover {
  border-color: #1565C0;
  background: #E3F2FD;
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}
.ld-asset-card:active {
  cursor: grabbing;
  transform: scale(0.96);
}
.ld-asset-card .ld-asset-icon {
  font-size: 22px;
  line-height: 1;
  margin-bottom: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
}
.ld-asset-card .ld-asset-icon .ld-asset-svg-preview {
  width: 44px;
  height: 44px;
  object-fit: contain;
  display: block;
  pointer-events: none;
  border-radius: 4px;
}
.ld-asset-card .ld-asset-label {
  font-size: 10px;
  font-weight: 600;
  color: #6B7280;
  line-height: 1.2;
}
.waitry-dark-theme .ld-asset-card {
  background: rgba(255, 255, 255, 0.04);
  border-color: #2D3139;
}
.waitry-dark-theme .ld-asset-card:hover {
  background: rgba(21, 101, 192, 0.2);
  border-color: #90CAF9;
}
.waitry-dark-theme .ld-asset-card .ld-asset-label {
  color: #9CA3AF;
}

.ld-no-assets {
  grid-column: 1/-1;
  text-align: center;
  padding: 24px 0;
  color: #6B7280;
  font-size: 13px;
}

.ld-section-header {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #6B7280;
  margin-bottom: 4px;
}

.ld-section-hint {
  font-size: 12px;
  color: #6B7280;
  margin-bottom: 10px;
}

.ld-unassigned-list {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.ld-unassigned-table {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border: 1px solid #E0E4E8;
  border-radius: 10px;
  background: #F4F6F8;
  cursor: pointer;
  transition: all 0.2s ease;
}
.ld-unassigned-table:hover {
  border-color: #1565C0;
  background: #E3F2FD;
  transform: translateX(2px);
}
.ld-unassigned-table .ld-utbl-main {
  display: contents;
}
.ld-unassigned-table .ld-utbl-icon {
  font-size: 20px;
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ld-unassigned-table .ld-utbl-svg {
  width: 32px;
  height: 32px;
  object-fit: contain;
  display: block;
}
.ld-unassigned-table .ld-utbl-info {
  flex: 1;
}
.ld-unassigned-table .ld-utbl-name {
  font-size: 13px;
  font-weight: 600;
  color: #1A1A2E;
}
.waitry-dark-theme .ld-unassigned-table .ld-utbl-name {
  color: #E2E8F0;
}
.ld-unassigned-table .ld-utbl-detail {
  font-size: 11px;
  color: #6B7280;
}
.ld-unassigned-table .ld-utbl-add-icon {
  color: #1565C0;
  font-size: 20px !important;
  opacity: 0;
  transition: opacity 0.2s;
}
.ld-unassigned-table:hover .ld-utbl-add-icon {
  opacity: 1;
}
.waitry-dark-theme .ld-unassigned-table {
  background: rgba(255, 255, 255, 0.04);
  border-color: #2D3139;
}
.waitry-dark-theme .ld-unassigned-table:hover {
  background: rgba(21, 101, 192, 0.12);
  border-color: #90CAF9;
}

.ld-empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 32px 0;
  color: #6B7280;
  font-size: 13px;
  text-align: center;
}
.ld-empty-state .ld-empty-icon {
  font-size: 36px !important;
  color: #A5D6A7;
}

.ld-props-panel {
  padding: 10px;
}

.ld-props-header {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
  font-size: 15px;
  font-weight: 700;
  color: #1A1A2E;
}
.ld-props-header md-icon {
  color: #1565C0;
}
.waitry-dark-theme .ld-props-header {
  color: #E2E8F0;
}

.ld-fieldset {
  margin-bottom: 12px !important;
}
.ld-fieldset .ld-legend {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #6B7280;
}

.ld-type-picker-wrap {
  margin-bottom: 12px;
}

.ld-type-picker-label {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #6B7280;
  margin-bottom: 8px;
}
.waitry-dark-theme .ld-type-picker-label {
  color: #9CA3AF;
}

.ld-type-picker-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 6px;
}

.ld-type-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 8px 4px 6px;
  border: 2px solid #E0E4E8;
  border-radius: 10px;
  background: #F4F6F8;
  cursor: pointer;
  transition: all 0.18s ease;
  font-family: inherit;
  min-height: 68px;
}
.ld-type-card:hover {
  border-color: #1565C0;
  background: #E3F2FD;
  transform: translateY(-1px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}
.ld-type-card.active {
  border-color: #1565C0;
  background: #E3F2FD;
  box-shadow: 0 0 0 1px #1565C0 inset;
}
.ld-type-card.active .ld-type-card-label {
  color: #1565C0;
  font-weight: 700;
}
.ld-type-card.active .ld-type-card-icon md-icon {
  color: #1565C0;
}
.ld-type-card .ld-type-card-icon {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ld-type-card .ld-type-card-icon md-icon {
  font-size: 24px !important;
  width: 24px !important;
  height: 24px !important;
  color: #6B7280;
}
.ld-type-card .ld-type-card-img {
  width: 40px;
  height: 40px;
  object-fit: contain;
  display: block;
  pointer-events: none;
}
.ld-type-card .ld-type-card-label {
  font-size: 10px;
  font-weight: 600;
  color: #6B7280;
  text-align: center;
  line-height: 1.2;
  max-width: 100%;
  word-break: break-word;
  hyphens: auto;
}
.waitry-dark-theme .ld-type-card {
  background: rgba(255, 255, 255, 0.04);
  border-color: #2D3139;
}
.waitry-dark-theme .ld-type-card:hover {
  background: rgba(21, 101, 192, 0.2);
  border-color: #90CAF9;
}
.waitry-dark-theme .ld-type-card.active {
  background: rgba(21, 101, 192, 0.2);
  border-color: #90CAF9;
  box-shadow: 0 0 0 1px #90CAF9 inset;
}
.waitry-dark-theme .ld-type-card.active .ld-type-card-label {
  color: #90CAF9;
}
.waitry-dark-theme .ld-type-card.active .ld-type-card-icon md-icon {
  color: #90CAF9;
}
.waitry-dark-theme .ld-type-card .ld-type-card-label {
  color: #9CA3AF;
}

.ld-props-input md-input-container {
  margin-bottom: 4px !important;
  padding-bottom: 0 !important;
}
.ld-props-input input {
  font-size: 13px !important;
}

.ld-metric-display {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 0 4px;
}
.ld-metric-display .ld-metric-label {
  font-size: 10px;
  color: #6B7280;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.ld-metric-display .ld-metric-value {
  font-size: 12px;
  font-weight: 600;
  color: #1565C0;
  font-variant-numeric: tabular-nums;
}

.ld-attrs-row {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-top: 6px;
}

.ld-attr-chip {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 4px 8px;
  border: 1px solid #E0E4E8;
  border-radius: 20px;
  font-size: 11px;
  font-weight: 600;
  background: transparent;
  cursor: pointer;
  color: #6B7280;
  transition: all 0.2s;
}
.ld-attr-chip:hover {
  border-color: #1565C0;
  color: #1565C0;
}
.ld-attr-chip.active {
  background: #1565C0;
  color: #fff;
  border-color: #1565C0;
}
.waitry-dark-theme .ld-attr-chip {
  border-color: #2D3139;
  color: #9CA3AF;
}
.waitry-dark-theme .ld-attr-chip.active {
  background: #1565C0;
  color: #fff;
}

.ld-color-row {
  margin: 8px 0;
  font-size: 12px;
  color: #6B7280;
}

.ld-color-input {
  width: 36px;
  height: 28px;
  border: 1px solid #E0E4E8;
  border-radius: 4px;
  cursor: pointer;
  padding: 2px;
}

.ld-color-preview {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  border: 2px solid #fff;
  box-shadow: 0 0 0 1px #E0E4E8;
}

.ld-opacity-row {
  font-size: 12px;
  color: #6B7280;
  margin-bottom: 4px;
}

.ld-range-input {
  flex: 1;
  accent-color: #1565C0;
}

.ld-opacity-value {
  min-width: 36px;
  font-size: 11px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
}

.ld-props-actions {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-top: 8px;
  flex-wrap: wrap;
}

.ld-delete-btn {
  font-size: 12px !important;
  min-height: 34px !important;
}

.ld-canvas-wrap {
  flex: 1;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  position: relative;
  background: #F4F6F8;
}
.waitry-dark-theme .ld-canvas-wrap {
  background: #23272E;
}

.ld-canvas-container {
  position: relative;
  flex: 1;
  overflow: hidden;
  cursor: default;
  background: repeating-conic-gradient(#E0E0E0 0% 25%, #EEEEEE 0% 50%) 0 0/20px 20px;
}
.waitry-dark-theme .ld-canvas-container {
  background: repeating-conic-gradient(#232323 0% 25%, #1C1C1C 0% 50%) 0 0/20px 20px;
}

.ld-loading-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: rgba(244, 246, 248, 0.85);
  gap: 16px;
  z-index: 99;
  font-size: 14px;
  color: #6B7280;
}
.waitry-dark-theme .ld-loading-overlay {
  background: rgba(28, 31, 36, 0.85);
}

.ld-status-bar {
  display: flex;
  align-items: center;
  gap: 16px;
  height: 28px;
  min-height: 28px;
  padding: 0 16px;
  background: #FFFFFF;
  border-top: 1px solid #E0E4E8;
  font-size: 11px;
  color: #6B7280;
  font-variant-numeric: tabular-nums;
  user-select: none;
}
.waitry-dark-theme .ld-status-bar {
  background: #1E2128;
  border-color: #2D3139;
  color: #9CA3AF;
}

.ld-cursor-pos {
  font-family: "SF Mono", "Roboto Mono", monospace;
  font-size: 11px;
  min-width: 130px;
}

.ld-canvas-dim {
  font-weight: 600;
}

.ld-status-icon {
  font-size: 13px !important;
  vertical-align: middle;
  margin-right: 2px;
}

.ld-kbd-hint {
  margin-left: auto;
  opacity: 0.6;
}

.ld-context-menu {
  position: fixed;
  background: #FFFFFF;
  border: 1px solid #E0E4E8;
  border-radius: 10px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
  min-width: 180px;
  padding: 4px 0;
  z-index: 1000;
}
.waitry-dark-theme .ld-context-menu {
  background: #252830;
  border-color: #2D3139;
}

.ld-ctx-item {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 8px 14px;
  border: none;
  background: transparent;
  cursor: pointer;
  font-size: 13px;
  color: #1A1A2E;
  transition: background 0.15s;
  text-align: left;
}
.ld-ctx-item:hover {
  background: #F4F6F8;
}
.ld-ctx-item md-icon {
  font-size: 16px !important;
  color: #6B7280;
}
.waitry-dark-theme .ld-ctx-item {
  color: #E2E8F0;
}
.waitry-dark-theme .ld-ctx-item:hover {
  background: rgba(255, 255, 255, 0.06);
}

.ld-ctx-separator {
  height: 1px;
  background: #E0E4E8;
  margin: 4px 0;
}
.waitry-dark-theme .ld-ctx-separator {
  background: #2D3139;
}

.ld-settings-dialog {
  min-width: 520px;
  max-width: 560px;
}
.waitry-dark-theme .ld-settings-dialog {
  background: #1E2128;
  color: #E2E8F0;
}

.ld-settings-toolbar {
  background: #1565C0 !important;
}
.ld-settings-toolbar .ld-settings-icon {
  color: #fff !important;
  margin-right: 8px;
}

.ld-settings-content {
  padding: 16px 24px;
}

.ld-settings-section {
  margin-bottom: 20px;
}

.ld-settings-label {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #6B7280;
  margin-bottom: 10px;
}

.ld-preset-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 6px;
}

.ld-preset-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 8px 4px;
  border: 1px solid #E0E4E8;
  border-radius: 6px;
  cursor: pointer;
  background: #F4F6F8;
  transition: all 0.2s;
  font-family: inherit;
}
.ld-preset-card:hover {
  border-color: #1565C0;
  background: #E3F2FD;
}
.ld-preset-card.active {
  border-color: #1565C0;
  background: #1565C0;
  color: #fff;
}
.ld-preset-card.active .ld-preset-dims,
.ld-preset-card.active .ld-preset-label {
  color: #fff !important;
}
.ld-preset-card .ld-preset-dims {
  font-size: 12px;
  font-weight: 700;
  color: #1A1A2E;
}
.ld-preset-card .ld-preset-label {
  font-size: 9px;
  color: #6B7280;
  text-align: center;
  line-height: 1.2;
  margin-top: 2px;
}
.waitry-dark-theme .ld-preset-card {
  background: rgba(255, 255, 255, 0.04);
  border-color: #2D3139;
}
.waitry-dark-theme .ld-preset-card:hover {
  background: rgba(21, 101, 192, 0.2);
  border-color: #90CAF9;
}
.waitry-dark-theme .ld-preset-card.active {
  background: #1565C0;
  border-color: #90CAF9;
}
.waitry-dark-theme .ld-preset-card .ld-preset-dims {
  color: #E2E8F0;
}
.waitry-dark-theme .ld-preset-card .ld-preset-label {
  color: #9CA3AF;
}

.ld-input-suffix {
  font-size: 11px;
  color: #6B7280;
  margin-top: 2px;
  display: block;
}

.ld-grid-presets {
  display: flex;
  gap: 4px;
  flex-wrap: wrap;
  margin-left: 4px;
}

.ld-grid-preset {
  padding: 4px 10px;
  border: 1px solid #E0E4E8;
  border-radius: 20px;
  font-size: 11px;
  font-weight: 600;
  background: transparent;
  cursor: pointer;
  color: #6B7280;
  transition: all 0.2s;
  font-family: inherit;
}
.ld-grid-preset:hover {
  border-color: #1565C0;
  color: #1565C0;
}
.ld-grid-preset.active {
  background: #1565C0;
  color: #fff;
  border-color: #1565C0;
}
.waitry-dark-theme .ld-grid-preset {
  border-color: #2D3139;
  color: #9CA3AF;
}
.waitry-dark-theme .ld-grid-preset:hover {
  border-color: #90CAF9;
  color: #90CAF9;
}
.waitry-dark-theme .ld-grid-preset.active {
  background: #1565C0;
  color: #fff;
  border-color: #90CAF9;
}

.ld-room-preview {
  margin-top: 12px;
}

.ld-room-preview-label {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-weight: 600;
  color: #6B7280;
  margin-bottom: 8px;
}

.ld-room-preview-canvas {
  background: #F4F6F8;
  border: 1px solid #E0E4E8;
  border-radius: 10px;
  height: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.waitry-dark-theme .ld-room-preview-canvas {
  background: rgba(255, 255, 255, 0.04);
  border-color: #2D3139;
}

.ld-room-rect {
  background: #E3F2FD;
  border: 2px solid #1565C0;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  min-height: 30px;
  max-width: 280px;
  max-height: 100px;
  transition: all 0.4s ease;
}
.ld-room-rect .ld-room-dim-label {
  font-size: 11px;
  font-weight: 700;
  color: #1565C0;
  white-space: nowrap;
}

body.is-resizing-ld-panel {
  cursor: col-resize !important;
  user-select: none !important;
}
body.is-resizing-ld-panel .ld-left-panel {
  transition: none !important;
}

.ld-settings-warning {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 12px;
  background: #FFF8E1;
  border: 1px solid #FFCA28;
  border-radius: 6px;
  font-size: 12px;
  color: #F57F17;
  margin-top: 8px;
}
.ld-settings-warning md-icon {
  color: #F57F17 !important;
  font-size: 18px !important;
}
.waitry-dark-theme .ld-settings-warning {
  background: rgba(255, 202, 40, 0.12);
  border-color: rgba(255, 202, 40, 0.35);
  color: #FFCA28;
}
.waitry-dark-theme .ld-settings-warning md-icon {
  color: #FFCA28 !important;
}

.ld-floor-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 10px;
  margin-top: 4px;
}
@media (max-width: 520px) {
  .ld-floor-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.ld-floor-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  background: none;
  border: 2px solid transparent;
  border-radius: 6px;
  padding: 4px;
  cursor: pointer;
  transition: border-color 0.18s ease, transform 0.12s ease;
}
.ld-floor-card:hover {
  border-color: rgba(21, 101, 192, 0.3);
  transform: translateY(-1px);
}
.ld-floor-card.active {
  border-color: #1565C0;
  background: #E3F2FD;
}
.waitry-dark-theme .ld-floor-card.active {
  background: rgba(21, 101, 192, 0.18);
}
.waitry-dark-theme .ld-floor-card:hover {
  border-color: rgba(144, 202, 249, 0.35);
}
.waitry-dark-theme .ld-floor-card.active {
  border-color: #90CAF9;
}

.ld-floor-preview {
  width: 100%;
  aspect-ratio: 1;
  border-radius: 5px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  position: relative;
  overflow: hidden;
  transition: box-shadow 0.18s ease;
}
.ld-floor-card:hover .ld-floor-preview {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.14);
}
.waitry-dark-theme .ld-floor-preview {
  border-color: rgba(255, 255, 255, 0.12);
}

.ld-floor-check {
  color: #1565C0 !important;
  font-size: 20px !important;
  width: 20px !important;
  height: 20px !important;
  background: rgba(255, 255, 255, 0.88);
  border-radius: 50%;
  padding: 1px;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
}

.ld-floor-label {
  font-size: 10px;
  font-weight: 500;
  color: #6B7280;
  text-align: center;
  line-height: 1.2;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}
.ld-floor-card.active .ld-floor-label {
  color: #1565C0;
  font-weight: 600;
}
.waitry-dark-theme .ld-floor-label {
  color: #9CA3AF;
}
.waitry-dark-theme .ld-floor-card.active .ld-floor-label {
  color: #90CAF9;
}

.ld-props-color-section {
  margin-top: 15px;
  border-top: 1px dashed #E0E4E8;
  padding-top: 12px;
}
.waitry-dark-theme .ld-props-color-section {
  border-top-color: #2D3139;
}

.ld-props-sublabel {
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #6B7280;
  margin-bottom: 8px;
}
.waitry-dark-theme .ld-props-sublabel {
  color: #9CA3AF;
}

.ld-color-palette {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  margin-bottom: 16px;
}

.ld-swatch {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 1.5px solid transparent;
  cursor: pointer;
  transition: transform 0.1s ease, border-color 0.1s ease;
  padding: 0;
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.06);
}
.ld-swatch:hover {
  transform: scale(1.15);
}
.ld-swatch.active {
  border-color: #1565C0;
  box-shadow: 0 0 0 1.5px #fff, 0 0 0 3px #1565C0;
}
.waitry-dark-theme .ld-swatch.active {
  border-color: #90CAF9;
  box-shadow: 0 0 0 1.5px #1E2128, 0 0 0 3px #90CAF9;
}

.ld-color-free {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 1.5px dashed rgba(0, 0, 0, 0.25);
  padding: 0;
  cursor: pointer;
  background: conic-gradient(red, yellow, lime, aqua, blue, magenta, red);
  -webkit-appearance: none;
  transition: transform 0.1s ease;
}
.ld-color-free:hover {
  transform: scale(1.15);
}
.ld-color-free::-webkit-color-swatch-wrapper {
  padding: 0;
  border-radius: 50%;
}
.ld-color-free::-webkit-color-swatch {
  border: none;
  border-radius: 50%;
  opacity: 0;
}
.waitry-dark-theme .ld-color-free {
  border-color: rgba(255, 255, 255, 0.35);
}
.ld-color-free.active {
  border-color: #1565C0;
  box-shadow: 0 0 0 1.5px #fff, 0 0 0 3px #1565C0;
}
.waitry-dark-theme .ld-color-free.active {
  border-color: #90CAF9;
  box-shadow: 0 0 0 1.5px #1E2128, 0 0 0 3px #90CAF9;
}

.ld-asset-grid .ld-asset-card.ng-enter,
.ld-asset-grid .ld-asset-card.ng-leave {
  transition: none !important;
  animation: none !important;
}

.low-stock-row {
  background-color: rgba(229, 57, 53, 0.05) !important;
  color: #c62828 !important;
}
.low-stock-row:hover {
  background-color: rgba(229, 57, 53, 0.09) !important;
}
.low-stock-row td {
  color: #c62828 !important;
}
.low-stock-row td.bold {
  color: #c62828 !important;
}

.recipe-out-of-stock-badge {
  display: inline-flex;
  align-items: center;
  font-size: 10px;
  padding: 2px 6px;
  border-radius: 4px;
  background: rgba(229, 57, 53, 0.08);
  color: #c62828;
  border: 1px solid rgba(229, 57, 53, 0.2);
  font-weight: 600;
  gap: 3px;
}
.recipe-out-of-stock-badge i {
  font-size: 11px;
  vertical-align: middle;
}

.wf-preview-container {
  margin-top: 15px;
  padding: 15px;
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.02);
  border: 1px solid rgba(0, 0, 0, 0.08);
}
.wf-preview-container h4 {
  margin-top: 0;
  margin-bottom: 12px;
  font-weight: 600;
  color: #333;
}
.waitry-dark-theme .wf-preview-container h4 {
  color: var(--an-text-muted);
}
.wf-preview-container .bold {
  font-weight: 600;
}
.wf-preview-container .color-primary {
  color: #FF5722;
}

/* Food Cost Badges */
.food-cost-badge {
  display: inline-flex;
  align-items: center;
  font-size: 10px;
  padding: 2px 6px;
  border-radius: 4px;
  font-weight: 600;
  border: 1px solid transparent;
  margin-left: 5px;
}
.food-cost-badge--green {
  background: rgba(76, 175, 80, 0.08);
  color: #2e7d32;
  border-color: rgba(76, 175, 80, 0.2);
}
.food-cost-badge--yellow {
  background: rgba(255, 235, 59, 0.15);
  color: #f57f17;
  border-color: rgba(255, 235, 59, 0.3);
}
.food-cost-badge--red {
  background: rgba(244, 67, 54, 0.08);
  color: #c62828;
  border-color: rgba(244, 67, 54, 0.2);
}

/* Menu Engineering Scatter Plot Dashboard */
.me-dashboard {
  padding: 24px;
}
.me-dashboard .me-card {
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
  margin-bottom: 24px;
  border: 1px solid rgba(0, 0, 0, 0.06);
  overflow: hidden;
}
.waitry-dark-theme .me-dashboard .me-card {
  background: var(--an-surface);
}
.me-dashboard .me-chart-wrapper {
  position: relative;
  padding: 30px;
  background: #fafafa;
}
.waitry-dark-theme .me-dashboard .me-chart-wrapper {
  background: var(--an-surface2);
}
.me-dashboard .me-chart-container {
  position: relative;
  width: 100%;
  height: 400px;
  border: 2px solid #e0e0e0;
  background: #ffffff;
  border-radius: 8px;
  overflow: hidden;
}
.waitry-dark-theme .me-dashboard .me-chart-container {
  background: var(--an-surface3);
}
.me-dashboard .me-axis-label-x {
  text-align: center;
  font-weight: 600;
  margin-top: 10px;
  color: #666;
  font-size: 13px;
}
.me-dashboard .me-axis-label-y {
  position: absolute;
  left: -45px;
  top: 50%;
  transform: rotate(-90deg) translate(-50%, 0);
  transform-origin: 0 0;
  font-weight: 600;
  color: #666;
  font-size: 13px;
}
.me-dashboard {
  /* Quadrant Grid Dividers */
}
.me-dashboard .me-divider-v {
  position: absolute;
  top: 0;
  bottom: 0;
  border-left: 2px dashed #9e9e9e;
  z-index: 1;
  display: flex;
  align-items: flex-end;
}
.me-dashboard .me-divider-v .me-divider-tag {
  background: #757575;
  color: #fff;
  font-size: 9px;
  padding: 2px 6px;
  border-radius: 4px;
  transform: translate(-50%, -10px);
  white-space: nowrap;
  font-weight: bold;
}
.me-dashboard .me-divider-h {
  position: absolute;
  left: 0;
  right: 0;
  border-bottom: 2px dashed #9e9e9e;
  z-index: 1;
  display: flex;
  justify-content: flex-end;
}
.me-dashboard .me-divider-h .me-divider-tag {
  background: #757575;
  color: #fff;
  font-size: 9px;
  padding: 2px 6px;
  border-radius: 4px;
  transform: translate(-10px, 50%);
  white-space: nowrap;
  font-weight: bold;
}
.me-dashboard {
  /* Quadrant Label Text Overlay */
}
.me-dashboard .me-quad-label {
  position: absolute;
  font-weight: 800;
  font-size: 20px;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  pointer-events: none;
  z-index: 0;
  opacity: 0.08;
  display: flex;
  align-items: center;
  gap: 8px;
}
.me-dashboard .me-quad-label.star {
  top: 20px;
  right: 20px;
  color: #4CAF50;
}
.me-dashboard .me-quad-label.plow {
  top: 20px;
  left: 20px;
  color: #2196F3;
}
.me-dashboard .me-quad-label.puzzle {
  bottom: 20px;
  right: 20px;
  color: #FF9800;
}
.me-dashboard .me-quad-label.dog {
  bottom: 20px;
  left: 20px;
  color: #F44336;
}
.me-dashboard {
  /* Interactive Data Point Dots */
}
.me-dashboard .me-dot {
  position: absolute;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  border: 2px solid #ffffff;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  transform: translate(-50%, 50%);
  cursor: pointer;
  z-index: 2;
  transition: all 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.me-dashboard .me-dot:hover {
  transform: translate(-50%, 50%) scale(1.6);
  z-index: 10;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
}
.me-dashboard .me-dot--star {
  background-color: #4CAF50;
  box-shadow: 0 0 8px rgba(76, 175, 80, 0.5), 0 2px 6px rgba(0, 0, 0, 0.2);
}
.me-dashboard .me-dot--plow {
  background-color: #2196F3;
  box-shadow: 0 0 8px rgba(33, 150, 243, 0.5), 0 2px 6px rgba(0, 0, 0, 0.2);
}
.me-dashboard .me-dot--puzzle {
  background-color: #FF9800;
  box-shadow: 0 0 8px rgba(255, 152, 0, 0.5), 0 2px 6px rgba(0, 0, 0, 0.2);
}
.me-dashboard .me-dot--dog {
  background-color: #F44336;
  box-shadow: 0 0 8px rgba(244, 67, 54, 0.5), 0 2px 6px rgba(0, 0, 0, 0.2);
}

.status-badge {
  display: inline-flex;
  align-items: center;
  padding: 3px 10px;
  border-radius: 20px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.3px;
}
.status-badge.status-draft {
  background: rgba(158, 158, 158, 0.12);
  color: #616161;
  border: 1px solid rgba(158, 158, 158, 0.3);
}
.status-badge.status-in-progress {
  background: rgba(33, 150, 243, 0.1);
  color: #1565c0;
  border: 1px solid rgba(33, 150, 243, 0.25);
}
.status-badge.status-complete {
  background: rgba(76, 175, 80, 0.1);
  color: #2e7d32;
  border: 1px solid rgba(76, 175, 80, 0.25);
}

.stocktake-form-view .stocktake-progress-block {
  padding: 16px 24px 8px;
}
.stocktake-form-view .stocktake-progress-block .progress-label {
  font-size: 13px;
  color: #555;
  margin-bottom: 8px;
}
.waitry-dark-theme .stocktake-form-view .stocktake-progress-block .progress-label {
  color: var(--an-text-muted);
}
.stocktake-form-view .stocktake-progress-block .progress-pct {
  font-weight: 600;
  color: #FF5722;
  margin-left: 6px;
}
.stocktake-form-view .stocktake-progress-block .stocktake-progress-bar {
  height: 6px;
  border-radius: 3px;
}
.stocktake-form-view .stocktake-filters {
  display: flex;
  gap: 16px;
  align-items: center;
  flex-wrap: wrap;
  padding: 12px 16px;
  margin-bottom: 8px;
}
.stocktake-form-view .stocktake-filters .search-field {
  flex: 1;
  min-width: 200px;
}
.stocktake-form-view .stocktake-count-sheet {
  padding: 0;
  overflow: auto;
}
.stocktake-form-view .stocktake-count-sheet .count-sheet-grid {
  min-width: 600px;
}
.stocktake-form-view .stocktake-count-sheet .count-row {
  display: grid;
  grid-template-columns: 2fr 1fr 120px 80px 1.5fr;
  align-items: center;
  gap: 12px;
  padding: 10px 16px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.06);
  transition: background 0.15s;
}
.stocktake-form-view .stocktake-count-sheet .count-row:hover {
  background: rgba(0, 0, 0, 0.02);
}
.stocktake-form-view .stocktake-count-sheet .count-row-header {
  background: #f5f5f5;
  font-weight: 600;
  font-size: 12px;
  color: #666;
  text-transform: uppercase;
  padding: 12px 16px;
  border-radius: 8px 8px 0 0;
}
.waitry-dark-theme .stocktake-form-view .stocktake-count-sheet .count-row-header {
  background: var(--an-surface2);
}
.stocktake-form-view .stocktake-count-sheet .count-row-counted {
  background: rgba(76, 175, 80, 0.04);
}

.variance-report-view .inventory-toolbar .inventory-toolbar__tools {
  align-items: center;
  gap: 16px !important;
}
.variance-report-view .restaurant-type-segmented {
  background: var(--an-surface2, #f3f4f6);
  border-radius: var(--an-radius-sm, 8px);
  padding: 2px;
  border: 1px solid var(--an-border-light, rgba(0, 0, 0, 0.03));
  height: 38px;
  align-items: center;
}
.variance-report-view .restaurant-type-segmented .segmented-btn {
  background: transparent;
  border: 0;
  color: var(--an-text-muted, #6B7280);
  font-size: 12.5px;
  font-weight: 600;
  padding: 0 14px;
  height: 32px;
  border-radius: var(--an-radius-xs, 6px);
  cursor: pointer;
  transition: all var(--duration-fast, 150ms) var(--ease-default);
}
.variance-report-view .restaurant-type-segmented .segmented-btn:hover {
  color: var(--an-text, #111827);
}
.variance-report-view .restaurant-type-segmented .segmented-btn.active {
  background: var(--an-surface, #ffffff);
  color: var(--an-primary, #497fe4);
  box-shadow: var(--an-shadow-xs, 0 1px 2px rgba(0, 0, 0, 0.04));
}
.variance-report-view .restaurant-type-info-btn {
  background: transparent;
  border: 0;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--an-text-muted, #6B7280);
  cursor: pointer;
  flex-shrink: 0;
  transition: all var(--duration-fast, 150ms) var(--ease-default);
}
.variance-report-view .restaurant-type-info-btn md-icon {
  font-size: 17px;
  color: inherit;
}
.variance-report-view .restaurant-type-info-btn:hover {
  background: var(--an-surface2, #f3f4f6);
  color: var(--an-primary, #497fe4);
}
.variance-report-view .variance-health-layout {
  grid-column: 1/-1;
  width: 100%;
}
.variance-report-view .variance-health-layout .radial-gauge-container {
  position: relative;
  width: 54px;
  height: 54px;
}
.variance-report-view .variance-health-layout .radial-gauge-container .radial-gauge {
  width: 100%;
  height: 100%;
  transform: rotate(-90deg);
}
.variance-report-view .variance-health-layout .radial-gauge-container .radial-gauge__bg {
  fill: none;
  stroke: var(--an-surface2, #f3f4f6);
  stroke-width: 3.5;
}
.variance-report-view .variance-health-layout .radial-gauge-container .radial-gauge__fill {
  fill: none;
  stroke-width: 3.5;
  stroke-linecap: round;
  transition: stroke-dasharray var(--duration-slow, 400ms) var(--ease-spring);
}
.variance-report-view .variance-health-layout .radial-gauge-container .radial-gauge__icon-overlay {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.variance-report-view .variance-health-layout .radial-gauge-container .radial-gauge__icon-overlay i {
  font-size: 20px;
}
.variance-report-view .variance-health-layout .variance-health-details {
  flex: 1;
}
.variance-report-view .inventory-kpi-card.variance-grade-green {
  border-top: 4px solid var(--an-emerald, #10b981) !important;
}
.variance-report-view .inventory-kpi-card.variance-grade-green .radial-gauge__fill {
  stroke: var(--an-emerald, #10b981);
}
.variance-report-view .inventory-kpi-card.variance-grade-green .radial-gauge__icon-overlay {
  background: var(--an-emerald, #10b981);
}
.variance-report-view .inventory-kpi-card.variance-grade-green .radial-gauge__icon-overlay i {
  color: #fff;
}
.variance-report-view .inventory-kpi-card.variance-grade-yellow {
  border-top: 4px solid var(--an-amber, #f59e0b) !important;
}
.variance-report-view .inventory-kpi-card.variance-grade-yellow .radial-gauge__fill {
  stroke: var(--an-amber, #f59e0b);
}
.variance-report-view .inventory-kpi-card.variance-grade-yellow .radial-gauge__icon-overlay {
  background: var(--an-amber, #f59e0b);
}
.variance-report-view .inventory-kpi-card.variance-grade-yellow .radial-gauge__icon-overlay i {
  color: #fff;
}
.variance-report-view .inventory-kpi-card.variance-grade-red {
  border-top: 4px solid var(--an-rose, #ec4e36) !important;
}
.variance-report-view .inventory-kpi-card.variance-grade-red .radial-gauge__fill {
  stroke: var(--an-rose, #ec4e36);
}
.variance-report-view .inventory-kpi-card.variance-grade-red .radial-gauge__icon-overlay {
  background: var(--an-rose, #ec4e36);
}
.variance-report-view .inventory-kpi-card.variance-grade-red .radial-gauge__icon-overlay i {
  color: #fff;
}
.variance-report-view .distribution-stacked-bar {
  height: 8px;
  background: var(--an-surface2, #f3f4f6);
  border-radius: var(--an-radius-pill);
  overflow: hidden;
  margin-top: 6px;
  margin-bottom: 8px;
  width: 100%;
}
.variance-report-view .distribution-stacked-bar .dist-bar {
  height: 100%;
  transition: flex var(--duration-norm, 250ms) var(--ease-default);
}
.variance-report-view .distribution-stacked-bar .dist-bar--favorable {
  background: var(--an-emerald, #10b981);
}
.variance-report-view .distribution-stacked-bar .dist-bar--neutral {
  background: var(--an-text-faint, #9ca3af);
}
.variance-report-view .distribution-stacked-bar .dist-bar--unfavorable {
  background: var(--an-rose, #ec4e36);
}
.variance-report-view .distribution-legend {
  width: 100%;
}
.variance-report-view .distribution-legend .legend-item {
  font-size: 11px;
  color: var(--an-text-muted, #6b7280);
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.variance-report-view .distribution-legend .legend-item .legend-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  display: inline-block;
}
.variance-report-view .distribution-legend .legend-item .legend-dot.favorable {
  background: var(--an-emerald, #10b981);
}
.variance-report-view .distribution-legend .legend-item .legend-dot.neutral {
  background: var(--an-text-faint, #9ca3af);
}
.variance-report-view .distribution-legend .legend-item .legend-dot.unfavorable {
  background: var(--an-rose, #ec4e36);
}
.variance-report-view .analytics-toggle-bar {
  margin-top: -4px;
  margin-bottom: 4px;
}
.variance-report-view .analytics-dashboard-panel {
  margin-bottom: 16px;
}
.variance-report-view .analytics-dashboard-panel .analytics-chart-card {
  background: var(--an-surface, #fff);
  padding: 18px 24px;
  border: 1px solid var(--an-border-light, rgba(0, 0, 0, 0.05));
}
.variance-report-view .analytics-dashboard-panel .analytics-chart-card h4 {
  margin-top: 0;
  margin-bottom: 14px;
  font-size: 13.5px;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--an-text-muted, #6b7280);
  letter-spacing: 0.5px;
}
.variance-report-view .variance-chips-row {
  margin-bottom: 8px;
}
.variance-report-view .variance-chips-row .filter-chips .chip-btn {
  background: var(--an-surface, #fff);
  border: 1px solid var(--an-border-light, rgba(0, 0, 0, 0.05));
  color: var(--an-text-muted, #6b7280);
  font-size: 12.5px;
  font-weight: 600;
  border-radius: var(--an-radius-pill, 999px);
  padding: 6px 16px;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  box-shadow: var(--an-shadow-xs, 0 1px 2px rgba(0, 0, 0, 0.02));
  transition: all var(--duration-fast, 150ms) var(--ease-default);
}
.variance-report-view .variance-chips-row .filter-chips .chip-btn .chip-count {
  font-size: 10px;
  background: var(--an-surface2, #f3f4f6);
  color: var(--an-text-muted, #6b7280);
  border-radius: var(--an-radius-pill);
  padding: 1px 6px;
  font-weight: 700;
}
.variance-report-view .variance-chips-row .filter-chips .chip-btn:hover {
  background: var(--an-surface2, #f3f4f6);
  color: var(--an-text, #111827);
}
.variance-report-view .variance-chips-row .filter-chips .chip-btn.active {
  background: var(--an-primary, #497fe4) !important;
  color: var(--an-surface, #ffffff) !important;
  border-color: var(--an-primary, #497fe4) !important;
  box-shadow: 0 4px 12px rgba(73, 127, 228, 0.22);
}
.variance-report-view .variance-chips-row .filter-chips .chip-btn.active .chip-count {
  background: rgba(255, 255, 255, 0.25);
  color: var(--an-surface, #ffffff);
}
.variance-report-view .variance-chips-row .filter-chips .chip-btn--unfavorable.active {
  background: var(--an-rose, #ec4e36) !important;
  border-color: var(--an-rose, #ec4e36) !important;
  box-shadow: 0 4px 12px rgba(236, 78, 54, 0.22);
}
.variance-report-view .variance-chips-row .filter-chips .chip-btn--favorable.active {
  background: var(--an-emerald, #10b981) !important;
  border-color: var(--an-emerald, #10b981) !important;
  box-shadow: 0 4px 12px rgba(16, 185, 129, 0.22);
}
.variance-report-view .variance-chips-row .filter-chips .chip-btn--neutral.active {
  background: var(--an-text-muted, #6b7280) !important;
  border-color: var(--an-text-muted, #6b7280) !important;
  box-shadow: 0 4px 12px rgba(107, 114, 128, 0.22);
}
.variance-report-view .drill-down-drawer {
  background: var(--an-surface, #fff);
  border: 1px solid var(--an-border-light, rgba(0, 0, 0, 0.05));
  margin-bottom: 16px;
  animation: slideDown var(--duration-norm, 250ms) var(--ease-spring);
  overflow: hidden;
}
.variance-report-view .drill-down-drawer__header {
  padding: 16px 24px;
  border-bottom: 1px solid var(--an-border-light, rgba(0, 0, 0, 0.05));
  background: var(--an-bg-subtle, #f9fafb);
}
.variance-report-view .drill-down-drawer__header h3 {
  margin: 0;
  font-size: 16px;
  font-weight: 800;
  color: var(--an-text, #111827);
}
.variance-report-view .drill-down-drawer__header p {
  margin: 2px 0 0;
  font-size: 12px;
}
.variance-report-view .drill-down-drawer__icon {
  width: 38px;
  height: 38px;
  background: var(--an-primary-soft, rgba(73, 127, 228, 0.08));
  color: var(--an-primary, #497fe4);
  border-radius: var(--an-radius-sm);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.variance-report-view .drill-down-drawer__icon i {
  font-size: 18px;
}
.variance-report-view .drill-down-drawer__body {
  padding: 24px;
}
.variance-report-view .drill-down-drawer__body h4 {
  margin-top: 0;
  margin-bottom: 16px;
  font-size: 12px;
  font-weight: 750;
  text-transform: uppercase;
  color: var(--an-text-muted, #6b7280);
  letter-spacing: 0.5px;
}
.variance-report-view .drill-down-drawer .drill-stats-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.variance-report-view .drill-down-drawer .drill-kpi {
  background: var(--an-surface2, #f3f4f6);
  border-radius: var(--an-radius-sm);
  padding: 12px 16px;
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.variance-report-view .drill-down-drawer .drill-kpi .kpi-label {
  font-size: 10px;
  color: var(--an-text-muted, #6b7280);
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 0.3px;
}
.variance-report-view .drill-down-drawer .drill-kpi .kpi-val {
  font-size: 14.5px;
  font-weight: 800;
  color: var(--an-text, #111827);
}
.variance-report-view .drill-down-drawer .drill-kpi .kpi-val small {
  font-weight: 500;
  font-size: 11px;
  color: var(--an-text-muted, #6b7280);
}
.variance-report-view .drill-down-drawer .unexplained-loss-meter {
  background: var(--an-bg-subtle, #f9fafb);
  border: 1px solid var(--an-border-light);
  border-radius: var(--an-radius-sm);
  padding: 12px 16px;
}
.variance-report-view .drill-down-drawer .unexplained-loss-meter .kpi-label {
  font-size: 10px;
  color: var(--an-text-muted, #6b7280);
  text-transform: uppercase;
  font-weight: 700;
}
.variance-report-view .drill-down-drawer .unexplained-loss-meter .meter-track {
  height: 6px;
  background: var(--an-surface3, #e5e7eb);
  border-radius: var(--an-radius-pill);
  overflow: hidden;
  margin-top: 4px;
}
.variance-report-view .drill-down-drawer .unexplained-loss-meter .meter-track .meter-bar {
  height: 100%;
  background: var(--an-rose, #ec4e36);
  border-radius: var(--an-radius-pill);
  transition: width var(--duration-slow, 400ms) var(--ease-out);
}
.variance-report-view .drill-down-drawer .drill-causes-block .kpi-label {
  font-size: 10px;
  color: var(--an-text-muted, #6b7280);
  text-transform: uppercase;
  font-weight: 700;
}
.variance-report-view .drill-down-drawer .drill-causes-block .causes-tags {
  margin-top: 4px;
}
.variance-report-view .drill-down-drawer .drill-causes-block .causes-tags .cause-tag {
  background: rgba(245, 158, 11, 0.08);
  color: var(--an-orange, #f97316);
  border: 1px solid rgba(245, 158, 11, 0.2);
  border-radius: var(--an-radius-xs);
  padding: 4px 10px;
  font-size: 11.5px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.variance-report-view .drill-down-drawer .drill-causes-block .causes-tags .cause-tag i {
  font-size: 12px;
}
.variance-report-view .drill-down-drawer .ledger-timeline-container {
  background: var(--an-bg-subtle, #f9fafb);
  border: 1px solid var(--an-border-light);
  border-radius: var(--an-radius-sm);
  padding: 16px;
  max-height: 250px;
  overflow-y: auto;
}
.variance-report-view .drill-down-drawer .ledger-timeline {
  position: relative;
  padding-left: 20px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.variance-report-view .drill-down-drawer .ledger-timeline::before {
  content: "";
  position: absolute;
  left: 5px;
  top: 6px;
  bottom: 6px;
  width: 2px;
  background: var(--an-surface3, #e5e7eb);
}
.variance-report-view .drill-down-drawer .ledger-timeline .timeline-item {
  position: relative;
}
.variance-report-view .drill-down-drawer .ledger-timeline .timeline-item .timeline-dot {
  position: absolute;
  left: -20px;
  top: 3px;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: var(--an-text-faint, #9ca3af);
  border: 2px solid var(--an-surface, #fff);
  box-shadow: var(--an-shadow-xs);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
}
.variance-report-view .drill-down-drawer .ledger-timeline .timeline-item .timeline-dot i {
  display: none;
  font-size: 7px;
  color: #fff;
}
.variance-report-view .drill-down-drawer .ledger-timeline .timeline-item .timeline-dot.plus {
  background: var(--an-emerald, #10b981);
}
.variance-report-view .drill-down-drawer .ledger-timeline .timeline-item .timeline-dot.minus {
  background: var(--an-rose, #ec4e36);
}
.variance-report-view .drill-down-drawer .ledger-timeline .timeline-item .timeline-content {
  font-size: 13px;
}
.variance-report-view .drill-down-drawer .ledger-timeline .timeline-item .timeline-content .timeline-event {
  font-weight: 700;
  color: var(--an-text, #111827);
}
.variance-report-view .drill-down-drawer .ledger-timeline .timeline-item .timeline-content .timeline-date {
  font-size: 11px;
  color: var(--an-text-muted, #6b7280);
  margin-top: 1px;
}
.variance-report-view .drill-down-drawer .ledger-timeline .timeline-item .timeline-content .timeline-change {
  font-weight: 800;
}
.variance-report-view .inventory-table-card {
  flex-shrink: 0;
}
.variance-report-view .variance-table .interactive-row {
  cursor: pointer;
  transition: background var(--duration-fast, 150ms) var(--ease-default);
}
.variance-report-view .variance-table .interactive-row:hover {
  background: var(--an-bg-subtle, #f9fafb);
}
.variance-report-view .variance-table .selected-row {
  background: var(--an-primary-soft, rgba(73, 127, 228, 0.08)) !important;
}
.variance-report-view .variance-table .selected-row td {
  border-bottom-color: rgba(73, 127, 228, 0.2) !important;
}
.variance-report-view .variance-table .item-name {
  font-size: 13.5px;
  color: var(--an-text, #111827);
}
.variance-report-view .variance-table .table-sort-icon {
  font-size: 12px;
  margin-left: 4px;
  vertical-align: middle;
  transition: transform var(--duration-fast, 150ms) var(--ease-default);
}
.variance-report-view .variance-table .table-sort-icon.rotated {
  transform: rotate(180deg);
}
.variance-report-view .variance-table .mini-bar-indicator {
  width: 44px;
  height: 6px;
  background: var(--an-surface3, #e5e7eb);
  border-radius: var(--an-radius-pill);
  overflow: hidden;
  display: inline-block;
}
.variance-report-view .variance-table .mini-bar-indicator__fill {
  height: 100%;
  border-radius: var(--an-radius-pill);
}
.variance-report-view .variance-table .mini-bar-indicator__fill.variance-bad {
  background: var(--an-rose, #ec4e36);
}
.variance-report-view .variance-table .mini-bar-indicator__fill.variance-warn {
  background: var(--an-amber, #f59e0b);
}
.variance-report-view .variance-table .mini-bar-indicator__fill.variance-good {
  background: var(--an-emerald, #10b981);
}
.variance-report-view .variance-table .variance-bad {
  color: var(--an-rose, #ec4e36);
  font-weight: 700;
}
.variance-report-view .variance-table .variance-warn {
  color: var(--an-amber, #f59e0b);
  font-weight: 600;
}
.variance-report-view .variance-table .variance-good {
  color: var(--an-emerald, #10b981);
  font-weight: 600;
}
.variance-report-view .variance-table .variance-table__expand-head,
.variance-report-view .variance-table .variance-table__expand-cell {
  width: 48px;
  text-align: center;
}
.variance-report-view .variance-table .variance-expand-icon {
  transition: transform var(--duration-fast, 150ms) var(--ease-default);
}
.variance-report-view .variance-table .variance-expand-icon.is-open {
  transform: rotate(180deg);
}
.variance-report-view .variance-detail-row td {
  padding: 0;
  border-top: none;
}
.variance-report-view .variance-detail-row .drill-down-drawer {
  margin: 0;
  border: none;
  border-radius: 0;
  box-shadow: none;
  background: var(--an-bg-subtle, #f9fafb);
  border-top: 1px solid rgba(73, 127, 228, 0.15);
}
.variance-report-view .variance-detail-row .drill-down-drawer__body {
  padding: 20px 24px;
}
.variance-report-view .variance-detail-row .variance-detail-close {
  margin: -6px -6px 0 0;
}

@keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.color-success {
  color: var(--an-emerald, #10b981) !important;
}

.color-danger {
  color: var(--an-rose, #ec4e36) !important;
}

.small-text {
  font-size: 11px;
}

.transfers-view .transfers-content {
  margin-top: 10px;
}
.transfers-view .form-card {
  background: #ffffff;
  padding: 24px;
  border-radius: 12px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
  border: 1px solid rgba(0, 0, 0, 0.06);
}
.waitry-dark-theme .transfers-view .form-card {
  background: var(--an-surface);
}

.status-badge.status-pending {
  background: rgba(255, 152, 0, 0.1);
  color: #ef6c00;
  border: 1px solid rgba(255, 152, 0, 0.25);
}
.status-badge.status-accepted {
  background: rgba(76, 175, 80, 0.1);
  color: #2e7d32;
  border: 1px solid rgba(76, 175, 80, 0.25);
}
.status-badge.status-rejected {
  background: rgba(244, 67, 54, 0.1);
  color: #c62828;
  border: 1px solid rgba(244, 67, 54, 0.25);
}
.status-badge.status-expired {
  background: rgba(244, 67, 54, 0.1);
  color: #c62828;
  border: 1px solid rgba(244, 67, 54, 0.25);
}
.status-badge.status-critical {
  background: rgba(255, 87, 34, 0.1);
  color: #d84315;
  border: 1px solid rgba(255, 87, 34, 0.25);
}
.status-badge.status-warning {
  background: rgba(255, 152, 0, 0.1);
  color: #ef6c00;
  border: 1px solid rgba(255, 152, 0, 0.25);
}
.status-badge.status-ok {
  background: rgba(76, 175, 80, 0.1);
  color: #2e7d32;
  border: 1px solid rgba(76, 175, 80, 0.25);
}

.row-expired {
  background-color: rgba(244, 67, 54, 0.04) !important;
}

.row-expiring-soon {
  background-color: rgba(255, 152, 0, 0.04) !important;
}

.inventory-page {
  height: 100%;
  overflow: hidden;
  background: var(--an-bg, #f5f6f8);
  color: var(--an-text, #111827);
}

.inventory-page__content {
  background: var(--an-bg, #f5f6f8) !important;
  overflow: hidden;
}

.inventory-toolbar {
  background: var(--an-surface, #fff) !important;
  border-bottom: 1px solid var(--an-border, rgba(15, 23, 42, 0.08));
  color: var(--an-text, #111827) !important;
  min-height: 64px;
  box-shadow: none !important;
}
.inventory-toolbar .inventory-toolbar__tools {
  min-height: 64px;
  height: auto;
  padding: 10px 24px !important;
  gap: 12px !important;
  flex-wrap: wrap;
  color: var(--an-text, #111827) !important;
}

.inventory-toolbar .inventory-toolbar__tools > span[flex] {
  display: none !important;
}

.inventory-toolbar__back,
.inventory-toolbar__mark {
  width: 38px;
  height: 38px;
  min-width: 38px;
  border-radius: 10px !important;
  background: rgba(236, 78, 54, 0.08) !important;
  color: #ec4e36 !important;
  margin: 0 !important;
}
.inventory-toolbar__back md-icon,
.inventory-toolbar__mark md-icon {
  color: inherit !important;
}

.inventory-toolbar__mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.inventory-view-toggle {
  display: flex;
  align-items: center;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  padding: 2px;
  gap: 2px;
}
.inventory-view-toggle .md-icon-button {
  margin: 0 !important;
  width: 32px !important;
  height: 32px !important;
  min-height: 32px !important;
  border-radius: calc(var(--an-radius-sm) - 2px) !important;
  color: var(--an-text-muted) !important;
}
.inventory-view-toggle__btn--active {
  color: #fff !important;
  background: var(--an-primary, #497fe4) !important;
}
.inventory-view-toggle__btn--active:hover {
  color: #fff !important;
  background: var(--an-primary, #497fe4) !important;
}

.inventory-toolbar__title {
  min-width: 0;
  flex: 1 1 240px;
}
.inventory-toolbar__title h2 {
  margin: 0;
  color: var(--an-text, #111827);
  font-size: 17px;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: 0;
  display: flex;
  gap: 6px;
  align-items: baseline;
}
.inventory-toolbar__title p {
  margin: 2px 0 0;
  max-width: 520px;
  color: var(--an-text-muted, #64748b);
  font-size: 12.5px;
  line-height: 1.3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.inventory-count-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 28px;
  height: 24px;
  padding: 0 9px;
  border-radius: 999px;
  background: rgba(20, 184, 166, 0.12);
  color: #047857;
  font-size: 12px;
  font-weight: 800;
}

.inventory-shell {
  flex: 1;
  overflow: auto;
  padding: 22px 24px 26px;
}

.ingredients-view .inventory-shell {
  display: flex;
  flex-direction: column;
  flex: 0 1 auto;
  max-height: 100%;
  overflow: hidden;
  padding: 0;
}
.ingredients-view .inventory-shell__scroll {
  flex: 0 1 auto;
  min-height: 0;
  overflow: auto;
  padding: 22px 24px 16px;
}
.ingredients-view .inventory-pager {
  flex-shrink: 0;
  margin: 0 24px 20px;
}

.stk-table.catalog-table-wrap {
  margin-top: 0;
  padding: 0;
}
.stk-table.catalog-table-wrap .stk-col-status {
  width: 120px;
}
.stk-table.catalog-table-wrap .stk-col-date {
  width: 150px;
}
.stk-table.catalog-table-wrap .stk-col-items {
  width: 130px;
}
.stk-table.catalog-table-wrap .catalog-td--name {
  padding-left: 14px !important;
}
.stk-table.catalog-table-wrap .stk-td-muted {
  color: var(--an-text-muted);
  font-size: 12.5px;
}
.stk-table.catalog-table-wrap .stk-count-value {
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text);
  letter-spacing: -0.2px;
}

.gr-table.catalog-table-wrap {
  margin-top: 0;
  padding: 0;
}
.gr-table.catalog-table-wrap .gr-col-supplier {
  width: 190px;
}
.gr-table.catalog-table-wrap .gr-col-date {
  width: 170px;
}
.gr-table.catalog-table-wrap .gr-col-invoice {
  width: 175px;
}
.gr-table.catalog-table-wrap .gr-col-po {
  width: 100px;
}
.gr-table.catalog-table-wrap .gr-col-items {
  width: 115px;
}
.gr-table.catalog-table-wrap .gr-col-total {
  width: 110px;
}
.gr-table.catalog-table-wrap .catalog-td--name {
  padding-left: 14px !important;
}
.gr-table.catalog-table-wrap .gr-td-muted {
  color: var(--an-text-muted);
  font-size: 12.5px;
}
.gr-table.catalog-table-wrap .gr-count-value {
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text);
  letter-spacing: -0.2px;
}
.gr-table.catalog-table-wrap .gr-td-total {
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text);
  letter-spacing: -0.2px;
}

.inventory-search {
  position: relative;
  display: inline-flex;
  align-items: center;
  width: clamp(220px, 16vw, 260px);
  height: 38px;
  background: var(--an-surface, #fff);
  border: 1px solid var(--an-border, rgba(15, 23, 42, 0.12));
  border-radius: 8px;
  box-shadow: inset 0 1px 1px rgba(15, 23, 42, 0.02);
}
.inventory-search i {
  margin-left: 12px;
  color: var(--an-text-muted, #64748b);
  font-size: 16px;
}
.inventory-search input {
  flex: 1;
  min-width: 0;
  height: 36px !important;
  padding: 0 10px !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--an-text, #111827);
  font-size: 13.5px;
  outline: none;
}
.inventory-search button {
  border: 0;
  background: transparent;
  width: 32px;
  height: 32px;
  margin-right: 3px;
  color: var(--an-text-muted, #64748b);
  cursor: pointer;
}
.inventory-search--wide {
  width: 100%;
}

.inventory-btn {
  height: 38px !important;
  min-height: 38px !important;
  line-height: 38px !important;
  margin: 0 !important;
  padding: 0 14px !important;
  border-radius: 8px !important;
  text-transform: none !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  display: inline-flex !important;
  align-items: center;
  gap: 7px;
}
.inventory-btn md-icon {
  margin: 0 !important;
  font-size: 18px;
  width: 18px;
  height: 18px;
  color: inherit !important;
}
.inventory-btn--primary {
  background: #ec4e36 !important;
  color: #fff !important;
  box-shadow: 0 6px 16px rgba(236, 78, 54, 0.22) !important;
}
.inventory-btn--ghost {
  background: var(--an-surface, #fff) !important;
  border: 1px solid var(--an-border, rgba(15, 23, 42, 0.1)) !important;
  color: var(--an-text, #111827) !important;
  box-shadow: none !important;
}
.inventory-btn--accent {
  background: #0f766e !important;
  color: #fff !important;
}
.inventory-btn--danger {
  background: #dc2626 !important;
  color: #fff !important;
}
.inventory-btn--sm {
  height: 32px !important;
  min-height: 32px !important;
  line-height: 32px !important;
  padding: 0 10px !important;
  font-size: 12px !important;
}

.inventory-kpi-grid {
  display: grid;
  gap: 14px;
  margin-bottom: 20px;
}
.inventory-kpi-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.inventory-kpi-grid--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.inventory-kpi-grid--5 {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.inventory-kpi-card {
  min-height: 104px;
  display: grid;
  grid-template-columns: 42px 1fr;
  grid-template-rows: auto auto auto;
  align-items: center;
  gap: 2px 12px;
  padding: 18px;
  border: 1px solid var(--an-border, rgba(15, 23, 42, 0.1));
  border-radius: 12px;
  background: var(--an-surface, #fff);
  text-align: left;
  cursor: pointer;
  transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04);
}
.inventory-kpi-card:hover, .inventory-kpi-card--active {
  transform: translateY(-1px);
  border-color: rgba(236, 78, 54, 0.34);
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
}
.inventory-kpi-card--static {
  cursor: default;
}
.inventory-kpi-card--static:hover {
  transform: none;
  border-color: var(--an-border, rgba(15, 23, 42, 0.1));
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04);
}

.inventory-kpi-card__icon {
  grid-row: 1/span 3;
  width: 40px;
  height: 40px;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.inventory-kpi-card__icon i {
  font-size: 20px;
}
.inventory-kpi-card__icon--blue {
  background: rgba(59, 130, 246, 0.1);
  color: #2563eb;
}
.inventory-kpi-card__icon--green {
  background: rgba(16, 185, 129, 0.12);
  color: #059669;
}
.inventory-kpi-card__icon--amber {
  background: rgba(245, 158, 11, 0.14);
  color: #d97706;
}
.inventory-kpi-card__icon--orange {
  background: rgba(249, 115, 22, 0.12);
  color: #ea580c;
}
.inventory-kpi-card__icon--rose {
  background: rgba(244, 63, 94, 0.12);
  color: #e11d48;
}
.inventory-kpi-card__icon--slate {
  background: rgba(100, 116, 139, 0.12);
  color: #475569;
}

.inventory-kpi-card__value {
  color: var(--an-text, #111827);
  font-size: 26px;
  font-weight: 850;
  line-height: 1;
}

.inventory-kpi-card__label {
  color: var(--an-text, #111827);
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.inventory-kpi-card__meta {
  color: var(--an-text-muted, #64748b);
  font-size: 12px;
}

.inventory-table-card,
.inventory-panel,
.inventory-management-card {
  background: var(--an-surface, #fff);
  border: 1px solid var(--an-border, rgba(15, 23, 42, 0.1));
  border-radius: 12px;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.04);
}

.inventory-table-card {
  overflow: hidden;
}
.inventory-table-card--embedded {
  border-radius: 10px;
  box-shadow: none;
}

.inventory-table-wrap {
  width: 100%;
  overflow-x: auto;
}

.inventory-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}
.inventory-table th {
  padding: 13px 16px;
  background: #f8fafc;
  color: var(--an-text-muted, #64748b);
  font-size: 11px;
  font-weight: 850;
  text-align: left;
  text-transform: uppercase;
  letter-spacing: 0;
  white-space: nowrap;
}
.inventory-table td {
  padding: 12px 16px;
  border-top: 1px solid var(--an-border, rgba(15, 23, 42, 0.08));
  color: var(--an-text, #111827);
  vertical-align: middle;
}
.inventory-table tbody tr {
  transition: background 0.14s ease;
}
.inventory-table tbody tr:hover {
  background: rgba(15, 23, 42, 0.02);
}

.inventory-table__code,
.inventory-table__money {
  font-weight: 800;
  white-space: nowrap;
}

.inventory-table__money {
  text-align: right;
  color: #047857 !important;
}

.inventory-cell-title {
  color: var(--an-text, #111827);
  font-weight: 800;
  line-height: 1.25;
}

.inventory-cell-sub,
.inventory-muted {
  color: var(--an-text-muted, #64748b);
  font-size: 12px;
}

.inventory-number-input,
.inventory-text-input {
  width: 100%;
  height: 34px;
  border: 1px solid var(--an-border, rgba(15, 23, 42, 0.12));
  border-radius: 8px;
  background: var(--an-bg, #f8fafc);
  color: var(--an-text, #111827);
  padding: 0 10px;
  outline: none;
  font-size: 13px;
  box-sizing: border-box;
}
.inventory-number-input:focus,
.inventory-text-input:focus {
  border-color: #ec4e36;
  box-shadow: 0 0 0 3px rgba(236, 78, 54, 0.12);
  background: var(--an-surface, #fff);
}

.inventory-number-input {
  max-width: 116px;
  text-align: right;
}
.inventory-number-input--strong {
  font-weight: 800;
  text-align: center;
}

.inventory-inline-edit,
.inventory-action-group {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.inventory-icon-button,
.inventory-action-button {
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  min-height: 34px !important;
  margin: 0 !important;
  border-radius: 8px !important;
  background: var(--an-bg, #f8fafc) !important;
  border: 1px solid var(--an-border, rgba(15, 23, 42, 0.08));
  color: var(--an-text-muted, #64748b) !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.inventory-icon-button md-icon,
.inventory-icon-button i,
.inventory-action-button md-icon,
.inventory-action-button i {
  color: inherit !important;
  font-size: 17px;
}
.inventory-icon-button:hover,
.inventory-action-button:hover {
  color: #ec4e36 !important;
  border-color: rgba(236, 78, 54, 0.25);
}
.inventory-icon-button--danger:hover,
.inventory-action-button--danger:hover {
  color: #dc2626 !important;
  border-color: rgba(220, 38, 38, 0.25);
}

.inventory-row--warning {
  background: rgba(245, 158, 11, 0.06);
}

.inventory-row--danger {
  background: rgba(244, 63, 94, 0.06);
}

.inventory-row--success {
  background: rgba(16, 185, 129, 0.06);
}

.inventory-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 14px;
}

.inventory-management-card {
  display: flex;
  flex-direction: column;
  min-height: 232px;
  overflow: hidden;
}

.inventory-management-card__head,
.inventory-management-card__actions {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  padding: 16px;
}

.inventory-management-card__head .inventory-management-card__badges {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
  flex-shrink: 0;
}
.inventory-management-card__head h3 {
  margin: 0;
  color: var(--an-text, #111827);
  font-size: 16px;
  font-weight: 850;
  line-height: 1.25;
}
.inventory-management-card__head p {
  margin: 4px 0 0;
  color: var(--an-text-muted, #64748b);
  font-size: 12.5px;
}

.inventory-management-card__body {
  flex: 1;
  padding: 0 16px 14px;
}

.inventory-management-card__actions {
  align-items: center;
  border-top: 1px solid var(--an-border, rgba(15, 23, 42, 0.08));
  background: #f8fafc;
}
.inventory-management-card__actions--split {
  justify-content: space-between;
}

.inventory-info-row {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 26px;
  color: var(--an-text-muted, #64748b);
  font-size: 13px;
  text-decoration: none;
}
.inventory-info-row i {
  color: var(--an-text-muted, #64748b);
  font-size: 16px;
}
.inventory-info-row strong {
  color: var(--an-text, #111827);
}

.inventory-mini-metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid var(--an-border, rgba(15, 23, 42, 0.08));
}
.inventory-mini-metrics--wide {
  grid-template-columns: repeat(2, 1fr);
}
.inventory-mini-metrics span {
  display: block;
  color: var(--an-text-muted, #64748b);
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
}
.inventory-mini-metrics strong {
  display: block;
  margin-top: 4px;
  color: var(--an-text, #111827);
  font-size: 15px;
  font-weight: 850;
}

.inventory-status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 24px;
  padding: 0 9px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 850;
  white-space: nowrap;
  text-transform: uppercase;
}
.inventory-status--success, .inventory-status--received, .inventory-status--accepted {
  background: rgba(16, 185, 129, 0.12);
  color: #047857;
}
.inventory-status--warning, .inventory-status--sent, .inventory-status--partial, .inventory-status--pending {
  background: rgba(245, 158, 11, 0.14);
  color: #b45309;
}
.inventory-status--danger, .inventory-status--rejected {
  background: rgba(244, 63, 94, 0.12);
  color: #be123c;
}
.inventory-status--draft {
  background: rgba(100, 116, 139, 0.12);
  color: #475569;
}

.inventory-empty-state,
.inventory-empty-inline,
.inventory-loading {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: var(--an-text-muted, #64748b);
}

.inventory-loading {
  min-height: 260px;
}

.inventory-empty-state {
  min-height: 320px;
  background: var(--an-surface, #fff);
  border: 1px dashed var(--an-border, rgba(15, 23, 42, 0.14));
  border-radius: 12px;
  padding: 36px;
}
.inventory-empty-state > i {
  width: 58px;
  height: 58px;
  border-radius: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(236, 78, 54, 0.08);
  color: #ec4e36;
  font-size: 28px;
  margin-bottom: 16px;
}
.inventory-empty-state h3 {
  margin: 0 0 6px;
  color: var(--an-text, #111827);
  font-size: 18px;
  font-weight: 850;
}
.inventory-empty-state p {
  margin: 0 0 18px;
  max-width: 420px;
  font-size: 13px;
}

.inventory-empty-inline {
  min-height: 132px;
  gap: 8px;
}
.inventory-empty-inline i {
  font-size: 26px;
  color: #ec4e36;
}

.inventory-form-layout {
  display: grid;
  grid-template-columns: minmax(280px, 360px) minmax(0, 1fr);
  gap: 16px;
  align-items: start;
}

.inventory-panel {
  padding: 20px;
}
.inventory-panel--compact {
  padding: 12px;
}
.inventory-panel--form-card {
  max-width: 860px;
}

.inventory-panel__header {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 18px;
}
.inventory-panel__header > i,
.inventory-panel__header > div > i {
  width: 38px;
  height: 38px;
  min-width: 38px;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(236, 78, 54, 0.08);
  color: #ec4e36;
  font-size: 19px;
}
.inventory-panel__header h3 {
  margin: 0;
  color: var(--an-text, #111827);
  font-size: 16px;
  font-weight: 850;
}
.inventory-panel__header p {
  margin: 2px 0 0;
  color: var(--an-text-muted, #64748b);
  font-size: 12.5px;
}
.inventory-panel__header--split {
  justify-content: space-between;
}
.inventory-panel__header--split > div:first-child {
  display: flex;
  align-items: center;
  gap: 12px;
}

.inventory-info-box {
  display: grid;
  gap: 10px;
  padding: 14px;
  margin-bottom: 16px;
  border: 1px solid var(--an-border, rgba(15, 23, 42, 0.08));
  border-radius: 10px;
  background: #f8fafc;
}
.inventory-info-box div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  color: var(--an-text-muted, #64748b);
  font-size: 13px;
}
.inventory-info-box strong {
  color: var(--an-text, #111827);
}

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

.inventory-switch-tile {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px;
  border: 1px solid var(--an-border, rgba(15, 23, 42, 0.08));
  border-radius: 10px;
  background: #f8fafc;
}
.inventory-switch-tile strong {
  display: block;
  color: var(--an-text, #111827);
  font-size: 13px;
}
.inventory-switch-tile small {
  display: block;
  margin-top: 2px;
  color: var(--an-text-muted, #64748b);
  font-size: 12px;
}
.inventory-switch-tile md-switch {
  margin: 0;
}

.inventory-dialog {
  width: min(560px, 100vw - 28px);
  border-radius: 14px;
  overflow: hidden;
}

.inventory-dialog__toolbar {
  background: var(--an-surface, #fff) !important;
  color: var(--an-text, #111827) !important;
  border-bottom: 1px solid var(--an-border, rgba(15, 23, 42, 0.08));
}
.inventory-dialog__toolbar .md-toolbar-tools {
  height: 70px;
  padding: 0 22px;
}
.inventory-dialog__toolbar h2 {
  margin: 0;
  font-size: 17px;
  font-weight: 850;
}
.inventory-dialog__toolbar p {
  margin: 2px 0 0;
  color: var(--an-text-muted, #64748b);
  font-size: 12px;
}

.inventory-form-body {
  padding: 22px;
  background: var(--an-bg, #f8fafc);
}

.inventory-dialog__actions,
.inventory-form-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  padding: 16px 22px;
  border-top: 1px solid var(--an-border, rgba(15, 23, 42, 0.08));
}

.inventory-total-pill {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 2px;
  padding: 10px 14px;
  border-radius: 10px;
  background: rgba(16, 185, 129, 0.1);
  color: #047857;
}
.inventory-total-pill span {
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}
.inventory-total-pill strong {
  font-size: 22px;
  font-weight: 900;
}

.inventory-warning-line {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  margin: 12px 0;
  color: #b45309;
  font-size: 13px;
  font-weight: 800;
}

.inventory-add-line {
  margin-top: 14px;
  padding: 14px;
  border: 1px dashed rgba(236, 78, 54, 0.32);
  border-radius: 12px;
  background: rgba(236, 78, 54, 0.035);
}

.inventory-add-line__title {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
  color: var(--an-text, #111827);
  font-size: 13px;
  font-weight: 850;
}
.inventory-add-line__title i {
  color: #ec4e36;
}

.inventory-add-line__grid {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) 110px 96px 120px auto;
  align-items: center;
  gap: 10px;
}
.inventory-add-line__grid md-input-container {
  margin: 0 !important;
}

.inventory-add-line__grid--receipt {
  grid-template-columns: minmax(180px, 1.4fr) 96px 84px 104px 120px 150px auto;
}

.inventory-number-input--wide {
  max-width: 160px;
}

.inventory-warning-line--cell {
  justify-content: flex-start;
  margin: 6px 0 0;
  font-size: 11px;
  font-weight: 700;
}

.inventory-unit-pill {
  align-self: end;
  height: 40px;
  box-sizing: border-box;
  padding: 0 10px;
  max-width: 100%;
  border-radius: 8px;
  background: var(--an-surface, #fff);
  border: 1px solid var(--an-border, rgba(15, 23, 42, 0.1));
  color: var(--an-text-muted, #64748b);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 12px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.inventory-count-workspace {
  display: grid;
  gap: 14px;
}

.inventory-progress-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
}
.inventory-progress-head span {
  display: block;
  color: var(--an-text-muted, #64748b);
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}
.inventory-progress-head strong {
  color: var(--an-text, #111827);
  font-size: 18px;
  font-weight: 900;
}

.inventory-filter-row {
  display: grid;
  grid-template-columns: minmax(240px, 1fr) minmax(180px, 240px);
  gap: 12px;
  align-items: center;
}

.inventory-filter-select {
  margin: 0 !important;
}

.inventory-tabs md-tabs {
  background: transparent;
}
.inventory-tabs md-tabs-wrapper {
  height: 48px !important;
  padding: 0 6px !important;
  background: var(--an-surface, #fff) !important;
  border: 1px solid var(--an-border, rgba(15, 23, 42, 0.08)) !important;
  border-radius: 12px !important;
}
.inventory-tabs md-tabs-canvas,
.inventory-tabs md-pagination-wrapper {
  height: 48px !important;
}
.inventory-tabs .md-tab {
  height: 38px !important;
  margin: 5px 3px !important;
  padding: 0 14px !important;
  border-radius: 9px !important;
  color: var(--an-text-muted, #64748b) !important;
  font-size: 12px !important;
  font-weight: 850 !important;
  letter-spacing: 0 !important;
  line-height: 38px !important;
  text-transform: none !important;
}
.inventory-tabs .md-tab.md-active {
  background: rgba(236, 78, 54, 0.1) !important;
  color: #ec4e36 !important;
}
.inventory-tabs md-ink-bar {
  display: none;
}
.inventory-tabs md-tab-content {
  background: transparent;
}

.inventory-tab-content {
  background: transparent !important;
  padding: 16px 0 0 !important;
}

.inventory-result {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  font-weight: 800;
}
.inventory-result--success {
  color: #047857;
}
.inventory-result--danger {
  color: #be123c;
}

.waitry-dark-theme .inventory-page,
.waitry-dark-theme .inventory-page__content {
  background: var(--an-bg, #121212) !important;
}
.waitry-dark-theme .inventory-toolbar,
.waitry-dark-theme .inventory-kpi-card,
.waitry-dark-theme .inventory-table-card,
.waitry-dark-theme .inventory-panel,
.waitry-dark-theme .inventory-management-card,
.waitry-dark-theme .inventory-search,
.waitry-dark-theme .inventory-tabs md-tabs-wrapper,
.waitry-dark-theme .inventory-dialog-tabs md-tabs-wrapper,
.waitry-dark-theme .inventory-dialog__toolbar,
.waitry-dark-theme .inventory-dialog {
  background: var(--an-surface, #1e1e1e) !important;
  border-color: var(--an-border, rgba(255, 255, 255, 0.12));
}
.waitry-dark-theme .inventory-form-body,
.waitry-dark-theme .inventory-dialog-tabs md-tabs,
.waitry-dark-theme .inventory-dialog-tabs md-tab-content {
  background: var(--an-bg, #121212) !important;
}
.waitry-dark-theme .inventory-table th,
.waitry-dark-theme .inventory-management-card__actions,
.waitry-dark-theme .inventory-info-box,
.waitry-dark-theme .inventory-switch-tile,
.waitry-dark-theme .inventory-number-input,
.waitry-dark-theme .inventory-text-input,
.waitry-dark-theme .inventory-unit-pill {
  background: var(--an-surface2, #252525);
}

@media (max-width: 1180px) {
  .inventory-kpi-grid--5 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .inventory-form-layout {
    grid-template-columns: 1fr;
  }
  .inventory-add-line__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 760px) {
  .inventory-toolbar .inventory-toolbar__tools {
    height: auto;
    min-height: 64px;
    padding: 10px 12px !important;
    flex-wrap: wrap;
  }
  .inventory-toolbar__title {
    flex: 1 1 calc(100% - 58px);
  }
  .inventory-toolbar__title p {
    white-space: normal;
  }
  .inventory-search {
    width: 100%;
  }
  .inventory-page,
  .inventory-page__content {
    overflow: visible;
  }
  .inventory-page__content {
    display: block !important;
    overflow-y: auto !important;
    padding-bottom: 0 !important;
  }
  .inventory-shell {
    padding: 12px 12px 24px;
    overflow: visible;
  }
  .ingredients-view .inventory-shell {
    max-height: none;
    overflow: visible;
  }
  .ingredients-view .inventory-shell__scroll {
    overflow: visible;
    padding: 12px 12px 8px;
  }
  .ingredients-view .inventory-pager {
    margin: 0 12px 24px;
  }
  .inventory-form-grid--2,
  .inventory-filter-row,
  .inventory-add-line__grid {
    grid-template-columns: 1fr;
  }
  .inventory-kpi-grid,
  .inventory-kpi-grid--3,
  .inventory-kpi-grid--4,
  .inventory-kpi-grid--5 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-bottom: 12px;
  }
  .inventory-kpi-card {
    min-height: 0;
    grid-template-columns: 32px minmax(0, 1fr);
    gap: 0 10px;
    padding: 12px;
  }
  .inventory-kpi-card:hover {
    transform: none;
  }
  .inventory-kpi-card__icon {
    width: 32px;
    height: 32px;
  }
  .inventory-count-pill {
    display: none;
  }
}
.inventory-pager {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 12px;
  padding: 10px 12px;
  background: var(--an-surface, #fff);
  border: 1px solid var(--an-border, rgba(15, 23, 42, 0.1));
  border-radius: 10px;
  box-shadow: 0 2px 10px rgba(15, 23, 42, 0.04);
}
.inventory-pager span {
  color: var(--an-text-muted, #64748b);
  font-size: 12.5px;
  font-weight: 700;
}

.inventory-alert-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 16px;
}

.inventory-filter-strip {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 14px;
}

.inventory-filter-chip {
  height: 34px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 0 12px;
  border: 1px solid var(--an-border, rgba(15, 23, 42, 0.1));
  border-radius: 999px;
  background: var(--an-surface, #fff);
  color: var(--an-text-muted, #64748b);
  font-size: 12.5px;
  font-weight: 800;
  cursor: pointer;
}
.inventory-filter-chip i {
  font-size: 15px;
}
.inventory-filter-chip:hover, .inventory-filter-chip--active {
  border-color: rgba(236, 78, 54, 0.32);
  background: rgba(236, 78, 54, 0.08);
  color: #ec4e36;
}

.inventory-check-tile--inline {
  width: auto;
  min-height: 34px;
  border-radius: 999px;
  padding-right: 14px;
}

.inventory-alert-panel {
  border: 1px solid var(--an-border, rgba(15, 23, 42, 0.1));
  border-radius: 12px;
  background: var(--an-surface, #fff);
  overflow: hidden;
}
.inventory-alert-panel header {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  border-bottom: 1px solid var(--an-border, rgba(15, 23, 42, 0.08));
}
.inventory-alert-panel header i {
  width: 38px;
  height: 38px;
  min-width: 38px;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 19px;
}
.inventory-alert-panel header h3 {
  margin: 0;
  color: var(--an-text, #111827);
  font-size: 15px;
  font-weight: 850;
}
.inventory-alert-panel header p {
  margin: 2px 0 0;
  color: var(--an-text-muted, #64748b);
  font-size: 12.5px;
  line-height: 1.35;
}
.inventory-alert-panel--warning header i {
  background: rgba(245, 158, 11, 0.14);
  color: #b45309;
}
.inventory-alert-panel--danger header i {
  background: rgba(244, 63, 94, 0.12);
  color: #be123c;
}

.inventory-alert-list {
  display: grid;
  gap: 8px;
  padding: 10px;
}

.inventory-alert-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  border-radius: 9px;
  background: #f8fafc;
}
.waitry-dark-theme .inventory-alert-item {
  background: var(--an-surface2);
}
.inventory-alert-item > div strong {
  display: block;
  color: var(--an-text, #111827);
  font-size: 13px;
  font-weight: 850;
}
.inventory-alert-item > div span {
  display: block;
  color: var(--an-text-muted, #64748b);
  font-size: 12px;
  margin-top: 2px;
}

.inventory-dialog--wide {
  width: min(980px, 100vw - 28px);
}

.inventory-dialog-tabs md-tabs {
  background: var(--an-bg, #f8fafc);
}
.inventory-dialog-tabs md-tabs-wrapper {
  height: 54px !important;
  padding: 6px 16px !important;
  background: var(--an-surface, #fff) !important;
  border-bottom: 1px solid var(--an-border, rgba(15, 23, 42, 0.08)) !important;
}
.inventory-dialog-tabs md-tabs-canvas,
.inventory-dialog-tabs md-pagination-wrapper {
  height: 42px !important;
}
.inventory-dialog-tabs .md-tab {
  height: 36px !important;
  margin: 3px 3px !important;
  padding: 0 14px !important;
  border-radius: 9px !important;
  color: var(--an-text-muted, #64748b) !important;
  font-size: 12px !important;
  font-weight: 850 !important;
  letter-spacing: 0 !important;
  line-height: 36px !important;
  text-transform: none !important;
}
.inventory-dialog-tabs .md-tab.md-active {
  background: rgba(236, 78, 54, 0.1) !important;
  color: #ec4e36 !important;
}
.inventory-dialog-tabs md-ink-bar {
  display: none;
}
.inventory-dialog-tabs md-tab-content {
  background: var(--an-bg, #f8fafc);
}

.inventory-dialog__toolbar--mise {
  background: #111827 !important;
  color: #fff !important;
}
.inventory-dialog__toolbar--mise h2,
.inventory-dialog__toolbar--mise p,
.inventory-dialog__toolbar--mise md-icon {
  color: #fff !important;
}
.inventory-dialog__toolbar--mise p {
  opacity: 0.72;
}

.inventory-form-section {
  padding: 16px;
  border: 1px solid var(--an-border, rgba(15, 23, 42, 0.08));
  border-radius: 12px;
  background: var(--an-surface, #fff);
  margin-bottom: 14px;
}

.inventory-form-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

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

.inventory-conversion-summary,
.inventory-list-panel {
  margin-top: 12px;
  border: 1px solid var(--an-border, rgba(15, 23, 42, 0.08));
  border-radius: 10px;
  background: #f8fafc;
  overflow: hidden;
}
.waitry-dark-theme .inventory-conversion-summary,
.waitry-dark-theme .inventory-list-panel {
  background: var(--an-surface2);
}

.inventory-conversion-summary {
  padding: 12px;
}
.inventory-conversion-summary > strong {
  display: block;
  margin-bottom: 8px;
  color: var(--an-text, #111827);
  font-size: 13px;
}
.inventory-conversion-summary div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 6px 0;
  color: var(--an-text-muted, #64748b);
  font-size: 12.5px;
}

.inventory-list-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 48px;
  padding: 8px 12px;
  border-top: 1px solid var(--an-border, rgba(15, 23, 42, 0.08));
}
.inventory-list-row:first-child {
  border-top: 0;
}
.inventory-list-row span {
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text, #111827);
}

.inventory-card-grid--compact {
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  margin-bottom: 14px;
}

.inventory-management-card--compact {
  min-height: 0;
}

.inventory-add-line__grid--conversion {
  grid-template-columns: 48px minmax(120px, 1fr) minmax(120px, 1fr) 110px auto;
}

.inventory-check-tile {
  min-height: 42px;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 12px;
  border: 1px solid var(--an-border, rgba(15, 23, 42, 0.08));
  border-radius: 9px;
  background: #f8fafc;
  color: var(--an-text, #111827);
  font-size: 13px;
  font-weight: 700;
}
.waitry-dark-theme .inventory-check-tile {
  background: var(--an-surface2);
}
.inventory-check-tile md-checkbox {
  margin: 0;
}

.inventory-checkbox-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  gap: 10px;
}

.inventory-form-actions--inline {
  margin-top: 12px;
  padding: 0;
  border-top: 0;
}

.inventory-form-layout--dialog {
  grid-template-columns: minmax(0, 1fr) 260px;
}

.inventory-panel--embedded {
  box-shadow: none;
}

.inventory-stock-summary {
  background: #111827;
  color: #fff;
}
.inventory-stock-summary .inventory-panel__header h3,
.inventory-stock-summary .inventory-panel__header p,
.inventory-stock-summary .inventory-panel__header i {
  color: #fff;
}
.inventory-stock-summary .inventory-panel__header i {
  background: rgba(255, 255, 255, 0.12);
}

.inventory-stock-summary__row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 12px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
}
.inventory-stock-summary__row span {
  color: rgba(255, 255, 255, 0.68);
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}
.inventory-stock-summary__row strong {
  color: #fff;
  font-size: 15px;
  font-weight: 900;
}
.inventory-stock-summary__row--final strong {
  font-size: 20px;
}

.inventory-panel-text {
  margin: 0;
  color: var(--an-text-muted, #64748b);
  font-size: 13px;
  line-height: 1.55;
}

.inventory-table-wrap--scroll {
  max-height: 240px;
  overflow-y: auto;
}

.inventory-forecast {
  display: grid;
  gap: 14px;
}

.inventory-empty-state--danger {
  border-color: rgba(244, 63, 94, 0.24);
}

.inventory-status.status-ok,
.inventory-status.status-accepted {
  background: rgba(16, 185, 129, 0.12);
  color: #047857;
}

.inventory-status.status-warning,
.inventory-status.status-critical {
  background: rgba(245, 158, 11, 0.14);
  color: #b45309;
}

.inventory-status.status-expired {
  background: rgba(244, 63, 94, 0.12);
  color: #be123c;
}

@media (max-width: 1180px) {
  .inventory-alert-grid,
  .inventory-form-grid--4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .inventory-form-layout--dialog {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 760px) {
  .inventory-alert-grid,
  .inventory-form-grid--3,
  .inventory-form-grid--4,
  .inventory-add-line__grid--conversion {
    grid-template-columns: 1fr;
  }
  .inventory-alert-item,
  .inventory-pager {
    align-items: stretch;
    flex-direction: column;
  }
}
.stk-filter-row {
  grid-template-columns: minmax(240px, 1fr) minmax(180px, 240px) auto;
}
@media (max-width: 760px) {
  .stk-filter-row {
    grid-template-columns: 1fr;
  }
}

.stk-uncounted-chip {
  justify-self: start;
}

.stk-chip-count {
  min-width: 20px;
  padding: 1px 7px;
  border-radius: var(--an-radius-pill, 999px);
  background: var(--an-surface2, #f3f4f6);
  color: var(--an-text-muted, #64748b);
  font-size: 11px;
  font-weight: 800;
  text-align: center;
}

.stk-notes-field {
  margin: 0 !important;
}
.stk-notes-field textarea {
  min-height: 44px;
}

.stk-row--uncounted .inventory-number-input::placeholder {
  font-weight: 500;
  font-size: 12px;
}

.stk-finalize-dialog__body {
  padding: 20px 22px 8px;
  font-size: 13px;
  color: var(--an-text, #111827);
}

.stk-finalize-dialog__notice {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 14px;
  border-radius: var(--an-radius-sm, 8px);
  background: var(--an-amber-soft, rgba(245, 158, 11, 0.08));
  border: 1px solid var(--an-border, rgba(15, 23, 42, 0.1));
}
.stk-finalize-dialog__notice i {
  color: var(--an-amber, #f59e0b);
  font-size: 18px;
  line-height: 1.3;
}
.stk-finalize-dialog__notice p {
  margin: 0;
  line-height: 1.45;
}

.stk-finalize-dialog__text {
  margin: 12px 0 0;
  color: var(--an-text-muted, #64748b);
  line-height: 1.45;
}

.var-toolbar-icon {
  width: 38px;
  height: 38px;
  min-width: 38px;
  margin: 0 !important;
  border: 1px solid var(--an-border, rgba(15, 23, 42, 0.1));
  border-radius: 10px !important;
  background: var(--an-surface, #fff) !important;
  color: var(--an-text-muted, #64748b) !important;
}
.var-toolbar-icon md-icon {
  color: inherit !important;
}

.variance-report-view .var-dist-bar--uncounted,
.variance-report-view .var-legend-dot--uncounted {
  background: repeating-linear-gradient(135deg, var(--an-text-faint, #9ca3af) 0 3px, var(--an-surface2, #f3f4f6) 3px 6px);
}
.variance-report-view .var-legend-dot--uncounted {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  display: inline-block;
}
.variance-report-view .var-uncounted-note {
  margin-left: 8px;
  color: var(--an-text-muted, #64748b);
  font-size: 12px;
}
.variance-report-view .var-kpi-hint {
  display: block;
  margin: 2px 0 0;
  color: var(--an-text-muted, #64748b);
  font-size: 11px;
  font-weight: 500;
}

.trf-stock-warning {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--an-rose, #ec4e36) !important;
}
.trf-stock-warning i {
  font-size: 14px;
}

.inventory-kpi-grid--6 {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}
@media (max-width: 1280px) {
  .inventory-kpi-grid--6 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 760px) {
  .inventory-kpi-grid--6 {
    grid-template-columns: 1fr;
  }
}

.inventory-status--cancelled,
.inventory-status--voided {
  background: var(--an-surface2, #f3f4f6);
  color: var(--an-text-muted, #64748b);
  box-shadow: inset 0 0 0 1px var(--an-border, rgba(15, 23, 42, 0.1));
}

.catalog-item-name .inventory-status,
.inventory-dialog__toolbar h2 .inventory-status {
  margin-left: 8px;
  vertical-align: middle;
}

.waitry-dark-theme .inventory-status--success,
.waitry-dark-theme .inventory-status--received,
.waitry-dark-theme .inventory-status--accepted {
  color: var(--an-emerald);
}
.waitry-dark-theme .inventory-status--warning,
.waitry-dark-theme .inventory-status--sent,
.waitry-dark-theme .inventory-status--partial,
.waitry-dark-theme .inventory-status--pending {
  color: var(--an-amber);
}
.waitry-dark-theme .inventory-status--danger,
.waitry-dark-theme .inventory-status--rejected {
  color: var(--an-danger);
}
.waitry-dark-theme .inventory-status--draft {
  color: var(--an-text-muted);
}
.waitry-dark-theme .inventory-warning-line {
  color: var(--an-amber);
}

.inventory-row--muted td {
  color: var(--an-text-muted, #64748b);
}

.inventory-management-card--muted {
  opacity: 0.72;
}

.rcpt-amount--voided,
.rcpt-amount--voided strong {
  text-decoration: line-through;
}

.inventory-btn[disabled] {
  background: var(--an-surface2, #f3f4f6) !important;
  color: var(--an-text-faint, #94a3b8) !important;
  box-shadow: none !important;
  cursor: not-allowed;
}

.inventory-note-line {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 6px;
  color: var(--an-sky, #0284c7);
  font-size: 11px;
  font-weight: 700;
}
.inventory-note-line i {
  font-size: 13px;
}

.inventory-filter-chip__count {
  min-width: 20px;
  padding: 1px 7px;
  border-radius: var(--an-radius-pill, 999px);
  background: var(--an-surface2, #f3f4f6);
  color: var(--an-text-muted, #64748b);
  font-size: 11px;
  font-weight: 800;
  text-align: center;
}
.inventory-filter-chip--active .inventory-filter-chip__count {
  background: var(--an-primary-soft, rgba(236, 78, 54, 0.12));
  color: var(--an-primary, #ec4e36);
}

.po-send-dialog__supplier {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px;
  border: 1px solid var(--an-border, rgba(15, 23, 42, 0.1));
  border-radius: var(--an-radius-sm, 8px);
  background: var(--an-surface, #fff);
}
.po-send-dialog__supplier div {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.po-send-dialog__supplier strong {
  color: var(--an-text, #111827);
  font-size: 14px;
}
.po-send-dialog__supplier span {
  color: var(--an-text-muted, #64748b);
  font-size: 13px;
  overflow-wrap: anywhere;
}

.po-send-dialog__icon {
  display: inline-flex;
  flex: 0 0 36px;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 10px;
  background: var(--an-primary-soft, rgba(236, 78, 54, 0.12));
  color: var(--an-primary, #ec4e36);
  font-size: 18px;
}

.po-send-dialog__text {
  margin: 14px 0 0;
  color: var(--an-text, #111827);
  font-size: 13px;
  line-height: 1.55;
}

.po-doc {
  padding: 28px;
  border: 1px solid var(--an-border, rgba(15, 23, 42, 0.1));
  border-radius: var(--an-radius, 12px);
  background: var(--an-surface, #fff);
  color: var(--an-text, #111827);
  font-size: 13px;
}

.po-doc__head {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  padding-bottom: 18px;
  border-bottom: 2px solid var(--an-text, #111827);
}

.po-doc__eyebrow {
  margin: 0 0 4px;
  color: var(--an-text-muted, #64748b);
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.po-doc .po-doc__title {
  margin: 0;
  color: var(--an-text, #111827);
  font-size: 22px;
  font-weight: 800;
}

.po-doc__number {
  margin: 4px 0 0;
  font-size: 14px;
  font-weight: 700;
}

.po-doc__dates {
  display: grid;
  grid-template-columns: auto auto;
  gap: 4px 16px;
  margin: 0;
}
.po-doc__dates div {
  display: contents;
}
.po-doc__dates dt {
  color: var(--an-text-muted, #64748b);
  font-size: 12px;
}
.po-doc__dates dd {
  margin: 0;
  font-weight: 700;
  text-align: right;
}

.po-doc__parties {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  margin: 18px 0;
}
.po-doc__parties div {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.po-doc__parties span {
  color: var(--an-text-muted, #64748b);
}

.po-doc .po-doc__label {
  margin: 0 0 6px;
  color: var(--an-text-muted, #64748b);
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.po-doc__table {
  width: 100%;
  border-collapse: collapse;
}
.po-doc__table th {
  padding: 8px 6px;
  border-bottom: 1px solid var(--an-border-strong, rgba(15, 23, 42, 0.2));
  color: var(--an-text-muted, #64748b);
  font-size: 11px;
  font-weight: 800;
  text-align: left;
  text-transform: uppercase;
}
.po-doc__table td {
  padding: 9px 6px;
  border-bottom: 1px solid var(--an-border, rgba(15, 23, 42, 0.1));
  vertical-align: top;
}
.po-doc__table tfoot td {
  border-bottom: 0;
  font-weight: 700;
}
.po-doc__table tfoot strong {
  font-size: 16px;
}

.po-doc__num {
  text-align: right !important;
  white-space: nowrap;
}

.po-doc__line-note {
  display: block;
  color: var(--an-text-muted, #64748b);
  font-size: 12px;
}

.po-doc__notes {
  margin-top: 18px;
}
.po-doc__notes p {
  margin: 0;
  white-space: pre-line;
  line-height: 1.55;
}

.po-print-body {
  margin: 0;
  padding: 0;
  background: #fff;
}
.po-print-body .po-doc {
  max-width: 780px;
  margin: 0 auto;
  border: 0;
}

@media print {
  @page {
    margin: 14mm;
  }
  .po-print-body .po-doc {
    padding: 0;
  }
}
.rcpt-total-pill {
  align-self: flex-end;
  width: fit-content;
  margin: 16px 0 0 auto;
}

.rcpt-lot-hint {
  display: flex;
  align-items: center;
  gap: 6px;
}
.rcpt-lot-hint i {
  font-size: 14px;
}

.rcpt-voided-banner {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 14px;
  padding: 12px 14px;
  border-radius: var(--an-radius-sm, 8px);
  background: var(--an-surface2, #f3f4f6);
  color: var(--an-text, #111827);
  font-size: 13px;
}
.rcpt-voided-banner i {
  margin-top: 2px;
  color: var(--an-text-muted, #64748b);
}
.rcpt-voided-banner div {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.rcpt-voided-banner span {
  color: var(--an-text-muted, #64748b);
}

.rcpt-void-btn {
  color: var(--an-danger, #dc2626) !important;
}

.rcpt-void-lead {
  margin: 0 0 10px;
  color: var(--an-text, #111827);
  font-size: 13px;
  line-height: 1.55;
}

.rcpt-void-effects {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0 0 18px;
  padding: 0;
  list-style: none;
}
.rcpt-void-effects li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  color: var(--an-text, #111827);
  font-size: 13px;
  line-height: 1.45;
}
.rcpt-void-effects i {
  margin-top: 1px;
  color: var(--an-text-muted, #64748b);
  font-size: 16px;
}

.stock-mv-dialog {
  width: min(780px, 100vw - 28px);
}

.stock-mv-types {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}
@media (max-width: 760px) {
  .stock-mv-types {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.stock-mv-type {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 72px;
  padding: 10px 8px;
  border: 1px solid var(--an-border, rgba(15, 23, 42, 0.1));
  border-radius: var(--an-radius-sm, 8px);
  background: var(--an-surface, #fff);
  color: var(--an-text-muted, #64748b);
  font-size: 12.5px;
  font-weight: 700;
  text-align: center;
  cursor: pointer;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}
.stock-mv-type i {
  font-size: 20px;
}
.stock-mv-type:hover {
  border-color: var(--an-border-hover, rgba(15, 23, 42, 0.2));
  color: var(--an-text, #111827);
}
.stock-mv-type:focus-visible {
  outline: 2px solid var(--an-primary, #ec4e36);
  outline-offset: 2px;
}
.stock-mv-type--active {
  border-color: var(--an-primary, #ec4e36);
  background: var(--an-primary-soft, rgba(236, 78, 54, 0.1));
  color: var(--an-primary, #ec4e36);
}

.stock-mv-type-hint {
  margin: 8px 0 16px;
}

.stock-mv-after--negative strong {
  color: #fca5a5;
}

.stock-mv-negative-note {
  margin: 8px 0 0;
  color: rgba(255, 255, 255, 0.72);
  font-size: 12px;
  line-height: 1.45;
}

.inventory-form-layout--stacked {
  grid-template-columns: minmax(0, 1fr);
}
.inventory-form-layout--stacked .inventory-stacked-fields {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0 16px;
}
@media (max-width: 760px) {
  .inventory-form-layout--stacked .inventory-stacked-fields {
    grid-template-columns: 1fr;
  }
}

.inventory-table--detail th {
  white-space: normal;
  line-height: 1.3;
  vertical-align: bottom;
}
.inventory-table--detail td:first-child {
  min-width: 170px;
}

.inventory-form-grid__span {
  grid-column: 1/-1;
}

.re-dialog {
  width: min(1120px, 94vw);
  max-width: 94vw;
}
.re-dialog form {
  display: flex;
  flex-direction: column;
  min-height: 0;
  height: 100%;
}

.re-content {
  background: var(--an-bg);
  padding: 0;
}

.re-layout {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  padding: 20px 24px 24px;
}
@media (max-width: 959px) {
  .re-layout {
    flex-direction: column;
  }
  .re-layout .re-side {
    width: 100%;
    position: static;
  }
}

.re-main {
  flex: 1 1 auto;
  min-width: 0;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  padding: 18px 20px 16px;
  box-shadow: var(--an-shadow-xs);
}

.re-loading {
  display: flex;
  justify-content: center;
  padding: 40px 0;
}

.re-empty {
  text-align: center;
  padding: 36px 20px;
}
.re-empty md-icon {
  font-size: 34px;
  color: var(--an-text-faint);
}
.re-empty__title {
  margin: 12px 0 4px;
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text);
}
.re-empty__desc {
  margin: 0;
  font-size: 12.5px;
  color: var(--an-text-muted);
}

.re-grid {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) 84px 118px 74px 88px 40px;
  gap: 10px;
  align-items: center;
}
.re-grid__head {
  padding: 0 2px 8px;
  border-bottom: 1px solid var(--an-border);
}
.re-grid__head span {
  font-size: 10.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-faint);
}
@media (max-width: 700px) {
  .re-grid__head {
    display: none;
  }
}
.re-grid__yield {
  text-align: left;
}
.re-grid__cost {
  text-align: right;
}

.re-row {
  padding: 8px 2px;
  border-bottom: 1px solid var(--an-border-light);
  transition: background var(--duration-fast) var(--ease-default);
}
.re-row:hover {
  background: var(--an-bg-subtle);
}
.re-row--empty {
  background: var(--an-primary-soft);
  border-radius: var(--an-radius-xs);
}
.re-row__picker {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.re-row__qty, .re-row__unit {
  min-width: 0;
}
.re-row__yield {
  position: relative;
  display: flex;
  align-items: center;
}
.re-row__yield .re-input {
  padding-right: 22px;
}
.re-row__yield-suffix {
  position: absolute;
  right: 9px;
  font-size: 11.5px;
  color: var(--an-text-faint);
  pointer-events: none;
}
.re-row__cost {
  text-align: right;
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.re-row__cost--zero {
  color: var(--an-text-faint);
  font-weight: 500;
}
.re-row__actions {
  display: flex;
  justify-content: flex-end;
}
@media (max-width: 700px) {
  .re-row {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 8px 10px;
    padding: 12px;
    margin-bottom: 8px;
    border: 1px solid var(--an-border);
    border-radius: var(--an-radius-sm);
  }
  .re-row .re-row__picker {
    flex: 1 1 100%;
  }
  .re-row .re-row__qty {
    flex: 1 1 60px;
  }
  .re-row .re-row__unit {
    flex: 2 1 110px;
  }
  .re-row .re-row__yield {
    flex: 1 1 70px;
  }
  .re-row .re-row__cost {
    flex: 1 1 auto;
    align-self: center;
    text-align: right;
    padding-right: 4px;
  }
  .re-row .re-row__actions {
    flex: 0 0 auto;
  }
}
.re-row__remove {
  margin: 0 !important;
  width: 32px !important;
  height: 32px !important;
  min-height: 32px !important;
  line-height: 32px !important;
  padding: 0 !important;
  opacity: 0.45;
  transition: opacity var(--duration-fast) var(--ease-default);
}
.re-row__remove md-icon {
  font-size: 16px;
  color: var(--an-rose);
}
.re-row__remove:hover {
  opacity: 1;
}

.re-input {
  width: 100%;
  height: 36px;
  padding: 0 10px;
  font-size: 13px;
  font-family: var(--font-sans);
  color: var(--an-text);
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-xs);
  outline: none;
  transition: border-color var(--duration-fast) var(--ease-default), box-shadow var(--duration-fast) var(--ease-default);
}
.re-input::placeholder {
  color: var(--an-placeholder);
}
.re-input:focus {
  border-color: var(--an-primary);
  box-shadow: 0 0 0 3px var(--an-primary-soft);
}

.re-select {
  margin: 0 !important;
  width: 100%;
}
.re-select .md-select-value {
  min-height: 36px;
  padding: 0 6px 0 10px;
  border: 1px solid var(--an-border) !important;
  border-radius: var(--an-radius-xs);
  background: var(--an-surface);
  font-size: 13px;
  color: var(--an-text);
}
.re-select[disabled] .md-select-value {
  background: var(--an-surface2);
  color: var(--an-text-faint);
  border-style: solid !important;
}

.re-autocomplete {
  background: transparent;
  height: 36px;
}
.re-autocomplete md-autocomplete-wrap {
  height: 36px;
  box-shadow: none !important;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-xs);
}
.re-autocomplete input {
  height: 34px !important;
  line-height: 34px !important;
  padding: 0 10px !important;
  font-size: 13px !important;
  color: var(--an-text) !important;
  background: transparent !important;
}
.re-autocomplete input::placeholder {
  color: var(--an-placeholder);
}

.md-autocomplete-suggestions-container:has(.re-ing-menu) {
  width: 440px;
}

.re-stock-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  align-self: flex-start;
  font-size: 10px;
  font-weight: 700;
  padding: 1px 7px;
  border-radius: var(--an-radius-pill);
  border: 1px solid transparent;
}
.re-stock-badge md-icon {
  font-size: 11px;
  margin: 0;
  color: inherit;
}
.re-stock-badge--out {
  background: var(--an-rose-soft);
  color: var(--an-rose);
  border-color: var(--an-rose-soft);
}
.re-stock-badge--low {
  background: var(--an-amber-soft);
  color: var(--an-amber);
  border-color: var(--an-amber-soft);
}

.re-add {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  margin-top: 12px;
  padding: 10px;
  font-size: 13px;
  font-weight: 600;
  font-family: var(--font-sans);
  color: var(--an-primary);
  background: transparent;
  border: 1.5px dashed var(--an-border-strong);
  border-radius: var(--an-radius-sm);
  cursor: pointer;
  transition: all var(--duration-fast) var(--ease-default);
}
.re-add md-icon {
  font-size: 16px;
  color: inherit;
}
.re-add:hover {
  border-color: var(--an-primary);
  background: var(--an-primary-soft);
}

.re-side {
  flex: 0 0 300px;
  width: 300px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  position: sticky;
  top: 0;
}

.re-card {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  padding: 16px;
  box-shadow: var(--an-shadow-xs);
}
.re-card__title {
  margin: 0 0 12px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  color: var(--an-text-muted);
}

.re-cost-total {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  padding-bottom: 12px;
  margin-bottom: 12px;
  border-bottom: 1px dashed var(--an-border);
}
.re-cost-total__label {
  font-size: 12.5px;
  color: var(--an-text-muted);
}
.re-cost-total__value {
  font-size: 22px;
  font-weight: 800;
  letter-spacing: -0.5px;
  color: var(--an-text);
  font-variant-numeric: tabular-nums;
}

.re-kv {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 12.5px;
  color: var(--an-text-muted);
  padding: 3px 0;
}
.re-kv strong {
  color: var(--an-text);
  font-weight: 600;
  font-variant-numeric: tabular-nums;
}
.re-kv--neg {
  color: var(--an-rose) !important;
}

.re-meter {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px dashed var(--an-border);
}
.re-meter__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 12px;
  color: var(--an-text-muted);
  margin-bottom: 7px;
}
.re-meter__head strong {
  font-size: 14px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}
.re-meter__pct--green {
  color: var(--an-emerald);
}
.re-meter__pct--amber {
  color: var(--an-amber);
}
.re-meter__pct--red {
  color: var(--an-rose);
}
.re-meter__track {
  position: relative;
  height: 8px;
  border-radius: var(--an-radius-pill);
  background: var(--an-surface3);
  overflow: hidden;
}
.re-meter__fill {
  height: 100%;
  border-radius: var(--an-radius-pill);
  transition: width var(--duration-norm) var(--ease-out);
}
.re-meter__fill--green {
  background: var(--an-emerald);
}
.re-meter__fill--amber {
  background: var(--an-amber);
}
.re-meter__fill--red {
  background: var(--an-rose);
}
.re-meter__target {
  position: absolute;
  top: -2px;
  bottom: -2px;
  left: 30%;
  width: 2px;
  background: var(--an-text-faint);
  opacity: 0.6;
}
.re-meter__hint {
  margin: 7px 0 0;
  font-size: 10.5px;
  color: var(--an-text-faint);
}

.re-no-price {
  margin: 10px 0 0;
  font-size: 11.5px;
  color: var(--an-text-faint);
  font-style: italic;
}

.re-nutrition {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 8px;
}
.re-nutrition__stat {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 6px;
  padding: 9px 11px;
  background: var(--an-bg-subtle);
  border: 1px solid var(--an-border-light);
  border-radius: var(--an-radius-sm);
  min-width: 0;
}
.re-nutrition__stat strong {
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.re-nutrition__stat span {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.3px;
  color: var(--an-text-faint);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: right;
}

.re-allergens {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.re-allergen {
  font-size: 11px;
  font-weight: 600;
  padding: 3px 9px;
  border-radius: var(--an-radius-pill);
  background: var(--an-rose-soft);
  color: var(--an-rose);
  border: 1px solid var(--an-rose-soft);
}

.re-preview {
  margin-bottom: 12px;
}
.re-preview__empty {
  font-size: 12px;
  color: var(--an-text-faint);
  padding: 4px 0 8px;
}
.re-preview__line {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  font-size: 12px;
  color: var(--an-text-muted);
  padding: 4px 0;
}
.re-preview__line em {
  font-style: normal;
  color: var(--an-text-faint);
}
.re-preview__line strong {
  color: var(--an-text);
  font-variant-numeric: tabular-nums;
}
.re-preview__total {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
  margin-top: 6px;
  padding-top: 8px;
  border-top: 1px dashed var(--an-border);
}
.re-preview__total strong {
  color: var(--an-primary);
  font-variant-numeric: tabular-nums;
}
.re-preview__hint {
  margin: 8px 0 0;
  font-size: 10.5px;
  color: var(--an-text-faint);
}

.re-preview-btn {
  width: 100%;
  margin: 0 !important;
  border: 1px solid var(--an-border) !important;
  border-radius: var(--an-radius-sm) !important;
  color: var(--an-text) !important;
  font-size: 12.5px;
  text-transform: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.re-preview-btn md-icon {
  font-size: 15px;
  color: var(--an-text-muted);
}
.re-preview-btn md-progress-circular {
  display: inline-block;
}

.re-fc-pill {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 5px 12px;
  border-radius: var(--an-radius-pill);
  font-size: 11px;
  font-weight: 600;
  border: 1px solid transparent;
  white-space: nowrap;
}
.re-fc-pill strong {
  font-size: 13px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}
.re-fc-pill--green {
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
  border-color: var(--an-emerald-soft);
}
.re-fc-pill--amber {
  background: var(--an-amber-soft);
  color: var(--an-amber);
  border-color: var(--an-amber-soft);
}
.re-fc-pill--red {
  background: var(--an-rose-soft);
  color: var(--an-rose);
  border-color: var(--an-rose-soft);
}

.re-error {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12.5px;
  font-weight: 600;
  color: var(--an-rose);
  padding-left: 8px;
}
.re-error md-icon {
  font-size: 15px;
  color: inherit;
}

.le-dialog {
  width: min(1240px, 96vw);
  max-width: 96vw;
  height: 92vh;
  max-height: 92vh;
}
.le-dialog form {
  display: flex;
  flex-direction: column;
  min-height: 0;
  height: 100%;
}
@media (max-width: 600px) {
  .le-dialog {
    width: 100vw;
    max-width: 100vw;
    height: 100vh;
    max-height: 100vh;
    border-radius: 0 !important;
  }
}

.le-content-wrap {
  padding: 0 !important;
  background: var(--an-bg);
  flex: 1;
  min-height: 0;
  display: flex;
}

.le-layout {
  display: flex;
  width: 100%;
  min-height: 0;
}
@media (max-width: 959px) {
  .le-layout {
    flex-direction: column;
  }
}

.le-rail {
  width: 212px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 14px 10px;
  background: var(--an-surface);
  border-right: 1px solid var(--an-border);
  overflow-y: auto;
  scrollbar-width: none;
}
.le-rail::-webkit-scrollbar {
  display: none;
}
@media (max-width: 959px) {
  .le-rail {
    width: 100%;
    flex-direction: row;
    align-items: center;
    gap: 6px;
    padding: 8px 12px;
    border-right: none;
    border-bottom: 1px solid var(--an-border);
    overflow-x: auto;
    overflow-y: hidden;
    position: sticky;
    top: 0;
    z-index: 2;
  }
  .le-rail .le-rail__section {
    display: none;
  }
}

.le-rail__section {
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.9px;
  color: var(--an-text-muted);
  padding: 10px 10px 4px;
  white-space: nowrap;
}
.le-rail__section:first-child {
  padding-top: 2px;
}

.le-rail__pill {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 9px 12px;
  border-radius: 10px;
  cursor: pointer;
  border: none;
  background: transparent;
  text-align: left;
  width: 100%;
  transition: background 0.15s, color 0.15s;
  color: var(--an-text-muted);
  font-size: 13px;
  font-weight: 500;
  font-family: var(--font-sans, "Inter", sans-serif);
  white-space: nowrap;
  flex-shrink: 0;
}
.le-rail__pill md-icon {
  font-size: 17px !important;
  width: 17px !important;
  height: 17px !important;
  min-width: 17px !important;
  color: inherit;
  flex-shrink: 0;
  margin: 0;
}
.le-rail__pill:hover {
  background: var(--an-surface2);
  color: var(--an-text);
}
.le-rail__pill--active {
  background: rgba(108, 99, 255, 0.08);
}
.waitry-dark-theme .le-rail__pill--active {
  background: var(--an-violet-soft);
}
.le-rail__pill--active {
  color: var(--an-violet);
  font-weight: 700;
}
.le-rail__pill--active md-icon {
  color: var(--an-violet) !important;
}
@media (max-width: 959px) {
  .le-rail__pill {
    width: auto;
  }
}
@media (max-width: 640px) {
  .le-rail__pill .le-rail__pill-text {
    display: none;
  }
  .le-rail__pill {
    padding: 9px;
  }
}

.le-rail__pill-text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  flex: 1;
}

.le-rail__badge {
  flex-shrink: 0;
  font-size: 10.5px;
  font-weight: 700;
  padding: 1px 6px;
  border-radius: var(--an-radius-pill);
  background: var(--an-violet-soft, rgba(108, 99, 255, 0.12));
  color: var(--an-violet);
}

.le-rail__dot {
  flex-shrink: 0;
  width: 6px;
  height: 6px;
  border-radius: 50%;
}
.le-rail__dot--warn {
  background: var(--an-amber);
}
.le-rail__dot--error {
  background: var(--an-rose);
}

.le-content {
  flex: 1;
  min-width: 0;
  overflow-y: auto;
  padding: 20px 24px 28px;
}

.le-panel {
  max-width: 860px;
}
.le-panel--delivery {
  max-width: none;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.le-panel-title {
  margin: 0 0 4px;
  font-size: 16px;
  font-weight: 700;
  color: var(--an-text);
  letter-spacing: -0.2px;
}

.le-panel-desc {
  margin: 0 0 18px;
  font-size: 12.5px;
  color: var(--an-text-faint);
}

.le-card {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  box-shadow: var(--an-shadow-xs);
  padding: 16px 20px;
  margin-bottom: 16px;
}
.le-card:last-child {
  margin-bottom: 0;
}
.le-card__title {
  margin: 0 0 12px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  color: var(--an-text-muted);
}

md-dialog md-input-container.le-input-wide-label.le-input-wide-label {
  max-width: none !important;
}

.le-field-desc {
  margin: 4px 0 0;
  font-size: 11.5px;
  line-height: 1.4;
  color: var(--an-text-faint);
}

.le-fee-field {
  display: flex;
  flex-direction: column;
  min-width: 160px;
  padding-right: 16px;
  margin-bottom: 12px;
}

.le-field-label-row {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 6px 0 10px;
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
}
.le-field-label-row .waitry-help {
  display: flex;
  cursor: help;
}
.le-field-label-row .waitry-help md-icon {
  font-size: 15px !important;
  width: 15px !important;
  height: 15px !important;
  min-width: 15px !important;
  color: var(--an-text-faint);
}

.le-type-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  gap: 10px;
  margin-bottom: 20px;
}

.le-type-tile {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 9px;
  padding: 16px 8px;
  border-radius: var(--an-radius-sm);
  border: 1.5px solid var(--an-border);
  background: var(--an-surface);
  cursor: pointer;
  font-family: inherit;
  transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
}
.le-type-tile md-icon {
  font-size: 24px !important;
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  color: var(--an-text-muted);
  transition: color 0.15s ease;
}
.le-type-tile__label {
  font-size: 12.5px;
  font-weight: 600;
  color: var(--an-text);
  white-space: nowrap;
  line-height: 1.2;
}
.le-type-tile:hover:not(:disabled) {
  border-color: var(--an-border-hover);
  background: var(--an-surface2);
}
.le-type-tile:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}
.le-type-tile--active {
  border-color: var(--an-violet);
  background: var(--an-violet-soft, rgba(108, 99, 255, 0.08));
  box-shadow: 0 0 0 1px var(--an-violet);
}
.le-type-tile--active md-icon {
  color: var(--an-violet);
}
.le-type-tile--active .le-type-tile__label {
  color: var(--an-violet);
}
@media (max-width: 640px) {
  .le-type-tile {
    padding: 12px 6px;
  }
}

.le-banner {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 16px;
  margin-bottom: 16px;
  border-radius: var(--an-radius);
  background: var(--an-amber-soft, rgba(245, 158, 11, 0.08));
  border: 1px solid rgba(245, 158, 11, 0.25);
}
.le-banner > md-icon {
  font-size: 20px !important;
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  color: var(--an-amber);
  margin-top: 1px;
}
.le-banner__text {
  display: flex;
  flex-direction: column;
  gap: 6px;
  font-size: 13px;
  color: var(--an-text);
  line-height: 1.5;
}
.le-banner__link {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  width: fit-content;
  font-size: 13px;
  font-weight: 700;
  color: var(--an-primary);
}
.le-banner__link md-icon {
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  min-width: 14px !important;
  color: var(--an-primary);
}
.le-banner__link:hover {
  text-decoration: underline;
}

.ds-dialog {
  width: min(760px, 94vw);
  max-width: 94vw;
}
.ds-dialog form {
  display: flex;
  flex-direction: column;
  min-height: 0;
  height: 100%;
}

.ds-content {
  background: var(--an-bg);
  padding: 20px 24px 24px;
}

.ds-loading {
  display: flex;
  justify-content: center;
  padding: 40px 0;
}

.ds-empty {
  text-align: center;
  padding: 36px 20px;
}
.ds-empty md-icon {
  font-size: 34px;
  color: var(--an-text-faint);
}
.ds-empty__title {
  margin: 12px 0 4px;
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text);
}
.ds-empty__desc {
  margin: 0;
  font-size: 12.5px;
  color: var(--an-text-muted);
}

.ds-row {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px;
  margin-bottom: 10px;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  box-shadow: var(--an-shadow-xs);
}
.ds-row__index {
  flex: 0 0 26px;
  width: 26px;
  height: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--an-primary-soft);
  color: var(--an-primary);
  font-size: 12px;
  font-weight: 800;
  margin-top: 4px;
}
.ds-row__main {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.ds-row__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}
.ds-row__actions {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.ds-row__actions md-button {
  margin: 0 !important;
  width: 32px !important;
  height: 32px !important;
  min-height: 32px !important;
  line-height: 32px !important;
  padding: 0 !important;
}
.ds-row__actions md-button md-icon {
  font-size: 16px;
}
.ds-row__remove md-icon {
  color: var(--an-rose);
}

.ds-textarea {
  width: 100%;
  min-height: 52px;
  padding: 8px 10px;
  font-size: 13px;
  font-family: var(--font-sans);
  color: var(--an-text);
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-xs);
  outline: none;
  resize: vertical;
  transition: border-color var(--duration-fast) var(--ease-default), box-shadow var(--duration-fast) var(--ease-default);
}
.ds-textarea::placeholder {
  color: var(--an-placeholder);
}
.ds-textarea:focus {
  border-color: var(--an-primary);
  box-shadow: 0 0 0 3px var(--an-primary-soft);
}

.ds-duration {
  display: flex;
  align-items: center;
  gap: 6px;
}

.ds-input {
  width: 76px;
  height: 34px;
  padding: 0 10px;
  font-size: 13px;
  font-family: var(--font-sans);
  color: var(--an-text);
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-xs);
  outline: none;
}
.ds-input::placeholder {
  color: var(--an-placeholder);
}
.ds-input:focus {
  border-color: var(--an-primary);
  box-shadow: 0 0 0 3px var(--an-primary-soft);
}

.ds-select {
  margin: 0 !important;
  width: 96px;
}
.ds-select .md-select-value {
  min-height: 34px;
  padding: 0 6px 0 10px;
  border: 1px solid var(--an-border) !important;
  border-radius: var(--an-radius-xs);
  background: var(--an-surface);
  font-size: 13px;
  color: var(--an-text);
}

.ds-image {
  display: flex;
  align-items: center;
}
.ds-image__thumb {
  position: relative;
  width: 60px;
  height: 60px;
  border-radius: var(--an-radius-xs);
  overflow: hidden;
  border: 1px solid var(--an-border);
}
.ds-image__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.ds-image__remove {
  position: absolute !important;
  top: -6px;
  right: -6px;
  width: 20px !important;
  height: 20px !important;
  min-height: 20px !important;
  line-height: 20px !important;
  padding: 0 !important;
  margin: 0 !important;
  background: var(--an-surface) !important;
  border: 1px solid var(--an-border) !important;
  border-radius: 50%;
}
.ds-image__remove md-icon {
  font-size: 12px;
  color: var(--an-rose);
}
.ds-image__pick {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 0 !important;
  padding: 0 12px !important;
  height: 34px;
  font-size: 12px;
  font-weight: 600;
  text-transform: none;
  color: var(--an-text-muted) !important;
  border: 1px dashed var(--an-border-strong) !important;
  border-radius: var(--an-radius-xs) !important;
}
.ds-image__pick md-icon {
  font-size: 15px;
  color: var(--an-text-muted);
}
.ds-image__pick:hover {
  border-color: var(--an-primary) !important;
  color: var(--an-primary) !important;
}
.ds-image__actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.ds-image__uploading {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 34px;
}

.ds-add {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  margin-top: 4px;
  padding: 10px;
  font-size: 13px;
  font-weight: 600;
  font-family: var(--font-sans);
  color: var(--an-primary);
  background: transparent;
  border: 1.5px dashed var(--an-border-strong);
  border-radius: var(--an-radius-sm);
  cursor: pointer;
  transition: all var(--duration-fast) var(--ease-default);
}
.ds-add md-icon {
  font-size: 16px;
  color: inherit;
}
.ds-add:hover {
  border-color: var(--an-primary);
  background: var(--an-primary-soft);
}

.ds-error {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12.5px;
  font-weight: 600;
  color: var(--an-rose);
  padding-left: 8px;
}
.ds-error md-icon {
  font-size: 15px;
  color: inherit;
}

.cpb-dialog {
  width: min(980px, 96vw);
  max-width: 96vw;
}

.cpb-content-wrap {
  background: var(--an-bg);
  padding: 0;
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.cpb-layout {
  display: flex;
  align-items: stretch;
  min-height: 0;
  flex: 1 1 auto;
}

.cpb-rail {
  flex: 0 0 250px;
  width: 250px;
  padding: 18px 16px;
  border-right: 1px solid var(--an-border);
  background: var(--an-surface);
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.cpb-block {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.cpb-block-label {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--an-text-muted);
}

.cpb-modes {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px;
}

.cpb-mode {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 10px 6px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-bg);
  color: var(--an-text-muted);
  font-size: 11.5px;
  font-weight: 700;
  cursor: pointer;
  transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
}
.cpb-mode md-icon {
  font-size: 18px;
  color: inherit;
}
.cpb-mode:hover {
  border-color: var(--an-primary);
  color: var(--an-text);
}
.cpb-mode--active {
  border-color: var(--an-primary);
  background: var(--an-primary-soft);
  color: var(--an-primary);
}

.cpb-mode-hint {
  margin: 2px 0 0;
  font-size: 11.5px;
  line-height: 1.4;
  color: var(--an-text-muted);
}

.cpb-direction {
  display: flex;
  gap: 6px;
}

.cpb-pill {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 5px 10px;
  border: 1px solid var(--an-border);
  border-radius: 999px;
  background: var(--an-bg);
  color: var(--an-text-muted);
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
}
.cpb-pill md-icon {
  font-size: 14px;
  color: inherit;
}
.cpb-pill--active {
  border-color: var(--an-primary);
  background: var(--an-primary-soft);
  color: var(--an-primary);
}

.cpb-value {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-bg);
}
.cpb-value:focus-within {
  border-color: var(--an-primary);
}
.cpb-value input {
  flex: 1 1 auto;
  min-width: 0;
  border: none;
  outline: none;
  background: transparent;
  color: var(--an-text);
  font-size: 16px;
  font-weight: 800;
}

.cpb-value-adorn {
  font-size: 13px;
  font-weight: 800;
  color: var(--an-text-muted);
}

.cpb-rounding-select {
  margin: 0;
}

.cpb-overrides-check {
  margin: 0;
  font-size: 12.5px;
}

.cpb-overrides-count {
  color: var(--an-text-muted);
  font-weight: 700;
}

.cpb-grid {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.cpb-grid-head,
.cpb-row {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr) 90px 20px 130px 130px;
  align-items: center;
  gap: 8px;
  padding: 0 16px;
}

.cpb-grid-head {
  position: sticky;
  top: 0;
  z-index: 2;
  padding-top: 12px;
  padding-bottom: 8px;
  background: var(--an-bg);
  border-bottom: 1px solid var(--an-border);
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--an-text-muted);
}

.cpb-grid-body {
  overflow-y: auto;
  min-height: 0;
  padding-bottom: 8px;
}

.cpb-num {
  text-align: right;
  justify-self: end;
}

.cpb-row {
  padding-top: 8px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--an-border);
  transition: opacity 0.15s ease;
}
.cpb-row--excluded {
  opacity: 0.45;
}
.cpb-row--unchanged {
  opacity: 0.6;
}

.cpb-row-check {
  margin: 0;
}

.cpb-row-name {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.cpb-row-title {
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cpb-row-flags {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}

.cpb-flag {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  padding: 1px 7px;
  border-radius: 999px;
  background: var(--an-primary-soft);
  color: var(--an-text-muted);
  font-size: 10.5px;
  font-weight: 700;
}
.cpb-flag--danger {
  background: color-mix(in srgb, var(--an-rose) 14%, transparent);
  color: var(--an-rose);
}

.cpb-row-price {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text-muted);
  white-space: nowrap;
}

.cpb-row-arrow {
  font-size: 14px;
  --an-icon-size: 14px;
  color: var(--an-text-faint);
}

.cpb-new-input {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 8px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
}
.cpb-new-input:focus-within {
  border-color: var(--an-primary);
}
.cpb-new-input input {
  width: 64px;
  border: none;
  outline: none;
  background: transparent;
  text-align: right;
  color: var(--an-text);
  font-size: 13px;
  font-weight: 800;
}
.cpb-new-input input::placeholder {
  color: var(--an-text);
  font-weight: 800;
  opacity: 1;
}
.cpb-new-input--manual {
  border-color: var(--an-primary);
  background: var(--an-primary-soft);
}

.cpb-new-adorn {
  font-size: 11px;
  font-weight: 700;
  color: var(--an-text-muted);
}

.cpb-manual-reset {
  display: inline-flex;
  align-items: center;
  border: none;
  background: transparent;
  padding: 0;
  cursor: pointer;
  color: var(--an-text-muted);
}
.cpb-manual-reset md-icon {
  font-size: 13px;
  color: inherit;
}

.cpb-row-fc {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  white-space: nowrap;
}

.cpb-fc-arrow {
  font-size: 12px;
  --an-icon-size: 12px;
  color: var(--an-text-faint);
}

.cpb-fc-none {
  color: var(--an-text-faint);
}

.cpb-actions {
  flex-wrap: wrap;
  gap: 6px;
}

.cpb-summary {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  color: var(--an-text-muted);
}
.cpb-summary strong {
  color: var(--an-text);
}

.cpb-summary-sep {
  color: var(--an-text-faint);
}

.cpb-warn-pill {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 2px 9px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--an-rose) 14%, transparent);
  color: var(--an-rose);
  font-size: 11px;
  font-weight: 800;
}
.cpb-warn-pill md-icon {
  font-size: 13px;
  color: inherit;
}

.cpb-applying p {
  margin-top: 14px;
  font-size: 13px;
  color: var(--an-text-muted);
}

.cpb-done {
  text-align: center;
  padding: 32px 24px;
}
.cpb-done .vm-empty-icon-wrap md-icon {
  color: var(--an-green, #22c55e);
}

.cpb-done-title {
  margin: 12px 0 4px;
  font-size: 15px;
  color: var(--an-text);
}

.cpb-done-undone {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 4px 0 0;
  font-size: 12.5px;
  font-weight: 700;
  color: var(--an-primary);
}
.cpb-done-undone md-icon {
  font-size: 15px;
  color: inherit;
}

.cpb-results {
  max-width: 520px;
  margin: 14px auto 0;
  text-align: left;
}

.cpb-result-row {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 10px;
  border-radius: var(--an-radius-sm);
  font-size: 12.5px;
}
.cpb-result-row--error {
  color: var(--an-rose);
}
.cpb-result-row--error md-icon {
  font-size: 15px;
  color: inherit;
}

.cpb-skipped {
  margin-top: 10px;
  font-size: 12px;
  color: var(--an-text-muted);
}

.cpb-undo-btn md-icon {
  font-size: 16px;
  margin-right: 4px;
}

@media (max-width: 760px) {
  .cpb-layout {
    flex-direction: column;
    overflow-y: auto;
  }
  .cpb-rail {
    flex: 0 0 auto;
    width: auto;
    border-right: none;
    border-bottom: 1px solid var(--an-border);
  }
  .cpb-grid {
    flex: 0 0 auto;
  }
  .cpb-grid-body {
    overflow-y: visible;
  }
  .cpb-grid-head,
  .cpb-row {
    grid-template-columns: 28px minmax(0, 1fr) 64px 14px 104px 96px;
    gap: 5px;
    padding: 8px;
  }
  .cpb-new-input input {
    width: 48px;
  }
}
.cstb-dialog .cpb-grid-head,
.cstb-dialog .cpb-row {
  grid-template-columns: 36px minmax(0, 1fr) 90px 20px 130px;
}
.cstb-dialog .cpb-value-adorn {
  font-variant-numeric: tabular-nums;
}

@media (max-width: 959px) {
  .cstb-dialog .cpb-grid-head,
  .cstb-dialog .cpb-row {
    grid-template-columns: 28px minmax(0, 1fr) 64px 14px 104px;
  }
}
.cmb-dialog {
  width: min(560px, 94vw);
  max-width: 94vw;
}

.cmb-content-wrap {
  background: var(--an-bg);
  padding: 16px 20px 20px;
  display: flex;
  flex-direction: column;
  min-height: 0;
  max-height: 60vh;
}

.cmb-search {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  margin-bottom: 12px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
}
.cmb-search md-icon {
  font-size: 16px;
  color: var(--an-text-faint);
}
.cmb-search input {
  flex: 1 1 auto;
  min-width: 0;
  border: none;
  outline: none;
  background: transparent;
  color: var(--an-text);
  font-size: 13px;
}

.cmb-search-clear {
  display: inline-flex;
  align-items: center;
  border: none;
  background: transparent;
  padding: 0;
  cursor: pointer;
  color: var(--an-text-muted);
}
.cmb-search-clear md-icon {
  font-size: 14px;
  color: inherit;
}

.cmb-tree {
  overflow-y: auto;
  min-height: 0;
}

.cmb-menu-node {
  border-bottom: 1px solid var(--an-border);
}
.cmb-menu-node:last-child {
  border-bottom: none;
}

.cmb-menu-row {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 10px 4px;
  cursor: pointer;
  font-size: 13px;
  font-weight: 700;
  color: var(--an-text);
}
.cmb-menu-row:hover {
  color: var(--an-primary);
}

.cmb-menu-chevron {
  font-size: 14px;
  --an-icon-size: 14px;
  color: var(--an-text-faint);
  transition: transform 0.15s ease;
}
.cmb-menu-chevron--open {
  transform: rotate(90deg);
}

.cmb-cat-list {
  padding: 0 0 8px 22px;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.cmb-cat-row {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 10px;
  border-radius: var(--an-radius-sm);
  cursor: pointer;
  font-size: 12.5px;
  color: var(--an-text-muted);
  transition: background 0.15s ease, color 0.15s ease;
}
.cmb-cat-row:hover {
  background: var(--an-surface2);
  color: var(--an-text);
}
.cmb-cat-row--selected {
  background: var(--an-primary-soft);
  color: var(--an-primary);
  font-weight: 700;
}
.cmb-cat-row--disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.cmb-cat-name {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cmb-cat-check {
  font-size: 15px;
  --an-icon-size: 15px;
  color: var(--an-primary);
}

.cmb-cat-disabled-icon {
  font-size: 13px;
  --an-icon-size: 13px;
  color: var(--an-text-faint);
}

.cmb-selected-summary {
  font-size: 12.5px;
  color: var(--an-text-muted);
}
.cmb-selected-summary strong {
  color: var(--an-text);
}

.ctb-dialog {
  width: min(560px, 94vw);
  max-width: 94vw;
}

.ctb-content-wrap {
  background: var(--an-bg);
  padding: 16px 20px 20px;
}

.ctb-mode {
  display: flex;
  gap: 8px;
  margin-bottom: 12px;
}
.ctb-mode__btn {
  flex: 1 1 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 9px 10px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
  color: var(--an-text-muted);
  font-size: 12.5px;
  font-weight: 700;
  cursor: pointer;
}
.ctb-mode__btn md-icon {
  font-size: 15px;
  color: inherit;
}
.ctb-mode__btn--active {
  border-color: var(--an-primary);
  background: var(--an-primary-soft);
  color: var(--an-primary);
}
.ctb-mode__btn--warn.ctb-mode__btn--active {
  border-color: var(--an-rose);
  background: color-mix(in srgb, var(--an-rose) 12%, transparent);
  color: var(--an-rose);
}

.ctb-checked-count {
  font-size: 12.5px;
  color: var(--an-text-muted);
}
.ctb-checked-count strong {
  color: var(--an-text);
}

/* -------------------------------------------------------------------------- */
/*                   Order detail side panel (orderViewSide.html)             */
/* -------------------------------------------------------------------------- */
.orderSideView {
  display: flex;
  flex-direction: column;
  background-color: var(--an-bg) !important;
  color: var(--an-text);
}
.orderSideView .order-detail-header {
  background: var(--an-surface);
  border-bottom: 1px solid var(--an-border);
  padding: 12px 24px;
  min-height: 72px;
  display: flex;
  align-items: center;
  gap: 24px;
  flex-shrink: 0;
}
.orderSideView .order-detail-heading {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}
.orderSideView .header-title {
  display: flex;
  align-items: baseline;
  gap: 6px;
  margin: 0;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.2;
  color: var(--an-text);
  font-variant-numeric: tabular-nums;
}
.orderSideView .header-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  font-size: 13px;
  color: var(--an-text-muted);
}
.orderSideView .header-meta .live-source {
  margin-left: 0;
}
.orderSideView .header-meta__chip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 2px 8px;
  border-radius: var(--an-radius-pill);
  background: var(--an-surface2);
  color: var(--an-text);
  font-size: 12px;
  font-weight: 600;
}
.orderSideView .header-meta__item {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.orderSideView .header-meta__item md-icon {
  margin: 0;
  font-size: 14px;
  width: 14px;
  height: 14px;
  min-width: 14px;
  min-height: 14px;
  color: var(--an-text-faint);
}
.orderSideView .header-fact {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding-left: 24px;
  border-left: 1px solid var(--an-border);
  min-width: 0;
}
.orderSideView .header-fact__label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--an-text-faint);
}
.orderSideView .header-fact__value {
  font-size: 14px;
  font-weight: 600;
  color: var(--an-text);
}
.orderSideView .header-fact__value--empty {
  font-weight: 500;
  color: var(--an-text-muted);
}
.orderSideView .order-status-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 5px 12px;
  border-radius: var(--an-radius-pill);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  white-space: nowrap;
}
.orderSideView .md-button.order-detail-close {
  margin: 0;
  width: 36px;
  height: 36px;
  min-height: 36px;
  padding: 0;
  border-radius: var(--an-radius-sm);
  border: 1px solid var(--an-border);
  background: var(--an-surface);
}
.orderSideView .md-button.order-detail-close md-icon {
  color: var(--an-text-muted) !important;
  font-size: 18px;
}
.orderSideView .md-button.order-detail-close:hover {
  background: var(--an-surface2);
}
.orderSideView .md-button.order-detail-close:hover md-icon {
  color: var(--an-text) !important;
}
.orderSideView .order-scroll-content {
  background: transparent;
  padding: 24px !important;
}
.orderSideView .ovs-side-col {
  padding-left: 24px;
}
@media (max-width: 959px) {
  .orderSideView .ovs-side-col {
    padding-left: 0;
  }
}
.orderSideView .waitry-card {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  box-shadow: var(--an-shadow-sm);
  margin-bottom: 16px;
  overflow: hidden;
}
.orderSideView .waitry-card .card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 56px;
  padding: 10px 20px;
  border-bottom: 1px solid var(--an-border);
}
.orderSideView .waitry-card .card-header h3 {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--an-text);
}
.orderSideView .waitry-card .card-header h3 md-icon {
  margin: 0;
  font-size: 18px;
  width: 18px;
  height: 18px;
  min-width: 18px;
  min-height: 18px;
  color: var(--an-text-muted);
}
.orderSideView .waitry-card .card-body {
  padding: 20px;
  font-size: 14px;
  color: var(--an-text);
}
.orderSideView .ovs-card-divider {
  margin-top: 16px;
  padding-top: 12px;
  border-top: 1px dashed var(--an-border);
}
.orderSideView .ovs-lead-icon {
  margin: 0 8px 0 0;
  font-size: 18px;
  width: 18px;
  height: 18px;
  min-width: 18px;
  min-height: 18px;
  flex-shrink: 0;
  color: var(--an-text-muted);
}
.orderSideView .md-button.ovs-icon-btn {
  margin: 0;
  width: 32px;
  height: 32px;
  min-height: 32px;
  padding: 0;
  border-radius: var(--an-radius-sm);
}
.orderSideView .md-button.ovs-icon-btn md-icon {
  margin: 0;
  font-size: 18px;
  width: 18px;
  height: 18px;
  min-width: 18px;
  min-height: 18px;
  color: var(--an-text-muted) !important;
}
.orderSideView .md-button.ovs-icon-btn:hover:not([disabled]) {
  background: var(--an-surface2);
}
.orderSideView .md-button.ovs-icon-btn:hover:not([disabled]) md-icon {
  color: var(--an-text) !important;
}
.orderSideView .md-button.ovs-icon-btn[disabled] md-icon {
  color: var(--an-text-faint) !important;
}
.orderSideView .md-button.ovs-icon-btn--outlined {
  border: 1px solid var(--an-border);
  background: var(--an-surface);
}
.orderSideView .md-button.ovs-header-btn {
  display: inline-flex;
  align-items: center;
  margin: 0;
  height: 32px;
  min-height: 32px;
  line-height: 32px;
  padding: 0 12px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
  color: var(--an-text);
  font-size: 13px;
  font-weight: 600;
  text-transform: none;
}
.orderSideView .md-button.ovs-header-btn md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  min-width: 16px;
  min-height: 16px;
  color: var(--an-text-muted) !important;
}
.orderSideView .md-button.ovs-header-btn:hover {
  background: var(--an-surface2);
}
.orderSideView .info-box-warning,
.orderSideView .info-box-success,
.orderSideView .info-box-error,
.orderSideView .info-box-info,
.orderSideView .info-box-note {
  border-radius: var(--an-radius-sm);
  padding: 10px 12px;
  font-size: 13px;
  border: 1px solid transparent;
}
.orderSideView .info-box-warning md-icon,
.orderSideView .info-box-success md-icon,
.orderSideView .info-box-error md-icon,
.orderSideView .info-box-info md-icon,
.orderSideView .info-box-note md-icon {
  color: inherit !important;
}
.orderSideView .info-box-warning {
  background: var(--an-amber-soft);
  color: var(--an-amber);
}
.orderSideView .info-box-success {
  background: var(--an-emerald-soft);
  border-color: color-mix(in srgb, var(--an-emerald) 25%, transparent);
  color: var(--an-emerald);
}
.orderSideView .info-box-error {
  background: var(--an-rose-soft);
  border-color: var(--an-rose-ring);
  color: var(--an-rose);
}
.orderSideView .info-box-info {
  background: var(--an-sky-soft);
  color: var(--an-text);
}
.orderSideView .info-box-note {
  margin-top: 8px;
  background: var(--an-amber-soft);
  color: var(--an-text);
}
.orderSideView .info-box-note md-icon {
  color: var(--an-amber) !important;
}
.orderSideView .ovs-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  border-radius: var(--an-radius-pill);
  font-size: 12px;
  font-weight: 600;
}
.orderSideView .ovs-pill md-icon {
  margin: 0;
  font-size: 14px;
  width: 14px;
  height: 14px;
  min-width: 14px;
  min-height: 14px;
}
.orderSideView .ovs-client-columns {
  gap: 24px;
}
.orderSideView .customer-info-row {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 8px;
}
.orderSideView .customer-info-row--link {
  cursor: pointer;
  padding: 8px;
  margin: 0 -8px 8px;
  border-radius: var(--an-radius-sm);
  transition: background var(--duration-fast);
}
.orderSideView .customer-info-row--link:hover {
  background: var(--an-surface2);
}
.orderSideView .customer-info-row .customer-avatar {
  flex-shrink: 0;
}
.orderSideView .customer-info-row .customer-details {
  flex: 1;
  min-width: 0;
}
.orderSideView .customer-info-row .customer-details h4 {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 0 0 2px;
  font-size: 15px;
  font-weight: 600;
  color: var(--an-text);
}
.orderSideView .customer-info-row .customer-details h4 md-icon {
  margin: 0;
  font-size: 14px;
  width: 14px;
  height: 14px;
  min-width: 14px;
  min-height: 14px;
}
.orderSideView .customer-info-row .customer-details p {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 0;
  font-size: 13px;
  color: var(--an-text-muted);
}
.orderSideView .customer-info-row .customer-details p md-icon {
  margin: 0;
  font-size: 14px;
  width: 14px;
  height: 14px;
  min-width: 14px;
  min-height: 14px;
  color: var(--an-text-faint);
}
.orderSideView .ovs-inline-edits {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 16px;
  margin-top: 4px;
}
.orderSideView .ovs-inline-edit {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  max-width: 100%;
  margin: 0 0 0 -8px;
  padding: 6px 8px;
  border: none;
  border-radius: var(--an-radius-sm);
  background: transparent;
  color: var(--an-text);
  font-family: inherit;
  font-size: 14px;
  font-weight: 500;
  text-align: left;
  cursor: pointer;
  transition: background var(--duration-fast), color var(--duration-fast);
}
.orderSideView .ovs-inline-edit md-icon {
  margin: 0;
  font-size: 16px;
  width: 16px;
  height: 16px;
  min-width: 16px;
  min-height: 16px;
  flex-shrink: 0;
  color: var(--an-text-faint);
}
.orderSideView .ovs-inline-edit--empty {
  color: var(--an-text-muted);
}
.orderSideView .ovs-inline-edit:hover {
  background: var(--an-surface2);
  color: var(--an-text);
}
.orderSideView .ovs-inline-edit:hover md-icon {
  color: var(--an-text-muted);
}
.orderSideView .ovs-inline-form {
  display: flex;
  align-items: center;
  gap: 4px;
}
.orderSideView .ovs-inline-form--wide {
  width: 100%;
}
.orderSideView md-input-container.ovs-inline-input {
  margin: 0;
  --an-field-strip: 0px;
}
.orderSideView .ovs-delivery-col {
  padding-left: 24px;
  border-left: 1px dashed var(--an-border);
  line-height: 1.4;
}
.orderSideView .ovs-delivery-col > div {
  margin-bottom: 12px;
}
@media (max-width: 599px) {
  .orderSideView .ovs-delivery-col {
    padding-left: 0;
    border-left: none;
  }
}
.orderSideView .ovs-map {
  display: block;
  width: 100%;
  height: 220px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface2);
}
.orderSideView .add-items-toggle {
  margin-bottom: 16px;
}
.orderSideView .md-button.add-items-toggle-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 44px;
  min-height: 44px;
  margin: 0;
  border: 1px dashed var(--an-border-strong);
  border-radius: var(--an-radius-sm);
  background: transparent;
  color: var(--an-text-muted);
  font-size: 14px;
  font-weight: 600;
  text-transform: none;
}
.orderSideView .md-button.add-items-toggle-btn md-icon {
  font-size: 18px;
  color: inherit !important;
}
.orderSideView .md-button.add-items-toggle-btn:hover {
  border-color: var(--an-text-faint);
  background: var(--an-surface2);
  color: var(--an-text);
}
.orderSideView .add-items-area {
  margin-bottom: 16px;
  padding: 16px;
  border: 1px dashed var(--an-border-strong);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface2);
}
.orderSideView .add-items-area md-checkbox.add-items-disabled {
  margin: 0 0 0 16px;
}
.orderSideView .add-items-area md-checkbox.add-items-disabled .md-label {
  font-size: 13px;
}
.orderSideView .add-items-pending {
  margin-top: 16px;
}
.orderSideView .add-items-actions {
  gap: 8px;
  margin-top: 16px;
}
.orderSideView .add-items-actions .md-button {
  margin: 0;
}
.orderSideView .ovs-loading {
  display: flex;
  justify-content: center;
  padding: 20px;
}
.orderSideView .order-items-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.orderSideView .order-items-list .order-item-row {
  display: flex;
  align-items: flex-start;
  padding: 14px 16px;
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  transition: border-color var(--duration-fast);
}
.orderSideView .order-items-list .order-item-row:hover {
  border-color: var(--an-border-strong);
}
.orderSideView .order-items-list .order-item-row .item-qty {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  margin-right: 14px;
  flex-shrink: 0;
  border-radius: 6px;
  background: var(--an-text-muted);
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
.orderSideView .order-items-list .order-item-row .item-qty md-icon {
  margin: 0;
  font-size: 16px;
  color: #fff !important;
}
.orderSideView .order-items-list .order-item-row .item-stepper {
  margin: 0 16px;
}
.orderSideView .order-items-list .order-item-row .item-stepper .md-button {
  margin: 0;
}
.orderSideView .order-items-list .order-item-row .item-details {
  flex: 1;
  min-width: 0;
}
.orderSideView .order-items-list .order-item-row .item-details .item-name {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 2px;
  font-size: 14px;
  font-weight: 600;
  color: var(--an-text);
}
.orderSideView .order-items-list .order-item-row .item-details .item-combo-icon {
  margin: 0;
  font-size: 16px;
  width: 16px;
  height: 16px;
  min-width: 16px;
  min-height: 16px;
}
.orderSideView .order-items-list .order-item-row .item-details .item-guest {
  display: inline-flex;
  align-items: center;
}
.orderSideView .order-items-list .order-item-row .item-details .item-menu-name {
  margin-left: auto;
  padding-left: 12px;
  font-size: 12px;
  font-weight: 500;
  color: var(--an-text-muted);
  white-space: nowrap;
}
.orderSideView .order-items-list .order-item-row .item-details .item-variations {
  font-size: 13px;
  line-height: 1.4;
  color: var(--an-text-muted);
}
.orderSideView .order-items-list .order-item-row .item-details .item-notes {
  display: inline-block;
  margin-top: 6px;
  padding: 4px 8px;
  border-radius: var(--an-radius-xs);
  background: var(--an-amber-soft);
  color: var(--an-text);
  font-size: 13px;
}
.orderSideView .order-items-list .order-item-row .item-details .item-discount {
  margin-top: 4px;
  font-size: 12px;
  font-weight: 600;
  color: var(--an-emerald);
  font-variant-numeric: tabular-nums;
}
.orderSideView .order-items-list .order-item-row .item-financials {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  min-width: 96px;
  text-align: right;
}
.orderSideView .order-items-list .order-item-row .item-financials .item-total {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 15px;
  font-weight: 700;
  color: var(--an-text);
  font-variant-numeric: tabular-nums;
}
.orderSideView .order-items-list .order-item-row .item-financials .item-paid-icon {
  margin: 0;
  font-size: 16px;
  width: 16px;
  height: 16px;
  min-width: 16px;
  min-height: 16px;
}
.orderSideView .order-items-list .order-item-row .item-financials .item-price-unit {
  margin-top: 2px;
  font-size: 12px;
  color: var(--an-text-muted);
  font-variant-numeric: tabular-nums;
}
.orderSideView .order-items-list .order-item-row .item-financials .item-actions {
  display: flex;
  gap: 2px;
  margin-top: 6px;
  opacity: 0;
  transition: opacity var(--duration-fast);
}
.orderSideView .order-items-list .order-item-row .item-financials .item-actions .md-button {
  margin: 0;
  padding: 0;
  width: 28px;
  height: 28px;
  min-height: 28px;
  border-radius: var(--an-radius-xs);
}
.orderSideView .order-items-list .order-item-row .item-financials .item-actions .md-button md-icon {
  font-size: 16px;
}
.orderSideView .order-items-list .order-item-row .item-financials .item-actions .md-button:hover {
  background: var(--an-surface3);
}
.orderSideView .order-items-list .order-item-row:hover .item-actions {
  opacity: 1;
}
@media (hover: none) {
  .orderSideView .order-items-list .order-item-row .item-actions {
    opacity: 1;
  }
}
.orderSideView .totals-summary .summary-row {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 6px 0;
  font-size: 14px;
  color: var(--an-text-muted);
  font-variant-numeric: tabular-nums;
}
.orderSideView .totals-summary .summary-row > span:last-child {
  color: var(--an-text);
}
.orderSideView .totals-summary .summary-row.discount-row, .orderSideView .totals-summary .summary-row.discount-row > span:last-child {
  color: var(--an-emerald);
}
.orderSideView .totals-summary .summary-row--muted, .orderSideView .totals-summary .summary-row--muted > span:last-child {
  font-size: 13px;
  color: var(--an-text-faint);
}
.orderSideView .totals-summary .summary-row--edit {
  align-items: flex-end;
}
.orderSideView .totals-summary .summary-row--edit > span:last-child {
  padding-bottom: 10px;
}
.orderSideView .totals-summary .summary-row.grand-total {
  margin-top: 10px;
  padding-top: 14px;
  border-top: 1px dashed var(--an-border-strong);
  font-size: 18px;
  font-weight: 700;
  color: var(--an-text);
}
.orderSideView .totals-summary .summary-row--tip {
  margin-top: 12px;
  padding: 10px 12px;
}
.orderSideView .totals-summary .summary-row--tip > span:last-child {
  font-weight: 700;
}
.orderSideView .ovs-cover-edit {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.orderSideView md-input-container.ovs-cover-select {
  margin: 0;
  width: 88px;
}
.orderSideView .payment-status {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
  padding: 12px 14px;
  border: 1px solid transparent;
  border-radius: var(--an-radius-sm);
}
.orderSideView .payment-status md-icon {
  --an-icon-size: 18px;
  margin: 0;
  flex-shrink: 0;
  color: inherit;
}
.orderSideView .payment-status:last-child {
  margin-bottom: 0;
}
.orderSideView .payment-status--paid {
  border-color: color-mix(in srgb, var(--an-emerald) 30%, transparent);
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
}
.orderSideView .payment-status--pending, .orderSideView .payment-status--partial {
  border-color: color-mix(in srgb, var(--an-amber) 35%, transparent);
  background: var(--an-amber-soft);
  color: var(--an-amber);
}
.orderSideView .payment-status__text {
  flex: 1;
  min-width: 0;
}
.orderSideView .payment-status__title {
  font-size: 14px;
  font-weight: 600;
}
.orderSideView .payment-status__hint {
  margin-top: 2px;
  font-size: 12px;
  opacity: 0.85;
}
.orderSideView .payment-status__amount {
  font-size: 15px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.orderSideView .payments-list {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.orderSideView .payment-row {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 10px 12px;
  border-radius: var(--an-radius-sm);
  background: var(--an-surface2);
  font-size: 14px;
}
.orderSideView .payment-row .payment-type {
  flex: 1;
  min-width: 0;
  font-weight: 600;
  color: var(--an-text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.orderSideView .payment-row .payment-amount {
  font-weight: 700;
  color: var(--an-emerald);
  font-variant-numeric: tabular-nums;
}
.orderSideView .payment-row--void .payment-type,
.orderSideView .payment-row--void .payment-amount {
  color: var(--an-text-muted);
}
.orderSideView .payment-row--void .payment-amount {
  text-decoration: line-through;
}
.orderSideView .payment-row__main {
  display: flex;
  align-items: center;
  gap: 8px;
}
.orderSideView .payment-row__badge {
  padding: 2px 8px;
  border-radius: var(--an-radius-pill);
  background: var(--an-amber-soft);
  color: var(--an-amber);
  font-size: 11px;
  font-weight: 600;
  white-space: nowrap;
}
.orderSideView .payment-row__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 12px;
  font-size: 12px;
  color: var(--an-text-muted);
  font-variant-numeric: tabular-nums;
}
.orderSideView .payment-row__result {
  color: var(--an-emerald);
  font-weight: 600;
}
.orderSideView .ovs-spin {
  animation: spin 0.9s linear infinite;
}
.orderSideView .payment-row__ref {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  font-family: var(--font-mono, ui-monospace, monospace);
  cursor: pointer;
}
.orderSideView .payment-row__ref md-icon {
  --an-icon-size: 12px;
  margin: 0;
  color: inherit;
  opacity: 0.7;
}
.orderSideView .payment-row__ref:hover {
  color: var(--an-text);
}
.orderSideView .payment-row__ref:hover md-icon {
  opacity: 1;
}
.orderSideView .invoice-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.orderSideView .invoice-row__text {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}
.orderSideView .invoice-row__label {
  font-size: 14px;
  font-weight: 600;
  color: var(--an-text);
}
.orderSideView .invoice-row__hint {
  display: inline-flex;
  align-items: flex-start;
  gap: 6px;
  font-size: 12.5px;
  line-height: 1.4;
  color: var(--an-text-muted);
}
.orderSideView .invoice-row__hint md-icon {
  --an-icon-size: 14px;
  margin: 1px 0 0;
  flex-shrink: 0;
  color: inherit;
}
.orderSideView .invoice-row__hint--ok {
  color: var(--an-emerald);
  font-weight: 600;
}
.orderSideView .invoice-row--needs_payment .invoice-row__hint {
  color: var(--an-amber);
}
.orderSideView .invoice-row__actions {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  gap: 6px;
}
.orderSideView .invoice-row__actions .w-action-bar__btn {
  height: 34px;
}
.orderSideView .order-action-footer {
  position: sticky;
  bottom: 0;
  z-index: 50;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-shrink: 0;
  padding: 12px 24px;
  background: var(--an-surface);
  border-top: 1px solid var(--an-border);
  box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.04);
}
.orderSideView .order-action-footer .primary-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-shrink: 0;
}
.orderSideView .order-action-footer .primary-actions .md-button {
  margin: 0;
  height: 40px;
  min-height: 40px;
  line-height: 40px;
  padding: 0 20px;
  border-radius: var(--an-radius-sm);
  font-size: 14px;
  font-weight: 600;
  text-transform: none;
}
.orderSideView .order-action-footer .primary-actions .md-button md-icon {
  font-size: 18px;
}
.orderSideView .order-action-footer .primary-actions .md-button.action-cancel {
  border: 1px solid var(--an-border);
  background: var(--an-surface);
  color: var(--an-text);
}
.orderSideView .order-action-footer .primary-actions .md-button.action-cancel:hover {
  border-color: var(--an-rose-ring);
  background: var(--an-rose-soft);
  color: var(--an-rose);
}

.ovs-empty {
  padding: 32px 16px;
  font-size: 14px;
  text-align: center;
  color: var(--an-text-muted);
}
.ovs-empty--compact {
  padding: 12px 0;
  font-size: 13px;
}

.ovs-empty__icon {
  --an-icon-size: 40px;
  margin: 0 0 12px;
  color: var(--an-text-faint);
}

md-dialog.ovs-discount-dialog {
  width: 440px;
  max-width: calc(100vw - 32px);
}
md-dialog.ovs-discount-dialog .ovs-discount-hint {
  margin: 0 0 12px;
}

.ovs-discount-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.ovs-choice {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 12px 14px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
  color: var(--an-text);
  font: inherit;
  font-size: 14px;
  text-align: left;
  cursor: pointer;
  transition: border-color var(--duration-fast), background var(--duration-fast);
}
.ovs-choice:hover {
  border-color: var(--an-border-strong);
  background: var(--an-surface2);
}
.ovs-choice:focus-visible {
  outline: 2px solid var(--an-primary);
  outline-offset: 2px;
}
.ovs-choice--selected {
  border-color: var(--an-rose);
  background: var(--an-rose-soft);
}
.ovs-choice--selected:hover {
  border-color: var(--an-rose);
  background: var(--an-rose-soft);
}

.ovs-choice__radio {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  border: 2px solid var(--an-control-border);
  border-radius: 50%;
}
.ovs-choice__radio md-icon {
  margin: 0;
  font-size: 12px;
  width: 12px;
  height: 12px;
  min-width: 12px;
  min-height: 12px;
  color: #fff !important;
  opacity: 0;
}
.ovs-choice--selected .ovs-choice__radio {
  border-color: var(--an-rose);
  background: var(--an-rose);
}
.ovs-choice--selected .ovs-choice__radio md-icon {
  opacity: 1;
}

.ovs-choice__name {
  flex: 1;
  min-width: 0;
  font-weight: 600;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ovs-choice__tag {
  padding: 2px 8px;
  border-radius: var(--an-radius-pill);
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.ovs-choice__value {
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  color: var(--an-text);
}

md-dialog.pay-form-dialog {
  width: 520px;
  max-width: calc(100vw - 32px);
}
md-dialog.pay-form-dialog md-dialog-actions .md-button md-progress-circular {
  margin: 0;
}

.pay-form-body {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.pay-form-body > md-input-container {
  margin: 0;
}

.pay-form-total {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  border-radius: var(--an-radius-sm);
  background: var(--an-surface2);
}

.pay-form-total__label {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text-muted);
}

.pay-form-total__value {
  font-size: 24px;
  font-weight: 800;
  color: var(--an-text);
  font-variant-numeric: tabular-nums;
}

.pay-form-notice {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 10px 12px;
  border-radius: var(--an-radius-sm);
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
  font-size: 13px;
}
.pay-form-notice md-icon {
  margin: 0;
  flex-shrink: 0;
  font-size: 16px;
  width: 16px;
  height: 16px;
  min-width: 16px;
  min-height: 16px;
  color: var(--an-emerald);
}

.pay-form-lines {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.pay-form-lines__labels {
  display: grid;
  grid-template-columns: 1fr 140px 40px;
  gap: 8px;
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text-muted);
}

.pay-form-line {
  display: grid;
  grid-template-columns: 1fr 140px 40px;
  gap: 8px;
  align-items: center;
}
.pay-form-line md-input-container.pay-form-line__type {
  margin: 0;
  --an-field-strip: 0px;
}

.pay-form-line__amount {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  gap: 6px;
  height: 40px;
  padding: 0 12px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
  cursor: text;
  transition: border-color var(--duration-fast);
}
.pay-form-line__amount:focus-within {
  border-color: var(--an-rose);
}
.pay-form-line__amount--invalid {
  border-color: var(--an-danger);
}
.pay-form-line__amount input {
  flex: 1;
  min-width: 0;
  height: auto;
  padding: 0;
  border: 0 !important;
  outline: 0;
  box-shadow: none !important;
  background: transparent !important;
  color: var(--an-text);
  font: inherit;
  font-size: 15px;
  font-weight: 600;
  text-align: right;
  font-variant-numeric: tabular-nums;
}

.pay-form-line__currency {
  font-size: 13px;
  color: var(--an-text-muted);
}

.md-button.md-icon-button.pay-form-line__remove {
  margin: 0;
  width: 40px;
  height: 40px;
}
.md-button.md-icon-button.pay-form-line__remove md-icon {
  color: var(--an-text-muted) !important;
}
.md-button.md-icon-button.pay-form-line__remove:hover:not([disabled]) md-icon {
  color: var(--an-danger) !important;
}
.md-button.md-icon-button.pay-form-line__remove[disabled] {
  visibility: hidden;
}

.pay-form-add {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 4px;
  border: 0;
  background: transparent;
  color: var(--an-rose);
  font: inherit;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
}
.pay-form-add md-icon {
  margin: 0;
  font-size: 16px;
  width: 16px;
  height: 16px;
  min-width: 16px;
  min-height: 16px;
  color: var(--an-rose);
}
.pay-form-add:hover span {
  text-decoration: underline;
}

.pay-form-balance {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 16px;
  border-radius: var(--an-radius-sm);
  font-size: 14px;
  font-weight: 600;
}
.pay-form-balance strong {
  font-size: 18px;
  font-variant-numeric: tabular-nums;
}
.pay-form-balance md-icon {
  margin: 0;
  font-size: 20px;
  width: 20px;
  height: 20px;
  min-width: 20px;
  min-height: 20px;
  color: inherit;
}
.pay-form-balance--short {
  background: var(--an-amber-soft);
  color: var(--an-amber);
}
.pay-form-balance--exact, .pay-form-balance--change {
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
}

md-dialog.table-change-dialog {
  width: 640px;
  max-width: calc(100vw - 32px);
}

.table-change-body {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.table-change-body > md-input-container {
  margin: 0;
}
.table-change-body .table-change-hint {
  margin: 0;
}

.table-change-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(96px, 1fr));
  gap: 8px;
}

.table-change-tile {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  min-height: 72px;
  padding: 8px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
  color: var(--an-text);
  font: inherit;
  cursor: pointer;
  transition: border-color var(--duration-fast), background var(--duration-fast);
}
.table-change-tile:hover:not([disabled]) {
  border-color: var(--an-border-strong);
  background: var(--an-surface2);
}
.table-change-tile:focus-visible {
  outline: 2px solid var(--an-rose);
  outline-offset: 2px;
}
.table-change-tile--current {
  border-style: dashed;
}
.table-change-tile--selected, .table-change-tile--selected:hover:not([disabled]) {
  border-color: var(--an-rose);
  border-style: solid;
  background: var(--an-rose-soft);
}
.table-change-tile--busy {
  background: var(--an-surface2);
  color: var(--an-text-faint);
  cursor: not-allowed;
}

.table-change-tile__name {
  font-size: 15px;
  font-weight: 700;
}

.table-change-tile__state {
  font-size: 11px;
  font-weight: 600;
  color: var(--an-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

md-dialog.rider-dialog {
  width: 460px;
  max-width: calc(100vw - 32px);
}

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

.rider-current {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border-radius: var(--an-radius-sm);
  background: var(--an-surface2);
}

.rider-current__label {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text-muted);
}

.rider-current__value {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 600;
  color: var(--an-text);
}
.rider-current__value--empty {
  color: var(--an-text-muted);
  font-weight: 500;
}

.rider-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  max-height: 320px;
  overflow-y: auto;
}

.rider-empty p {
  margin: 0 0 8px;
}

md-dialog.payment-link-dialog {
  width: 480px;
  max-width: calc(100vw - 32px);
}
md-dialog.payment-link-dialog md-dialog-actions .md-button md-progress-circular {
  margin: 0;
}

.payment-link-body {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.payment-link-body .payment-link-hint {
  margin: 0;
}

.payment-link-result__label {
  display: block;
  margin-bottom: 6px;
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text-muted);
}

.payment-link-result__row {
  display: flex;
  align-items: center;
  gap: 4px;
}
.payment-link-result__row input {
  flex: 1;
  min-width: 0;
  height: 40px;
  padding: 0 12px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface2);
  color: var(--an-text);
  font: inherit;
  font-size: 13px;
}
.payment-link-result__row .md-icon-button {
  margin: 0;
}

.pay-form-line__amount.terminal-amount {
  width: 140px;
  background: var(--an-surface);
}

.terminal-status {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  border-radius: var(--an-radius-sm);
  background: var(--an-surface2);
  color: var(--an-text);
  font-size: 14px;
}
.terminal-status md-icon {
  margin: 0;
  flex-shrink: 0;
  font-size: 20px;
  width: 20px;
  height: 20px;
  min-width: 20px;
  min-height: 20px;
  color: inherit;
}
.terminal-status md-progress-circular {
  margin: 0;
  flex-shrink: 0;
}
.terminal-status--ready {
  color: var(--an-text);
}
.terminal-status--approved, .terminal-status--registered {
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
}
.terminal-status--unavailable, .terminal-status--failed, .terminal-status--unregistered {
  background: var(--an-amber-soft);
  color: var(--an-amber);
}

.terminal-status__text {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 2px;
}
.terminal-status__text span {
  font-size: 13px;
  color: var(--an-text-muted);
}

.md-button.terminal-status__retry {
  margin: 0;
}

.orderSideView .ovs-count-pill {
  padding: 1px 8px;
  border-radius: var(--an-radius-pill);
  background: var(--an-surface2);
  color: var(--an-text-muted);
  font-size: 12px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
.orderSideView .ovs-progress {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  color: var(--an-text-muted);
}
.orderSideView .ovs-progress__bar {
  width: 96px;
  height: 6px;
  border-radius: var(--an-radius-pill);
  background: var(--an-surface2);
  overflow: hidden;
}
.orderSideView .ovs-progress__fill {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--an-emerald);
  transition: width 0.3s ease;
}
.orderSideView .ovs-add-bar {
  display: flex;
  gap: 8px;
}
.orderSideView .ovs-add-bar .md-button.add-items-toggle-btn {
  flex: 1;
  width: auto;
}
.orderSideView .ovs-add-bar .md-button.ovs-header-btn {
  height: 44px;
  min-height: 44px;
}
.orderSideView .ovs-lines {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.orderSideView .ovs-course {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.orderSideView .ovs-course__head {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 32px;
}
.orderSideView .ovs-course__name {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--an-text-muted);
}
.orderSideView .ovs-course__state {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 2px 8px;
  border-radius: var(--an-radius-pill);
  font-size: 11px;
  font-weight: 600;
}
.orderSideView .ovs-course__state md-icon {
  --an-icon-size: 12px;
  margin: 0;
  color: inherit;
}
.orderSideView .ovs-course__state--fired {
  background: var(--an-orange-soft);
  color: var(--an-orange);
}
.orderSideView .ovs-course__state--held {
  background: var(--an-surface2);
  color: var(--an-text-muted);
}
.orderSideView .w-action-bar__btn.ovs-course__fire {
  height: 30px;
  padding: 0 12px 0 10px;
  font-size: 12.5px;
}
.orderSideView .ovs-line {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr) auto;
  gap: 14px;
  padding: 14px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  background: var(--an-surface);
  transition: border-color var(--duration-fast), box-shadow var(--duration-fast);
}
.orderSideView .ovs-line:hover {
  border-color: var(--an-border-strong);
  box-shadow: var(--an-shadow-sm);
}
.orderSideView .ovs-line:hover .ovs-line__delete {
  opacity: 1;
}
.orderSideView .ovs-line--held {
  border-style: dashed;
}
.orderSideView .ovs-line--canceled {
  opacity: 0.55;
}
.orderSideView .ovs-line--canceled .ovs-line__name,
.orderSideView .ovs-line--canceled .ovs-combo__name,
.orderSideView .ovs-line--canceled .ovs-line__price {
  text-decoration: line-through;
}
.orderSideView .ovs-line__thumb {
  position: relative;
  width: 52px;
  height: 52px;
}
.orderSideView .ovs-thumb {
  border-radius: 10px !important;
  overflow: hidden;
  flex-shrink: 0;
}
.orderSideView .ovs-thumb .w-avatar-img {
  object-fit: cover;
  border-radius: inherit;
}
.orderSideView .ovs-thumb .w-avatar-initials {
  border-radius: inherit;
}
.orderSideView .ovs-line__qty {
  position: absolute;
  right: -6px;
  bottom: -6px;
  min-width: 22px;
  height: 22px;
  padding: 0 5px;
  border: 2px solid var(--an-surface);
  border-radius: var(--an-radius-pill);
  background: var(--an-text);
  color: var(--an-surface);
  font-size: 11px;
  font-weight: 800;
  line-height: 18px;
  text-align: center;
}
.orderSideView .ovs-line__body {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}
.orderSideView .ovs-line__title {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px 8px;
}
.orderSideView .ovs-line__name {
  font-size: 15px;
  font-weight: 700;
  color: var(--an-text);
}
.orderSideView .ovs-status {
  padding: 2px 8px;
  border-radius: var(--an-radius-pill);
  font-size: 11px;
  font-weight: 700;
  white-space: nowrap;
}
.orderSideView .ovs-tag {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 2px 8px;
  border-radius: var(--an-radius-pill);
  font-size: 11px;
  font-weight: 600;
}
.orderSideView .ovs-tag md-icon {
  --an-icon-size: 12px;
  margin: 0;
  color: inherit;
}
.orderSideView .ovs-tag--combo {
  background: var(--an-violet-soft);
  color: var(--an-violet);
}
.orderSideView .ovs-line__meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px 12px;
  font-size: 12px;
  color: var(--an-text-muted);
  font-variant-numeric: tabular-nums;
}
.orderSideView .ovs-line__guest,
.orderSideView .ovs-line__paid {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.orderSideView .ovs-line__paid {
  color: var(--an-emerald);
  font-weight: 600;
}
.orderSideView .ovs-line__paid md-icon {
  --an-icon-size: 12px;
  margin: 0;
  color: inherit;
}
.orderSideView .ovs-mods {
  display: flex;
  flex-direction: column;
  gap: 3px;
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: 13px;
  color: var(--an-text);
}
.orderSideView .ovs-mods__group {
  line-height: 1.45;
}
.orderSideView .ovs-mods__type {
  margin-right: 6px;
  color: var(--an-text-muted);
}
.orderSideView .ovs-mods__type::after {
  content: ":";
}
.orderSideView .ovs-mods__delta {
  color: var(--an-text-muted);
  font-variant-numeric: tabular-nums;
}
.orderSideView .ovs-mods__sub {
  color: var(--an-text-muted);
  font-style: italic;
}
.orderSideView .ovs-combo {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin: 2px 0 0;
  padding: 4px 0 0 12px;
  border-left: 2px solid var(--an-border);
  list-style: none;
}
.orderSideView .ovs-combo__part {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 6px 0;
}
.orderSideView .ovs-combo__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}
.orderSideView .ovs-combo__title {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px 8px;
  min-height: 32px;
}
.orderSideView .ovs-combo__group {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--an-text-muted);
}
.orderSideView .ovs-combo__name {
  font-size: 14px;
  font-weight: 600;
  color: var(--an-text);
}
.orderSideView .ovs-note {
  display: flex;
  align-items: flex-start;
  gap: 6px;
  padding: 6px 10px;
  border-radius: var(--an-radius-sm);
  background: var(--an-amber-soft);
  color: var(--an-text);
  font-size: 13px;
}
.orderSideView .ovs-note md-icon {
  --an-icon-size: 14px;
  margin: 2px 0 0;
  flex-shrink: 0;
  color: var(--an-amber);
}
.orderSideView .ovs-promo {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  color: var(--an-emerald);
  min-width: 0;
}
.orderSideView .ovs-promo md-icon {
  --an-icon-size: 12px;
  margin: 0;
  color: inherit;
}
.orderSideView .ovs-promo__name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.orderSideView .ovs-promo__off {
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
.orderSideView .ovs-line__side {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 2px;
}
.orderSideView .ovs-line__was {
  font-size: 12px;
  color: var(--an-text-faint);
  text-decoration: line-through;
  font-variant-numeric: tabular-nums;
}
.orderSideView .ovs-line__price {
  font-size: 16px;
  font-weight: 800;
  color: var(--an-text);
  font-variant-numeric: tabular-nums;
}
.orderSideView .md-button.md-icon-button.ovs-line__delete {
  margin: 6px 0 0;
  width: 30px;
  height: 30px;
  min-height: 30px;
  opacity: 0;
  transition: opacity var(--duration-fast);
}
.orderSideView .md-button.md-icon-button.ovs-line__delete md-icon {
  color: var(--an-text-muted) !important;
}
.orderSideView .md-button.md-icon-button.ovs-line__delete:hover md-icon, .orderSideView .md-button.md-icon-button.ovs-line__delete:focus md-icon {
  color: var(--an-danger) !important;
}
.orderSideView .md-button.md-icon-button.ovs-line__delete:focus {
  opacity: 1;
}
@media (hover: none) {
  .orderSideView .md-button.md-icon-button.ovs-line__delete {
    opacity: 1;
  }
}

.cno-dialog {
  width: min(1100px, 92vw);
  max-width: none;
}

.cno-checkout {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding-top: 8px;
}

.cno-checkout__pay {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 16px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  background: var(--an-surface);
}
.cno-checkout__pay > md-checkbox {
  margin: 0;
}
.cno-checkout__pay > .hint {
  margin-top: -4px;
}

.pay-method-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.pay-method-chips .section-filter-chip:not(.section-filter-chip--active) {
  border-color: var(--an-border) !important;
}

.cno-checkout__actions {
  display: flex;
  justify-content: flex-end;
}

.cno-result {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 24px 16px;
  text-align: center;
}
.cno-result .pay-form-notice {
  align-items: center;
}

.cno-result__icon {
  font-size: 40px !important;
  width: 40px !important;
  height: 40px !important;
  min-width: 40px;
  color: var(--an-emerald);
}
.cno-result__icon::before {
  width: 40px;
  height: 40px;
  font-size: 40px;
}

.cno-result__title {
  margin: 0;
  font-size: 18px;
  font-weight: 700;
  color: var(--an-text);
}

.cno-result__ref {
  font-size: 24px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  color: var(--an-text);
}

.cno-result__unpaid {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 13px;
  color: var(--an-text-muted);
}

/* ==========================================================================
   Loyalty Signup Configuration Style
   ========================================================================== */
#loyaltySignupConfigModule {
  background: #f4f6f9;
  padding: 0;
}
.waitry-dark-theme #loyaltySignupConfigModule {
  background: var(--an-bg);
}
#loyaltySignupConfigModule .lsc-layout {
  display: flex;
  flex-direction: row;
  gap: 24px;
  padding: 24px;
  min-height: calc(100vh - 120px);
  align-items: flex-start;
}
@media (max-width: 1200px) {
  #loyaltySignupConfigModule .lsc-layout {
    padding: 16px;
    gap: 16px;
  }
}
@media (max-width: 950px) {
  #loyaltySignupConfigModule .lsc-layout {
    flex-direction: column;
    padding: 16px;
    gap: 24px;
  }
}
#loyaltySignupConfigModule {
  /* Left panel: Form Pane */
}
#loyaltySignupConfigModule .lsc-form-pane {
  flex: 1 1 auto;
  background: #ffffff;
  border-radius: 16px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04), 0 1px 3px rgba(0, 0, 0, 0.02);
  padding: 28px;
  max-height: calc(100vh - 140px);
  overflow-y: auto;
  box-sizing: border-box;
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-form-pane {
  background: var(--an-surface);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3), 0 1px 3px rgba(0, 0, 0, 0.2);
}
@media (max-width: 1200px) {
  #loyaltySignupConfigModule .lsc-form-pane {
    padding: 20px;
  }
}
@media (max-width: 950px) {
  #loyaltySignupConfigModule .lsc-form-pane {
    flex: none;
    width: 100%;
    max-height: none;
    overflow-y: visible;
  }
}
#loyaltySignupConfigModule .lsc-dirty-dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  background-color: #E80032;
  border-radius: 50%;
  margin-left: 8px;
  vertical-align: middle;
}
#loyaltySignupConfigModule .lsc-form-header {
  margin-bottom: 24px;
  border-bottom: 1px solid #f0f2f5;
  padding-bottom: 16px;
}
#loyaltySignupConfigModule .lsc-form-header .lsc-form-title {
  font-size: 20px;
  font-weight: 700;
  color: #1e293b;
  font-family: "Outfit", sans-serif;
  margin-bottom: 6px;
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-form-header .lsc-form-title {
  color: var(--an-text);
}
#loyaltySignupConfigModule .lsc-form-header .lsc-form-desc {
  font-size: 14px;
  color: #64748b;
  line-height: 1.5;
}
#loyaltySignupConfigModule {
  /* Form Section styling */
}
#loyaltySignupConfigModule .lsc-section {
  margin-bottom: 24px;
  background: #fafbfc;
  border: 1px solid #eef0f3;
  border-radius: 12px;
  padding: 20px;
  transition: all 250ms ease;
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-section {
  background: var(--an-surface2);
  border-color: var(--an-border);
}
#loyaltySignupConfigModule .lsc-section:hover {
  border-color: #e2e8f0;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.02);
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-section:hover {
  border-color: var(--an-border-strong);
}
#loyaltySignupConfigModule .lsc-section .lsc-section-title {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 15px;
  font-weight: 600;
  color: #334155;
  margin-bottom: 16px;
  font-family: "Outfit", sans-serif;
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-section .lsc-section-title {
  color: var(--an-text-muted);
}
#loyaltySignupConfigModule .lsc-section .lsc-section-title md-icon {
  font-size: 18px;
  width: 18px;
  height: 18px;
  color: #64748b;
}
#loyaltySignupConfigModule .lsc-lang-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 18px;
  margin-bottom: 20px;
  background: linear-gradient(135deg, #f8f4ff 0%, #f0f4ff 100%);
  border: 1.5px solid #ddd6fe;
  border-radius: 14px;
  box-shadow: 0 2px 8px rgba(139, 92, 246, 0.06);
}
#loyaltySignupConfigModule .lsc-lang-bar .lsc-lang-bar-left {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}
#loyaltySignupConfigModule .lsc-lang-bar .lsc-lang-bar-left .lsc-lang-bar-icon {
  font-size: 18px;
  width: 18px;
  height: 18px;
  color: #7c3aed;
}
#loyaltySignupConfigModule .lsc-lang-bar .lsc-lang-bar-left .lsc-lang-bar-label {
  font-size: 12px;
  font-weight: 700;
  color: #7c3aed;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-family: "Outfit", sans-serif;
}
#loyaltySignupConfigModule .lsc-lang-bar .lsc-lang-bar-right {
  display: flex;
  align-items: center;
  gap: 10px;
  flex: 1;
  justify-content: flex-end;
}
#loyaltySignupConfigModule .lsc-lang-bar .lsc-lang-select {
  min-width: 200px;
  max-width: 260px;
  margin: 0 !important;
  padding: 0 !important;
}
#loyaltySignupConfigModule .lsc-lang-bar .lsc-lang-select .md-select-value {
  border: 1.5px solid #c4b5fd !important;
  border-radius: 10px !important;
  background: #ffffff !important;
  padding: 7px 14px !important;
  min-height: unset !important;
  font-size: 14px;
  font-weight: 500;
  color: #4c1d95;
  font-family: "Inter", sans-serif;
  box-shadow: 0 1px 4px rgba(139, 92, 246, 0.1);
  transition: all 180ms ease;
}
#loyaltySignupConfigModule .lsc-lang-bar .lsc-lang-select .md-select-value .md-select-icon {
  color: #8b5cf6;
}
#loyaltySignupConfigModule .lsc-lang-bar .lsc-lang-select .md-select-value:focus, #loyaltySignupConfigModule .lsc-lang-bar .lsc-lang-select .md-select-value:hover {
  border-color: #8b5cf6 !important;
  box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.12) !important;
  outline: none;
}
#loyaltySignupConfigModule .lsc-lang-bar .lsc-lang-select.md-no-underline .md-select-value {
  border-bottom: 1.5px solid #c4b5fd !important;
}
#loyaltySignupConfigModule .lsc-lang-bar .lsc-lang-select .md-text {
  color: #4c1d95;
}
#loyaltySignupConfigModule .lsc-lang-bar .lsc-lang-translate-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 8px 16px;
  border: none;
  border-radius: 10px;
  background: linear-gradient(135deg, #7c3aed 0%, #5b21b6 100%);
  color: #ffffff;
  font-size: 12.5px;
  font-weight: 600;
  font-family: "Outfit", sans-serif;
  letter-spacing: 0.02em;
  cursor: pointer;
  white-space: nowrap;
  box-shadow: 0 2px 8px rgba(124, 58, 237, 0.35);
  transition: all 200ms ease;
  outline: none;
}
#loyaltySignupConfigModule .lsc-lang-bar .lsc-lang-translate-btn md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  color: #ffffff;
}
#loyaltySignupConfigModule .lsc-lang-bar .lsc-lang-translate-btn md-icon:first-child {
  margin-right: -2px;
}
#loyaltySignupConfigModule .lsc-lang-bar .lsc-lang-translate-btn:hover {
  background: linear-gradient(135deg, #6d28d9 0%, #4c1d95 100%);
  box-shadow: 0 4px 14px rgba(124, 58, 237, 0.45);
  transform: translateY(-1px);
}
#loyaltySignupConfigModule .lsc-lang-bar .lsc-lang-translate-btn:active {
  transform: translateY(0);
  box-shadow: 0 2px 6px rgba(124, 58, 237, 0.3);
}
#loyaltySignupConfigModule .lsc-input--translation,
#loyaltySignupConfigModule textarea.lsc-input--translation {
  border-color: #c4b5fd !important;
  background: #faf5ff !important;
}
#loyaltySignupConfigModule .lsc-input--translation:focus,
#loyaltySignupConfigModule textarea.lsc-input--translation:focus {
  border-color: #8b5cf6 !important;
  box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.1) !important;
}
#loyaltySignupConfigModule .lsc-input--translation::placeholder,
#loyaltySignupConfigModule textarea.lsc-input--translation::placeholder {
  color: #7c3aed;
  font-style: italic;
}
#loyaltySignupConfigModule .lsc-lang-option-name {
  font-weight: 500;
  color: #374151;
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-lang-option-name {
  color: var(--an-text-muted);
}
#loyaltySignupConfigModule .lsc-lang-option-badge {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  margin-left: 8px;
  padding: 1px 7px;
  border-radius: 10px;
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  background: #f1f5f9;
  color: #94a3b8;
  vertical-align: middle;
}
#loyaltySignupConfigModule .lsc-lang-option-badge--done {
  background: #dcfce7;
  color: #16a34a;
}
#loyaltySignupConfigModule .lsc-lang-option-badge--done md-icon {
  font-size: 11px;
  width: 11px;
  height: 11px;
  color: #16a34a;
}
#loyaltySignupConfigModule {
  /* Labels & Fields */
}
#loyaltySignupConfigModule .lsc-label {
  font-size: 13px;
  font-weight: 600;
  color: #475569;
  margin-bottom: 6px;
  display: block;
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-label {
  color: var(--an-text-muted);
}
#loyaltySignupConfigModule .lsc-input, #loyaltySignupConfigModule .lsc-textarea {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  padding: 10px 14px;
  font-size: 14px;
  font-family: "Inter", sans-serif;
  color: #334155;
  background: #ffffff;
  outline: none;
  transition: all 200ms ease;
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-input, .waitry-dark-theme #loyaltySignupConfigModule .lsc-textarea {
  color: var(--an-text-muted);
  background: var(--an-surface2);
  border-color: var(--an-border-strong);
}
#loyaltySignupConfigModule .lsc-input:focus, #loyaltySignupConfigModule .lsc-textarea:focus {
  border-color: #E80032;
  box-shadow: 0 0 0 3px rgba(232, 0, 50, 0.1);
}
#loyaltySignupConfigModule .lsc-input[disabled], #loyaltySignupConfigModule .lsc-textarea[disabled] {
  background: #f1f5f9;
  color: #94a3b8;
  cursor: wait;
  border-style: dashed;
  animation: lsc-thinking-pulse 2s infinite ease-in-out;
}
#loyaltySignupConfigModule .lsc-input::placeholder, #loyaltySignupConfigModule .lsc-textarea::placeholder {
  color: #64748b;
}
#loyaltySignupConfigModule .lsc-select {
  margin: 0;
  padding: 0;
  width: 100%;
}
#loyaltySignupConfigModule .lsc-select .md-select-value {
  border: 1px solid #cbd5e1 !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  padding: 9px 14px !important;
  min-height: unset !important;
  font-size: 14px;
  font-family: "Inter", sans-serif;
  color: #334155;
  transition: all 200ms ease;
  box-sizing: border-box;
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-select .md-select-value {
  color: var(--an-text-muted);
  background: var(--an-surface2) !important;
  border-color: var(--an-border-strong) !important;
}
#loyaltySignupConfigModule .lsc-select .md-select-value span {
  color: #334155;
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-select .md-select-value span {
  color: var(--an-text-muted);
}
#loyaltySignupConfigModule .lsc-select .md-select-value:focus, #loyaltySignupConfigModule .lsc-select .md-select-value:hover {
  border-color: #E80032 !important;
  box-shadow: 0 0 0 3px rgba(232, 0, 50, 0.1) !important;
  outline: none;
}
#loyaltySignupConfigModule .lsc-select.md-no-underline .md-select-value {
  border-bottom: 1px solid #cbd5e1 !important;
}
#loyaltySignupConfigModule .lsc-icon-picker-btn {
  display: flex;
  align-items: center;
  width: 100%;
  background: #ffffff;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  padding: 8px 8px;
  font-family: "Inter", sans-serif;
  font-size: 14px;
  color: #334155;
  cursor: pointer;
  transition: all 200ms ease;
  box-sizing: border-box;
  outline: none;
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-icon-picker-btn {
  color: var(--an-text-muted);
  background: var(--an-surface2);
  border-color: var(--an-border-strong);
}
#loyaltySignupConfigModule .lsc-icon-picker-btn:focus, #loyaltySignupConfigModule .lsc-icon-picker-btn:hover {
  border-color: #E80032;
  box-shadow: 0 0 0 3px rgba(232, 0, 50, 0.1);
}
@keyframes lsc-thinking-pulse {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.7;
  }
  100% {
    opacity: 1;
  }
}
#loyaltySignupConfigModule .lsc-textarea {
  resize: vertical;
  min-height: 80px;
}
#loyaltySignupConfigModule .lsc-field-group {
  margin-bottom: 16px;
}
#loyaltySignupConfigModule .lsc-field-group:last-child {
  margin-bottom: 0;
}
#loyaltySignupConfigModule .lsc-btn-mise-generate {
  margin: 0 0 4px 0 !important;
  padding: 0 10px !important;
  min-height: 30px !important;
  height: 30px !important;
  width: auto !important;
  min-width: 0 !important;
  background: #fff5f7 !important;
  color: #E80032 !important;
  border-radius: 20px !important;
  transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  border: 1px solid #ffdce3 !important;
  flex: none !important;
}
#loyaltySignupConfigModule .lsc-btn-mise-generate md-icon {
  font-size: 14px !important;
  width: 14px !important;
  height: 14px !important;
  color: #E80032 !important;
  margin: 0 !important;
  transition: transform 0.3s ease;
}
#loyaltySignupConfigModule .lsc-btn-mise-generate md-icon.iconoir-spark {
  font-size: 13px !important;
}
#loyaltySignupConfigModule .lsc-btn-mise-generate md-progress-circular {
  --md-progress-color: #E80032;
  margin: 0 !important;
}
#loyaltySignupConfigModule .lsc-btn-mise-generate:hover:not([disabled]) {
  background: #ffffff !important;
  border-color: #E80032 !important;
  box-shadow: 0 2px 8px rgba(232, 0, 50, 0.12) !important;
}
#loyaltySignupConfigModule .lsc-btn-mise-generate:hover:not([disabled]) md-icon {
  transform: scale(1.1);
}
#loyaltySignupConfigModule .lsc-btn-mise-generate:active:not([disabled]) {
  transform: scale(0.96);
}
#loyaltySignupConfigModule .lsc-btn-mise-generate[disabled] {
  color: #cbd5e1 !important;
  background: #f8fafc !important;
  border-color: #e2e8f0 !important;
  opacity: 0.7;
}
#loyaltySignupConfigModule .lsc-btn-mise-generate.lsc-btn-mise-generate--spinning .iconoir-spark {
  animation: lsc-ai-spin 2s infinite linear;
}
@keyframes lsc-ai-spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
#loyaltySignupConfigModule .lsc-field-row {
  margin-bottom: 12px;
}
#loyaltySignupConfigModule .lsc-field-row md-checkbox {
  margin: 0;
}
#loyaltySignupConfigModule .lsc-field-row md-switch {
  margin: 0;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
#loyaltySignupConfigModule .lsc-field-row md-switch .md-container {
  flex-shrink: 0 !important;
  margin-right: 12px !important;
}
#loyaltySignupConfigModule .lsc-field-row md-switch .md-label {
  margin: 0 !important;
  flex: 1;
}
#loyaltySignupConfigModule {
  /* Color picker inputs */
}
#loyaltySignupConfigModule .lsc-color-picker-group {
  margin-bottom: 18px;
}
#loyaltySignupConfigModule .lsc-color-picker-input-wrap {
  display: flex;
  align-items: center;
  gap: 10px;
  position: relative;
}
#loyaltySignupConfigModule .lsc-color-picker-input-wrap .lsc-color-preview {
  width: 38px;
  height: 38px;
  border-radius: 8px;
  border: 1px solid rgba(0, 0, 0, 0.08);
  flex-shrink: 0;
}
#loyaltySignupConfigModule .lsc-color-picker-input-wrap .lsc-input--color-hex {
  flex: 1;
}
#loyaltySignupConfigModule .lsc-color-picker-input-wrap .lsc-input--color-picker {
  width: 38px;
  height: 38px;
  padding: 0;
  border: none;
  border-radius: 8px;
  cursor: pointer;
  background: none;
  flex-shrink: 0;
}
#loyaltySignupConfigModule .lsc-color-picker-input-wrap .lsc-input--color-picker::-webkit-color-swatch-wrapper {
  padding: 0;
}
#loyaltySignupConfigModule .lsc-color-picker-input-wrap .lsc-input--color-picker::-webkit-color-swatch {
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 8px;
}
#loyaltySignupConfigModule {
  /* Logo/Banner Pickers */
}
#loyaltySignupConfigModule .lsc-asset-selector {
  margin-top: 18px;
}
#loyaltySignupConfigModule .lsc-asset-selector .lsc-asset-row {
  display: flex;
  align-items: center;
  gap: 16px;
  background: #ffffff;
  border: 1px dashed #cbd5e1;
  border-radius: 10px;
  padding: 12px;
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-asset-selector .lsc-asset-row {
  background: var(--an-surface2);
  border-color: var(--an-border-strong);
}
#loyaltySignupConfigModule .lsc-asset-selector .lsc-asset-preview {
  width: 64px;
  height: 64px;
  border-radius: 8px;
  background-color: #f1f5f9;
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #e2e8f0;
  flex-shrink: 0;
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-asset-selector .lsc-asset-preview {
  background-color: var(--an-surface3);
  border-color: var(--an-border-strong);
}
#loyaltySignupConfigModule .lsc-asset-selector .lsc-asset-preview md-icon {
  font-size: 24px;
  color: #94a3b8;
}
#loyaltySignupConfigModule .lsc-asset-selector .lsc-asset-preview--banner {
  width: 100px;
  height: 56px;
  border-radius: 6px;
}
#loyaltySignupConfigModule .lsc-asset-selector .lsc-asset-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  flex: 1;
}
#loyaltySignupConfigModule .lsc-asset-selector .lsc-asset-actions .lsc-btn-upload {
  margin: 0;
  background: #f1f5f9 !important;
  color: #334155 !important;
  border: 1px solid #cbd5e1;
  font-size: 13px;
  font-weight: 600;
  text-transform: none;
  border-radius: 6px;
  height: 36px;
  min-height: 36px;
  line-height: 36px;
  box-shadow: none !important;
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-asset-selector .lsc-asset-actions .lsc-btn-upload {
  color: var(--an-text-muted) !important;
}
#loyaltySignupConfigModule .lsc-asset-selector .lsc-asset-actions .lsc-btn-upload span {
  color: #334155 !important;
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-asset-selector .lsc-asset-actions .lsc-btn-upload span {
  color: var(--an-text-muted) !important;
}
#loyaltySignupConfigModule .lsc-asset-selector .lsc-asset-actions .lsc-btn-upload md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  margin-right: 4px;
  color: #475569 !important;
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-asset-selector .lsc-asset-actions .lsc-btn-upload md-icon {
  color: var(--an-text-faint) !important;
}
#loyaltySignupConfigModule .lsc-asset-selector .lsc-asset-actions .lsc-btn-upload:hover {
  background: #e2e8f0 !important;
}
#loyaltySignupConfigModule .lsc-asset-selector .lsc-asset-actions .lsc-btn-clear {
  margin: 0;
  background: transparent;
  border: none;
  color: #ef4444 !important;
  font-size: 13px;
  font-weight: 600;
  text-transform: none;
  cursor: pointer;
  padding: 0 12px;
  height: 36px;
  min-height: 36px;
  line-height: 36px;
  border-radius: 6px;
  transition: background 200ms;
}
#loyaltySignupConfigModule .lsc-asset-selector .lsc-asset-actions .lsc-btn-clear span {
  color: #ef4444 !important;
}
#loyaltySignupConfigModule .lsc-asset-selector .lsc-asset-actions .lsc-btn-clear:hover {
  background: rgba(239, 68, 68, 0.08) !important;
}
#loyaltySignupConfigModule {
  /* Video asset selector modifier */
}
#loyaltySignupConfigModule .lsc-asset-selector--video .lsc-video-hint {
  font-size: 12px;
  color: #94a3b8;
  margin: 2px 0 10px;
  line-height: 1.4;
}
#loyaltySignupConfigModule .lsc-asset-selector--video .lsc-asset-row {
  align-items: flex-start;
}
#loyaltySignupConfigModule {
  /* Video preview thumbnail */
}
#loyaltySignupConfigModule .lsc-video-preview {
  width: 100px;
  height: 56px;
  border-radius: 6px;
  background: #0f172a;
  border: 1px solid #e2e8f0;
  position: relative;
  overflow: hidden;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
#loyaltySignupConfigModule .lsc-video-preview__player {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
#loyaltySignupConfigModule .lsc-video-preview__placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
#loyaltySignupConfigModule .lsc-video-preview__placeholder md-icon {
  font-size: 22px;
  width: 22px;
  height: 22px;
  color: #475569;
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-video-preview__placeholder md-icon {
  color: var(--an-text-faint);
}
#loyaltySignupConfigModule .lsc-video-preview__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  z-index: 2;
}
#loyaltySignupConfigModule .lsc-video-preview__overlay md-progress-circular {
  --md-progress-color: #ffffff;
}
#loyaltySignupConfigModule .lsc-video-preview__overlay-text {
  font-size: 9px;
  color: #ffffff;
  text-align: center;
  letter-spacing: 0.02em;
  font-weight: 600;
}
#loyaltySignupConfigModule {
  /* Active video badge shown when a video is set */
}
#loyaltySignupConfigModule .lsc-video-active-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin-top: 10px;
  background: linear-gradient(135deg, #10b981, #059669);
  color: #ffffff;
  border-radius: 20px;
  padding: 4px 12px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.02em;
}
#loyaltySignupConfigModule .lsc-video-active-badge md-icon {
  font-size: 13px;
  width: 13px;
  height: 13px;
  color: #ffffff;
}
#loyaltySignupConfigModule {
  /* Field Builder & Cards */
}
#loyaltySignupConfigModule .lsc-field-builder {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: 20px;
}
#loyaltySignupConfigModule .lsc-field-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  transition: all 250ms ease;
  position: relative;
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-field-card {
  background: var(--an-surface2);
  border-color: var(--an-border);
}
#loyaltySignupConfigModule .lsc-field-card:hover {
  border-color: #cbd5e1;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-field-card:hover {
  border-color: var(--an-border-strong);
}
#loyaltySignupConfigModule .lsc-field-card--standard {
  background: #f8fafc;
  border-style: dashed;
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-field-card--standard {
  background: var(--an-surface);
}
#loyaltySignupConfigModule .lsc-field-card--standard:hover {
  box-shadow: none;
}
#loyaltySignupConfigModule .lsc-field-card-header {
  display: flex;
  align-items: center;
  gap: 12px;
  padding-bottom: 12px;
  border-bottom: 1px solid #f1f5f9;
}
#loyaltySignupConfigModule .lsc-field-drag-handle {
  cursor: grab;
  color: #94a3b8;
  display: flex;
  align-items: center;
  justify-content: center;
}
#loyaltySignupConfigModule .lsc-field-drag-handle:active {
  cursor: grabbing;
}
#loyaltySignupConfigModule .lsc-field-drag-handle md-icon {
  font-size: 18px;
  width: 18px;
  height: 18px;
}
#loyaltySignupConfigModule .lsc-field-badge {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 2px 8px;
  border-radius: 4px;
  background: #e2e8f0;
  color: #64748b;
}
#loyaltySignupConfigModule .lsc-field-badge--custom {
  background: rgba(232, 0, 50, 0.1);
  color: #E80032;
}
#loyaltySignupConfigModule .lsc-field-card-body {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
#loyaltySignupConfigModule .lsc-field-card-body .lsc-field-group {
  flex: 1 1 180px;
  min-width: 0;
}
#loyaltySignupConfigModule .lsc-field-card-body .lsc-field-group--full {
  flex: 1 1 100%;
}
#loyaltySignupConfigModule .lsc-mini-label {
  font-size: 11px;
  font-weight: 700;
  color: #94a3b8;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  margin-bottom: 6px;
  display: block;
}
#loyaltySignupConfigModule .lsc-input--sm {
  padding: 8px 12px;
  font-size: 13px;
  height: 38px;
}
#loyaltySignupConfigModule .lsc-input--mono {
  font-family: "JetBrains Mono", "Monaco", monospace;
  font-size: 12px;
  color: #64748b;
  background: #f8fafc;
}
#loyaltySignupConfigModule .lsc-select {
  width: 100%;
  height: 38px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  padding: 0 10px;
  font-size: 13px;
  color: #334155;
  background: #ffffff;
  outline: none;
  cursor: pointer;
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-select {
  color: var(--an-text-muted);
  background: var(--an-surface2);
  border-color: var(--an-border-strong);
}
#loyaltySignupConfigModule .lsc-select:focus {
  border-color: #E80032;
}
#loyaltySignupConfigModule .lsc-select:disabled {
  background: #f1f5f9;
  cursor: not-allowed;
}
#loyaltySignupConfigModule .lsc-field-toggles-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  padding: 12px;
  background: #f8fafc;
  border-radius: 12px;
  border: 1px solid #f1f5f9;
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-field-toggles-grid {
  background: var(--an-surface);
  border-color: var(--an-border);
}
#loyaltySignupConfigModule .lsc-field-toggles-grid .lsc-toggle-item {
  flex: 1 1 140px;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
  padding: 8px 12px;
  background: #ffffff;
  border-radius: 8px;
  border: 1px solid #edf2f7;
  transition: all 200ms ease;
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-field-toggles-grid .lsc-toggle-item {
  background: var(--an-surface2);
  border-color: var(--an-border);
}
#loyaltySignupConfigModule .lsc-field-toggles-grid .lsc-toggle-item:hover {
  border-color: #cbd5e1;
  background: #fafbfc;
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-field-toggles-grid .lsc-toggle-item:hover {
  border-color: var(--an-border-strong);
}
#loyaltySignupConfigModule .lsc-field-toggles-grid .lsc-toggle-item .lsc-mini-label {
  margin: 0;
  font-size: 11px;
  font-weight: 600;
  color: #4a5568;
  text-transform: none;
  letter-spacing: normal;
  line-height: 1.2;
  flex: 1;
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-field-toggles-grid .lsc-toggle-item .lsc-mini-label {
  color: var(--an-text-muted);
}
#loyaltySignupConfigModule .lsc-field-toggles-grid .lsc-toggle-item md-checkbox {
  margin: 0;
  width: 20px;
  height: 20px;
}
#loyaltySignupConfigModule .lsc-field-toggles-grid .lsc-toggle-item md-checkbox .md-container {
  margin: 0;
  width: 20px;
  height: 20px;
}
#loyaltySignupConfigModule .lsc-field-card-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
  margin-left: auto;
}
#loyaltySignupConfigModule .lsc-btn-row-action {
  width: 32px !important;
  height: 32px !important;
  min-height: 32px !important;
  line-height: 32px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #94a3b8 !important;
}
#loyaltySignupConfigModule .lsc-btn-row-action md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
}
#loyaltySignupConfigModule .lsc-btn-row-action:hover:not([disabled]) {
  background: rgba(0, 0, 0, 0.04) !important;
  color: #334155 !important;
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-btn-row-action:hover:not([disabled]) {
  color: var(--an-text-muted) !important;
}
#loyaltySignupConfigModule .lsc-btn-row-action--danger:hover:not([disabled]) {
  background: rgba(239, 68, 68, 0.08) !important;
  color: #ef4444 !important;
}
#loyaltySignupConfigModule .lsc-btn-add-field {
  margin: 24px 0 0;
  background: #ffffff !important;
  border: 1px solid #cbd5e1 !important;
  border-radius: 10px !important;
  color: #334155 !important;
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-btn-add-field {
  color: var(--an-text-muted) !important;
}
#loyaltySignupConfigModule .lsc-btn-add-field {
  font-weight: 600 !important;
  text-transform: none !important;
  font-family: "Outfit", sans-serif !important;
  height: 44px;
  padding: 0 20px !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
  transition: all 200ms;
}
#loyaltySignupConfigModule .lsc-btn-add-field md-icon {
  font-size: 18px;
  margin-right: 8px;
  color: #E80032;
}
#loyaltySignupConfigModule .lsc-btn-add-field:hover {
  background: #f8fafc !important;
  border-color: #94a3b8 !important;
}
#loyaltySignupConfigModule .lsc-preview-pane {
  flex: 0 0 368px;
  display: flex;
  flex-direction: column;
  align-items: center;
  background: #eef0f3;
  border-radius: 16px;
  padding: 24px;
  position: sticky;
  top: 24px;
  box-sizing: border-box;
}
.waitry-dark-theme #loyaltySignupConfigModule .lsc-preview-pane {
  background: var(--an-surface2);
}
@media (max-width: 1200px) {
  #loyaltySignupConfigModule .lsc-preview-pane {
    padding: 20px 12px;
    flex: 0 0 344px;
  }
}
@media (max-width: 950px) {
  #loyaltySignupConfigModule .lsc-preview-pane {
    position: static;
    width: 100%;
    flex: none;
    padding: 24px;
  }
}
#loyaltySignupConfigModule .lsc-preview-pane .lsc-preview-header {
  width: 100%;
  max-width: 320px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
}
#loyaltySignupConfigModule .lsc-preview-pane .lsc-preview-header .lsc-preview-title {
  font-size: 14px;
  font-weight: 700;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
#loyaltySignupConfigModule .lsc-preview-pane .lsc-preview-header .lsc-preview-toggle-wrap {
  background: rgba(0, 0, 0, 0.05);
  padding: 3px;
  border-radius: 20px;
  display: flex;
  gap: 2px;
}
#loyaltySignupConfigModule .lsc-preview-pane .lsc-preview-header .lsc-preview-toggle-wrap .md-button {
  margin: 0;
  width: 32px;
  height: 32px;
  min-height: 32px;
  line-height: 32px;
  padding: 0;
  border-radius: 50%;
  color: #64748b;
  transition: all 200ms;
}
#loyaltySignupConfigModule .lsc-preview-pane .lsc-preview-header .lsc-preview-toggle-wrap .md-button md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
}
#loyaltySignupConfigModule .lsc-preview-pane .lsc-preview-header .lsc-preview-toggle-wrap .md-button.lsc-btn-preview-mode--active {
  background: #ffffff;
  color: #E80032;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
}
#loyaltySignupConfigModule {
  /* Phone Wrapper Mockup */
}
#loyaltySignupConfigModule .lsc-phone-wrapper {
  width: 320px;
  height: 640px;
  background: #000000;
  border: 10px solid #1e293b;
  border-radius: 40px;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
  position: relative;
  overflow: hidden;
  flex-shrink: 0;
}
#loyaltySignupConfigModule .lsc-phone-wrapper .lsc-phone-notch {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 130px;
  height: 20px;
  background: #1e293b;
  border-bottom-left-radius: 12px;
  border-bottom-right-radius: 12px;
  z-index: 10;
}
#loyaltySignupConfigModule .lsc-phone-wrapper .lsc-phone-screen {
  width: 100%;
  height: 100%;
  background: #f8fafc;
  border-radius: 30px;
  overflow-y: auto;
  position: relative;
}
#loyaltySignupConfigModule .lsc-phone-wrapper .lsc-phone-screen::-webkit-scrollbar {
  width: 4px;
}
#loyaltySignupConfigModule .lsc-phone-wrapper .lsc-phone-screen::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.1);
  border-radius: 2px;
}
#loyaltySignupConfigModule {
  /* Live Preview Screen Styles */
}
#loyaltySignupConfigModule .lsc-portal-view {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  background: #f8fafc;
  box-sizing: border-box;
}
#loyaltySignupConfigModule .lsc-portal-view .lsc-portal-banner {
  height: 140px;
  background-size: cover;
  background-position: center;
  position: relative;
  flex-shrink: 0;
  display: flex;
  align-items: flex-start;
  padding: 16px;
}
#loyaltySignupConfigModule .lsc-portal-view .lsc-portal-banner .lsc-portal-back {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.8);
  display: flex;
  align-items: center;
  justify-content: center;
  backdrop-filter: blur(4px);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 2;
}
#loyaltySignupConfigModule .lsc-portal-view .lsc-portal-banner .lsc-portal-back md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  color: #1e293b;
}
#loyaltySignupConfigModule .lsc-portal-view .lsc-portal-banner--video {
  overflow: hidden;
  background: #0f172a;
}
#loyaltySignupConfigModule .lsc-portal-view .lsc-portal-banner-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 1;
}
#loyaltySignupConfigModule .lsc-portal-view .lsc-portal-video-badge {
  position: absolute;
  bottom: 8px;
  right: 8px;
  z-index: 3;
  background: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(4px);
  border-radius: 50%;
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}
#loyaltySignupConfigModule .lsc-portal-view .lsc-portal-video-badge md-icon {
  font-size: 10px;
  width: 10px;
  height: 10px;
  color: #ffffff;
}
#loyaltySignupConfigModule .lsc-portal-view .lsc-portal-header-wrap {
  margin-top: -36px;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0 20px;
  z-index: 2;
  margin-bottom: 20px;
}
#loyaltySignupConfigModule .lsc-portal-view .lsc-portal-logo-wrap {
  background: #ffffff;
  padding: 4px;
  border-radius: 50%;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08);
  margin-bottom: 12px;
}
#loyaltySignupConfigModule .lsc-portal-view .lsc-portal-logo {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background-size: cover;
  background-position: center;
  background-color: #f1f5f9;
}
#loyaltySignupConfigModule .lsc-portal-view .lsc-portal-title {
  font-size: 18px;
  font-weight: 700;
  color: #1e293b;
  text-align: center;
  font-family: "Outfit", sans-serif;
  margin-bottom: 4px;
}
#loyaltySignupConfigModule .lsc-portal-view .lsc-portal-subtitle {
  font-size: 12px;
  color: #64748b;
  text-align: center;
  line-height: 1.4;
  padding: 0 10px;
}
#loyaltySignupConfigModule .lsc-portal-view .lsc-portal-form {
  padding: 0 20px 24px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
#loyaltySignupConfigModule .lsc-portal-view .lsc-portal-input-group {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
#loyaltySignupConfigModule .lsc-portal-view .lsc-portal-input-group .lsc-portal-input-label {
  font-size: 11px;
  font-weight: 600;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}
#loyaltySignupConfigModule .lsc-portal-view .lsc-portal-input-group .lsc-portal-input {
  border: 1px solid #cbd5e1;
  border-radius: 6px;
  padding: 8px 10px;
  font-size: 13px;
  color: #334155;
  background: #f1f5f9; /* mock disabled/readonly */
}
#loyaltySignupConfigModule .lsc-portal-view .lsc-portal-consent {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  margin: 6px 0;
}
#loyaltySignupConfigModule .lsc-portal-view .lsc-portal-consent .lsc-portal-checkbox {
  width: 14px;
  height: 14px;
  border: 1.5px solid #cbd5e1;
  border-radius: 3px;
  background: #fff;
  flex-shrink: 0;
  margin-top: 2px;
  position: relative;
}
#loyaltySignupConfigModule .lsc-portal-view .lsc-portal-consent .lsc-portal-checkbox::after {
  content: "";
  position: absolute;
  top: 2px;
  left: 4px;
  width: 3px;
  height: 6px;
  border: solid #E80032;
  border-width: 0 1.5px 1.5px 0;
  transform: rotate(45deg);
}
#loyaltySignupConfigModule .lsc-portal-view .lsc-portal-consent .lsc-portal-consent-text {
  font-size: 10px;
  color: #64748b;
  line-height: 1.4;
}
#loyaltySignupConfigModule .lsc-portal-view .lsc-portal-consent .lsc-portal-consent-text .lsc-link {
  font-weight: 600;
  text-decoration: underline;
  cursor: pointer;
}
#loyaltySignupConfigModule .lsc-portal-view .lsc-portal-btn-submit {
  border: none;
  border-radius: 8px;
  color: #ffffff;
  font-size: 14px;
  font-weight: 700;
  padding: 10px;
  cursor: pointer;
  text-align: center;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  transition: opacity 200ms;
  font-family: "Outfit", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}
#loyaltySignupConfigModule .lsc-portal-view .lsc-portal-btn-submit:hover {
  opacity: 0.95;
}
#loyaltySignupConfigModule .lsc-portal-view {
  /* Success View inside screen */
}
#loyaltySignupConfigModule .lsc-portal-view.lsc-portal-view--success {
  padding: 40px 24px;
  background: #ffffff;
}
#loyaltySignupConfigModule .lsc-portal-view.lsc-portal-view--success .lsc-success-circle {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
}
#loyaltySignupConfigModule .lsc-portal-view.lsc-portal-view--success .lsc-success-circle md-icon {
  font-size: 44px;
  width: 44px;
  height: 44px;
}
#loyaltySignupConfigModule .lsc-portal-view.lsc-portal-view--success .lsc-success-title {
  font-size: 20px;
  font-weight: 700;
  color: #1e293b;
  margin-bottom: 10px;
  font-family: "Outfit", sans-serif;
}
#loyaltySignupConfigModule .lsc-portal-view.lsc-portal-view--success .lsc-success-message {
  font-size: 13px;
  color: #64748b;
  text-align: center;
  line-height: 1.5;
}

.lsc-icon-dialog {
  border-radius: 16px;
  max-height: 80vh;
}
.lsc-icon-dialog .lsc-icon-dialog-header {
  background-color: #ffffff;
  color: #1e293b;
  border-bottom: 1px solid #e2e8f0;
  height: 70px;
  padding: 0 24px;
}
.waitry-dark-theme .lsc-icon-dialog .lsc-icon-dialog-header {
  color: var(--an-text);
  background-color: var(--an-surface);
  border-bottom-color: var(--an-border);
}
.lsc-icon-dialog .lsc-icon-dialog-header h2 {
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  margin: 0;
  color: #1e293b;
}
.waitry-dark-theme .lsc-icon-dialog .lsc-icon-dialog-header h2 {
  color: var(--an-text);
}
.lsc-icon-dialog .lsc-icon-dialog-header .md-icon-button md-icon,
.lsc-icon-dialog .lsc-icon-dialog-header .lsc-icon-dialog-close md-icon,
.lsc-icon-dialog .lsc-icon-dialog-header .lsc-icon-dialog-clear md-icon {
  color: #64748b;
  font-size: 22px !important;
  width: 22px;
  height: 22px;
  min-width: 22px;
  min-height: 22px;
  line-height: 22px;
}
.lsc-icon-dialog .lsc-icon-dialog-header .lsc-icon-dialog-close {
  flex-shrink: 0;
  margin-left: 8px;
}
.lsc-icon-dialog .lsc-icon-search-container {
  display: flex;
  align-items: center;
  background: #f1f5f9;
  border-radius: 12px;
  padding: 0 16px;
  height: 44px;
  margin: 0 24px;
  border: 1px solid transparent;
  transition: all 200ms ease;
}
.waitry-dark-theme .lsc-icon-dialog .lsc-icon-search-container {
  background: var(--an-surface2);
}
.lsc-icon-dialog .lsc-icon-search-container:focus-within {
  border-color: #E80032;
  background: #ffffff;
  box-shadow: 0 0 0 3px rgba(232, 0, 50, 0.1);
}
.waitry-dark-theme .lsc-icon-dialog .lsc-icon-search-container:focus-within {
  background: var(--an-surface3);
}
.lsc-icon-dialog .lsc-icon-search-container md-icon {
  color: #94a3b8;
  font-size: 20px;
  margin-right: 12px;
}
.lsc-icon-dialog .lsc-icon-search-container input.lsc-icon-search-input {
  border: none;
  background: transparent;
  width: 100%;
  height: 100%;
  font-family: "Inter", sans-serif;
  font-size: 15px;
  color: #334155;
  outline: none;
}
.waitry-dark-theme .lsc-icon-dialog .lsc-icon-search-container input.lsc-icon-search-input {
  color: var(--an-text-muted);
}
.lsc-icon-dialog .lsc-icon-search-container input.lsc-icon-search-input::placeholder {
  color: #94a3b8;
}
.lsc-icon-dialog .lsc-icon-dialog-content {
  padding: 24px;
  background: #f8fafc;
}
.waitry-dark-theme .lsc-icon-dialog .lsc-icon-dialog-content {
  background: var(--an-bg);
}
.lsc-icon-dialog .lsc-icon-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
  gap: 12px;
}
.lsc-icon-dialog .lsc-icon-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 16px 8px;
  cursor: pointer;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
  text-align: center;
}
.waitry-dark-theme .lsc-icon-dialog .lsc-icon-card {
  background: var(--an-surface2);
  border-color: var(--an-border);
}
.lsc-icon-dialog .lsc-icon-card md-icon {
  font-size: 32px;
  width: 32px;
  height: 32px;
  margin-bottom: 12px;
  color: #64748b;
  transition: color 200ms ease;
}
.lsc-icon-dialog .lsc-icon-card .lsc-icon-name {
  font-family: "Inter", sans-serif;
  font-size: 11px;
  color: #475569;
  font-weight: 500;
  width: 100%;
  word-break: break-word;
  line-height: 1.3;
  text-align: center;
}
.waitry-dark-theme .lsc-icon-dialog .lsc-icon-card .lsc-icon-name {
  color: var(--an-text-faint);
}
.lsc-icon-dialog .lsc-icon-card:hover {
  transform: translateY(-2px);
  border-color: #cbd5e1;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}
.lsc-icon-dialog .lsc-icon-card:hover md-icon {
  color: #334155;
}
.waitry-dark-theme .lsc-icon-dialog .lsc-icon-card:hover md-icon {
  color: var(--an-text-muted);
}
.lsc-icon-dialog .lsc-icon-card.lsc-icon-card--active {
  border-color: #E80032;
  background: #fff0f2;
  box-shadow: 0 0 0 1px #E80032;
}
.lsc-icon-dialog .lsc-icon-card.lsc-icon-card--active md-icon {
  color: #E80032;
}
.lsc-icon-dialog .lsc-icon-card.lsc-icon-card--active .lsc-icon-name {
  color: #E80032;
  font-weight: 600;
}
.lsc-icon-dialog .lsc-icon-empty-state {
  padding: 60px 20px;
  color: #64748b;
}
.lsc-icon-dialog .lsc-icon-empty-state md-icon {
  font-size: 48px;
  width: 48px;
  height: 48px;
  margin-bottom: 16px;
  color: #cbd5e1;
}
.lsc-icon-dialog .lsc-icon-empty-state h3 {
  font-family: "Outfit", sans-serif;
  font-size: 20px;
  margin: 0 0 8px 0;
  color: #334155;
}
.waitry-dark-theme .lsc-icon-dialog .lsc-icon-empty-state h3 {
  color: var(--an-text-muted);
}
.lsc-icon-dialog .lsc-icon-empty-state p {
  font-family: "Inter", sans-serif;
  font-size: 14px;
  margin: 0;
}
.lsc-icon-dialog .lsc-icon-grid-hint {
  text-align: center;
  padding-top: 24px;
  color: #94a3b8;
  font-family: "Inter", sans-serif;
  font-size: 13px;
}

@media (max-width: 599px) {
  #loyaltySignupConfigModule .lsc-layout {
    padding: 12px;
    gap: 16px;
  }
  #loyaltySignupConfigModule .lsc-form-pane {
    padding: 16px;
    border-radius: 12px;
  }
  #loyaltySignupConfigModule .lsc-section {
    padding: 16px;
  }
  #loyaltySignupConfigModule .lsc-lang-bar {
    flex-wrap: wrap;
    padding: 12px;
  }
  #loyaltySignupConfigModule .lsc-lang-bar .lsc-lang-bar-right {
    flex: 1 1 100%;
    flex-wrap: wrap;
  }
  #loyaltySignupConfigModule .lsc-lang-bar .lsc-lang-select {
    flex: 1 1 100%;
    min-width: 0;
    max-width: none;
  }
  #loyaltySignupConfigModule .lsc-lang-bar .lsc-lang-translate-btn {
    flex: 1 1 100%;
  }
}
.lps-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
  width: 100%;
  min-width: 0;
}

.lps-field-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.lps-label {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  color: var(--an-text-muted);
}

.lps-input,
.lps-textarea {
  width: 100%;
  border: 1.5px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
  color: var(--an-text);
  font-size: 14px;
  font-family: inherit;
  padding: 10px 12px;
  box-sizing: border-box;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.lps-input::placeholder,
.lps-textarea::placeholder {
  color: var(--an-placeholder);
}
.lps-input:hover,
.lps-textarea:hover {
  border-color: var(--an-border-strong);
}
.lps-input:focus,
.lps-textarea:focus {
  outline: none;
  border-color: var(--an-primary);
  box-shadow: 0 0 0 3px var(--an-primary-soft);
}

.lps-textarea {
  resize: vertical;
  line-height: 1.5;
  display: block;
}

.lps-hint {
  font-size: 11px;
  color: var(--an-text-faint);
  margin: 0;
  line-height: 1.4;
}

.lps-ai-btn.md-button {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin: 0;
  padding: 0 10px;
  height: 26px;
  min-height: 26px;
  line-height: 26px;
  border-radius: var(--an-radius-pill, 999px);
  font-size: 11px;
  font-weight: 600;
  text-transform: none;
  color: var(--an-primary);
  background: var(--an-primary-soft);
  flex-shrink: 0;
}
.lps-ai-btn.md-button md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  min-width: 14px;
  margin: 0;
  color: var(--an-primary);
}
.lps-ai-btn.md-button:hover:not([disabled]) {
  background: linear-gradient(135deg, #7C3AED, #2563EB);
  color: #fff;
}
.lps-ai-btn.md-button:hover:not([disabled]) md-icon {
  color: #fff;
}
.lps-ai-btn.md-button[disabled] {
  opacity: 0.55;
}

.w-avatar-container {
  position: relative;
  border-radius: 50%;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.08), inset 0 0 0 1px rgba(255, 255, 255, 0.2);
  transition: transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.25s ease;
}
.w-avatar-container:hover {
  transform: scale(1.08);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.12), inset 0 0 0 1px rgba(255, 255, 255, 0.3);
}
.w-avatar-container .w-avatar-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.w-avatar-container .w-avatar-initials {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  font-family: "Outfit", sans-serif;
  font-weight: 600;
  text-transform: uppercase;
  user-select: none;
  letter-spacing: 0.5px;
}

.bg-grad-1 {
  background: linear-gradient(135deg, #EC4E36 0%, #ff8a7a 100%);
}

.bg-grad-2 {
  background: linear-gradient(135deg, #3b82f6 0%, #8b5cf6 100%);
}

.bg-grad-3 {
  background: linear-gradient(135deg, #10b981 0%, #34d399 100%);
}

.bg-grad-4 {
  background: linear-gradient(135deg, #f59e0b 0%, #fcd34d 100%);
}

.bg-grad-5 {
  background: linear-gradient(135deg, #ec4899 0%, #f43f5e 100%);
}

.bg-grad-6 {
  background: linear-gradient(135deg, #14b8a6 0%, #2dd4bf 100%);
}

.am-layout {
  display: flex;
  min-height: 100%;
  background: var(--an-bg);
  color: var(--an-text);
}
.am-layout .am-sidebar {
  width: 280px;
  min-width: 280px;
  border-right: 1px solid var(--an-border);
  background: var(--an-surface);
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
}
.am-layout .am-sidebar .am-sidebar-header {
  padding: 18px 16px 16px;
  border-bottom: 1px solid var(--an-border-light);
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.am-layout .am-sidebar .am-sidebar-header .am-sidebar-header-row {
  display: flex;
  align-items: center;
  gap: 10px;
}
.am-layout .am-sidebar .am-sidebar-header .am-sidebar-header-row md-icon {
  color: var(--an-primary);
  font-size: 20px;
  min-width: 20px;
  margin: 0;
}
.am-layout .am-sidebar .am-sidebar-header h3 {
  margin: 0;
  font-size: 17px;
  font-weight: 700;
  letter-spacing: -0.3px;
  color: var(--an-text);
}
.am-layout .am-sidebar .am-sidebar-header .am-ai-detect-btn {
  margin: 0 !important;
  width: 100%;
}
.am-layout .am-sidebar .am-list {
  padding: 6px 0 12px;
  overflow-y: auto;
  flex: 1;
}
.am-layout .am-sidebar .am-list-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 6px 14px;
  margin: 0 12px 0 0;
  border-radius: 0 var(--an-radius) var(--an-radius) 0;
  cursor: pointer;
  transition: background 0.18s var(--ease-default), border-color 0.18s var(--ease-default);
  background: transparent;
  border-left: 3px solid transparent;
}
.am-layout .am-sidebar .am-list-item:hover {
  background: var(--an-bg-subtle);
}
.am-layout .am-sidebar .am-list-item:hover .am-list-item-arrow {
  opacity: 1;
}
.am-layout .am-sidebar .am-list-item.am-list-item--active {
  background: var(--an-primary-soft) !important;
  border-left-color: var(--an-primary);
}
.am-layout .am-sidebar .am-list-item.am-list-item--active .am-list-item-name {
  color: var(--an-primary);
  font-weight: 600;
}
.am-layout .am-sidebar .am-list-item.am-list-item--active .am-list-item-icon-wrap {
  background: var(--an-surface);
}
.am-layout .am-sidebar .am-list-item.am-list-item--active .am-list-item-count {
  background: var(--an-surface);
  color: var(--an-primary);
}
.waitry-dark-theme .am-layout .am-sidebar .am-list-item.am-list-item--active .am-list-item-count {
  background: rgba(255, 255, 255, 0.1);
}
.am-layout .am-sidebar .am-list-item.am-list-item--active .am-list-item-arrow {
  color: var(--an-primary);
  opacity: 1;
}
.am-layout .am-sidebar .am-list-item .am-list-item-icon-wrap {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--an-surface2);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.am-layout .am-sidebar .am-list-item .am-list-item-icon-wrap img {
  width: 19px;
  height: 19px;
  object-fit: contain;
}
.am-layout .am-sidebar .am-list-item .am-list-item-name {
  font-size: 13.5px;
  font-weight: 500;
  color: var(--an-text);
  margin: 0;
  flex: 1;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.am-layout .am-sidebar .am-list-item .am-list-item-count {
  flex-shrink: 0;
  min-width: 22px;
  padding: 1px 6px;
  border-radius: 999px;
  background: var(--an-surface2);
  color: var(--an-text-muted);
  font-size: 11.5px;
  font-weight: 600;
  line-height: 16px;
  text-align: center;
  font-variant-numeric: tabular-nums;
  transition: background 0.18s var(--ease-default), color 0.18s var(--ease-default);
}
.waitry-dark-theme .am-layout .am-sidebar .am-list-item .am-list-item-count {
  background: rgba(255, 255, 255, 0.07);
}
.am-layout .am-sidebar .am-list-item .am-list-item-count--zero {
  background: transparent;
  color: var(--an-text-faint);
}
.waitry-dark-theme .am-layout .am-sidebar .am-list-item .am-list-item-count--zero {
  background: transparent;
}
.am-layout .am-sidebar .am-list-item .am-list-item-arrow {
  color: var(--an-text-muted);
  font-size: 15px;
  flex-shrink: 0;
  opacity: 0;
  transition: opacity 0.18s var(--ease-default);
}
.am-layout .am-content {
  flex: 1;
  padding: 24px 32px;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.am-layout .am-content .am-card-header {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-lg);
  padding: 24px 32px;
  box-shadow: var(--an-shadow-md);
}
.am-layout .am-content .am-card-header .am-header-title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
}
.am-layout .am-content .am-card-header .am-header-title-left {
  display: flex;
  align-items: center;
  gap: 16px;
}
.am-layout .am-content .am-card-header .am-header-title-left .am-header-icon {
  width: 52px;
  height: 52px;
  object-fit: contain;
  filter: drop-shadow(0 4px 6px rgba(0, 0, 0, 0.1));
}
.am-layout .am-content .am-card-header .am-header-title-left h2 {
  margin: 0;
  font-size: 24px;
  font-weight: 800;
  letter-spacing: -0.5px;
  color: var(--an-text);
}
.am-layout .am-content .am-card-header .am-header-desc {
  margin: 0;
  font-size: 14px;
  color: var(--an-text-muted);
  max-width: 600px;
  line-height: 1.5;
}
.am-layout .am-content .am-card-header .am-save-btn {
  margin: 0;
  border-radius: var(--an-radius-sm);
  font-weight: 600;
  padding: 0 20px;
  height: 40px;
  line-height: 40px;
  text-transform: none;
  background: var(--an-rose) !important;
  color: #fff !important;
  box-shadow: var(--an-shadow-sm);
  transition: all 0.2s;
}
.am-layout .am-content .am-card-header .am-save-btn:hover:not([disabled]) {
  background: #db3a22 !important;
  box-shadow: var(--an-shadow-md);
}
.am-layout .am-content .am-card-header .am-save-btn[disabled] {
  opacity: 0.6;
  background: var(--an-text-faint) !important;
}
.am-layout .am-content .am-card-header .am-save-btn md-icon {
  font-size: 18px;
  margin-right: 6px;
}
.am-layout .am-content .am-search-filter-row {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
  background: var(--an-surface2);
  border-radius: var(--an-radius);
  padding: 12px 20px;
  border: 1px solid var(--an-border-light);
}
.am-layout .am-content .am-search-filter-row .am-search-box {
  position: relative;
  flex: 1;
  min-width: 250px;
  display: flex;
  align-items: center;
}
.am-layout .am-content .am-search-filter-row .am-search-box i.am-search-icon {
  position: absolute;
  left: 12px;
  color: var(--an-text-muted);
  font-size: 16px;
  pointer-events: none;
}
.am-layout .am-content .am-search-filter-row .am-search-box input {
  width: 100%;
  padding: 10px 40px 10px 38px;
  font-size: 14px;
  border-radius: var(--an-radius-sm);
  border: 1px solid var(--an-border);
  background: var(--an-surface);
  color: var(--an-text);
  outline: none;
  transition: all 0.2s;
}
.am-layout .am-content .am-search-filter-row .am-search-box input:focus {
  border-color: var(--an-primary);
  box-shadow: 0 0 0 2px var(--an-primary-soft);
}
.am-layout .am-content .am-search-filter-row .am-search-box input::placeholder {
  color: var(--an-placeholder);
}
.am-layout .am-content .am-search-filter-row .am-search-box .am-search-clear {
  position: absolute;
  right: 12px;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  color: var(--an-text-muted);
  display: flex;
  align-items: center;
  justify-content: center;
}
.am-layout .am-content .am-search-filter-row .am-search-box .am-search-clear:hover {
  color: var(--an-text);
}
.am-layout .am-content .am-search-filter-row .am-filter-segmented {
  display: flex;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  padding: 2px;
  gap: 2px;
}
.am-layout .am-content .am-search-filter-row .am-filter-segmented .am-segmented-btn {
  border: none;
  background: transparent;
  color: var(--an-text-muted);
  font-size: 13px;
  font-weight: 500;
  padding: 8px 16px;
  border-radius: var(--an-radius-xs);
  cursor: pointer;
  transition: all 0.2s;
}
.am-layout .am-content .am-search-filter-row .am-filter-segmented .am-segmented-btn:hover {
  color: var(--an-text);
  background: var(--an-bg-subtle);
}
.am-layout .am-content .am-search-filter-row .am-filter-segmented .am-segmented-btn.active {
  color: var(--an-rose);
  background: var(--an-rose-soft);
  font-weight: 600;
}
.am-layout .am-content .am-grid-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 4px;
  font-size: 13px;
  color: var(--an-text-muted);
}
.am-layout .am-content .am-grid-meta .am-grid-meta-count {
  font-weight: 600;
  color: var(--an-text);
}
.am-layout .am-content .am-product-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 12px;
  align-content: start;
}
.am-layout .am-content .am-product-card {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  padding: 14px 18px;
  display: flex;
  align-items: center;
  transition: all 0.2s var(--ease-default);
  cursor: pointer;
  position: relative;
  user-select: none;
}
.am-layout .am-content .am-product-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--an-shadow-md);
  border-color: var(--an-border-hover);
}
.am-layout .am-content .am-product-card.am-product-card--contains {
  background: var(--an-rose-soft);
  border-color: var(--an-rose);
  box-shadow: var(--an-shadow-sm);
}
.am-layout .am-content .am-product-card.am-product-card--contains .am-product-name {
  color: var(--an-rose);
  font-weight: 600;
}
.am-layout .am-content .am-product-card.am-product-card--contains .am-checkbox-custom {
  border-color: var(--an-rose);
  background: var(--an-rose);
}
.am-layout .am-content .am-product-card.am-product-card--contains .am-checkbox-custom::after {
  opacity: 1;
  transform: rotate(45deg) scale(1);
}
.am-layout .am-content .am-product-card md-checkbox {
  margin: 0 14px 0 0 !important;
}
.am-layout .am-content .am-product-card md-checkbox .md-icon {
  border-radius: 6px;
  border: 2px solid var(--an-text-muted) !important;
  background: transparent !important;
  transition: all 0.2s ease;
}
.am-layout .am-content .am-product-card md-checkbox.md-checked .md-icon {
  border-color: var(--an-rose) !important;
  background: var(--an-rose) !important;
}
.am-layout .am-content .am-product-card:hover md-checkbox:not(.md-checked) .md-icon {
  border-color: var(--an-text) !important;
}
.am-layout .am-content .am-product-card .am-product-thumb {
  width: 40px;
  height: 40px;
  border-radius: var(--an-radius-xs);
  object-fit: cover;
  margin-right: 14px;
  background: var(--an-surface2);
  border: 1px solid var(--an-border-light);
  flex-shrink: 0;
}
.am-layout .am-content .am-product-card .am-product-details {
  display: flex;
  flex-direction: column;
  gap: 4px;
  flex: 1;
  min-width: 0;
}
.am-layout .am-content .am-product-card .am-product-name {
  font-size: 14px;
  font-weight: 500;
  color: var(--an-text);
  margin: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: color 0.2s;
}
.am-layout .am-content .am-product-card .am-product-category {
  font-size: 11px;
  color: var(--an-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.am-layout .am-content .am-products-empty {
  background: var(--an-surface);
  border: 1px dashed var(--an-border);
  border-radius: var(--an-radius-lg);
  padding: 48px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
}
.am-layout .am-content .am-products-empty md-icon {
  font-size: 40px;
  height: 40px;
  width: 40px;
  color: var(--an-text-faint);
  margin: 0;
}
.am-layout .am-content .am-products-empty h4 {
  margin: 0;
  font-size: 16px;
  font-weight: 600;
  color: var(--an-text);
}
.am-layout .am-content .am-products-empty p {
  margin: 0;
  font-size: 13px;
  color: var(--an-text-muted);
  max-width: 320px;
  line-height: 1.4;
}
.am-layout .am-empty-onboarding {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 32px;
  background: var(--an-bg);
}
.am-layout .am-empty-onboarding .am-empty-card {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-lg);
  padding: 60px 40px;
  text-align: center;
  max-width: 480px;
  box-shadow: var(--an-shadow-md);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}
.am-layout .am-empty-onboarding .am-empty-card .am-empty-icon-container {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: var(--an-primary-soft);
  display: flex;
  align-items: center;
  justify-content: center;
}
.am-layout .am-empty-onboarding .am-empty-card .am-empty-icon-container md-icon {
  font-size: 32px;
  height: 32px;
  width: 32px;
  color: var(--an-primary);
  margin: 0;
}
.am-layout .am-empty-onboarding .am-empty-card h3 {
  margin: 0;
  font-size: 20px;
  font-weight: 700;
  color: var(--an-text);
  letter-spacing: -0.3px;
}
.am-layout .am-empty-onboarding .am-empty-card p {
  margin: 0;
  font-size: 14px;
  color: var(--an-text-muted);
  line-height: 1.5;
}

.allergen-ai-body {
  min-width: 320px;
}

.allergen-ai-scanned-count {
  margin-top: 4px;
  font-size: 12.5px;
  color: var(--an-text-muted);
}

.allergen-ai-disclaimer {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 10px 12px;
  margin-bottom: 14px;
  border-radius: 8px;
  background: var(--an-warn-soft, rgba(255, 193, 7, 0.12));
  color: var(--an-text);
  font-size: 13px;
  line-height: 1.45;
}
.allergen-ai-disclaimer md-icon {
  color: var(--an-warn, #f5a623);
  font-size: 18px;
  height: 18px;
  width: 18px;
  margin-top: 1px;
  flex-shrink: 0;
}
.allergen-ai-disclaimer--warn {
  background: var(--an-danger-soft, rgba(244, 67, 54, 0.1));
}
.allergen-ai-disclaimer--warn md-icon {
  color: var(--an-danger, #e5484d);
}

.allergen-ai-toolbar {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 0 2px 10px;
  margin-bottom: 4px;
  border-bottom: 1px solid var(--an-border-light);
}
.allergen-ai-toolbar__hint {
  font-size: 12.5px;
  color: var(--an-text-muted);
  line-height: 1.4;
}
.allergen-ai-toolbar__sep {
  color: var(--an-text-muted);
  font-size: 12px;
}

.allergen-ai-linkbtn {
  border: none;
  background: none;
  padding: 2px 4px;
  font-size: 12.5px;
  font-weight: 600;
  color: var(--an-primary);
  cursor: pointer;
  white-space: nowrap;
}
.allergen-ai-linkbtn:hover {
  text-decoration: underline;
}

.allergen-ai-row {
  padding: 10px 0;
  border-bottom: 1px solid var(--an-border-light);
}
.allergen-ai-row:last-child {
  border-bottom: none;
}
.allergen-ai-row__name {
  font-weight: 600;
  color: var(--an-text);
  margin-bottom: 8px;
  font-size: 14px;
}
.allergen-ai-row__category {
  margin-left: 8px;
  font-weight: 400;
  font-size: 12px;
  color: var(--an-text-muted);
}
.allergen-ai-row__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.allergen-ai-chip {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px 6px 8px;
  border-radius: 20px;
  border: 1px solid var(--an-border);
  background: var(--an-surface);
  color: var(--an-text);
  font-size: 13px;
  cursor: pointer;
  transition: all 0.15s;
}
.waitry-dark-theme .allergen-ai-chip {
  background: rgba(255, 255, 255, 0.02);
  border-color: rgba(255, 255, 255, 0.07);
}
.allergen-ai-chip__icon {
  width: 16px;
  height: 16px;
}
.allergen-ai-chip__check {
  font-size: 14px;
  --an-icon-size: 14px;
  height: 14px;
  width: 14px;
  color: var(--an-primary);
  margin: 0;
}
.allergen-ai-chip__evidence {
  max-width: 180px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 12px;
  font-style: italic;
  color: var(--an-text-muted);
}
.allergen-ai-chip__tag {
  padding: 1px 6px;
  border-radius: 8px;
  background: var(--an-border-light);
  font-size: 10.5px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  color: var(--an-text-muted);
}
.waitry-dark-theme .allergen-ai-chip__tag {
  background: rgba(255, 255, 255, 0.08);
}
.allergen-ai-chip--likely {
  border-style: dashed;
}
.allergen-ai-chip--checked {
  border-color: var(--an-primary);
  border-style: solid;
  background: var(--an-primary-soft);
}
.allergen-ai-chip--checked .allergen-ai-chip__label {
  font-weight: 600;
}

.aa-scan-anim {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  gap: 12px;
  min-height: 56px;
  padding: 2px 0 12px;
}

.aa-scan-icon {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background: var(--an-surface2);
  box-shadow: var(--an-shadow-xs);
  animation: aa-scan-bounce 1.7s ease-in-out infinite;
}
.waitry-dark-theme .aa-scan-icon {
  background: rgba(255, 255, 255, 0.06);
}
.aa-scan-icon img {
  width: 22px;
  height: 22px;
  object-fit: contain;
}
.aa-scan-icon:nth-child(1) {
  animation-delay: 0s;
}
.aa-scan-icon:nth-child(2) {
  animation-delay: 0.14s;
}
.aa-scan-icon:nth-child(3) {
  animation-delay: 0.28s;
}
.aa-scan-icon:nth-child(4) {
  animation-delay: 0.42s;
}
.aa-scan-icon:nth-child(5) {
  animation-delay: 0.56s;
}
.aa-scan-icon:nth-child(6) {
  animation-delay: 0.7s;
}
.aa-scan-icon:nth-child(7) {
  animation-delay: 0.84s;
}

@keyframes aa-scan-bounce {
  0%, 100% {
    transform: translateY(0) scale(1);
    opacity: 0.4;
  }
  50% {
    transform: translateY(-10px) scale(1.12);
    opacity: 1;
  }
}
@media (prefers-reduced-motion: reduce) {
  .aa-scan-icon {
    animation: none;
    opacity: 0.85;
  }
}
.allergen-ai-confirm {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 8px 4px 4px;
}
.allergen-ai-confirm__icon {
  color: var(--an-primary);
  font-size: 34px;
  --an-icon-size: 34px;
  width: 34px;
  height: 34px;
  margin-bottom: 12px;
}
.allergen-ai-confirm h3 {
  margin: 0 0 16px;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.45;
  color: var(--an-text);
  max-width: 380px;
}
.allergen-ai-confirm__note {
  margin: 10px 0 0;
  font-size: 12.5px;
  line-height: 1.5;
  color: var(--an-text-muted);
  max-width: 380px;
}

.allergen-ai-cost {
  width: 100%;
  max-width: 300px;
  padding: 14px 16px;
  border-radius: var(--an-radius);
  border: 1px solid var(--an-border);
  background: var(--an-surface2);
}
.allergen-ai-cost__row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  font-size: 13.5px;
  color: var(--an-text);
}
.allergen-ai-cost__row strong {
  font-size: 19px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
.allergen-ai-cost__row span {
  font-variant-numeric: tabular-nums;
}
.allergen-ai-cost__row--muted {
  margin-top: 4px;
  color: var(--an-text-muted);
  font-size: 12.5px;
}
.allergen-ai-cost__rate {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid var(--an-border-light);
  font-size: 11.5px;
  color: var(--an-text-faint);
}

.allergen-ai-spent {
  margin-left: 14px;
  padding: 2px 9px;
  border-radius: 999px;
  background: var(--an-surface2);
  font-size: 11.5px;
  font-weight: 600;
  color: var(--an-text-muted);
  font-variant-numeric: tabular-nums;
}
.waitry-dark-theme .allergen-ai-spent {
  background: rgba(255, 255, 255, 0.07);
}

.allergen-ai-checked-count {
  font-size: 13px;
  color: var(--an-text-muted);
}
.allergen-ai-checked-count strong {
  color: var(--an-text);
  font-size: 15px;
  margin-right: 4px;
}

.allergen-batch-ai-link {
  margin-bottom: 12px;
}

.allergen-batch-mode {
  display: flex;
  gap: 8px;
  margin-bottom: 10px;
}
.allergen-batch-mode__btn {
  flex: 1;
  padding: 10px 12px;
  border-radius: 8px;
  border: 1px solid var(--an-border);
  background: var(--an-surface);
  color: var(--an-text);
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.15s;
}
.allergen-batch-mode__btn--active {
  border-color: var(--an-primary);
  background: var(--an-primary-soft);
  color: var(--an-primary);
}
.allergen-batch-mode__btn--warn.allergen-batch-mode__btn--active {
  border-color: var(--an-warn, #f5a623);
  background: var(--an-warn-soft, rgba(255, 193, 7, 0.12));
  color: var(--an-warn, #f5a623);
}

.allergen-batch-warning {
  font-size: 12.5px;
  color: var(--an-warn, #f5a623);
  margin: 0 0 12px;
  line-height: 1.4;
}

.allergen-batch-confirm {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: var(--an-text);
}

@media (max-width: 599px) {
  .am-layout .am-content {
    padding: 12px;
    gap: 12px;
    overflow: visible;
  }
  .am-layout .am-content .am-card-header {
    padding: 16px;
  }
  .am-layout .am-content .am-card-header .am-header-title-row {
    flex-wrap: wrap;
    gap: 12px;
  }
  .am-layout .am-content .am-card-header .am-header-title-row > :last-child {
    flex: 1 1 100%;
  }
  .am-layout .am-content .am-card-header .am-header-title-left {
    flex: 1 1 100%;
    align-items: flex-start;
    gap: 10px;
  }
  .am-layout .am-content .am-card-header .am-header-title-left .am-header-icon {
    width: 40px;
    height: 40px;
  }
  .am-layout .am-content .am-card-header .am-header-title-left h2 {
    font-size: 20px;
  }
  .am-layout .am-content .am-card-header .am-save-btn {
    width: 100%;
  }
}
.catalog-kpi-chip--untranslated {
  color: #f59e0b;
  background: rgba(245, 158, 11, 0.08);
  border: 1px solid rgba(245, 158, 11, 0.2);
}
.waitry-dark-theme .catalog-kpi-chip--untranslated {
  color: #FBBF24;
  background: rgba(251, 191, 36, 0.12);
  border-color: rgba(251, 191, 36, 0.3);
}
.catalog-kpi-chip--untranslated md-icon {
  color: #f59e0b !important;
}
.waitry-dark-theme .catalog-kpi-chip--untranslated md-icon {
  color: #FBBF24 !important;
}
.catalog-kpi-chip--untranslated:hover {
  background: rgba(245, 158, 11, 0.12);
  border-color: rgba(245, 158, 11, 0.3);
}
.waitry-dark-theme .catalog-kpi-chip--untranslated:hover {
  background: rgba(251, 191, 36, 0.18);
  border-color: rgba(251, 191, 36, 0.4);
}
.catalog-kpi-chip--untranslated.catalog-kpi-chip--active {
  background: #f59e0b !important;
  color: #fff !important;
  border-color: #f59e0b !important;
}
.waitry-dark-theme .catalog-kpi-chip--untranslated.catalog-kpi-chip--active {
  background: #FBBF24 !important;
  border-color: #FBBF24 !important;
}
.catalog-kpi-chip--untranslated.catalog-kpi-chip--active md-icon {
  color: #fff !important;
}

.catalog-untranslated-warning {
  display: inline-flex;
  align-items: center;
  background: rgba(245, 158, 11, 0.1);
  color: #d97706;
  padding: 2px 8px;
  border-radius: 4px;
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  margin-left: 8px;
  border: 1px solid rgba(245, 158, 11, 0.2);
  cursor: help;
  transition: all 0.2s ease;
}
.waitry-dark-theme .catalog-untranslated-warning {
  background: rgba(251, 191, 36, 0.12);
  color: #FBBF24;
  border-color: rgba(251, 191, 36, 0.3);
}
.catalog-untranslated-warning md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  margin-right: 4px;
  color: #d97706 !important;
  min-height: 14px;
  min-width: 14px;
}
.waitry-dark-theme .catalog-untranslated-warning md-icon {
  color: #FBBF24 !important;
}
.catalog-untranslated-warning:hover {
  background: rgba(245, 158, 11, 0.15);
  border-color: rgba(245, 158, 11, 0.3);
}
.waitry-dark-theme .catalog-untranslated-warning:hover {
  background: rgba(251, 191, 36, 0.18);
  border-color: rgba(251, 191, 36, 0.4);
}

.catalog-table-row.catalog-table-row--untranslated {
  background-color: rgba(245, 158, 11, 0.02);
}
.catalog-table-row.catalog-table-row--untranslated:hover {
  background-color: rgba(245, 158, 11, 0.05) !important;
}

.catalog-product-card--untranslated {
  border-color: rgba(245, 158, 11, 0.3) !important;
  box-shadow: 0 2px 8px rgba(245, 158, 11, 0.08) !important;
}
.catalog-product-card--untranslated .catalog-card-body {
  background-color: rgba(245, 158, 11, 0.02);
}

.catalog-bulk-btn--translate {
  color: #f59e0b !important;
}
.catalog-bulk-btn--translate md-icon {
  color: #f59e0b !important;
}
.catalog-bulk-btn--translate:hover {
  background: rgba(245, 158, 11, 0.08) !important;
}

.catalog-row-action-btn md-icon.iconoir-translate,
.catalog-card-actions md-icon.iconoir-translate {
  color: #f59e0b;
}

#moduleReportLoyalty .ly-kpis {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  margin-bottom: 14px;
}
@media (max-width: 960px) {
  #moduleReportLoyalty .ly-kpis {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 520px) {
  #moduleReportLoyalty .ly-kpis {
    grid-template-columns: 1fr;
  }
}
#moduleReportLoyalty .ly-kpi {
  background: var(--an-surface, #fff);
  border: 1px solid var(--an-border, rgba(0, 0, 0, 0.08));
  border-radius: 14px;
  padding: 14px 16px;
  position: relative;
  overflow: hidden;
}
#moduleReportLoyalty .ly-kpi::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  background: var(--an-text-muted, #94a3b8);
  border-radius: 4px 0 0 4px;
}
#moduleReportLoyalty .ly-kpi--violet::before {
  background: #6c63ff;
}
#moduleReportLoyalty .ly-kpi--green::before {
  background: #10b981;
}
#moduleReportLoyalty .ly-kpi--amber::before {
  background: #f59e0b;
}
#moduleReportLoyalty .ly-kpi--rose::before {
  background: #ec4e36;
}
#moduleReportLoyalty .ly-kpi__val {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.15;
  color: var(--an-text, #1e293b);
}
#moduleReportLoyalty .ly-kpi__lbl {
  font-size: 11.5px;
  margin-top: 2px;
  color: var(--an-text-muted, #64748b);
  text-transform: uppercase;
  letter-spacing: 0.03em;
}
#moduleReportLoyalty .ly-kpi__sub {
  font-size: 11px;
  margin-top: 4px;
  color: var(--an-text-muted, #94a3b8);
}
#moduleReportLoyalty .ly-compare {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
#moduleReportLoyalty .ly-compare__head, #moduleReportLoyalty .ly-compare__row {
  display: grid;
  grid-template-columns: minmax(90px, 1.2fr) 1fr 96px 1fr;
  align-items: center;
  gap: 8px;
}
#moduleReportLoyalty .ly-compare__head {
  font-size: 10.5px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--an-text-muted, #94a3b8);
  padding: 0 10px 4px;
}
#moduleReportLoyalty .ly-compare__col {
  text-align: center;
}
#moduleReportLoyalty .ly-compare__col--member {
  color: #6c63ff;
  font-weight: 700;
}
#moduleReportLoyalty .ly-compare__row {
  background: var(--an-surface2, rgba(0, 0, 0, 0.03));
  border-radius: 10px;
  padding: 10px;
}
#moduleReportLoyalty .ly-compare__metric {
  font-size: 12.5px;
  font-weight: 600;
  color: var(--an-text, #334155);
}
#moduleReportLoyalty .ly-compare__val {
  text-align: center;
  font-size: 16px;
  font-weight: 700;
  color: var(--an-text, #1e293b);
}
#moduleReportLoyalty .ly-compare__val--member {
  color: #6c63ff;
}
#moduleReportLoyalty .ly-uplift-badge {
  justify-self: center;
  display: inline-flex;
  align-items: center;
  gap: 2px;
  font-size: 12px;
  font-weight: 700;
  border-radius: 999px;
  padding: 3px 10px;
  white-space: nowrap;
}
#moduleReportLoyalty .ly-uplift-badge md-icon {
  font-size: 13px;
  min-height: 13px;
  min-width: 13px;
  height: 13px;
  width: 13px;
  color: inherit;
}
#moduleReportLoyalty .ly-uplift-badge--up {
  color: #0f766e;
  background: rgba(16, 185, 129, 0.14);
}
#moduleReportLoyalty .ly-uplift-badge--down {
  color: #b91c1c;
  background: rgba(236, 78, 54, 0.13);
}
#moduleReportLoyalty .ly-uplift-badge--na {
  color: var(--an-text-muted, #94a3b8);
  background: var(--an-surface2, rgba(0, 0, 0, 0.05));
}
#moduleReportLoyalty .ly-split {
  display: flex;
  gap: 10px;
  margin-bottom: 12px;
}
#moduleReportLoyalty .ly-split__seg {
  flex: 1;
  text-align: center;
  background: var(--an-surface2, rgba(0, 0, 0, 0.03));
  border-radius: 10px;
  padding: 12px 8px;
}
#moduleReportLoyalty .ly-split__val {
  font-size: 18px;
  font-weight: 700;
  color: var(--an-text, #1e293b);
}
#moduleReportLoyalty .ly-split__lbl {
  font-size: 11px;
  color: var(--an-text-muted, #64748b);
  margin-top: 2px;
}
#moduleReportLoyalty .ly-share-track {
  height: 10px;
  border-radius: 999px;
  background: #cbd5e1;
  overflow: hidden;
  margin: 4px 0 10px;
}
.waitry-dark-theme #moduleReportLoyalty .ly-share-track {
  background: var(--an-surface3, #334155);
}
#moduleReportLoyalty .ly-cols {
  display: flex;
  align-items: flex-end;
  gap: 6px;
  height: 220px;
  overflow-x: auto;
  padding-bottom: 4px;
}
#moduleReportLoyalty .ly-col-group {
  flex: 1 0 auto;
  min-width: 26px;
  max-width: 64px;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
#moduleReportLoyalty .ly-col-bars {
  flex: 1;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 3px;
}
#moduleReportLoyalty .ly-col {
  width: 10px;
  border-radius: 4px 4px 0 0;
  min-height: 2px;
  transition: height 0.25s ease;
}
#moduleReportLoyalty .ly-col--issued {
  background: #6c63ff;
}
#moduleReportLoyalty .ly-col--redeemed {
  background: #10b981;
}
#moduleReportLoyalty .ly-col--expired {
  background: #f59e0b;
}
#moduleReportLoyalty .ly-col-label {
  margin-top: 5px;
  font-size: 9.5px;
  text-align: center;
  color: var(--an-text-muted, #94a3b8);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#moduleReportLoyalty .ly-stat-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 10px;
  border-radius: 8px;
}
#moduleReportLoyalty .ly-stat-row:nth-child(odd) {
  background: var(--an-surface2, rgba(0, 0, 0, 0.03));
}
#moduleReportLoyalty .ly-stat-row--strong .ly-stat-val {
  color: #f59e0b;
}
#moduleReportLoyalty .ly-stat-lbl {
  font-size: 12.5px;
  color: var(--an-text-muted, #64748b);
}
#moduleReportLoyalty .ly-stat-val {
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text, #1e293b);
}
#moduleReportLoyalty .ly-mini {
  text-align: center;
  padding: 6px 14px;
}
#moduleReportLoyalty .ly-mini__val {
  font-size: 20px;
  font-weight: 700;
  color: var(--an-text, #1e293b);
}
#moduleReportLoyalty .ly-mini__lbl {
  font-size: 11px;
  color: var(--an-text-muted, #64748b);
  margin-top: 2px;
}
#moduleReportLoyalty .ly-tier-dot {
  display: inline-block;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  margin-right: 6px;
  vertical-align: baseline;
  background: #cbd5e1;
  flex: 0 0 auto;
}
.waitry-dark-theme #moduleReportLoyalty .ly-tier-dot {
  background: var(--an-border-strong, #475569);
}
#moduleReportLoyalty .ly-path {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border-radius: 8px;
  font-size: 12.5px;
  color: var(--an-text, #334155);
}
#moduleReportLoyalty .ly-path:nth-child(odd) {
  background: var(--an-surface2, rgba(0, 0, 0, 0.03));
}
#moduleReportLoyalty .ly-path__tier {
  display: inline-flex;
  align-items: center;
  font-weight: 600;
}
#moduleReportLoyalty .ly-path__arrow {
  display: inline-flex;
}
#moduleReportLoyalty .ly-path__arrow md-icon {
  font-size: 15px;
  min-height: 15px;
  min-width: 15px;
  height: 15px;
  width: 15px;
}
#moduleReportLoyalty .ly-path__arrow--up md-icon {
  color: #10b981;
}
#moduleReportLoyalty .ly-path__arrow--down md-icon {
  color: #ec4e36;
}
#moduleReportLoyalty .ly-path__count {
  font-weight: 700;
  font-size: 13px;
  color: var(--an-text, #1e293b);
}
#moduleReportLoyalty .ly-month-row {
  display: grid;
  grid-template-columns: 70px 1fr 170px;
  align-items: center;
  gap: 10px;
  padding: 6px 0;
}
#moduleReportLoyalty .ly-month-row__label {
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text-muted, #64748b);
}
#moduleReportLoyalty .ly-month-row__bars {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
#moduleReportLoyalty .ly-month-row__meta {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  font-size: 12px;
  font-weight: 600;
}
@media (max-width: 600px) {
  #moduleReportLoyalty .ly-month-row {
    grid-template-columns: 56px 1fr;
  }
  #moduleReportLoyalty .ly-month-row__meta {
    grid-column: 1/-1;
    justify-content: flex-start;
  }
}
#moduleReportLoyalty .ly-pos {
  color: #0f766e;
}
.waitry-dark-theme #moduleReportLoyalty .ly-pos {
  color: var(--an-emerald, #10b981);
}
#moduleReportLoyalty .ly-neg {
  color: #b91c1c;
}
.waitry-dark-theme #moduleReportLoyalty .ly-neg {
  color: var(--an-rose, #ec4e36);
}
#moduleReportLoyalty .ly-pools {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 12px;
  margin-bottom: 10px;
}
#moduleReportLoyalty .ly-pool {
  background: var(--an-surface, #fff);
  border: 1px solid var(--an-border, rgba(0, 0, 0, 0.08));
  border-radius: 14px;
  padding: 16px;
}
#moduleReportLoyalty .ly-pool__head {
  display: flex;
  align-items: center;
  margin-bottom: 8px;
}
#moduleReportLoyalty .ly-pool__name {
  font-size: 12.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--an-text-muted, #64748b);
}
#moduleReportLoyalty .ly-pool__balance {
  font-size: 26px;
  font-weight: 700;
  color: var(--an-text, #1e293b);
  line-height: 1.1;
}
#moduleReportLoyalty .ly-pool__balance-lbl {
  font-size: 11px;
  color: var(--an-text-muted, #94a3b8);
  margin-bottom: 10px;
}
#moduleReportLoyalty .ly-pool__flow {
  display: flex;
  gap: 14px;
  margin-bottom: 10px;
}
#moduleReportLoyalty .ly-pool__flow-item {
  display: flex;
  flex-direction: column;
  font-size: 13px;
  font-weight: 700;
}
#moduleReportLoyalty .ly-pool__flow-lbl {
  font-size: 10.5px;
  font-weight: 400;
  color: var(--an-text-muted, #94a3b8);
}
#moduleReportLoyalty .ly-pool__spark {
  width: 100%;
  height: 64px;
  display: block;
}
#moduleReportLoyalty .ly-avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: rgba(108, 99, 255, 0.14);
  color: #6c63ff;
  font-size: 10px;
  font-weight: 700;
  margin-right: 6px;
  flex: 0 0 auto;
}
#moduleReportLoyalty .ly-tier-chip {
  font-size: 10px;
  border: 1px solid #cbd5e1;
  border-radius: 999px;
  padding: 1px 7px;
  margin-left: 6px;
  color: var(--an-text-muted, #64748b);
  white-space: nowrap;
}
#moduleReportLoyalty .ly-footnote {
  margin: 10px 0 0;
  font-size: 11px;
  color: var(--an-text-muted, #94a3b8);
}

#moduleReportProfitability .pf-kpi-sub {
  font-size: 12px;
  font-weight: 600;
  opacity: 0.65;
  margin-left: 2px;
}
#moduleReportProfitability .pf-badge {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
  white-space: nowrap;
}
#moduleReportProfitability .pf-badge.pf-badge--good {
  background: rgba(16, 185, 129, 0.14);
  color: #10B981;
}
#moduleReportProfitability .pf-badge.pf-badge--mid {
  background: rgba(245, 158, 11, 0.16);
  color: #B45309;
}
#moduleReportProfitability .pf-badge.pf-badge--low {
  background: rgba(236, 78, 54, 0.14);
  color: #EC4E36;
}
#moduleReportProfitability .pf-badge.pf-badge--na {
  background: var(--an-surface2, rgba(120, 120, 140, 0.12));
  color: var(--an-text-muted, #8A8FA3);
}
#moduleReportProfitability .pf-gauge {
  display: block;
}
#moduleReportProfitability .pf-gauge .pf-gauge__track {
  fill: none;
  stroke: var(--an-surface2, rgba(120, 120, 140, 0.16));
  stroke-width: 10;
  stroke-linecap: round;
}
#moduleReportProfitability .pf-gauge .pf-gauge__band {
  fill: none;
  stroke: rgba(16, 185, 129, 0.45);
  stroke-width: 10;
}
#moduleReportProfitability .pf-gauge .pf-gauge__value {
  fill: none;
  stroke: #6C63FF;
  stroke-width: 4;
  stroke-linecap: round;
}
#moduleReportProfitability .pf-gauge .pf-gauge__needle {
  stroke: var(--an-text, #2B2B3C);
  stroke-width: 2;
  stroke-linecap: round;
}
#moduleReportProfitability .pf-gauge .pf-gauge__hub {
  fill: var(--an-text, #2B2B3C);
}
#moduleReportProfitability .pf-gauge__reading {
  margin-top: -8px;
  text-align: center;
}
#moduleReportProfitability .pf-gauge__reading .pf-badge {
  font-size: 16px;
  padding: 3px 14px;
}
#moduleReportProfitability .pf-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 10px;
  justify-content: center;
}
#moduleReportProfitability .pf-legend-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  color: var(--an-text-muted, #8A8FA3);
}
#moduleReportProfitability .pf-legend-swatch {
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 3px;
}
#moduleReportProfitability .pf-legend-swatch.pf-legend-swatch--band {
  background: rgba(16, 185, 129, 0.45);
}
#moduleReportProfitability .pf-legend-note {
  margin: 6px 0 0;
  font-size: 12px;
  color: var(--an-text-muted, #8A8FA3);
  display: flex;
  align-items: center;
  gap: 6px;
  text-align: center;
}
#moduleReportProfitability .pf-axis {
  display: flex;
  justify-content: space-between;
  font-size: 11px;
  color: var(--an-text-muted, #8A8FA3);
  margin-top: 2px;
}
#moduleReportProfitability .pf-hint {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  border-radius: 10px;
  background: rgba(56, 189, 248, 0.1);
  color: var(--an-text, #2B2B3C);
  font-size: 13px;
}
#moduleReportProfitability .pf-hint md-icon {
  color: #38BDF8;
}
#moduleReportProfitability .pf-trend {
  position: relative;
  display: flex;
  align-items: flex-end;
  gap: 8px;
  height: 240px;
  padding-bottom: 22px;
}
#moduleReportProfitability .pf-trend .pf-trend__band {
  position: absolute;
  left: 0;
  right: 0;
  background: repeating-linear-gradient(-45deg, rgba(16, 185, 129, 0.1), rgba(16, 185, 129, 0.1) 6px, rgba(16, 185, 129, 0.18) 6px, rgba(16, 185, 129, 0.18) 12px);
  border-top: 1px dashed rgba(16, 185, 129, 0.7);
  border-bottom: 1px dashed rgba(16, 185, 129, 0.7);
  margin-bottom: 22px;
  pointer-events: none;
  z-index: 1;
}
#moduleReportProfitability .pf-trend .pf-trend__col {
  position: relative;
  z-index: 2;
  flex: 1 1 0;
  min-width: 0;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
#moduleReportProfitability .pf-trend .pf-trend__stack {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 100%;
}
#moduleReportProfitability .pf-trend .pf-trend__seg {
  width: 100%;
  border-radius: 3px 3px 0 0;
}
#moduleReportProfitability .pf-trend .pf-trend__seg.pf-trend__seg--cogs {
  background: #F59E0B;
  border-radius: 0;
}
#moduleReportProfitability .pf-trend .pf-trend__seg.pf-trend__seg--labor {
  background: #38BDF8;
}
#moduleReportProfitability .pf-trend .pf-trend__seg:last-child {
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
}
#moduleReportProfitability .pf-trend .pf-trend__lbl {
  position: absolute;
  bottom: -22px;
  left: 0;
  right: 0;
  text-align: center;
  font-size: 10px;
  color: var(--an-text-muted, #8A8FA3);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#moduleReportProfitability .pf-waterfall {
  display: flex;
  align-items: stretch;
  gap: 10px;
  padding: 4px 2px 0;
}
#moduleReportProfitability .pf-waterfall .pf-waterfall__col {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: stretch;
}
#moduleReportProfitability .pf-waterfall .pf-waterfall__meta {
  text-align: center;
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 6px;
  color: var(--an-text, #2B2B3C);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#moduleReportProfitability .pf-waterfall .pf-waterfall__track {
  position: relative;
  height: 220px;
  background: repeating-linear-gradient(to top, transparent, transparent 54px, var(--an-surface2, rgba(120, 120, 140, 0.14)) 54px, var(--an-surface2, rgba(120, 120, 140, 0.14)) 55px);
  border-radius: 6px;
}
#moduleReportProfitability .pf-waterfall .pf-waterfall__bar {
  position: absolute;
  left: 12%;
  right: 12%;
  border-radius: 4px;
  min-height: 2px;
  transition: height 0.35s ease, bottom 0.35s ease;
}
#moduleReportProfitability .pf-waterfall .pf-waterfall__lbl {
  margin-top: 8px;
  text-align: center;
  font-size: 11px;
  color: var(--an-text-muted, #8A8FA3);
}
#moduleReportProfitability .pf-unlock {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px 20px;
  border-radius: 14px;
  border: 1px dashed var(--an-border, rgba(120, 120, 140, 0.35));
  background: var(--an-surface, rgba(120, 120, 140, 0.06));
}
#moduleReportProfitability .pf-unlock > md-icon {
  font-size: 30px;
  width: 30px;
  height: 30px;
  color: #6C63FF;
  flex: 0 0 auto;
}
#moduleReportProfitability .pf-unlock .pf-unlock__txt {
  flex: 1 1 auto;
  min-width: 0;
}
#moduleReportProfitability .pf-unlock .pf-unlock__txt strong {
  display: block;
  font-size: 14px;
  color: var(--an-text, #2B2B3C);
}
#moduleReportProfitability .pf-unlock .pf-unlock__txt p {
  margin: 3px 0 0;
  font-size: 12.5px;
  color: var(--an-text-muted, #8A8FA3);
}
#moduleReportProfitability .pf-unlock .md-button {
  flex: 0 0 auto;
}
#moduleReportProfitability .pf-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
#moduleReportProfitability .pf-chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 2px 6px 2px 4px;
  border-radius: 999px;
  background: var(--an-surface2, rgba(120, 120, 140, 0.1));
}
#moduleReportProfitability .pf-chip .pf-chip__code {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #6C63FF;
  color: #fff;
  font-size: 9px;
  font-weight: 700;
}
#moduleReportProfitability .pf-item-name {
  font-weight: 600;
  max-width: 260px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media (max-width: 780px) {
  #moduleReportProfitability .pf-waterfall {
    gap: 5px;
  }
  #moduleReportProfitability .pf-waterfall .pf-waterfall__meta {
    font-size: 10px;
  }
  #moduleReportProfitability .pf-waterfall .pf-waterfall__lbl {
    font-size: 9px;
  }
  #moduleReportProfitability .pf-trend {
    gap: 4px;
  }
  #moduleReportProfitability .pf-unlock {
    flex-direction: column;
    text-align: center;
  }
}

#moduleReportBookings .bk-kpis {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 12px;
  margin-bottom: 4px;
}
#moduleReportBookings .bk-kpi {
  background: var(--an-surface, #fff);
  border: 1px solid var(--an-border, #e5e3df);
  border-radius: var(--an-radius, 14px);
  padding: 16px 18px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 4px 16px -2px rgba(0, 0, 0, 0.05);
}
#moduleReportBookings .bk-kpi::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: var(--an-violet, #6C63FF);
}
#moduleReportBookings .bk-kpi--green::before {
  background: var(--an-emerald, #10B981);
}
#moduleReportBookings .bk-kpi--amber::before {
  background: var(--an-amber, #F59E0B);
}
#moduleReportBookings .bk-kpi--sky::before {
  background: var(--an-sky, #38BDF8);
}
#moduleReportBookings .bk-kpi--rose::before {
  background: var(--an-rose, #EC4E36);
}
#moduleReportBookings .bk-kpi--indigo::before {
  background: var(--an-indigo, #818CF8);
}
#moduleReportBookings .bk-kpi__val {
  font-size: 27px;
  font-weight: 800;
  letter-spacing: -0.6px;
  line-height: 1;
  color: var(--an-text, #2b2a28);
}
#moduleReportBookings .bk-kpi__lbl {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted, #8a8781);
  margin-top: 6px;
  font-weight: 600;
}
#moduleReportBookings .bk-kpi__delta {
  font-size: 11px;
  font-weight: 700;
  margin-top: 6px;
  display: inline-flex;
  align-items: center;
  gap: 3px;
}
#moduleReportBookings .bk-kpi__delta--up {
  color: var(--an-emerald, #10B981);
}
#moduleReportBookings .bk-kpi__delta--down {
  color: var(--an-rose, #EC4E36);
}
#moduleReportBookings .bk-kpi--loss {
  background: rgba(236, 78, 54, 0.07);
  border-color: rgba(236, 78, 54, 0.35);
}
#moduleReportBookings .bk-kpi--loss::before {
  background: var(--an-rose, #EC4E36);
}
#moduleReportBookings .bk-kpi--loss .bk-kpi__val {
  color: var(--an-rose, #EC4E36);
}
#moduleReportBookings .bk-kpi--loss .bk-kpi__lbl {
  color: var(--an-rose, #EC4E36);
  opacity: 0.8;
}
#moduleReportBookings .bk-hero {
  margin: 40px auto;
  max-width: 460px;
  text-align: center;
  padding: 48px 32px;
  background: var(--an-surface, #fff);
  border: 1px dashed var(--an-border, #e5e3df);
  border-radius: var(--an-radius, 14px);
}
#moduleReportBookings .bk-hero md-icon {
  font-size: 44px;
  width: 44px;
  height: 44px;
  color: var(--an-violet, #6C63FF);
}
#moduleReportBookings .bk-hero h3 {
  margin: 14px 0 6px;
  font-size: 18px;
  font-weight: 800;
  color: var(--an-text, #2b2a28);
}
#moduleReportBookings .bk-hero p {
  margin: 0;
  font-size: 13px;
  line-height: 1.5;
  color: var(--an-text-muted, #8a8781);
}
#moduleReportBookings .bk-heatmap {
  display: grid;
  grid-template-columns: 36px repeat(24, 1fr);
  gap: 3px;
}
#moduleReportBookings .bk-heatmap__lbl {
  font-size: 10px;
  color: var(--an-text-muted, #8a8781);
  display: flex;
  align-items: center;
}
#moduleReportBookings .bk-heatmap__cell {
  aspect-ratio: 1;
  border-radius: 3px;
  background: var(--an-surface2, #f4f2ee);
  transition: transform 0.1s;
}
#moduleReportBookings .bk-heatmap__cell:hover {
  transform: scale(1.25);
}
#moduleReportBookings .bk-heatmap--hours {
  margin-top: 4px;
}
#moduleReportBookings .bk-heatmap__hour {
  font-size: 9px;
  color: var(--an-text-muted, #8a8781);
  text-align: left;
}
#moduleReportBookings .bk-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}
#moduleReportBookings .bk-table th {
  text-align: right;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted, #8a8781);
  padding: 8px 10px;
  border-bottom: 1px solid var(--an-border, #e5e3df);
  white-space: nowrap;
}
#moduleReportBookings .bk-table th:first-child, #moduleReportBookings .bk-table td:first-child {
  text-align: left;
}
#moduleReportBookings .bk-table td {
  padding: 10px;
  border-bottom: 1px solid var(--an-border, #e5e3df);
  color: var(--an-text, #2b2a28);
  text-align: right;
}
#moduleReportBookings .bk-table tr:last-child td {
  border-bottom: none;
}
#moduleReportBookings .bk-table tr:hover td {
  background: var(--an-surface2, #f4f2ee);
}
#moduleReportBookings .bk-table-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
#moduleReportBookings .bk-neg {
  color: var(--an-rose, #EC4E36);
  font-weight: 700;
}
#moduleReportBookings .bk-customer {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
#moduleReportBookings .bk-customer__name {
  font-weight: 600;
}
#moduleReportBookings .bk-customer__mail {
  font-size: 11px;
  color: var(--an-text-muted, #8a8781);
}
#moduleReportBookings .bk-hist {
  display: flex;
  align-items: flex-end;
  gap: 14px;
  padding: 8px 4px 0;
}
#moduleReportBookings .bk-hist__col {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  min-width: 0;
}
#moduleReportBookings .bk-hist__count {
  font-size: 12px;
  font-weight: 800;
  color: var(--an-text, #2b2a28);
}
#moduleReportBookings .bk-hist__track {
  width: 100%;
  max-width: 72px;
  height: 160px;
  display: flex;
  align-items: flex-end;
}
#moduleReportBookings .bk-hist__bar {
  width: 100%;
  border-radius: 8px 8px 3px 3px;
  min-height: 3px;
  background: linear-gradient(180deg, var(--an-indigo, #818CF8), var(--an-violet, #6C63FF));
}
#moduleReportBookings .bk-hist__lbl {
  font-size: 10.5px;
  font-weight: 600;
  color: var(--an-text-muted, #8a8781);
  text-align: center;
  white-space: nowrap;
}
#moduleReportBookings .bk-hist__badge {
  font-size: 10.5px;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 999px;
  color: var(--an-emerald, #10B981);
  background: rgba(16, 185, 129, 0.12);
}
#moduleReportBookings .bk-hist__badge--hot {
  color: var(--an-rose, #EC4E36);
  background: rgba(236, 78, 54, 0.12);
}
#moduleReportBookings .bk-footnote {
  margin: 12px 2px 0;
  font-size: 11.5px;
  color: var(--an-text-muted, #8a8781);
}
#moduleReportBookings .bk-axis-hint {
  font-size: 11px;
  font-weight: 600;
  color: var(--an-text-muted, #8a8781);
  margin-bottom: 6px;
}
#moduleReportBookings .bk-legend {
  display: flex;
  gap: 16px;
  margin-bottom: 10px;
}
#moduleReportBookings .bk-legend__item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 11.5px;
  font-weight: 600;
  color: var(--an-text-muted, #8a8781);
}
#moduleReportBookings .bk-legend__dot {
  width: 9px;
  height: 9px;
  border-radius: 3px;
  display: inline-block;
}
#moduleReportBookings .bk-stack-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  padding-bottom: 4px;
}
#moduleReportBookings .bk-stack {
  display: flex;
  align-items: flex-end;
  gap: 6px;
  min-width: 100%;
}
#moduleReportBookings .bk-stack__col {
  flex: 1;
  min-width: 26px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
}
#moduleReportBookings .bk-stack__track {
  width: 100%;
  max-width: 44px;
  height: 170px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  border-radius: 6px;
  background: var(--an-surface2, #f4f2ee);
  overflow: hidden;
}
#moduleReportBookings .bk-stack__seg--booked {
  background: var(--an-violet, #6C63FF);
}
#moduleReportBookings .bk-stack__seg--walkin {
  background: var(--an-emerald, #10B981);
}
#moduleReportBookings .bk-stack__lbl {
  font-size: 9px;
  color: var(--an-text-muted, #8a8781);
  max-width: 54px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
#moduleReportBookings .bk-hours {
  display: flex;
  align-items: flex-end;
  gap: 4px;
}
#moduleReportBookings .bk-hours__col {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}
#moduleReportBookings .bk-hours__track {
  width: 100%;
  max-width: 26px;
  height: 110px;
  display: flex;
  align-items: flex-end;
}
#moduleReportBookings .bk-hours__bar {
  width: 100%;
  border-radius: 4px 4px 2px 2px;
  background: var(--an-amber, #F59E0B);
  opacity: 0.55;
}
#moduleReportBookings .bk-hours__bar--top {
  opacity: 1;
  background: linear-gradient(180deg, var(--an-rose, #EC4E36), var(--an-amber, #F59E0B));
}
#moduleReportBookings .bk-hours__lbl {
  font-size: 9px;
  color: var(--an-text-muted, #8a8781);
  min-height: 12px;
}
@media (max-width: 960px) {
  #moduleReportBookings .rpt-layout {
    flex-direction: column;
  }
  #moduleReportBookings .rpt-sidenav {
    width: 100%;
    flex-direction: row;
    min-height: 0;
    position: static;
    border-right: none;
    border-bottom: 1px solid var(--an-border, #e5e3df);
    overflow-x: auto;
    padding: 8px 10px;
    gap: 4px;
  }
  #moduleReportBookings .rpt-sidenav__section {
    display: none;
  }
  #moduleReportBookings .rpt-sidenav__pill {
    white-space: nowrap;
  }
  #moduleReportBookings .bk-kpis {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 600px) {
  #moduleReportBookings .rpt-sidenav__pill-text {
    display: none;
  }
  #moduleReportBookings .bk-heatmap {
    grid-template-columns: 30px repeat(24, 1fr);
    gap: 2px;
  }
  #moduleReportBookings .bk-hist {
    gap: 8px;
  }
  #moduleReportBookings .bk-hist__lbl {
    white-space: normal;
  }
}

#moduleReportPayments .py-kpis {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px;
  margin-bottom: 16px;
}
#moduleReportPayments .py-kpi {
  position: relative;
  background: var(--an-surface, var(--card-bg, #fff));
  border: 1px solid var(--an-border, rgba(120, 120, 120, 0.18));
  border-radius: 12px;
  padding: 14px 16px 12px 18px;
  overflow: hidden;
}
#moduleReportPayments .py-kpi::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  background: var(--an-violet, #6C63FF);
}
#moduleReportPayments .py-kpi--green::before {
  background: var(--an-emerald, #10B981);
}
#moduleReportPayments .py-kpi--amber::before {
  background: var(--an-amber, #F59E0B);
}
#moduleReportPayments .py-kpi--sky::before {
  background: var(--an-sky, #38BDF8);
}
#moduleReportPayments .py-kpi--rose::before {
  background: var(--an-rose, #EC4E36);
}
#moduleReportPayments .py-kpi__val {
  font-size: 22px;
  font-weight: 700;
  line-height: 1.2;
  color: var(--an-text, inherit);
}
#moduleReportPayments .py-kpi__lbl {
  font-size: 12px;
  color: var(--an-text-muted, rgba(120, 120, 120, 0.9));
  margin-top: 2px;
}
#moduleReportPayments .py-kpi__delta {
  display: inline-block;
  margin-top: 6px;
  font-size: 11px;
  font-weight: 600;
  padding: 1px 8px;
  border-radius: 10px;
}
#moduleReportPayments .py-kpi__delta--up {
  color: var(--an-emerald, #10B981);
  background: rgba(16, 185, 129, 0.12);
}
#moduleReportPayments .py-kpi__delta--down {
  color: var(--an-rose, #EC4E36);
  background: rgba(236, 78, 54, 0.12);
}
#moduleReportPayments .py-gap {
  display: inline-flex;
  align-items: center;
  padding: 1px 6px;
  border-radius: 999px;
  font-weight: 600;
  font-size: 11px;
  background: var(--an-surface2, rgba(120, 120, 120, 0.12));
  color: var(--an-text-muted, rgba(120, 120, 120, 0.9));
}
#moduleReportPayments .py-gap--up {
  background: rgba(16, 185, 129, 0.14);
  color: var(--an-emerald, #10B981);
}
#moduleReportPayments .py-gap--down {
  background: rgba(236, 78, 54, 0.14);
  color: var(--an-rose, #EC4E36);
}
#moduleReportPayments .py-hint {
  display: flex;
  align-items: flex-start;
  gap: 6px;
  margin: 0 0 8px;
  font-size: 12px;
  line-height: 1.45;
  color: var(--an-text-muted, #64748B);
}
#moduleReportPayments .py-hint md-icon {
  font-size: 15px;
  min-width: 15px;
  height: 15px;
  color: inherit;
}
#moduleReportPayments .py-heatmap {
  display: grid;
  grid-template-columns: 36px repeat(24, 1fr);
  gap: 3px;
}
#moduleReportPayments .py-heatmap__lbl {
  font-size: 10px;
  color: var(--an-text-muted, rgba(120, 120, 120, 0.9));
  display: flex;
  align-items: center;
  gap: 3px;
  white-space: nowrap;
  overflow: hidden;
}
#moduleReportPayments .py-heatmap__lbl em {
  font-style: normal;
  font-size: 8px;
  opacity: 0.75;
}
#moduleReportPayments .py-heatmap__cell {
  aspect-ratio: 1/1;
  min-height: 10px;
  border-radius: 3px;
}
#moduleReportPayments .py-heatmap__hours {
  display: grid;
  grid-template-columns: 36px repeat(24, 1fr);
  gap: 3px;
  margin-top: 4px;
}
#moduleReportPayments .py-heatmap__hour {
  font-size: 8px;
  color: var(--an-text-muted, rgba(120, 120, 120, 0.9));
  text-align: center;
}
#moduleReportPayments .py-hourstrip {
  display: grid;
  grid-template-columns: 36px repeat(24, 1fr);
  gap: 3px;
  align-items: end;
  height: 46px;
  margin-top: 12px;
}
#moduleReportPayments .py-hourstrip__lbl {
  font-size: 9px;
  color: var(--an-text-muted, rgba(120, 120, 120, 0.9));
  align-self: center;
  line-height: 1.1;
}
#moduleReportPayments .py-hourstrip__col {
  height: 100%;
  display: flex;
  align-items: flex-end;
  background: var(--an-surface2, rgba(120, 120, 120, 0.08));
  border-radius: 2px;
}
#moduleReportPayments .py-hourstrip__fill {
  width: 100%;
  border-radius: 2px;
  background: var(--an-emerald, #10B981);
  opacity: 0.85;
}
#moduleReportPayments .py-badge {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  padding: 2px 10px;
  border-radius: 10px;
}
#moduleReportPayments .py-badge--ok {
  color: var(--an-emerald, #10B981);
  background: rgba(16, 185, 129, 0.12);
}
#moduleReportPayments .py-badge--warn {
  color: var(--an-amber, #F59E0B);
  background: rgba(245, 158, 11, 0.14);
}
#moduleReportPayments .py-badge--bad {
  color: var(--an-rose, #EC4E36);
  background: rgba(236, 78, 54, 0.12);
}
#moduleReportPayments .py-table-scroll {
  overflow-x: auto;
}
#moduleReportPayments .py-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}
#moduleReportPayments .py-table th,
#moduleReportPayments .py-table td {
  padding: 8px 10px;
  text-align: left;
  border-bottom: 1px solid var(--an-border, rgba(120, 120, 120, 0.15));
  white-space: nowrap;
}
#moduleReportPayments .py-table th {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--an-text-muted, rgba(120, 120, 120, 0.9));
  font-weight: 600;
}
#moduleReportPayments .py-num {
  text-align: right !important;
}
#moduleReportPayments .py-source-note {
  font-size: 11.5px;
  color: var(--an-text-muted, rgba(120, 120, 120, 0.9));
  margin: -6px 0 10px;
}
@media (max-width: 960px) {
  #moduleReportPayments .py-kpis {
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  }
  #moduleReportPayments .py-heatmap__lbl {
    font-size: 9px;
  }
}
#moduleReportPayments .mkt-card-inner .table-card-container {
  flex: none;
  height: auto;
  min-height: 0;
  overflow: visible;
}

#moduleReportBenchmarks .bm-page {
  padding: 16px;
}
#moduleReportBenchmarks .bm-intro {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  margin-bottom: 4px;
}
#moduleReportBenchmarks .bm-intro__text h3 {
  margin: 0 0 2px;
  font-size: 16px;
  font-weight: 700;
  color: var(--an-text, #111827);
}
#moduleReportBenchmarks .bm-intro__text p {
  margin: 0;
  font-size: 12.5px;
  color: var(--an-text-muted, #6B7280);
}
#moduleReportBenchmarks .bm-privacy {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  max-width: 420px;
  border-radius: var(--an-radius-sm, 8px);
  background: var(--an-violet-soft, rgba(108, 99, 255, 0.08));
  border: 1px solid var(--an-border-light, rgba(0, 0, 0, 0.05));
  font-size: 11.5px;
  line-height: 1.35;
  color: var(--an-text-muted, #6B7280);
}
#moduleReportBenchmarks .bm-privacy md-icon {
  color: var(--an-violet, #6C63FF);
  min-width: 18px;
  font-size: 18px;
}
#moduleReportBenchmarks .bm-card .mkt-card-header {
  position: relative;
}
#moduleReportBenchmarks .bm-pos {
  margin-left: auto;
  padding: 2px 10px;
  border-radius: var(--an-radius-pill, 9999px);
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}
#moduleReportBenchmarks .bm-pos--good {
  background: var(--an-emerald-soft, rgba(16, 185, 129, 0.1));
  color: var(--an-emerald, #10B981);
}
#moduleReportBenchmarks .bm-pos--warn {
  background: var(--an-amber-soft, rgba(245, 158, 11, 0.1));
  color: var(--an-amber, #F59E0B);
}
#moduleReportBenchmarks .bm-pos--neutral {
  background: var(--an-surface2, #F3F4F6);
  color: var(--an-text-muted, #6B7280);
}
#moduleReportBenchmarks .bm-values {
  display: flex;
  align-items: baseline;
  gap: 28px;
  margin: 4px 0 14px;
}
#moduleReportBenchmarks .bm-values__val {
  font-size: 26px;
  font-weight: 800;
  line-height: 1.1;
  color: var(--an-text, #111827);
}
#moduleReportBenchmarks .bm-values__median .bm-values__val {
  font-size: 17px;
  font-weight: 700;
  color: var(--an-text-muted, #6B7280);
}
#moduleReportBenchmarks .bm-values__lbl {
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--an-text-faint, #9CA3AF);
}
#moduleReportBenchmarks .bm-band {
  margin: 6px 0 12px;
}
#moduleReportBenchmarks .bm-band__track {
  position: relative;
  height: 14px;
  border-radius: var(--an-radius-pill, 9999px);
  background: var(--an-surface2, #F3F4F6);
  overflow: visible;
}
#moduleReportBenchmarks .bm-band__range {
  position: absolute;
  top: 0;
  bottom: 0;
  border-radius: var(--an-radius-pill, 9999px);
  background: var(--an-violet-soft, rgba(108, 99, 255, 0.14));
  border: 1px solid rgba(108, 99, 255, 0.28);
}
#moduleReportBenchmarks .bm-band__tick {
  position: absolute;
  top: -3px;
  bottom: -3px;
  width: 2px;
  margin-left: -1px;
  border-radius: 1px;
  background: var(--an-violet, #6C63FF);
}
#moduleReportBenchmarks .bm-band__you {
  position: absolute;
  top: 50%;
  width: 16px;
  height: 16px;
  margin: -8px 0 0 -8px;
  border-radius: 50%;
  border: 3px solid var(--an-surface, #fff);
  box-shadow: var(--an-shadow-sm, 0 1px 4px rgba(0, 0, 0, 0.15));
  background: var(--an-text-muted, #6B7280);
  z-index: 1;
}
#moduleReportBenchmarks .bm-band__you--good {
  background: var(--an-emerald, #10B981);
}
#moduleReportBenchmarks .bm-band__you--warn {
  background: var(--an-amber, #F59E0B);
}
#moduleReportBenchmarks .bm-band__you--neutral {
  background: var(--an-sky, #38BDF8);
}
#moduleReportBenchmarks .bm-band__scale {
  display: flex;
  justify-content: space-between;
  margin-top: 6px;
  font-size: 11px;
  color: var(--an-text-faint, #9CA3AF);
}
#moduleReportBenchmarks .bm-band__scale b {
  font-weight: 600;
  color: var(--an-text-muted, #6B7280);
}
#moduleReportBenchmarks .bm-band__scale em {
  font-style: normal;
  margin-left: 2px;
}
#moduleReportBenchmarks .bm-caption {
  margin: 0 0 4px;
  font-size: 13.5px;
  font-weight: 600;
  line-height: 1.45;
  color: var(--an-text, #111827);
}
#moduleReportBenchmarks .bm-hint {
  margin: 0 0 8px;
  font-size: 11.5px;
  line-height: 1.4;
  color: var(--an-text-faint, #9CA3AF);
}
#moduleReportBenchmarks .bm-empty {
  padding: 22px 12px;
  text-align: center;
}
#moduleReportBenchmarks .bm-empty__hint {
  display: block;
  margin-top: 4px;
  font-size: 11.5px;
  color: var(--an-text-faint, #9CA3AF);
}
#moduleReportBenchmarks .bm-foot {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 8px;
  padding-top: 10px;
  border-top: 1px dashed var(--an-border, rgba(0, 0, 0, 0.1));
  font-size: 11.5px;
  color: var(--an-text-muted, #6B7280);
}
#moduleReportBenchmarks .bm-foot md-icon {
  min-width: 16px;
  font-size: 16px;
  color: var(--an-text-faint, #9CA3AF);
}
@media (max-width: 960px) {
  #moduleReportBenchmarks .bm-intro {
    flex-direction: column;
  }
  #moduleReportBenchmarks .bm-privacy {
    max-width: none;
  }
}
@media (max-width: 600px) {
  #moduleReportBenchmarks .bm-page {
    padding: 10px;
  }
  #moduleReportBenchmarks .bm-values {
    gap: 18px;
  }
  #moduleReportBenchmarks .bm-values__val {
    font-size: 22px;
  }
}

#moduleReportMiseWeekly .section-kpi-sub--green {
  color: var(--an-emerald);
}
#moduleReportMiseWeekly .section-kpi-sub--rose {
  color: var(--an-rose);
}

#moduleReportSales .sales-date-hour-group {
  gap: 4px;
}
#moduleReportSales .sales-hour-input {
  max-width: 52px;
  margin-left: 2px;
}
#moduleReportSales .sales-hour-input input {
  font-size: 14px;
  text-align: center;
}

.wf-dz-dialog {
  width: min(1500px, 96vw);
  max-width: 96vw;
  height: min(950px, 92vh);
  max-height: 92vh;
  display: flex;
  flex-direction: column;
}
@media (max-width: 600px) {
  .wf-dz-dialog {
    width: 100vw;
    max-width: 100vw;
    height: 100vh;
    max-height: 100vh;
    border-radius: 0 !important;
  }
}

.wf-dz-content-wrap {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
  padding: 20px 24px !important;
  background: var(--an-bg);
}
.wf-dz-content-wrap .wf-dz {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
}
.wf-dz-content-wrap .wf-dz-panels {
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
}
.wf-dz-content-wrap .wf-dz-body {
  flex: 1;
  min-height: 0;
}
.wf-dz-content-wrap .wf-dz-mapwrap {
  min-height: 0;
}

.wf-dz-loading--full {
  flex: 1;
  min-height: 360px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.wf-dz-disabled-wrap {
  flex: 1;
  min-height: 360px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.wf-dz-disabled-wrap .wf-dz-empty-card {
  text-align: center;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  box-shadow: var(--an-shadow-xs);
  padding: 32px 40px;
  max-width: 380px;
}
.wf-dz-disabled-wrap .wf-dz-empty-card md-icon {
  font-size: 34px !important;
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  color: var(--an-primary);
}
.wf-dz-disabled-wrap .wf-dz-empty-card h3 {
  margin: 12px 0 6px;
  font-size: 15px;
  font-weight: 600;
  color: var(--an-text);
}
.wf-dz-disabled-wrap .wf-dz-empty-card p {
  margin: 0;
  font-size: 12.5px;
  color: var(--an-text-faint);
  line-height: 1.5;
}

.wf-dz .wf-dz-header {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 12px;
}
.wf-dz .wf-dz-header .wf-dz-switch {
  margin: 0;
  flex-shrink: 0;
  font-weight: 600;
}
.wf-dz .wf-dz-header .wf-dz-header-hint {
  flex: 1;
  font-size: 12.5px;
  color: var(--an-text-muted);
  line-height: 1.4;
}
.wf-dz .wf-dz-header .waitry-help {
  flex-shrink: 0;
}
.wf-dz .wf-dz-body {
  display: flex;
  gap: 16px;
  align-items: stretch;
}
@media (max-width: 959px) {
  .wf-dz .wf-dz-body {
    flex-direction: column;
  }
}
.wf-dz .wf-dz-panel {
  width: 320px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  min-height: 0;
}
@media (max-width: 959px) {
  .wf-dz .wf-dz-panel {
    width: 100%;
  }
}
.wf-dz .wf-dz-panel-head {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  margin-bottom: 10px;
}
.wf-dz .wf-dz-panel-head .wf-dz-add-btn {
  flex: 1;
  margin: 0;
}
.wf-dz .wf-dz-panel-head .wf-dz-add-btn md-icon {
  margin-right: 6px;
}
.wf-dz .wf-dz-panel-head .wf-dz-generator-wrap {
  display: flex;
}
.wf-dz .wf-dz-panel-head .wf-dz-import-btn {
  margin: 0;
  width: 34px;
  height: 34px;
  min-height: 34px;
  line-height: 34px;
  padding: 0;
  flex-shrink: 0;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
}
.wf-dz .wf-dz-panel-head .wf-dz-import-btn md-icon {
  color: var(--an-text) !important;
}
.wf-dz .wf-dz-panel-head .wf-dz-import-btn:hover:not([disabled]) {
  border-color: var(--an-border-strong);
}
.wf-dz .wf-dz-panel-head .wf-dz-import-btn[disabled] md-icon {
  opacity: 0.45;
}
.wf-dz .wf-dz-panel-head .wf-dz-import-input {
  display: none;
}
.wf-dz .wf-dz-panel-head .wf-dz-generate-btn {
  margin: 0;
  min-width: 0;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  text-transform: none;
  font-size: 12.5px;
  color: var(--an-text);
}
.wf-dz .wf-dz-panel-head .wf-dz-generate-btn md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  min-width: 15px;
  margin-right: 5px;
  color: var(--an-primary);
}
.wf-dz .wf-dz-panel-head .wf-dz-generate-btn.is-active {
  border-color: var(--an-primary);
  color: var(--an-primary);
  background: var(--an-primary-soft, rgba(99, 102, 241, 0.08));
}
.wf-dz .wf-dz-panel-head .wf-dz-generate-btn.is-active md-icon {
  color: var(--an-primary);
}
.wf-dz .wf-dz-panel-foot {
  margin-top: 10px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.wf-dz .wf-dz-panel-foot .wf-dz-foot-hint {
  display: flex;
  align-items: flex-start;
  gap: 6px;
  font-size: 11.5px;
  color: var(--an-text-faint);
  line-height: 1.4;
}
.wf-dz .wf-dz-panel-foot .wf-dz-foot-hint md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  min-width: 14px;
  margin-top: 1px;
  color: var(--an-text-faint);
}
.wf-dz .wf-dz-cards {
  overflow-y: auto;
  flex: 1;
  min-height: 160px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 2px;
}
.wf-dz .wf-dz-list-empty {
  padding: 18px 14px;
  border: 1px dashed var(--an-border-strong);
  border-radius: var(--an-radius);
  color: var(--an-text-faint);
  font-size: 12.5px;
  text-align: center;
  line-height: 1.5;
}
.wf-dz .wf-dz-card {
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  background: var(--an-surface);
  padding: 10px 12px;
  cursor: pointer;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.wf-dz .wf-dz-card:hover {
  border-color: var(--an-border-strong);
}
.wf-dz .wf-dz-card.is-selected {
  border-color: var(--an-primary);
  box-shadow: 0 0 0 1px var(--an-primary), var(--an-shadow-xs);
}
.wf-dz .wf-dz-card.no-shape {
  border-style: dashed;
}
.wf-dz .wf-dz-card-head {
  display: flex;
  align-items: center;
  gap: 8px;
}
.wf-dz .wf-dz-card-head .wf-dz-name-input {
  flex: 1;
  min-width: 0;
  border: 1px solid transparent;
  border-radius: var(--an-radius-sm);
  background: transparent;
  font-family: inherit;
  font-size: 13.5px;
  font-weight: 600;
  color: var(--an-text);
  padding: 3px 6px;
  transition: border-color 0.15s ease, background 0.15s ease;
}
.wf-dz .wf-dz-card-head .wf-dz-name-input::placeholder {
  color: var(--an-text);
  opacity: 0.9;
  font-weight: 600;
}
.wf-dz .wf-dz-card-head .wf-dz-name-input:hover {
  border-color: var(--an-border);
}
.wf-dz .wf-dz-card-head .wf-dz-name-input:focus {
  outline: none;
  border-color: var(--an-primary);
  background: var(--an-surface2);
}
.wf-dz .wf-dz-card-head .wf-dz-name-input:focus::placeholder {
  color: var(--an-placeholder);
  font-weight: 400;
}
.wf-dz .wf-dz-card-head .wf-dz-km-badge,
.wf-dz .wf-dz-card-head .wf-dz-precision-badge {
  color: var(--an-amber);
  background: color-mix(in srgb, var(--an-amber) 14%, transparent);
}
.wf-dz .wf-dz-card-head .wf-dz-dot {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  flex-shrink: 0;
  box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.35);
}
.wf-dz .wf-dz-card-head .wf-dz-card-title {
  font-weight: 600;
  font-size: 13.5px;
  color: var(--an-text);
  white-space: nowrap;
}
.wf-dz .wf-dz-card-head .wf-dz-card-meta {
  font-size: 11.5px;
  color: var(--an-text-faint);
  background: var(--an-surface2);
  border-radius: var(--an-radius-pill);
  padding: 2px 8px;
  white-space: nowrap;
}
.wf-dz .wf-dz-card-actions {
  display: flex;
  align-items: center;
  gap: 2px;
  margin-top: 2px;
}
.wf-dz .wf-dz-card-actions .wf-dz-mini-btn {
  margin: 0;
  width: 30px;
  height: 30px;
  min-height: 30px;
  line-height: 30px;
  padding: 0;
}
.wf-dz .wf-dz-card-actions .wf-dz-mini-btn md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
  min-width: 16px;
  min-height: 16px;
  line-height: 16px;
  color: var(--an-text-muted) !important;
}
.wf-dz .wf-dz-card-actions .wf-dz-mini-btn.wf-dz-mini-danger:hover md-icon {
  color: var(--an-rose) !important;
}
.wf-dz .wf-dz-card-fields {
  display: flex;
  flex-wrap: wrap;
  gap: 0 10px;
  margin-top: 4px;
}
.wf-dz .wf-dz-card-fields .wf-dz-field {
  flex: 1 1 40%;
  min-width: 110px;
  margin: 6px 0 0;
}
.wf-dz .wf-dz-card-fields .wf-dz-field input {
  min-width: 0;
}
.wf-dz .wf-dz-demand {
  margin-top: 10px;
  padding: 10px 10px 8px;
  border-radius: var(--an-radius-sm);
  background: var(--an-surface2, rgba(120, 120, 120, 0.07));
  border: 1px solid var(--an-border, rgba(120, 120, 120, 0.16));
}
.wf-dz .wf-dz-demand-head {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  color: var(--an-text-muted);
  margin-bottom: 8px;
}
.wf-dz .wf-dz-demand-head md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  min-width: 14px;
  color: inherit;
}
.wf-dz .wf-dz-demand-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(72px, 1fr));
  gap: 8px;
}
.wf-dz .wf-dz-demand-stat {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.wf-dz .wf-dz-demand-stat strong {
  font-size: 15px;
  font-weight: 800;
  line-height: 1.1;
  color: var(--an-text);
  /* Los importes largos no deben empujar la grilla */
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.wf-dz .wf-dz-demand-stat span {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.3px;
  color: var(--an-text-muted);
  line-height: 1.2;
}
.wf-dz .wf-dz-demand-hint {
  margin-top: 8px;
  font-size: 11px;
  line-height: 1.4;
  color: var(--an-text-muted);
}
.wf-dz .wf-dz-demand-loading,
.wf-dz .wf-dz-demand-error {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  color: var(--an-text-muted);
}
.wf-dz .wf-dz-demand-loading md-icon,
.wf-dz .wf-dz-demand-error md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  min-width: 15px;
  color: var(--an-amber);
}
.wf-dz .wf-dz-card-warn {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 8px;
  padding: 6px 8px;
  border-radius: var(--an-radius-sm);
  background: var(--an-rose-soft, rgba(244, 63, 94, 0.08));
  font-size: 12px;
  color: var(--an-rose);
}
.wf-dz .wf-dz-card-warn md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  min-width: 15px;
  color: var(--an-rose);
}
.wf-dz .wf-dz-card-warn .wf-dz-draw-now {
  margin: 0;
  min-height: 26px;
  line-height: 26px;
  font-size: 12px;
}
.wf-dz .wf-dz-mapwrap {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.wf-dz .wf-dz-toolbar {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 8px;
  flex-wrap: wrap;
}
.wf-dz .wf-dz-shapes {
  display: flex;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-pill);
  overflow: hidden;
  background: var(--an-surface);
}
.wf-dz .wf-dz-shape-btn {
  display: flex;
  align-items: center;
  gap: 6px;
  border: none;
  background: transparent;
  padding: 7px 14px;
  font-size: 12.5px;
  font-weight: 500;
  font-family: inherit;
  color: var(--an-text-muted);
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease;
}
.wf-dz .wf-dz-shape-btn + .wf-dz-shape-btn {
  border-left: 1px solid var(--an-border);
}
.wf-dz .wf-dz-shape-btn md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  min-width: 15px;
  min-height: 15px;
  line-height: 15px;
  color: inherit;
}
.wf-dz .wf-dz-shape-btn:hover:not(:disabled) {
  background: var(--an-surface2);
  color: var(--an-text);
}
.wf-dz .wf-dz-shape-btn.is-active {
  background: var(--an-primary);
  color: #fff;
}
.wf-dz .wf-dz-shape-btn:disabled {
  opacity: 0.45;
  cursor: default;
}
.wf-dz .wf-dz-search {
  width: 220px;
  padding: 7px 12px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-pill);
  background: var(--an-surface);
  color: var(--an-text);
  font-size: 12.5px;
  font-family: inherit;
  outline: none;
  transition: border-color 0.15s ease;
}
.wf-dz .wf-dz-search:focus {
  border-color: var(--an-primary);
}
.wf-dz .wf-dz-search::placeholder {
  color: var(--an-placeholder);
}
.wf-dz .wf-dz-locate {
  margin: 0;
  border: 1px solid var(--an-border);
}
.wf-dz .wf-dz-locate md-icon {
  color: var(--an-text) !important;
}
.wf-dz .wf-dz-locate:hover:not([disabled]) {
  border-color: var(--an-border-strong);
}
.wf-dz .wf-dz-undoredo {
  display: flex;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-pill);
  overflow: hidden;
  background: var(--an-surface);
}
.wf-dz .wf-dz-undoredo .wf-dz-shape-btn {
  padding: 7px 10px;
}
.wf-dz .wf-dz-test-chip {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 8px;
  padding: 8px 12px;
  border-radius: var(--an-radius-sm);
  font-size: 12.5px;
  border: 1px solid;
}
.wf-dz .wf-dz-test-chip md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  min-width: 15px;
}
.wf-dz .wf-dz-test-chip.is-in {
  color: var(--an-emerald);
  border-color: color-mix(in srgb, var(--an-emerald) 40%, transparent);
  background: color-mix(in srgb, var(--an-emerald) 10%, transparent);
}
.wf-dz .wf-dz-test-chip.is-in md-icon {
  color: var(--an-emerald);
}
.wf-dz .wf-dz-test-chip.is-out {
  color: var(--an-rose);
  border-color: color-mix(in srgb, var(--an-rose) 40%, transparent);
  background: var(--an-rose-soft, rgba(244, 63, 94, 0.08));
}
.wf-dz .wf-dz-test-chip.is-out md-icon {
  color: var(--an-rose);
}
.wf-dz .wf-dz-test-chip .wf-dz-hint-cancel {
  margin-left: auto;
}
.wf-dz .wf-dz-map {
  position: relative;
  flex: 1;
  min-height: 480px;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--an-border);
}
.wf-dz .wf-dz-map #mapdelivery {
  position: absolute;
  inset: 0;
}
.wf-dz .wf-dz-map-hint {
  position: absolute;
  top: 10px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 5;
  display: flex;
  align-items: center;
  gap: 8px;
  max-width: calc(100% - 24px);
  padding: 8px 14px;
  border-radius: var(--an-radius-pill);
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  box-shadow: var(--an-shadow-xs);
  font-size: 12.5px;
  color: var(--an-text);
}
.wf-dz .wf-dz-map-hint md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  min-width: 15px;
  color: var(--an-primary);
}
.wf-dz .wf-dz-map-hint .wf-dz-hint-cancel {
  border: none;
  background: transparent;
  color: var(--an-rose);
  font-size: 12px;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
  padding: 2px 6px;
  border-radius: var(--an-radius-sm);
  white-space: nowrap;
}
.wf-dz .wf-dz-map-hint .wf-dz-hint-cancel:hover {
  background: var(--an-rose-soft, rgba(244, 63, 94, 0.08));
}
.wf-dz .wf-dz-map-hint--edit {
  color: var(--an-text-muted);
}
.wf-dz .wf-dz-map-hint--edit md-icon {
  color: var(--an-text-muted);
}
.wf-dz .wf-dz-empty {
  position: absolute;
  inset: 0;
  z-index: 4;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}
.wf-dz .wf-dz-empty .wf-dz-empty-card {
  pointer-events: auto;
  text-align: center;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  box-shadow: var(--an-shadow-xs);
  padding: 26px 32px;
  max-width: 340px;
}
.wf-dz .wf-dz-empty .wf-dz-empty-card md-icon {
  font-size: 34px;
  width: 34px;
  height: 34px;
  min-width: 34px;
  min-height: 34px;
  line-height: 34px;
  color: var(--an-primary);
}
.wf-dz .wf-dz-empty .wf-dz-empty-card h3 {
  margin: 12px 0 6px;
  font-size: 15px;
  font-weight: 600;
  color: var(--an-text);
}
.wf-dz .wf-dz-empty .wf-dz-empty-card p {
  margin: 0 0 14px;
  font-size: 12.5px;
  color: var(--an-text-muted);
  line-height: 1.5;
}
.wf-dz .wf-dz-map-loading {
  position: absolute;
  inset: 0;
  z-index: 6;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
  justify-content: center;
  background: color-mix(in srgb, var(--an-surface) 78%, transparent);
}
.wf-dz .wf-dz-map-loading span {
  font-size: 12.5px;
  color: var(--an-text-muted);
}

.wf-dz-generate-menu {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  right: 0;
  z-index: 60;
  max-height: 70vh;
  overflow-y: auto;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  box-shadow: var(--an-shadow-lg, 0 12px 32px rgba(0, 0, 0, 0.28));
  padding: 6px 0;
}
.wf-dz-generate-menu .wf-dz-menu-header {
  padding: 8px 16px 2px;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--an-text-faint);
}
.wf-dz-generate-menu .wf-dz-menu-hint {
  padding: 2px 16px 8px;
  font-size: 11px;
  color: var(--an-text-faint);
  max-width: 240px;
  line-height: 1.4;
}
.wf-dz-generate-menu .wf-dz-menu-item md-button {
  display: block;
  width: calc(100% - 16px);
  margin: 2px 8px;
  text-align: left;
  text-transform: none;
  border-radius: var(--an-radius-sm);
  color: var(--an-text);
  font-size: 13px;
}
.wf-dz-generate-menu .wf-dz-menu-item md-button:hover:not([disabled]) {
  background: var(--an-surface2);
}
.wf-dz-generate-menu .wf-dz-menu-item md-button[disabled] {
  opacity: 0.45;
}
.wf-dz-generate-menu .wf-dz-menu-divider {
  height: 1px;
  margin: 6px 0;
  background: var(--an-border);
}
.wf-dz-generate-menu .wf-dz-postal-row {
  display: flex;
  gap: 6px;
  padding: 4px 16px 8px;
}
.wf-dz-generate-menu .wf-dz-postal-row input {
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
  color: var(--an-text);
  font-size: 12.5px;
  font-family: inherit;
  padding: 6px 8px;
  outline: none;
}
.wf-dz-generate-menu .wf-dz-postal-row input:focus {
  border-color: var(--an-primary);
}
.wf-dz-generate-menu .wf-dz-postal-row input::placeholder {
  color: var(--an-placeholder);
}
.wf-dz-generate-menu .wf-dz-postal-row .wf-dz-postal-country {
  width: 48px;
  text-transform: uppercase;
  text-align: center;
  flex-shrink: 0;
}
.wf-dz-generate-menu .wf-dz-postal-row .wf-dz-postal-codes {
  flex: 1;
  min-width: 0;
}
.wf-dz-generate-menu .wf-dz-ai-section {
  padding: 4px 16px 12px;
}
.wf-dz-generate-menu .wf-dz-ai-header {
  padding: 8px 0 2px;
  display: flex;
  align-items: center;
  gap: 6px;
}
.wf-dz-generate-menu .wf-dz-ai-header md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  min-width: 14px;
  color: var(--an-primary);
}
.wf-dz-generate-menu .wf-dz-ai-hint {
  font-size: 11.5px;
  color: var(--an-text-muted);
  line-height: 1.45;
  margin-bottom: 8px;
}
.wf-dz-generate-menu .wf-dz-ai-textarea {
  width: 100%;
  resize: vertical;
  min-height: 56px;
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-sm);
  background: var(--an-surface);
  color: var(--an-text);
  font-family: inherit;
  font-size: 12.5px;
  line-height: 1.4;
  padding: 8px 10px;
  outline: none;
  box-sizing: border-box;
}
.wf-dz-generate-menu .wf-dz-ai-textarea:focus {
  border-color: var(--an-primary);
}
.wf-dz-generate-menu .wf-dz-ai-textarea::placeholder {
  color: var(--an-placeholder);
}
.wf-dz-generate-menu .wf-dz-ai-textarea:disabled {
  opacity: 0.6;
}
.wf-dz-generate-menu .wf-dz-ai-examples {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 8px;
}
.wf-dz-generate-menu .wf-dz-ai-example-chip {
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius-pill);
  background: var(--an-surface2);
  color: var(--an-text-muted);
  font-family: inherit;
  font-size: 11px;
  line-height: 1.3;
  padding: 5px 10px;
  max-width: 100%;
  text-align: left;
  cursor: pointer;
  transition: border-color 0.15s ease, color 0.15s ease;
}
.wf-dz-generate-menu .wf-dz-ai-example-chip:hover:not(:disabled) {
  border-color: var(--an-primary);
  color: var(--an-text);
}
.wf-dz-generate-menu .wf-dz-ai-example-chip:disabled {
  opacity: 0.5;
  cursor: default;
}
.wf-dz-generate-menu .wf-dz-ai-note {
  display: flex;
  align-items: flex-start;
  gap: 6px;
  margin-top: 10px;
  padding: 8px 10px;
  border-radius: var(--an-radius-sm);
  background: var(--an-amber-soft, rgba(245, 158, 11, 0.1));
  font-size: 11.5px;
  color: var(--an-text);
  line-height: 1.45;
}
.wf-dz-generate-menu .wf-dz-ai-note md-icon {
  font-size: 14px;
  width: 14px;
  height: 14px;
  min-width: 14px;
  margin-top: 1px;
  color: var(--an-amber);
}
.wf-dz-generate-menu .wf-dz-ai-submit {
  width: 100%;
  margin: 10px 0 0;
  min-height: 34px;
  text-transform: none;
}
.wf-dz-generate-menu .wf-dz-ai-spinner {
  margin-right: 6px;
}
.wf-dz-generate-menu .wf-dz-ai-spinner svg path {
  stroke: #fff;
}
.wf-dz-generate-menu .wf-dz-ai-locked {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 16px;
  max-width: 280px;
}
.wf-dz-generate-menu .wf-dz-ai-locked md-icon {
  font-size: 18px;
  width: 18px;
  height: 18px;
  min-width: 18px;
  margin-top: 1px;
  color: var(--an-text-faint);
}
.wf-dz-generate-menu .wf-dz-ai-locked-title {
  font-size: 12.5px;
  font-weight: 600;
  color: var(--an-text);
  margin-bottom: 2px;
}
.wf-dz-generate-menu .wf-dz-ai-locked-text {
  font-size: 11.5px;
  color: var(--an-text-muted);
  line-height: 1.45;
}

.wf-dz-test-pin {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-weight: 800;
  color: #fff;
  border: 2px solid #fff;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.4);
}
.wf-dz-test-pin.is-in {
  background: #10b981;
}
.wf-dz-test-pin.is-out {
  background: #ef4444;
}

.wf-dz-map-label.is-dim {
  opacity: 0.35;
}
.wf-dz-map-label {
  padding: 3px 10px;
  border-radius: 999px;
  color: #fff;
  font-size: 11.5px;
  font-weight: 700;
  font-family: "Outfit", "Open Sans", sans-serif;
  white-space: nowrap;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.35);
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
  cursor: pointer;
}

.mcf-dialog {
  width: min(1100px, 96vw);
  max-width: 96vw;
  height: 90vh;
  max-height: 90vh;
}
.mcf-dialog form {
  display: flex;
  flex-direction: column;
  min-height: 0;
  height: 100%;
}
@media (max-width: 600px) {
  .mcf-dialog {
    width: 100vw;
    max-width: 100vw;
    height: 100vh;
    max-height: 100vh;
    border-radius: 0 !important;
  }
}

.mcf-content-wrap {
  padding: 0 !important;
  background: var(--an-bg);
  flex: 1;
  min-height: 0;
  display: flex;
}

.mcf-layout {
  display: flex;
  width: 100%;
  min-height: 0;
}
@media (max-width: 959px) {
  .mcf-layout {
    flex-direction: column;
  }
}

.mcf-rail {
  width: 200px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 14px 10px;
  background: var(--an-surface);
  border-right: 1px solid var(--an-border);
  overflow-y: auto;
  scrollbar-width: none;
}
.mcf-rail::-webkit-scrollbar {
  display: none;
}
@media (max-width: 959px) {
  .mcf-rail {
    width: 100%;
    flex-direction: row;
    align-items: center;
    gap: 6px;
    padding: 8px 12px;
    border-right: none;
    border-bottom: 1px solid var(--an-border);
    overflow-x: auto;
    overflow-y: hidden;
    position: sticky;
    top: 0;
    z-index: 2;
  }
}

.mcf-rail__pill {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 9px 12px;
  border-radius: 10px;
  cursor: pointer;
  border: none;
  background: transparent;
  text-align: left;
  width: 100%;
  transition: background 0.15s, color 0.15s;
  color: var(--an-text-muted);
  font-size: 13px;
  font-weight: 500;
  font-family: var(--font-sans, "Inter", sans-serif);
  white-space: nowrap;
  flex-shrink: 0;
}
.mcf-rail__pill md-icon {
  font-size: 17px !important;
  width: 17px !important;
  height: 17px !important;
  min-width: 17px !important;
  color: inherit;
  flex-shrink: 0;
  margin: 0;
}
.mcf-rail__pill:hover {
  background: var(--an-surface2);
  color: var(--an-text);
}
.mcf-rail__pill--active {
  background: rgba(108, 99, 255, 0.08);
  color: var(--an-violet);
  font-weight: 700;
}
.mcf-rail__pill--active md-icon {
  color: var(--an-violet) !important;
}
@media (max-width: 959px) {
  .mcf-rail__pill {
    width: auto;
  }
}
@media (max-width: 640px) {
  .mcf-rail__pill .mcf-rail__pill-text {
    display: none;
  }
  .mcf-rail__pill {
    padding: 9px;
  }
}

.mcf-rail__pill-text {
  overflow: hidden;
  text-overflow: ellipsis;
}

.mcf-content {
  flex: 1;
  min-width: 0;
  overflow-y: auto;
  padding: 20px 24px 28px;
}

.mcf-panel {
  max-width: 780px;
}

.mcf-panel-title {
  margin: 0 0 4px;
  font-size: 16px;
  font-weight: 700;
  color: var(--an-text);
  letter-spacing: -0.2px;
}

.mcf-panel-desc {
  margin: 0 0 18px;
  font-size: 12.5px;
  color: var(--an-text-faint);
}

.mcf-card {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  box-shadow: var(--an-shadow-xs);
  padding: 16px 20px;
  margin-bottom: 16px;
}
.mcf-card:last-child {
  margin-bottom: 0;
}
.mcf-card__title {
  margin: 0 0 12px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  color: var(--an-text-muted);
}
.mcf-card__desc {
  margin: -8px 0 12px;
  font-size: 12px;
  color: var(--an-text-faint);
}

.mcf-field-desc {
  margin: 4px 0 0;
  font-size: 11.5px;
  line-height: 1.4;
  color: var(--an-text-faint);
}

.mcf-qr-block {
  display: flex;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
}
.mcf-qr-block img {
  width: 140px;
  height: 140px;
  border-radius: var(--an-radius-sm);
  border: 1px solid var(--an-border);
  background: #fff;
  padding: 8px;
}

.mcf-qr-link {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.mcf-qr-link .mcf-qr-link__row {
  display: flex;
  align-items: center;
  gap: 6px;
}
.mcf-qr-link .mcf-qr-link__row .link-url {
  font-size: 13px;
  color: var(--an-text-muted);
  word-break: break-all;
}

.kiosk-grid-preview--default {
  display: flex;
  align-items: center;
  justify-content: center;
}
.kiosk-grid-preview--default span {
  font-size: 16px;
  line-height: 1;
  color: rgba(0, 0, 0, 0.35);
}

.kiosk-column-btn.active .kiosk-grid-preview--default span {
  color: rgb(236, 78, 54);
}

.appcc-page-wrap {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  height: 100%;
  min-height: 0;
}

.appcc-page-header {
  display: flex;
  align-items: center;
  gap: var(--space-md);
  padding: var(--space-lg);
  border-bottom: 1px solid var(--an-border);
  background: var(--an-surface);
  flex: none;
}
.appcc-page-header__icon {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: none;
  background: var(--an-primary-soft);
}
.appcc-page-header__icon md-icon {
  min-width: 22px;
  min-height: 22px;
  font-size: 22px;
  width: 22px;
  height: 22px;
  color: var(--an-primary);
}
.appcc-page-header__title {
  flex: 1;
  min-width: 0;
}
.appcc-page-header__title h2 {
  margin: 0;
  font-size: 18px;
  font-weight: 700;
  color: var(--an-text);
}
.appcc-page-header__title p {
  margin: 2px 0 0;
  font-size: 13px;
  color: var(--an-text-muted);
}

.appcc-page-body {
  flex: 1;
  overflow-y: auto;
  padding: var(--space-xl);
}
@media (max-width: 767px) {
  .appcc-page-body {
    padding: var(--space-md);
  }
}

.appcc-status-chip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 600;
  white-space: nowrap;
}
.appcc-status-chip md-icon, .appcc-status-chip i {
  min-width: 14px;
  min-height: 14px;
  font-size: 14px;
  width: 14px;
  height: 14px;
}
.appcc-status-chip--ok {
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
}
.appcc-status-chip--alert {
  background: var(--an-amber-soft);
  color: var(--an-amber);
}
.appcc-status-chip--critical {
  background: var(--an-rose-soft);
  color: var(--an-rose);
}
.appcc-status-chip--pending {
  background: var(--an-surface2);
  color: var(--an-text-muted);
}
.waitry-dark-theme .appcc-status-chip--pending {
  background: var(--an-surface3);
}

.appcc-equipment-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: var(--space-lg);
  padding: 0 var(--space-xl) var(--space-lg);
  flex: none;
}
@media (max-width: 767px) {
  .appcc-equipment-grid {
    grid-template-columns: 1fr;
    padding: 0 var(--space-md) var(--space-md);
  }
}

.appcc-equipment-card {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: 14px;
  padding: var(--space-lg);
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
  transition: box-shadow 0.15s ease, border-color 0.15s ease;
}
.appcc-equipment-card:hover {
  box-shadow: var(--an-shadow);
  border-color: var(--an-border-hover);
}
.appcc-equipment-card__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--space-sm);
}
.appcc-equipment-card__icon {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--an-sky-soft);
  color: var(--an-sky);
  flex: none;
}
.appcc-equipment-card__icon md-icon {
  min-width: 20px;
  min-height: 20px;
}
.appcc-equipment-card__name {
  font-weight: 600;
  color: var(--an-text);
  font-size: 14px;
}
.appcc-equipment-card__zone {
  font-size: 12px;
  color: var(--an-text-muted);
}
.appcc-equipment-card__range {
  font-size: 12px;
  color: var(--an-text-muted);
  display: flex;
  align-items: center;
  gap: 4px;
}
.appcc-equipment-card__actions {
  display: flex;
  gap: 4px;
  justify-self: flex-end;
  margin-left: auto;
}
.appcc-equipment-card__actions .md-button, .appcc-equipment-card__actions .md-icon-button {
  margin: 0 !important;
  width: 30px !important;
  height: 30px !important;
  min-height: 30px !important;
  line-height: 30px !important;
}

.appcc-check-row {
  display: flex;
  align-items: center;
  gap: var(--space-md);
  padding: var(--space-md) var(--space-lg);
  border-bottom: 1px solid var(--an-border-light);
}
.appcc-check-row:last-child {
  border-bottom: none;
}
.appcc-check-row__icon {
  width: 36px;
  height: 36px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: none;
  background: var(--an-surface2);
  color: var(--an-text-muted);
}
.waitry-dark-theme .appcc-check-row__icon {
  background: var(--an-surface3);
}
.appcc-check-row__body {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.appcc-check-row__name {
  font-weight: 600;
  font-size: 14px;
  color: var(--an-text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.appcc-check-row__meta {
  font-size: 12px;
  color: var(--an-text-muted);
}
.appcc-check-row__value {
  font-size: 15px;
  font-weight: 700;
  color: var(--an-text);
  min-width: 56px;
  text-align: right;
}
.appcc-check-row--clickable {
  cursor: pointer;
  transition: background var(--duration-fast) var(--ease-default);
}
.appcc-check-row--clickable:hover {
  background: var(--an-bg-subtle);
}
.waitry-dark-theme .appcc-check-row--clickable:hover {
  background: var(--an-surface2);
}
@media (max-width: 767px) {
  .appcc-check-row {
    flex-wrap: wrap;
  }
  .appcc-check-row__value {
    text-align: left;
  }
}

.appcc-row-list {
  margin: 0 var(--space-xl) var(--space-md);
  border: 1.5px solid var(--an-border);
  border-radius: 12px;
  background: var(--an-surface);
  overflow: hidden;
  flex: none;
}
@media (max-width: 767px) {
  .appcc-row-list {
    margin: 0 var(--space-md) var(--space-md);
  }
}

.appcc-grid-wrap {
  overflow-x: auto;
  padding: 0 var(--space-xl) var(--space-lg);
  flex: none;
}
@media (max-width: 767px) {
  .appcc-grid-wrap {
    padding: 0 var(--space-md) var(--space-md);
  }
}

.appcc-grid-table {
  border-collapse: collapse;
  width: 100%;
  font-size: 12px;
}
.appcc-grid-table th, .appcc-grid-table td {
  border: 1px solid var(--an-border-light);
  padding: 6px 4px;
  text-align: center;
  white-space: nowrap;
}
.appcc-grid-table th.appcc-grid-table__label,
.appcc-grid-table td.appcc-grid-table__label {
  text-align: left;
  position: sticky;
  left: 0;
  background: var(--an-surface);
  min-width: 160px;
  z-index: 1;
}
.appcc-grid-table thead th {
  color: var(--an-text-muted);
  font-weight: 600;
  background: var(--an-surface2);
}
.waitry-dark-theme .appcc-grid-table thead th {
  background: var(--an-surface3);
}
.appcc-grid-table__mark {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
}
.appcc-grid-table__mark--ok {
  background: var(--an-emerald);
}
.appcc-grid-table__mark--alert {
  background: var(--an-amber);
}
.appcc-grid-table__mark--critical {
  background: var(--an-rose);
}
.appcc-grid-table__mark--empty {
  background: var(--an-border);
}
.appcc-grid-table__label-meta {
  color: var(--an-text-muted);
  font-size: 11px;
}

.appcc-quick-actions {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
  gap: var(--space-md);
  padding: 0 var(--space-xl) var(--space-lg);
  flex: none;
}
@media (max-width: 767px) {
  .appcc-quick-actions {
    grid-template-columns: repeat(3, 1fr);
    padding: 0 var(--space-md) var(--space-md);
  }
}

.appcc-quick-action {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-sm);
  padding: var(--space-md);
  border-radius: 12px;
  border: 1px solid var(--an-border);
  background: var(--an-surface);
  cursor: pointer;
  transition: box-shadow 0.15s ease, transform 0.15s ease;
  appearance: none;
  -webkit-appearance: none;
  width: 100%;
  font-family: inherit;
  text-align: center;
}
.appcc-quick-action:hover {
  box-shadow: var(--an-shadow);
  transform: translateY(-1px);
}
.appcc-quick-action md-icon {
  min-width: 24px;
  min-height: 24px;
  font-size: 24px;
  width: 24px;
  height: 24px;
  color: var(--an-primary);
}
.appcc-quick-action span {
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text);
  text-align: center;
}

.appcc-section-toggle-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}

.appcc-section-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-md);
  padding: var(--space-md) var(--space-lg);
  border: 1px solid var(--an-border);
  border-radius: 12px;
  background: var(--an-surface);
}
.appcc-section-toggle__label {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.appcc-section-toggle__title {
  font-weight: 600;
  font-size: 14px;
  color: var(--an-text);
}
.appcc-section-toggle__hint {
  font-size: 12px;
  color: var(--an-text-muted);
}
.appcc-section-toggle--locked {
  opacity: 0.65;
}

.appcc-class-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 2px 8px;
  border-radius: 6px;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}
.appcc-class-badge--incident {
  background: var(--an-surface2);
  color: var(--an-text-muted);
}
.waitry-dark-theme .appcc-class-badge--incident {
  background: var(--an-surface3);
}
.appcc-class-badge--non_conformity {
  background: var(--an-rose-soft);
  color: var(--an-rose);
}

.appcc-due-chip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 10px;
  margin: 0 4px;
  border-radius: 999px;
  background: var(--an-amber-soft);
  color: var(--an-amber);
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
}
.appcc-due-chip md-icon {
  min-width: 16px;
  min-height: 16px;
  font-size: 16px;
  width: 16px;
  height: 16px;
  color: inherit;
}
.appcc-due-chip__critical {
  color: var(--an-rose) !important;
}

.appcc-block-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-md);
  padding: var(--space-lg) var(--space-xl) var(--space-sm);
  flex: none;
}
@media (max-width: 767px) {
  .appcc-block-head {
    padding: var(--space-md) var(--space-md) var(--space-xs);
  }
}
.appcc-block-head__title {
  margin: 0;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.6px;
  color: var(--an-text-muted);
}
.appcc-block-head__sub {
  font-weight: 600;
  opacity: 0.65;
  text-transform: none;
  letter-spacing: 0;
}
.appcc-block-head__link {
  font-size: 12px;
  font-weight: 600;
  color: var(--an-primary);
  text-decoration: none;
}
.appcc-block-head__link:hover {
  text-decoration: underline;
}
.appcc-block-head__actions {
  display: flex;
  gap: 4px;
}
.appcc-block-head__actions .md-button, .appcc-block-head__actions .md-icon-button {
  margin: 0 !important;
  width: 30px !important;
  height: 30px !important;
  min-height: 30px !important;
  line-height: 30px !important;
}

.appcc-block-empty {
  padding: 0 var(--space-xl) var(--space-lg);
  font-size: 12px;
  color: var(--an-text-faint);
  flex: none;
}
@media (max-width: 767px) {
  .appcc-block-empty {
    padding: 0 var(--space-md) var(--space-md);
  }
}

.table tr.appcc-clickable-row {
  cursor: pointer;
}

.appcc-th-info {
  min-width: 13px;
  min-height: 13px;
  font-size: 13px;
  --an-icon-size: 13px;
  width: 13px;
  height: 13px;
  vertical-align: middle;
  margin-left: 2px;
  color: var(--an-text-faint);
  cursor: help;
}

.appcc-trend-chart {
  display: flex;
  align-items: flex-end;
  gap: var(--space-sm);
  padding: 0 var(--space-xl) var(--space-lg);
  flex: none;
}
@media (max-width: 767px) {
  .appcc-trend-chart {
    padding: 0 var(--space-md) var(--space-md);
  }
}
.appcc-trend-chart__col {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-xs);
}
.appcc-trend-chart__stack {
  width: 100%;
  height: 70px;
  display: flex;
  flex-direction: column-reverse;
  border-radius: var(--an-radius-xs);
  overflow: hidden;
  background: var(--an-surface2);
}
.waitry-dark-theme .appcc-trend-chart__stack {
  background: var(--an-surface3);
}
.appcc-trend-chart__seg {
  display: block;
  width: 100%;
}
.appcc-trend-chart__seg--ok {
  background: var(--an-emerald);
}
.appcc-trend-chart__seg--alert {
  background: var(--an-amber);
}
.appcc-trend-chart__seg--critical {
  background: var(--an-rose);
}
.appcc-trend-chart__label {
  font-size: 11px;
  color: var(--an-text-muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}

.appcc-mark-legend {
  display: flex;
  align-items: center;
  gap: var(--space-md);
  flex-wrap: wrap;
}
.appcc-mark-legend__key {
  display: inline-flex;
  align-items: center;
  gap: var(--space-xs);
  font-size: 11px;
  font-weight: 600;
  color: var(--an-text-muted);
}

.appcc-readiness-hero {
  display: flex;
  align-items: center;
  gap: var(--space-xl);
  padding: var(--space-lg) var(--space-xl);
  border: 1.5px solid var(--an-border);
  border-radius: 16px;
  background: var(--an-surface);
}
@media (max-width: 900px) {
  .appcc-readiness-hero {
    flex-wrap: wrap;
    padding: var(--space-md);
  }
}
.appcc-readiness-hero__score {
  width: 96px;
  height: 96px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 34px;
  font-weight: 800;
  flex: none;
  border: 4px solid transparent;
}
.appcc-readiness-hero__score--green {
  background: var(--an-emerald-soft);
  color: var(--an-emerald);
  border-color: var(--an-emerald);
}
.appcc-readiness-hero__score--amber {
  background: var(--an-amber-soft);
  color: var(--an-amber);
  border-color: var(--an-amber);
}
.appcc-readiness-hero__score--rose {
  background: var(--an-rose-soft);
  color: var(--an-rose);
  border-color: var(--an-rose);
}
.appcc-readiness-hero__body {
  flex: 1;
  min-width: 0;
}
.appcc-readiness-hero__title {
  margin: 0;
  font-size: 15px;
  font-weight: 700;
  color: var(--an-text);
}
.appcc-readiness-hero__sub {
  margin: 4px 0 0;
  font-size: 12px;
  color: var(--an-text-muted);
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}
.appcc-readiness-hero__sub md-icon {
  min-width: 14px;
  min-height: 14px;
  font-size: 14px;
  width: 14px;
  height: 14px;
}
.appcc-readiness-hero__actions {
  margin-top: var(--space-sm);
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
  font-size: 11px;
}
.appcc-readiness-hero__actions-label {
  color: var(--an-text-muted);
  font-weight: 600;
  margin-right: 2px;
}
.appcc-readiness-hero__chart {
  width: 220px;
  height: 72px;
  flex: none;
}
@media (max-width: 900px) {
  .appcc-readiness-hero__chart {
    display: none;
  }
}

.appcc-delta--up {
  color: var(--an-emerald);
}
.appcc-delta--down {
  color: var(--an-rose);
}

.appcc-kpis {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 12px;
}
@media (max-width: 900px) {
  .appcc-kpis {
    grid-template-columns: 1fr 1fr;
  }
}

.appcc-kpi {
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius);
  padding: 16px 18px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 4px 16px -2px rgba(0, 0, 0, 0.05);
}
.appcc-kpi::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: var(--an-violet);
}
.appcc-kpi--green::before {
  background: var(--an-emerald);
}
.appcc-kpi--amber::before {
  background: var(--an-amber);
}
.appcc-kpi--sky::before {
  background: var(--an-sky);
}
.appcc-kpi--rose::before {
  background: var(--an-rose);
}

.appcc-kpi__val {
  font-size: 27px;
  font-weight: 800;
  letter-spacing: -0.6px;
  line-height: 1;
  color: var(--an-text);
}

.appcc-kpi__lbl {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
  margin-top: 6px;
  font-weight: 600;
}

.appcc-kpi__sub {
  font-size: 11px;
  color: var(--an-text-muted);
  margin-top: 6px;
  display: flex;
  align-items: center;
  gap: 4px;
}
.appcc-kpi__sub--rose {
  color: var(--an-rose);
}
.appcc-kpi__sub--amber {
  color: var(--an-amber);
}

.appcc-chart-wrap {
  height: 260px;
  position: relative;
}

.mkt-card-header__hint {
  font-size: 11px;
  font-weight: 600;
  text-transform: none;
  letter-spacing: normal;
  opacity: 0.65;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 45%;
}

.appcc-mttr-row {
  display: flex;
  gap: var(--space-sm);
  flex-wrap: wrap;
  margin-top: var(--space-sm);
}

.appcc-grid-nav {
  display: flex;
  align-items: center;
  gap: var(--space-md);
  padding: var(--space-md) var(--space-xl) var(--space-sm);
  flex: none;
}
@media (max-width: 767px) {
  .appcc-grid-nav {
    padding: var(--space-sm) var(--space-md);
  }
}
.appcc-grid-nav__month {
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text);
  text-transform: capitalize;
  min-width: 140px;
  text-align: center;
}

.av-dialog {
  width: 760px;
  max-width: 96vw;
}

.av-intro {
  font-size: 13px;
  line-height: 1.55;
  color: var(--an-text-muted);
  margin: 0 0 20px;
}

.av-progress {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 24px;
}
.av-progress__item {
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 7px 12px;
  border: 1px solid var(--an-border);
  border-radius: 999px;
  background: var(--an-surface);
  font-family: var(--font-sans);
  font-size: 12.5px;
  font-weight: 600;
  color: var(--an-text-muted);
}
.av-progress__item md-icon, .av-progress__item [class*=iconoir-] {
  --an-icon-size: 15px;
  color: var(--an-text-faint);
  margin: 0;
}
.av-progress__item--done {
  border-color: rgba(16, 185, 129, 0.35);
  background: var(--an-emerald-soft, rgba(16, 185, 129, 0.08));
  color: var(--an-emerald, #10b981);
}
.av-progress__item--done md-icon, .av-progress__item--done [class*=iconoir-] {
  color: var(--an-emerald, #10b981);
}
.av-progress__item--pending {
  border-color: rgba(245, 158, 11, 0.35);
  background: var(--an-amber-soft, rgba(245, 158, 11, 0.08));
  color: #d97706;
}
.av-progress__item--pending md-icon, .av-progress__item--pending [class*=iconoir-] {
  color: #d97706;
}

.av-channel {
  border: 1px solid var(--an-border);
  border-radius: 12px;
  padding: 14px 16px;
  margin-bottom: 12px;
  background: var(--an-surface);
}
.av-channel__head {
  display: flex;
  align-items: center;
  gap: 12px;
}
.av-channel__glyph {
  flex: 0 0 auto;
  --an-icon-size: 20px;
  color: var(--an-text-faint) !important;
  margin: 0 !important;
}
.av-channel__text {
  flex: 1 1 auto;
  min-width: 0;
}
.av-channel__value {
  font-family: var(--font-sans);
  font-size: 13.5px;
  font-weight: 600;
  color: var(--an-text);
  margin: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.av-channel__state {
  display: flex;
  align-items: center;
  gap: 5px;
  font-family: var(--font-sans);
  font-size: 12px;
  color: var(--an-text-faint);
  margin: 3px 0 0;
}
.av-channel__state md-icon, .av-channel__state [class*=iconoir-] {
  --an-icon-size: 14px;
  margin: 0;
}
.av-channel__state--done {
  color: var(--an-emerald, #10b981);
  font-weight: 600;
}
.av-channel__state--done md-icon, .av-channel__state--done [class*=iconoir-] {
  color: var(--an-emerald, #10b981) !important;
}
.av-channel__code {
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid var(--an-border);
}

.av-phone-hints {
  margin-top: -6px;
  margin-bottom: 14px;
}
.av-phone-hints .wf-hint {
  margin: 0;
}

.av-file {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border: 1px solid var(--an-border);
  border-radius: 12px;
  background: var(--an-surface);
}
.av-file__icon {
  flex: 0 0 auto;
  --an-icon-size: 18px;
  color: var(--an-text-faint) !important;
  margin: 0 !important;
}
.av-file__name {
  flex: 1 1 auto;
  min-width: 0;
  font-family: var(--font-sans);
  font-size: 13px;
  color: var(--an-text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.av-help {
  margin: 12px 0 0;
  text-align: center;
}

.av-missing {
  margin-top: 20px;
  padding: 12px 16px;
  border: 1px solid rgba(245, 158, 11, 0.2);
  border-radius: 10px;
  background: rgba(245, 158, 11, 0.08);
}
.av-missing__title {
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 700;
  color: #d97706;
  margin: 0 0 6px;
}
.av-missing__list {
  margin: 0;
  padding-left: 18px;
  font-family: var(--font-sans);
  font-size: 12.5px;
  line-height: 1.6;
  color: var(--an-text-muted);
}

.av-verify-row {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 4px 0 0;
}
.av-verify-row__icon {
  color: var(--an-text-muted);
  flex: none;
}
.av-verify-row__icon--done {
  color: var(--an-emerald, #10b981);
}

.av-resend-wait {
  color: var(--an-text-muted);
  font-size: 13px;
  margin-left: 12px;
}

.av-hint {
  font-size: 12px;
  color: var(--an-text-muted);
  margin: 0 0 8px;
}

.av-error {
  font-size: 12px;
  color: var(--an-danger, #ef4444);
  margin: 8px 0 0;
}

.av-link-btn {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 600;
  color: var(--an-primary, #EC4E36);
  text-decoration: none;
}
.av-link-btn:hover {
  text-decoration: underline;
}

.wotp-wrap {
  display: flex;
  gap: 8px;
  margin: 8px 0 0;
}

.wotp-box {
  width: 44px;
  height: 52px;
  border-radius: 8px;
  border: 1px solid var(--an-control-border);
  background: var(--an-surface2);
  color: var(--an-text);
  font-size: 22px;
  font-weight: 600;
  text-align: center;
  padding: 0;
}
.wotp-box:focus {
  outline: none;
  border-color: var(--an-emerald, #10b981);
}

.chr-status {
  display: inline-flex;
  align-items: center;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.01em;
  padding: 3px 9px;
  border-radius: 999px;
  width: fit-content;
  white-space: nowrap;
}

.chr-status--pending {
  color: var(--an-amber);
  background: rgba(245, 158, 11, 0.14);
}

.chr-status--settled {
  color: var(--an-emerald);
  background: rgba(16, 185, 129, 0.12);
}

.chr-status--reversed {
  color: var(--an-text-muted);
  background: rgba(107, 114, 128, 0.12);
}

.chr-status--charged_back {
  color: var(--an-rose);
  background: rgba(236, 78, 54, 0.13);
}

.chr-status--charged_back_reversed {
  color: var(--an-emerald);
  background: rgba(16, 185, 129, 0.12);
}

.chr-status--void {
  color: var(--an-text-faint);
  background: rgba(107, 114, 128, 0.08);
}

.chr-status--member-active {
  color: var(--an-emerald);
  background: rgba(16, 185, 129, 0.12);
}

.chr-status--member-invited {
  color: var(--an-amber);
  background: rgba(245, 158, 11, 0.14);
}

.chr-status--member-revoked {
  color: var(--an-text-muted);
  background: rgba(107, 114, 128, 0.12);
}

.chr-hero-chip {
  display: inline-flex;
  align-items: center;
  column-gap: 6px;
  font-size: 12px;
  font-weight: 700;
  padding: 5px 12px;
  border-radius: 999px;
}
.chr-hero-chip md-icon {
  font-size: 16px;
  width: 16px;
  height: 16px;
}

.chr-hero-chip--ok {
  color: var(--an-emerald);
  background: rgba(16, 185, 129, 0.12);
}
.chr-hero-chip--ok md-icon {
  color: var(--an-emerald) !important;
}

.chr-hero-chip--warn {
  color: var(--an-amber);
  background: rgba(245, 158, 11, 0.14);
}
.chr-hero-chip--warn md-icon {
  color: var(--an-amber) !important;
}

.chr-section {
  padding: 4px 0 24px;
}

.chr-card {
  background: var(--an-surface);
  border: 1px solid var(--an-border-strong);
  border-radius: 12px;
  margin-bottom: 16px;
  overflow: hidden;
}

.chr-card__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 16px;
  border-bottom: 1px solid var(--an-border-strong);
}

.chr-card__title {
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text);
}

.chr-card__sub {
  font-size: 12px;
  color: var(--an-text-muted);
  margin-top: 2px;
}

.chr-card__actions {
  display: flex;
  align-items: center;
  gap: 8px;
}
.chr-card__actions .md-button {
  margin: 0 !important;
}

.chr-card__body {
  padding: 14px 16px;
}

.chr-kv {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  padding: 7px 0;
}
.chr-kv + .chr-kv {
  border-top: 1px dashed var(--an-border-strong);
}

.chr-kv__k {
  font-size: 12px;
  color: var(--an-text-muted);
}

.chr-kv__v {
  font-size: 13px;
  color: var(--an-text);
  font-weight: 600;
  text-align: right;
  word-break: break-all;
}

.chr-mono {
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 12px;
}

.chr-steps {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 10px;
  margin-bottom: 16px;
}

@media (max-width: 1100px) {
  .chr-steps {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 600px) {
  .chr-steps {
    grid-template-columns: 1fr;
  }
}
.chr-step {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px;
  background: var(--an-surface);
  border: 1px solid var(--an-border-strong);
  border-radius: 10px;
}

.chr-step__icon {
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  background: rgba(107, 114, 128, 0.1);
}
.chr-step__icon md-icon {
  font-size: 17px;
  width: 17px;
  height: 17px;
  color: var(--an-text-muted) !important;
}

.chr-step--done .chr-step__icon {
  background: rgba(16, 185, 129, 0.12);
}
.chr-step--done .chr-step__icon md-icon {
  color: var(--an-emerald) !important;
}

.chr-step__body {
  min-width: 0;
}

.chr-step__label {
  font-size: 12px;
  font-weight: 600;
  color: var(--an-text);
  margin-bottom: 4px;
}

.chr-banner {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 14px;
  border-radius: 10px;
  margin-bottom: 16px;
  font-size: 13px;
  line-height: 1.45;
}
.chr-banner md-icon {
  font-size: 18px;
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  margin-top: 1px;
}
.chr-banner strong {
  display: block;
  margin-bottom: 2px;
}

.chr-banner--warn {
  color: var(--an-amber);
  background: rgba(245, 158, 11, 0.11);
}
.chr-banner--warn md-icon {
  color: var(--an-amber) !important;
}

.chr-banner--info {
  color: var(--an-text);
  background: rgba(107, 114, 128, 0.09);
}
.chr-banner--info md-icon {
  color: var(--an-text-muted) !important;
}

.chr-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 12px;
}

.chr-branch, .chr-rate {
  background: var(--an-surface);
  border: 1px solid var(--an-border-strong);
  border-radius: 12px;
  padding: 14px;
  transition: border-color 0.15s ease;
}
.chr-branch:hover, .chr-rate:hover {
  border-color: var(--an-control-border);
}

.chr-branch.is-inactive {
  opacity: 0.72;
}

.chr-branch__top {
  display: flex;
  align-items: center;
  gap: 10px;
}

.chr-branch__avatar {
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 9px;
  background: rgba(107, 114, 128, 0.12);
  font-size: 12px;
  font-weight: 800;
  color: var(--an-text-muted);
}

.chr-branch__id {
  min-width: 0;
  flex: 1;
}

.chr-branch__name {
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.chr-branch__meta {
  font-size: 11px;
  color: var(--an-text-faint);
  margin-top: 1px;
}

.chr-branch__actions {
  display: flex;
  gap: 6px;
  margin-top: 12px;
}
.chr-branch__actions .md-button {
  margin: 0 !important;
}

.chr-rate__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.chr-rate__name {
  font-size: 14px;
  font-weight: 700;
  color: var(--an-text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.chr-rate__actions {
  display: flex;
  gap: 6px;
}
.chr-rate__actions .md-button {
  margin: 0 !important;
}

.chr-rate__value {
  display: flex;
  align-items: baseline;
  gap: 7px;
  margin: 12px 0 2px;
}

.chr-rate__pct {
  font-size: 30px;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: var(--an-text);
  line-height: 1;
}

.chr-rate__base {
  font-size: 12px;
  color: var(--an-text-muted);
}

.chr-rate__value--none {
  font-size: 13px;
  color: var(--an-text-faint);
  font-style: italic;
}

.chr-rate__meta {
  font-size: 11px;
  color: var(--an-text-faint);
}

.chr-rate__foot {
  margin-top: 12px;
  display: flex;
  gap: 6px;
}
.chr-rate__foot .md-button {
  margin: 0 !important;
}

.chr-pending {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  margin-top: 12px;
  padding: 10px;
  border-radius: 9px;
  background: rgba(245, 158, 11, 0.1);
}
.chr-pending md-icon {
  font-size: 17px;
  width: 17px;
  height: 17px;
  color: var(--an-amber) !important;
  margin-top: 1px;
}

.chr-pending__body {
  flex: 1;
  min-width: 0;
}

.chr-pending__text {
  font-size: 12px;
  color: var(--an-text);
  margin-bottom: 6px;
}
.chr-pending__text strong {
  color: var(--an-amber);
}

.chr-pending__actions {
  display: flex;
  gap: 6px;
}
.chr-pending__actions .md-button {
  margin: 0 !important;
}

.roy-chains {
  padding: 24px 24px 0;
}
.roy-chains .chr-rate__name {
  white-space: normal;
}

.roy-chains__lead {
  font-size: 12px;
  color: var(--an-text-muted);
  line-height: 1.5;
  margin: 10px 0 0;
}

.chr-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  align-items: flex-end;
  margin-bottom: 4px;
}

.chr-field {
  min-width: 170px;
  margin: 0 !important;
}

.chr-reconcile {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 14px;
  padding: 10px 14px;
  border-radius: 10px;
  font-size: 13px;
  font-weight: 600;
  color: var(--an-emerald);
  background: rgba(16, 185, 129, 0.1);
}
.chr-reconcile md-icon {
  font-size: 17px;
  width: 17px;
  height: 17px;
  color: var(--an-emerald) !important;
}
.chr-reconcile.chr-reconcile--bad {
  color: var(--an-rose);
  background: rgba(236, 78, 54, 0.12);
}
.chr-reconcile.chr-reconcile--bad md-icon {
  color: var(--an-rose) !important;
}

.chr-amount {
  font-variant-numeric: tabular-nums;
  font-weight: 600;
}

.chr-amount--neg {
  color: var(--an-rose);
}

.chr-empty {
  text-align: center;
  padding: 40px 20px;
  color: var(--an-text-muted);
}
.chr-empty md-icon {
  font-size: 34px;
  width: 34px;
  height: 34px;
  color: var(--an-text-faint) !important;
  margin-bottom: 10px;
}
.chr-empty p {
  font-size: 13px;
  margin: 0;
}

.chr-dialog {
  max-width: 460px;
  width: 92vw;
}

.chr-dialog__body {
  padding: 4px 2px 8px;
}

.chr-dialog__lead {
  font-size: 13px;
  color: var(--an-text);
  margin: 0 0 14px;
  line-height: 1.5;
}

.chr-dialog__hint {
  font-size: 11px;
  color: var(--an-text-faint);
  margin: 6px 0 0;
  line-height: 1.45;
}

.chr-dialog__actions {
  display: flex;
  gap: 8px;
}
.chr-dialog__actions .md-button {
  margin: 0 !important;
}

.chr-btn-primary {
  background: linear-gradient(135deg, var(--an-rose) 0%, #E8384F 100%) !important;
  box-shadow: 0 4px 14px rgba(244, 63, 94, 0.25);
  color: #fff !important;
  border-radius: 8px !important;
  font-weight: 700 !important;
}
.chr-btn-primary md-icon, .chr-btn-primary [class*=iconoir-] {
  color: #fff !important;
}
.chr-btn-primary md-progress-circular path {
  stroke: #fff !important;
}
.chr-btn-primary[disabled] {
  background: var(--an-surface2) !important;
  box-shadow: none !important;
  color: var(--an-text-faint) !important;
}
.chr-btn-primary[disabled] md-icon, .chr-btn-primary[disabled] [class*=iconoir-] {
  color: var(--an-text-faint) !important;
}

.chr-btn-quiet {
  background: transparent !important;
  color: var(--an-text) !important;
  border: 1px solid var(--an-border-strong) !important;
  border-radius: 8px !important;
  font-weight: 600 !important;
}
.chr-btn-quiet md-icon, .chr-btn-quiet [class*=iconoir-] {
  color: var(--an-text-muted) !important;
}
.chr-btn-quiet[disabled] {
  color: var(--an-text-faint) !important;
}
.chr-btn-quiet[disabled] md-icon, .chr-btn-quiet[disabled] [class*=iconoir-] {
  color: var(--an-text-faint) !important;
}

.chr-btn-danger-quiet {
  background: transparent !important;
  color: var(--an-rose) !important;
  border: 1px solid rgba(236, 78, 54, 0.35) !important;
  border-radius: 8px !important;
  font-weight: 600 !important;
}
.chr-btn-danger-quiet md-icon, .chr-btn-danger-quiet [class*=iconoir-] {
  color: var(--an-rose) !important;
}
.chr-btn-danger-quiet[disabled] {
  color: var(--an-text-faint) !important;
}
.chr-btn-danger-quiet[disabled] md-icon, .chr-btn-danger-quiet[disabled] [class*=iconoir-] {
  color: var(--an-text-faint) !important;
}

.chr-detected {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 0;
  font-size: 12px;
}
.chr-detected + .chr-detected {
  border-top: 1px dashed var(--an-border-strong);
}
.chr-detected md-icon {
  font-size: 15px;
  width: 15px;
  height: 15px;
  color: var(--an-text-muted) !important;
}

.chr-detected__venue {
  font-weight: 600;
  color: var(--an-text);
}

.chr-detected__id {
  margin-left: auto;
  color: var(--an-text-faint);
}

.chr-ba-list {
  display: block;
  margin-top: 10px;
  border-top: 1px solid var(--an-border-strong);
}

.chr-ba {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  padding: 12px 4px;
  border-bottom: 1px solid var(--an-border-strong);
  cursor: pointer;
  transition: background 0.12s ease;
}
.chr-ba:hover:not(.is-disabled) {
  background: var(--an-surface2);
}
.chr-ba.is-disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

.chr-ba__radio {
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  margin-top: 1px;
  border-radius: 50%;
  border: 2px solid var(--an-control-border);
  position: relative;
}
.chr-ba.is-selected .chr-ba__radio {
  border-color: var(--an-primary, #EC4E36);
}
.chr-ba.is-selected .chr-ba__radio::after {
  content: "";
  position: absolute;
  inset: 3px;
  border-radius: 50%;
  background: var(--an-primary, #EC4E36);
}

.chr-ba__main {
  min-width: 0;
  flex: 1;
}

.chr-ba__row {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.chr-ba__desc {
  font-size: 13px;
  font-weight: 600;
  color: var(--an-text);
}

.chr-ba__meta {
  font-size: 11px;
  color: var(--an-text-faint);
  margin-top: 3px;
  word-break: break-all;
}

.chr-ba__actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 14px;
}
.chr-ba__actions .md-button {
  margin: 0 !important;
}

.chr-status--optional {
  color: var(--an-text-muted);
  background: rgba(107, 114, 128, 0.12);
}

.chr-locked {
  max-width: 520px;
  margin: 40px auto;
  padding: 32px 28px;
  text-align: center;
  background: var(--an-surface);
  border: 1px solid var(--an-border-strong);
  border-radius: 14px;
}

.chr-locked__icon {
  width: 48px;
  height: 48px;
  margin: 0 auto 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  background: rgba(107, 114, 128, 0.12);
}
.chr-locked__icon md-icon {
  font-size: 24px;
  width: 24px;
  height: 24px;
  color: var(--an-text-muted) !important;
}

.chr-locked__title {
  font-size: 18px;
  font-weight: 700;
  color: var(--an-text);
  margin: 0 0 8px;
}

.chr-locked__body {
  font-size: 13px;
  line-height: 1.55;
  color: var(--an-text-muted);
  margin: 0 0 18px;
}

.chr-locked__list {
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: left;
}
.chr-locked__list li {
  position: relative;
  padding: 7px 0 7px 24px;
  font-size: 13px;
  color: var(--an-text);
}
.chr-locked__list li::before {
  content: "";
  position: absolute;
  left: 6px;
  top: 14px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--an-primary, #EC4E36);
}

.py-kpis,
.dlv-kpis,
.rvi-kpi-grid,
.rpt-content .section-kpi-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(168px, 1fr));
  gap: 12px;
  margin-bottom: 16px;
  align-items: stretch;
}

.rpt-content .section-kpi-row {
  background: none;
  border: 0;
  border-radius: 0;
  overflow: visible;
}

.rpt-content .section-kpi-banner {
  background: none;
  border: 0;
  padding: 0;
  margin-bottom: 16px;
}

.py-kpi,
.dlv-kpi,
.mkt-kpi-chip,
.rpt-content .section-kpi-card {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: var(--an-surface);
  border: 1px solid var(--an-border);
  border-radius: var(--an-radius, 12px);
  padding: 15px 16px 14px 19px;
  overflow: hidden;
  box-shadow: none;
  min-height: 82px;
}

.py-kpi::before,
.dlv-kpi::before,
.mkt-kpi-chip::before,
.rpt-content .section-kpi-card::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: var(--an-violet);
}

.py-kpi--green::before, .dlv-kpi--green::before,
.mkt-kpi-chip--green::before, .rpt-content .section-kpi-card--green::before {
  background: var(--an-emerald);
}

.py-kpi--amber::before, .dlv-kpi--amber::before,
.mkt-kpi-chip--orange::before, .rpt-content .section-kpi-card--amber::before {
  background: var(--an-amber);
}

.py-kpi--sky::before, .dlv-kpi--sky::before,
.mkt-kpi-chip--blue::before, .rpt-content .section-kpi-card--blue::before {
  background: var(--an-sky);
}

.py-kpi--rose::before, .dlv-kpi--rose::before,
.mkt-kpi-chip--red::before, .rpt-content .section-kpi-card--rose::before {
  background: var(--an-rose);
}

.mkt-kpi-chip--purple::before {
  background: var(--an-violet);
}

.py-kpi__val,
.dlv-kpi__val,
.mkt-kpi-value,
.rpt-content .section-kpi-val {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: -0.5px;
  color: var(--an-text);
  font-variant-numeric: tabular-nums;
}

.py-kpi__lbl,
.dlv-kpi__lbl,
.mkt-kpi-label,
.rpt-content .section-kpi-lbl {
  font-size: 12.5px;
  font-weight: 500;
  text-transform: none;
  letter-spacing: 0;
  line-height: 1.3;
  color: var(--an-text-muted);
  margin-top: 6px;
}

.mkt-kpi-sub,
.rpt-content .section-kpi-sub {
  font-size: 11px;
  color: var(--an-text-faint, var(--an-text-muted));
  margin-top: 4px;
  display: flex;
  align-items: center;
  gap: 4px;
}

.py-kpi__delta,
.dlv-kpi__delta,
.rvi-delta {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  align-self: flex-start;
  margin-top: 7px;
  font-size: 11px;
  font-weight: 700;
  padding: 1.5px 8px;
  border-radius: 10px;
  font-variant-numeric: tabular-nums;
  background: var(--an-surface2, rgba(128, 128, 128, 0.1));
  color: var(--an-text-muted);
}

.py-kpi__delta--up, .dlv-kpi__delta--up, .rvi-delta--up {
  color: var(--an-emerald);
  background: rgba(16, 185, 129, 0.12);
}

.py-kpi__delta--down, .dlv-kpi__delta--down, .rvi-delta--down {
  color: var(--an-rose);
  background: rgba(236, 78, 54, 0.12);
}

.mkt-card .mkt-kpi-chip,
.mkt-card .py-kpi,
.mkt-card .dlv-kpi,
.mkt-card .section-kpi-card,
#moduleReportPayments .mkt-card .py-kpi,
#moduleReportSales .mkt-card .section-kpi-card,
#moduleReportService .mkt-card .mkt-kpi-chip {
  background: none;
  border: 0;
  border-radius: 0;
  padding: 0;
  min-height: 0;
  box-shadow: none;
}
.mkt-card .mkt-kpi-chip::before,
.mkt-card .py-kpi::before,
.mkt-card .dlv-kpi::before,
.mkt-card .section-kpi-card::before,
#moduleReportPayments .mkt-card .py-kpi::before,
#moduleReportSales .mkt-card .section-kpi-card::before,
#moduleReportService .mkt-card .mkt-kpi-chip::before {
  display: none;
}

.rpt-content .section-kpi-icon {
  display: none;
}

.mkt-kpi-chip > md-icon {
  display: none;
}

@media (max-width: 900px) {
  .py-kpis,
  .dlv-kpis,
  .rvi-kpi-grid,
  .rpt-content .section-kpi-row {
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  }
  .py-kpi__val,
  .dlv-kpi__val,
  .mkt-kpi-value,
  .rpt-content .section-kpi-val {
    font-size: 22px;
  }
}
.rpt-content {
  padding: 20px 24px 48px;
  min-width: 0;
  max-width: var(--an-content-max-width);
  margin: 0 auto;
}

.rpt-content:has(> .rpt-heatmap-panel:not(.ng-hide)) {
  padding: 0;
  max-width: none;
  margin: 0;
}

.rpt-content .mkt-dashboard,
.rpt-content .mkt-dashboard-grid {
  padding: 0;
  max-width: none;
  margin: 0;
}

.rpt-content .mkt-dashboard > .mkt-dashboard-grid {
  margin: 0;
}

.rpt-content .mkt-dashboard h2,
.rpt-content .mkt-dashboard h3 {
  margin: 0 0 12px;
  padding: 0;
  letter-spacing: -0.01em;
}

.rpt-content .mkt-dashboard:not([layout]) > div + div {
  margin-top: 28px;
}

.rpt-content .mkt-dashboard[layout=column] {
  gap: 28px;
}

.rpt-content .section-kpi-banner,
.rpt-content .py-kpis,
.rpt-content .dlv-kpis {
  margin-bottom: 20px;
}

.rpt-content mise-insight-card {
  display: block;
  margin-top: 4px;
}

@media (max-width: 900px) {
  .rpt-content {
    padding: 16px 14px 40px;
  }
  .rpt-content .mkt-dashboard > div + div {
    margin-top: 20px;
  }
}
.rpt-content .mkt-card-body:has(> canvas),
.rpt-content .mkt-donut-wrap,
.rpt-content .appcc-chart-wrap,
.rpt-content .appcc-readiness-hero__chart,
.mkt-chart-box {
  position: relative;
  flex: 0 0 auto;
  min-height: 0;
  overflow: hidden;
}

.rpt-content canvas,
.mkt-chart-box > canvas {
  display: block;
  max-width: 100%;
  max-height: 100%;
  min-height: 0;
}

.rpt-content .mkt-card-body:has(> canvas):not([style*=height]),
.mkt-chart-box:not([style*=height]) {
  height: 320px;
}

.rpt-content .mkt-card-body > p + canvas {
  max-height: calc(100% - 28px);
}

.rpt-content {
  --rpt-card-inset: 16px;
}

.rpt-content .mkt-card-inner > *:not(.mkt-card-header):not(.mkt-card-body):not(.mkt-table-wrap):not(.table-card-container):not(.mkt-empty):not(.mkt-loading):not(mise-insight-card) {
  padding-left: var(--rpt-card-inset);
  padding-right: var(--rpt-card-inset);
}

.rpt-content .mkt-card-inner > *,
.rpt-content .mkt-card-body > * {
  box-sizing: border-box;
}

.rpt-content .mkt-card-inner > .table-card-container,
.rpt-content .mkt-card-inner > .iv-footnote {
  margin-left: var(--rpt-card-inset);
  margin-right: var(--rpt-card-inset);
}

.rpt-content .mkt-card th:first-child,
.rpt-content .mkt-card td:first-child {
  padding-left: var(--rpt-card-inset);
}

.rpt-content .mkt-card th:last-child,
.rpt-content .mkt-card td:last-child {
  padding-right: var(--rpt-card-inset);
}

.rpt-content .mkt-card-inner > *:last-child:not(.mkt-card-header):not(.mkt-card-body):not(.mkt-empty):not(.mkt-loading):not(mise-insight-card) {
  padding-bottom: 14px;
}

.rpt-content .mkt-card-inner > p {
  margin: 10px 0 0;
  line-height: 1.5;
}

.rpt-content .mkt-card-inner > p:last-child {
  margin-bottom: 0;
}

.py-bar {
  margin-bottom: 14px;
}
.py-bar:last-child {
  margin-bottom: 0;
}

.py-bar__head {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 8px;
  font-size: 12.5px;
  margin-bottom: 5px;
}

.py-bar__name {
  font-weight: 600;
  color: var(--an-text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 60%;
}

.py-bar__sub {
  font-style: normal;
  font-weight: 400;
  color: var(--an-text-muted, rgba(120, 120, 120, 0.9));
  margin-left: 4px;
}

.py-bar__val {
  color: var(--an-text);
  font-weight: 700;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.py-bar__track {
  height: 8px;
  border-radius: 999px;
  background: var(--an-surface2, rgba(120, 120, 120, 0.12));
  overflow: hidden;
}

.py-bar__fill {
  height: 100%;
  border-radius: 999px;
  background: var(--an-violet, #6C63FF);
  transition: width 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.py-bar__meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 4px;
  font-size: 11.5px;
  line-height: 1.4;
  color: var(--an-text-muted, rgba(120, 120, 120, 0.9));
}

.py-share {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 120px;
}

.py-share__track {
  flex: 1;
  height: 6px;
  border-radius: 999px;
  background: var(--an-surface2, rgba(120, 120, 120, 0.12));
  overflow: hidden;
}

.py-share__fill {
  height: 100%;
  border-radius: 999px;
  background: var(--an-emerald, #10B981);
  transition: width 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.py-share__val {
  font-size: 11.5px;
  font-weight: 700;
  color: var(--an-text-muted);
  font-variant-numeric: tabular-nums;
  min-width: 42px;
  text-align: right;
}

.dlv-split {
  display: flex;
  gap: 8px;
  margin-top: 10px;
}

.dlv-split__seg {
  flex: 1;
  min-width: 0;
  text-align: center;
  padding: 12px 10px;
  border-radius: var(--an-radius-sm, 10px);
  background: var(--an-surface2);
  border: 1px solid var(--an-border);
}

.dlv-split__val {
  font-size: 18px;
  font-weight: 800;
  color: var(--an-text);
  font-variant-numeric: tabular-nums;
}

.dlv-split__lbl {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  color: var(--an-text-muted);
  margin-top: 3px;
}

.dlv-chan {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.dlv-chan__logo {
  width: 22px;
  height: 22px;
  flex: 0 0 22px;
  border-radius: 6px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 800;
  color: #fff;
  text-transform: uppercase;
}

.dlv-chan__logo--uber_eats {
  background: #06C167;
}

.dlv-chan__logo--rappi {
  background: #FF4F18;
}

.dlv-chan__logo--glovo {
  background: #FFC244;
  color: #1a1a1a;
}

.dlv-chan__logo--sinqro {
  background: #2D6CDF;
}

.dlv-chan__logo--pedidosya {
  background: #E12B2B;
}

.dlv-chan__logo--web {
  background: #6C63FF;
}

.dlv-chan__logo--app {
  background: #10B981;
}

.dlv-chan__logo--pos {
  background: #64625E;
}

.dlv-chan__logo--default {
  background: #818CF8;
}

.dlv-chan__name {
  font-size: 13px;
  font-weight: 600;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.dlv-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}

.dlv-table th {
  padding: 8px 10px;
  text-align: right;
  font-size: 10.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--an-text-muted);
  border-bottom: 1px solid var(--an-border);
  white-space: nowrap;
}

.dlv-table th:first-child,
.dlv-table td:first-child {
  text-align: left;
}

.dlv-table td {
  padding: 10px;
  border-bottom: 1px solid var(--an-border);
  color: var(--an-text);
  text-align: right;
  font-variant-numeric: tabular-nums;
}

.dlv-table tr:last-child td {
  border-bottom: none;
}

.dlv-table tr:hover td {
  background: var(--an-surface2);
}

.dlv-table .dlv-pos {
  color: var(--an-emerald);
  font-weight: 700;
}

.dlv-table .dlv-neg {
  color: var(--an-rose);
  font-weight: 700;
}

.dlv-table-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.dlv-heatmap {
  display: grid;
  grid-template-columns: 36px repeat(24, 1fr);
  gap: 3px;
}

.dlv-heatmap__lbl {
  font-size: 10px;
  color: var(--an-text-muted);
  display: flex;
  align-items: center;
}

.dlv-heatmap__cell {
  aspect-ratio: 1;
  border-radius: 3px;
  background: var(--an-surface2);
  min-height: 12px;
}

.dlv-heatmap__hours {
  display: grid;
  grid-template-columns: 36px repeat(24, 1fr);
  gap: 3px;
  margin-top: 4px;
}

.dlv-heatmap__hour {
  font-size: 8px;
  color: var(--an-text-muted);
  text-align: center;
}

@media (max-width: 600px) {
  .dlv-heatmap,
  .dlv-heatmap__hours {
    grid-template-columns: 30px repeat(24, 1fr);
    gap: 2px;
  }
}
@media (max-width: 599px) {
  md-toolbar.md-whiteframe-glow-z1 > .md-toolbar-tools {
    padding: 0 8px 0 4px;
    gap: 2px;
  }
  md-toolbar.md-whiteframe-glow-z1 > .md-toolbar-tools > .md-icon-button:first-child {
    margin: 0 !important;
  }
  .waitry-logo-span {
    padding-right: 0;
    margin-left: 0;
  }
  .waitry-logo,
  .partner-logo {
    width: 84px;
  }
  md-toolbar .toolbar-action-btn.md-icon-button {
    margin: 0 !important;
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    min-height: 36px !important;
    padding: 0 !important;
  }
  .venue-pill-container {
    padding: 4px;
    margin: 0;
    height: 36px;
    width: 36px;
    justify-content: center;
  }
  .toolbar-pill-text-col,
  .toolbar-pill-trigger .toolbar-chevron,
  .toolbar-pill-btn .toolbar-chevron {
    display: none !important;
  }
  md-toolbar .toolbar-pill-btn {
    margin: 0 !important;
    padding: 0 !important;
    min-width: 36px !important;
    width: 36px;
    height: 36px;
    min-height: 36px;
    border-radius: 50% !important;
    background: transparent !important;
  }
}
@media (max-width: 599px) {
  body:has(.mobile-tab-bar) {
    --an-bottom-nav-h: calc(58px + env(safe-area-inset-bottom));
    padding-bottom: var(--an-bottom-nav-h);
  }
  body:has(.mobile-tab-bar):has(.pm-sticky-bar, .web-editor-savebar, input:focus, textarea:focus, [contenteditable=true]:focus) {
    --an-bottom-nav-h: 0px;
  }
  body:has(.mobile-tab-bar):has(.pm-sticky-bar, .web-editor-savebar, input:focus, textarea:focus, [contenteditable=true]:focus) .mobile-tab-bar {
    display: none;
  }
  .mobile-tab-bar {
    display: flex;
    align-items: stretch;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 50;
    height: var(--an-bottom-nav-h);
    padding: 0 4px env(safe-area-inset-bottom);
    box-sizing: border-box;
    background: color-mix(in srgb, var(--an-surface) 92%, transparent);
    backdrop-filter: saturate(1.6) blur(16px);
    -webkit-backdrop-filter: saturate(1.6) blur(16px);
    border-top: 1px solid var(--an-border);
  }
  .mobile-tab-bar__item {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    padding: 6px 0 4px;
    border: 0;
    background: none;
    color: var(--an-text-muted);
    font: 600 10.5px/1.1 var(--font-sans, inherit);
    letter-spacing: 0.01em;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
  }
  .mobile-tab-bar__item > span:last-child {
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .mobile-tab-bar__item > i {
    font-size: 22px;
    line-height: 28px;
    width: 56px;
    border-radius: var(--an-radius-pill);
    transition: background-color 0.18s ease, color 0.18s ease;
  }
  .mobile-tab-bar__item:active > i {
    background: var(--an-bg-subtle);
  }
  .mobile-tab-bar__item--active {
    color: #ec4e36;
  }
  .mobile-tab-bar__item--active > i {
    background: rgba(236, 78, 54, 0.12);
    color: #ec4e36;
  }
  .mobile-tab-bar__mise {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    margin-top: -12px;
    border-radius: 14px;
    background: linear-gradient(135deg, #ec4e36 0%, #f06543 50%, #eb8258 100%);
    color: #fff;
    box-shadow: 0 6px 16px rgba(236, 78, 54, 0.35);
  }
  .mobile-tab-bar__mise i {
    font-size: 20px;
  }
  .mobile-tab-bar__item--mise.mobile-tab-bar__item--active .mobile-tab-bar__mise {
    box-shadow: 0 0 0 3px rgba(236, 78, 54, 0.18), 0 6px 16px rgba(236, 78, 54, 0.35);
  }
  body:has(.mobile-tab-bar) md-toolbar.md-whiteframe-glow-z1 .md-toolbar-tools > .md-icon-button:first-child {
    display: none;
  }
  body:has(.mobile-tab-bar) .waitry-logo-span {
    margin-left: 8px;
  }
  md-toast {
    margin-bottom: var(--an-bottom-nav-h, 0px);
  }
}
@media (max-width: 959px) {
  :root {
    --an-gutter: 16px;
  }
}
@media (max-width: 599px) {
  :root {
    --an-gutter: 12px;
  }
}
@media (max-width: 959px) {
  md-sidenav.md-sidenav-left.md-closed {
    box-shadow: none !important;
  }
  md-content > md-toolbar + *:not(.section-kpi-banner):not(.section-filters-bar):not(.rpt-layout):not(.pm-workspace):not(.vm-page) {
    margin-top: 12px;
  }
  .sidenav-logo-mise-btn {
    justify-content: flex-start;
    gap: 12px;
    padding: 0 20px;
    box-sizing: border-box;
  }
  .sidenav-logo-mise-label {
    display: inline;
    font-size: 15px;
    font-weight: 700;
    color: #ec4e36;
  }
}
@media (max-width: 599px) {
  .web-editor-toolbar {
    position: sticky !important;
    top: 0 !important;
    width: 100% !important;
    z-index: 3;
  }
  .web-editor-toolbar .md-toolbar-tools {
    flex-wrap: nowrap !important;
  }
  .web-editor-toolbar .md-toolbar-tools > h2 {
    flex: 1 1 auto !important;
  }
  .web-editor-toolbar .md-toolbar-tools > button.md-button:first-of-type {
    margin-left: 0 !important;
  }
  .web-editor-panel {
    flex: 1 1 auto;
    width: 100%;
    margin-top: 0;
    min-height: 0;
    border-right: 0;
  }
  .preview-siteweb {
    display: none;
  }
  .web-editor-toolbar .md-icon-button[ng-click^=plataform] {
    display: none !important;
  }
  .web-editor-savebar {
    left: 0;
    right: 0;
    width: auto;
    padding: 24px var(--an-gutter) calc(12px + env(safe-area-inset-bottom));
  }
  body:has(.mobile-tab-bar__item--mise) .mise-ask-fab {
    display: none !important;
  }
  .user-menu-items md-menu-item:has([ng-click="toggleLayoutWidth()"]) {
    display: none;
  }
}
@media (max-width: 599px) {
  md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools.section-toolbar__grid .section-toolbar__actions {
    max-width: 62vw;
    overflow-x: auto;
    scrollbar-width: none;
    gap: 4px;
  }
  md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools.section-toolbar__grid .section-toolbar__actions::-webkit-scrollbar {
    display: none;
  }
  md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools.section-toolbar__grid .section-toolbar__actions > st-actions > * {
    flex-shrink: 0;
  }
  md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools > h2 {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px 8px;
    white-space: normal;
  }
  md-toolbar.toolbar-small .md-toolbar-tools > i[class*=iconoir-]:has(+ h2) {
    display: none;
  }
  md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools {
    font-size: 15px;
  }
  md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-button:not(#_):not(.md-icon-button):not(.md-raised):has(> md-icon, > i[class*=iconoir-]) {
    background-color: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
    width: 40px;
    min-width: 40px !important;
    height: 40px;
    padding: 0 !important;
    font-size: 0;
    justify-content: center;
  }
  md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools .md-button:not(#_):not(.md-icon-button):not(.md-raised):has(> md-icon, > i[class*=iconoir-]) > span {
    display: none;
  }
  md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools:not(.section-toolbar__grid):has(> .md-button) {
    flex-wrap: wrap;
    row-gap: 8px;
    column-gap: 4px;
  }
  md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools:not(.section-toolbar__grid):has(> .md-button) > h2 {
    flex: 1 1 40%;
  }
  md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools:not(.section-toolbar__grid):has(> .md-button) > span.flex:empty,
  md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools:not(.section-toolbar__grid):has(> .md-button) > span[flex]:empty {
    display: none;
  }
  md-toolbar.toolbar-small.md-hue-3:not(.md-menu-toolbar) .md-toolbar-tools:not(.section-toolbar__grid):has(> .md-button) > .md-button {
    margin: 0 !important;
  }
  md-toolbar.toolbar-small .md-toolbar-tools:has(> .clients-toolbar-filters) > .md-button {
    order: 1;
  }
  md-toolbar.toolbar-small .md-toolbar-tools:has(> .clients-toolbar-filters) > .clients-search-premium {
    order: 2;
    flex: 1 1 100%;
    width: auto !important;
    max-width: none !important;
  }
  md-toolbar.toolbar-small .md-toolbar-tools:has(> .clients-toolbar-filters) > .clients-toolbar-filters {
    order: 3;
    flex: 1 1 100%;
    justify-content: flex-start !important;
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
    margin: 0 calc(-1 * var(--an-gutter));
    padding: 0 var(--an-gutter);
  }
  md-toolbar.toolbar-small .md-toolbar-tools:has(> .clients-toolbar-filters) > .clients-toolbar-filters::-webkit-scrollbar {
    display: none;
  }
  md-toolbar.toolbar-small .md-toolbar-tools:has(> .clients-toolbar-filters) > .clients-toolbar-filters > * {
    flex: none;
  }
  .section-toolbar__search > st-search > * {
    flex: 1 1 100%;
    width: 100%;
    max-width: none;
  }
  .section-toolbar__title {
    font-size: 15px;
  }
  .section-toolbar__title > span:not(.section-count-badge) {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}
@media (max-width: 959px) {
  md-content:has(.table-card-container):not(:has(.rpt-layout)) {
    display: block !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    padding-bottom: 80px !important;
  }
  .table-card-container {
    flex: none;
    margin: 0 var(--an-gutter) 12px;
    overflow-x: auto;
    overflow-y: visible;
    -webkit-overflow-scrolling: touch;
  }
  .section-kpi-banner,
  .section-kpi-banner--compact,
  .clients-kpi-banner {
    padding: 12px var(--an-gutter) 0;
    margin-bottom: 12px;
  }
  .section-filters-bar,
  .section-filters-bar--compact,
  .clients-segments-bar {
    padding: 12px var(--an-gutter) 10px;
    scrollbar-width: none;
  }
  .catalog-kpi-chip-row {
    flex-wrap: nowrap;
    overflow-x: auto;
    padding: 12px var(--an-gutter) 2px;
    scrollbar-width: none;
  }
  .catalog-kpi-chip-row::-webkit-scrollbar {
    display: none;
  }
  .catalog-kpi-chip-row > * {
    flex: none;
  }
  .table-pager-sticky,
  .sk-table-wrap {
    padding-left: var(--an-gutter);
    padding-right: var(--an-gutter);
  }
  .table-empty-state {
    margin-left: var(--an-gutter) !important;
    margin-right: var(--an-gutter) !important;
  }
  .marketing-page-wrap {
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
  .marketing-page-wrap .marketing-table-area {
    flex: none;
    overflow: visible;
  }
  .marketing-page-wrap .marketing-table-scroll {
    flex: none;
    overflow: visible;
    padding: 12px var(--an-gutter) 16px;
  }
  .marketing-page-wrap .marketing-table-scroll > .table-card-container {
    margin-left: 0;
    margin-right: 0;
  }
  .marketing-page-wrap .marketing-table-pager-sticky {
    position: sticky;
    padding: 0 var(--an-gutter) calc(12px + env(safe-area-inset-bottom));
  }
}
@media (max-width: 599px) {
  .section-kpi-row,
  .clients-loy-kpi-row {
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
  }
  .section-kpi-row::-webkit-scrollbar,
  .clients-loy-kpi-row::-webkit-scrollbar {
    display: none;
  }
  .section-kpi-row > .section-kpi-card,
  .clients-loy-kpi-row > .clients-loy-kpi-card {
    flex: 0 0 132px;
    min-width: 0 !important;
    max-width: none !important;
    padding: 10px 14px;
  }
  .section-kpi-val,
  .clients-loy-kpi-val {
    font-size: 18px;
  }
  .section-kpi-row .section-kpi-sub,
  .clients-loy-kpi-row .clients-loy-kpi-sub {
    display: none !important;
  }
  .section-kpi-lbl,
  .clients-loy-kpi-lbl {
    font-size: 11.5px;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    white-space: normal;
  }
  md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools .md-button:not(#_):not(.md-icon-button):not(.md-raised):has(> md-icon.iconoir-plus, > i.iconoir-plus) {
    background-color: var(--an-rose) !important;
    border-color: var(--an-rose) !important;
    color: #fff !important;
  }
  md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools .md-button:not(#_):not(.md-icon-button):not(.md-raised):has(> md-icon.iconoir-plus, > i.iconoir-plus) md-icon, md-toolbar.toolbar-small.md-hue-3 .md-toolbar-tools .md-button:not(#_):not(.md-icon-button):not(.md-raised):has(> md-icon.iconoir-plus, > i.iconoir-plus) i {
    color: #fff !important;
  }
  .table-card-container:has(table.table) {
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    overflow: visible;
  }
  .table-card-container table.table {
    display: block;
    min-width: 0 !important;
    width: 100% !important;
    table-layout: auto;
    border: 0;
    background: transparent;
  }
  .table-card-container table.table colgroup, .table-card-container table.table thead {
    display: none;
  }
  .table-card-container table.table tbody {
    display: flex;
    flex-direction: column;
    gap: 10px;
  }
  .table-card-container table.table tbody tr {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    column-gap: 8px;
    height: auto !important;
    padding: 6px 14px;
    background: var(--an-surface);
    border: 1px solid var(--an-border);
    border-radius: var(--an-radius);
    box-shadow: var(--an-shadow-sm);
  }
  .table-card-container table.table tbody tr td {
    display: flex;
    flex: 1 1 100%;
    max-width: none !important;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 6px 12px;
    width: auto !important;
    min-height: 34px;
    padding: 5px 0 !important;
    font-size: 14px;
    border: 0 !important;
    border-bottom: 1px solid var(--an-border) !important;
    border-radius: 0 !important;
    text-align: right;
    white-space: normal;
    overflow-wrap: anywhere;
    background: transparent !important;
  }
  .table-card-container table.table tbody tr td:last-child {
    border-bottom: 0 !important;
  }
  .table-card-container table.table tbody tr td[class] {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .table-card-container table.table tbody tr td[data-empty] {
    display: none;
  }
  .table-card-container table.table tbody tr td[data-label]:not([data-label=""])::before {
    content: attr(data-label);
    flex: 0 0 auto;
    margin-right: auto;
    max-width: 45%;
    text-align: left;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0;
    color: var(--an-text-muted);
  }
  .table-card-container table.table tbody tr td[data-label=""] {
    flex: 0 0 auto;
    justify-content: flex-start;
    min-height: 44px;
    border-bottom: 0 !important;
  }
  .table-card-container table.table tbody tr td:not([data-label=""]) + td[data-label=""] {
    margin-left: auto;
  }
  .table-card-container table.table tbody tr td[data-label]:not([data-label=""]) {
    flex: 1 1 calc(50% - 8px);
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 3px;
    min-height: 0;
    padding: 8px 0 !important;
    border-bottom: 0 !important;
    text-align: left;
  }
  .table-card-container table.table tbody tr td[data-label]:not([data-label=""])::before {
    margin: 0;
    max-width: none;
  }
  .table-card-container table.table tbody tr td[data-label]:not([data-label=""]) {
    min-width: 0;
    overflow-wrap: anywhere;
  }
  .table-card-container table.table tbody tr td[data-label]:not([data-label=""]) > * {
    max-width: 100%;
    margin-left: 0 !important;
    text-align: left;
    align-items: flex-start;
    justify-content: flex-start;
  }
  .table-card-container table.table tbody tr td[data-label]:not([data-label=""]):has(button, .md-button, md-switch, md-checkbox, input, md-select) {
    flex: 1 1 auto;
    min-width: 60%;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    border-top: 1px solid var(--an-border) !important;
  }
  .table-card-container table.table tbody tr td[data-label]:not([data-label=""]):has(button, .md-button, md-switch, md-checkbox, input, md-select)::before {
    margin-right: auto;
  }
  .table-card-container table.table tbody tr td:first-child:not([data-label=""]),
  .table-card-container table.table tbody tr td[data-label=""]:first-child + td:not([data-label=""]),
  .table-card-container table.table tbody tr td[data-label=""]:first-child + td[data-label=""] + td:not([data-label=""]) {
    flex: 1 1 60%;
    min-width: 0;
    padding: 10px 0 !important;
    border-bottom: 1px solid var(--an-border) !important;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    text-align: left;
    font-size: 15px;
    font-weight: 600;
    color: var(--an-text);
  }
  .table-card-container table.table tbody tr td:first-child:not([data-label=""])::before,
  .table-card-container table.table tbody tr td[data-label=""]:first-child + td:not([data-label=""])::before,
  .table-card-container table.table tbody tr td[data-label=""]:first-child + td[data-label=""] + td:not([data-label=""])::before {
    display: none;
  }
  .table-card-container table.table tbody tr td:first-child:not([data-label=""]) *,
  .table-card-container table.table tbody tr td[data-label=""]:first-child + td:not([data-label=""]) *,
  .table-card-container table.table tbody tr td[data-label=""]:first-child + td[data-label=""] + td:not([data-label=""]) * {
    text-align: left;
  }
  .table-card-container table.table tbody tr td:first-child:not([data-label=""]),
  .table-card-container table.table tbody tr td[data-label=""][data-empty]:first-child + td:not([data-label=""]) {
    flex-basis: 100%;
  }
  .table-card-container table.table tbody tr td:last-child:has(> .md-button, > button, > div > .md-button, > div > button) {
    justify-content: flex-end;
  }
  .table-card-container table.table tbody tr td:last-child:has(> .md-button, > button, > div > .md-button, > div > button)::before {
    display: none;
  }
  .table-card-container table.table tbody tr td[colspan] {
    justify-content: center;
    text-align: center;
  }
  .catalog-table-wrap:has(table.catalog-table) {
    overflow: visible;
  }
  .catalog-table-wrap table.catalog-table {
    display: block;
    min-width: 0 !important;
    width: 100% !important;
    table-layout: auto;
    border: 0;
    background: transparent;
  }
  .catalog-table-wrap table.catalog-table colgroup, .catalog-table-wrap table.catalog-table thead {
    display: none;
  }
  .catalog-table-wrap table.catalog-table tbody {
    display: flex;
    flex-direction: column;
    gap: 10px;
  }
  .catalog-table-wrap table.catalog-table tbody tr {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    column-gap: 8px;
    height: auto !important;
    padding: 6px 14px;
    background: var(--an-surface);
    border: 1px solid var(--an-border);
    border-radius: var(--an-radius);
    box-shadow: var(--an-shadow-sm);
  }
  .catalog-table-wrap table.catalog-table tbody tr td {
    display: flex;
    flex: 1 1 100%;
    max-width: none !important;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 6px 12px;
    width: auto !important;
    min-height: 34px;
    padding: 5px 0 !important;
    font-size: 14px;
    border: 0 !important;
    border-bottom: 1px solid var(--an-border) !important;
    border-radius: 0 !important;
    text-align: right;
    white-space: normal;
    overflow-wrap: anywhere;
    background: transparent !important;
  }
  .catalog-table-wrap table.catalog-table tbody tr td:last-child {
    border-bottom: 0 !important;
  }
  .catalog-table-wrap table.catalog-table tbody tr td[class] {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .catalog-table-wrap table.catalog-table tbody tr td[data-empty] {
    display: none;
  }
  .catalog-table-wrap table.catalog-table tbody tr td[data-label]:not([data-label=""])::before {
    content: attr(data-label);
    flex: 0 0 auto;
    margin-right: auto;
    max-width: 45%;
    text-align: left;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0;
    color: var(--an-text-muted);
  }
  .catalog-table-wrap table.catalog-table tbody tr td[data-label=""] {
    flex: 0 0 auto;
    justify-content: flex-start;
    min-height: 44px;
    border-bottom: 0 !important;
  }
  .catalog-table-wrap table.catalog-table tbody tr td:not([data-label=""]) + td[data-label=""] {
    margin-left: auto;
  }
  .catalog-table-wrap table.catalog-table tbody tr td[data-label]:not([data-label=""]) {
    flex: 1 1 calc(50% - 8px);
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 3px;
    min-height: 0;
    padding: 8px 0 !important;
    border-bottom: 0 !important;
    text-align: left;
  }
  .catalog-table-wrap table.catalog-table tbody tr td[data-label]:not([data-label=""])::before {
    margin: 0;
    max-width: none;
  }
  .catalog-table-wrap table.catalog-table tbody tr td[data-label]:not([data-label=""]) {
    min-width: 0;
    overflow-wrap: anywhere;
  }
  .catalog-table-wrap table.catalog-table tbody tr td[data-label]:not([data-label=""]) > * {
    max-width: 100%;
    margin-left: 0 !important;
    text-align: left;
    align-items: flex-start;
    justify-content: flex-start;
  }
  .catalog-table-wrap table.catalog-table tbody tr td[data-label]:not([data-label=""]):has(button, .md-button, md-switch, md-checkbox, input, md-select) {
    flex: 1 1 auto;
    min-width: 60%;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    border-top: 1px solid var(--an-border) !important;
  }
  .catalog-table-wrap table.catalog-table tbody tr td[data-label]:not([data-label=""]):has(button, .md-button, md-switch, md-checkbox, input, md-select)::before {
    margin-right: auto;
  }
  .catalog-table-wrap table.catalog-table tbody tr td:first-child:not([data-label=""]),
  .catalog-table-wrap table.catalog-table tbody tr td[data-label=""]:first-child + td:not([data-label=""]),
  .catalog-table-wrap table.catalog-table tbody tr td[data-label=""]:first-child + td[data-label=""] + td:not([data-label=""]) {
    flex: 1 1 60%;
    min-width: 0;
    padding: 10px 0 !important;
    border-bottom: 1px solid var(--an-border) !important;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    text-align: left;
    font-size: 15px;
    font-weight: 600;
    color: var(--an-text);
  }
  .catalog-table-wrap table.catalog-table tbody tr td:first-child:not([data-label=""])::before,
  .catalog-table-wrap table.catalog-table tbody tr td[data-label=""]:first-child + td:not([data-label=""])::before,
  .catalog-table-wrap table.catalog-table tbody tr td[data-label=""]:first-child + td[data-label=""] + td:not([data-label=""])::before {
    display: none;
  }
  .catalog-table-wrap table.catalog-table tbody tr td:first-child:not([data-label=""]) *,
  .catalog-table-wrap table.catalog-table tbody tr td[data-label=""]:first-child + td:not([data-label=""]) *,
  .catalog-table-wrap table.catalog-table tbody tr td[data-label=""]:first-child + td[data-label=""] + td:not([data-label=""]) * {
    text-align: left;
  }
  .catalog-table-wrap table.catalog-table tbody tr td:first-child:not([data-label=""]),
  .catalog-table-wrap table.catalog-table tbody tr td[data-label=""][data-empty]:first-child + td:not([data-label=""]) {
    flex-basis: 100%;
  }
  .catalog-table-wrap table.catalog-table tbody tr td:last-child:has(> .md-button, > button, > div > .md-button, > div > button) {
    justify-content: flex-end;
  }
  .catalog-table-wrap table.catalog-table tbody tr td:last-child:has(> .md-button, > button, > div > .md-button, > div > button)::before {
    display: none;
  }
  .catalog-table-wrap table.catalog-table tbody tr td[colspan] {
    justify-content: center;
    text-align: center;
  }
  .inventory-table-card:has(table.inventory-table),
  .inventory-table-wrap:has(table.inventory-table) {
    background: transparent;
    border: 0;
    box-shadow: none;
    overflow: visible;
  }
  .inventory-table-wrap table.inventory-table {
    display: block;
    min-width: 0 !important;
    width: 100% !important;
    table-layout: auto;
    border: 0;
    background: transparent;
  }
  .inventory-table-wrap table.inventory-table colgroup, .inventory-table-wrap table.inventory-table thead {
    display: none;
  }
  .inventory-table-wrap table.inventory-table tbody {
    display: flex;
    flex-direction: column;
    gap: 10px;
  }
  .inventory-table-wrap table.inventory-table tbody tr {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    column-gap: 8px;
    height: auto !important;
    padding: 6px 14px;
    background: var(--an-surface);
    border: 1px solid var(--an-border);
    border-radius: var(--an-radius);
    box-shadow: var(--an-shadow-sm);
  }
  .inventory-table-wrap table.inventory-table tbody tr td {
    display: flex;
    flex: 1 1 100%;
    max-width: none !important;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 6px 12px;
    width: auto !important;
    min-height: 34px;
    padding: 5px 0 !important;
    font-size: 14px;
    border: 0 !important;
    border-bottom: 1px solid var(--an-border) !important;
    border-radius: 0 !important;
    text-align: right;
    white-space: normal;
    overflow-wrap: anywhere;
    background: transparent !important;
  }
  .inventory-table-wrap table.inventory-table tbody tr td:last-child {
    border-bottom: 0 !important;
  }
  .inventory-table-wrap table.inventory-table tbody tr td[class] {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .inventory-table-wrap table.inventory-table tbody tr td[data-empty] {
    display: none;
  }
  .inventory-table-wrap table.inventory-table tbody tr td[data-label]:not([data-label=""])::before {
    content: attr(data-label);
    flex: 0 0 auto;
    margin-right: auto;
    max-width: 45%;
    text-align: left;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0;
    color: var(--an-text-muted);
  }
  .inventory-table-wrap table.inventory-table tbody tr td[data-label=""] {
    flex: 0 0 auto;
    justify-content: flex-start;
    min-height: 44px;
    border-bottom: 0 !important;
  }
  .inventory-table-wrap table.inventory-table tbody tr td:not([data-label=""]) + td[data-label=""] {
    margin-left: auto;
  }
  .inventory-table-wrap table.inventory-table tbody tr td[data-label]:not([data-label=""]) {
    flex: 1 1 calc(50% - 8px);
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 3px;
    min-height: 0;
    padding: 8px 0 !important;
    border-bottom: 0 !important;
    text-align: left;
  }
  .inventory-table-wrap table.inventory-table tbody tr td[data-label]:not([data-label=""])::before {
    margin: 0;
    max-width: none;
  }
  .inventory-table-wrap table.inventory-table tbody tr td[data-label]:not([data-label=""]) {
    min-width: 0;
    overflow-wrap: anywhere;
  }
  .inventory-table-wrap table.inventory-table tbody tr td[data-label]:not([data-label=""]) > * {
    max-width: 100%;
    margin-left: 0 !important;
    text-align: left;
    align-items: flex-start;
    justify-content: flex-start;
  }
  .inventory-table-wrap table.inventory-table tbody tr td[data-label]:not([data-label=""]):has(button, .md-button, md-switch, md-checkbox, input, md-select) {
    flex: 1 1 auto;
    min-width: 60%;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    border-top: 1px solid var(--an-border) !important;
  }
  .inventory-table-wrap table.inventory-table tbody tr td[data-label]:not([data-label=""]):has(button, .md-button, md-switch, md-checkbox, input, md-select)::before {
    margin-right: auto;
  }
  .inventory-table-wrap table.inventory-table tbody tr td:first-child:not([data-label=""]),
  .inventory-table-wrap table.inventory-table tbody tr td[data-label=""]:first-child + td:not([data-label=""]),
  .inventory-table-wrap table.inventory-table tbody tr td[data-label=""]:first-child + td[data-label=""] + td:not([data-label=""]) {
    flex: 1 1 60%;
    min-width: 0;
    padding: 10px 0 !important;
    border-bottom: 1px solid var(--an-border) !important;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    text-align: left;
    font-size: 15px;
    font-weight: 600;
    color: var(--an-text);
  }
  .inventory-table-wrap table.inventory-table tbody tr td:first-child:not([data-label=""])::before,
  .inventory-table-wrap table.inventory-table tbody tr td[data-label=""]:first-child + td:not([data-label=""])::before,
  .inventory-table-wrap table.inventory-table tbody tr td[data-label=""]:first-child + td[data-label=""] + td:not([data-label=""])::before {
    display: none;
  }
  .inventory-table-wrap table.inventory-table tbody tr td:first-child:not([data-label=""]) *,
  .inventory-table-wrap table.inventory-table tbody tr td[data-label=""]:first-child + td:not([data-label=""]) *,
  .inventory-table-wrap table.inventory-table tbody tr td[data-label=""]:first-child + td[data-label=""] + td:not([data-label=""]) * {
    text-align: left;
  }
  .inventory-table-wrap table.inventory-table tbody tr td:first-child:not([data-label=""]),
  .inventory-table-wrap table.inventory-table tbody tr td[data-label=""][data-empty]:first-child + td:not([data-label=""]) {
    flex-basis: 100%;
  }
  .inventory-table-wrap table.inventory-table tbody tr td:last-child:has(> .md-button, > button, > div > .md-button, > div > button) {
    justify-content: flex-end;
  }
  .inventory-table-wrap table.inventory-table tbody tr td:last-child:has(> .md-button, > button, > div > .md-button, > div > button)::before {
    display: none;
  }
  .inventory-table-wrap table.inventory-table tbody tr td[colspan] {
    justify-content: center;
    text-align: center;
  }
  :is(table.table, table.ng-table):not(.table-card-container table) {
    display: block;
    max-width: 100%;
    overflow-x: auto;
  }
  :is(table.table, table.ng-table):not(.table-card-container table) th, :is(table.table, table.ng-table):not(.table-card-container table) td {
    padding: 8px 6px !important;
    font-size: 13px;
  }
  .table-pager-sticky .table-pager-btn,
  .marketing-table-pager-sticky .table-pager-btn {
    width: 36px;
    height: 36px;
  }
  .table-pager-sticky .table-pager,
  .marketing-table-pager-sticky .table-pager {
    flex-direction: row !important;
    flex-wrap: nowrap;
    justify-content: space-between;
    gap: 8px;
    margin-top: 0;
    padding: 6px 6px 6px 14px !important;
    text-align: left !important;
  }
}
@media (max-width: 959px) {
  .rpt-layout {
    flex-direction: column;
    min-height: 0;
  }
  .rpt-layout .rpt-sidenav {
    display: flex;
    width: 100%;
    min-height: 0;
    max-height: none;
    flex-direction: row;
    align-items: center;
    gap: 6px;
    padding: 8px var(--an-gutter);
    border-right: 0;
    border-bottom: 1px solid var(--an-border);
    position: sticky;
    top: 0;
    z-index: 6;
    align-self: stretch;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    background: var(--an-surface);
  }
  .rpt-layout .rpt-sidenav::-webkit-scrollbar {
    display: none;
  }
  .rpt-layout .rpt-sidenav > div {
    display: contents;
  }
  .rpt-layout .rpt-sidenav__section {
    display: none;
  }
  .rpt-layout .rpt-sidenav__pill {
    width: auto;
    flex: 0 0 auto;
    padding: 7px 12px;
    border-radius: var(--an-radius-pill);
    border: 1px solid var(--an-border);
    overflow: visible;
  }
  .rpt-layout > rpt-sidenav {
    display: block;
    align-self: stretch;
    position: sticky;
    top: 0;
    z-index: 6;
  }
  .rpt-content {
    align-self: stretch;
    margin-left: 0;
    margin-right: 0;
    box-sizing: border-box;
    padding: 16px var(--an-gutter) 40px;
  }
  .pm-workspace {
    flex-direction: column;
    min-height: 0;
  }
  .pm-sidenav {
    display: flex;
    width: 100%;
    min-height: 0;
    max-height: none;
    flex-direction: row;
    align-items: center;
    gap: 6px;
    padding: 8px var(--an-gutter);
    border-right: 0;
    border-bottom: 1px solid var(--an-border);
    position: sticky;
    top: 0;
    z-index: 6;
    align-self: stretch;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    background: var(--an-surface);
  }
  .pm-sidenav::-webkit-scrollbar {
    display: none;
  }
  .pm-sidenav__section {
    display: none;
  }
  .pm-sidenav__pill {
    width: auto;
    flex: 0 0 auto;
    padding: 7px 12px;
    border-radius: var(--an-radius-pill);
    border: 1px solid var(--an-border);
    overflow: visible;
  }
  .pm-sidenav .pm-place-card,
  .pm-sidenav .pm-sidenav__divider {
    display: none;
  }
  .pm-sidenav a {
    flex: 0 0 auto;
  }
  .pm-sidenav__pill--active::before {
    display: none;
  }
  .pm-overview-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }
  .pm-content {
    width: 100%;
    min-height: 0;
    padding: 16px var(--an-gutter);
    gap: 16px;
  }
  .kiosk-layout {
    flex-direction: column;
    height: auto;
    min-height: 100%;
  }
  .kiosk-sidebar {
    display: flex;
    width: 100%;
    min-height: 0;
    max-height: none;
    flex-direction: row;
    align-items: center;
    gap: 6px;
    padding: 8px var(--an-gutter);
    border-right: 0;
    border-bottom: 1px solid var(--an-border);
    position: sticky;
    top: 0;
    z-index: 6;
    align-self: stretch;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    background: var(--an-surface);
  }
  .kiosk-sidebar::-webkit-scrollbar {
    display: none;
  }
  .kiosk-sidebar .kiosk-nav-title {
    display: none;
  }
  .kiosk-sidebar .kiosk-nav-item {
    width: auto;
    flex: 0 0 auto;
    padding: 7px 12px;
    border-radius: var(--an-radius-pill);
    border: 1px solid var(--an-border);
    overflow: visible;
  }
  .kiosk-sidebar .kiosk-nav-item {
    margin-bottom: 0;
  }
  .kiosk-sidebar .kiosk-nav-item md-icon {
    margin-right: 6px;
  }
  .kiosk-content {
    padding: 16px var(--an-gutter) 96px;
    overflow-y: visible;
  }
  .pm-sticky-bar {
    left: 0;
    padding: 10px var(--an-gutter) calc(10px + env(safe-area-inset-bottom));
  }
}
@media (max-width: 599px) {
  .mkt-kpi-grid,
  .py-kpis,
  .dlv-kpis,
  .rvi-kpi-grid,
  .rpt-content .section-kpi-row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    margin: 0 0 12px;
    padding: 0 !important;
    overflow: visible;
  }
  .rpt-content .section-kpi-row > .section-kpi-card {
    width: auto;
  }
  .py-kpi,
  .dlv-kpi,
  .mkt-kpi-chip,
  .rpt-content .section-kpi-card {
    min-height: 68px;
    padding: 11px 10px 10px 14px;
  }
  .py-kpi__val,
  .dlv-kpi__val,
  .mkt-kpi-value,
  .rpt-content .section-kpi-val {
    font-size: 20px;
  }
  .py-kpi__lbl,
  .dlv-kpi__lbl,
  .mkt-kpi-label,
  .rpt-content .section-kpi-lbl {
    font-size: 10px;
    letter-spacing: 0.3px;
  }
  .pm-card__header-text {
    flex: 1 1 180px;
  }
  .pm-section-header__icon {
    width: 40px;
    height: 40px;
    min-width: 40px;
  }
  .pm-section-header__title {
    font-size: 20px;
  }
}
@media (max-width: 599px) {
  .w-stack {
    flex-direction: column !important;
    height: auto !important;
  }
  .w-stack > .w-stack__list,
  .w-stack > .w-stack__detail,
  .w-stack > .w-stack__subdetail {
    box-sizing: border-box;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    max-height: none !important;
    flex: 1 1 auto !important;
    border-right: 0 !important;
    border-left: 0 !important;
  }
  .w-stack:not(.w-stack--detail) > .w-stack__detail,
  .w-stack:not(.w-stack--subdetail) > .w-stack__subdetail,
  .w-stack.w-stack--detail > .w-stack__list,
  .w-stack.w-stack--subdetail > .w-stack__list,
  .w-stack.w-stack--subdetail > .w-stack__detail {
    display: none !important;
  }
  .w-stack .w-stack__back {
    display: inline-flex !important;
    flex: 0 0 auto;
    margin: 0 4px 0 -8px !important;
  }
}
@media (max-width: 959px) {
  .w-stack.w-stack--tablet {
    flex-direction: column !important;
    height: auto !important;
  }
  .w-stack.w-stack--tablet > .w-stack__list,
  .w-stack.w-stack--tablet > .w-stack__detail,
  .w-stack.w-stack--tablet > .w-stack__subdetail {
    box-sizing: border-box;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    max-height: none !important;
    flex: 1 1 auto !important;
    border-right: 0 !important;
    border-left: 0 !important;
  }
  .w-stack.w-stack--tablet:not(.w-stack--detail) > .w-stack__detail,
  .w-stack.w-stack--tablet:not(.w-stack--subdetail) > .w-stack__subdetail,
  .w-stack.w-stack--tablet.w-stack--detail > .w-stack__list,
  .w-stack.w-stack--tablet.w-stack--subdetail > .w-stack__list,
  .w-stack.w-stack--tablet.w-stack--subdetail > .w-stack__detail {
    display: none !important;
  }
  .w-stack.w-stack--tablet .w-stack__back {
    display: inline-flex !important;
    flex: 0 0 auto;
    margin: 0 4px 0 -8px !important;
  }
}
@media (hover: none) {
  .catalog-row-quick-actions .catalog-row-quick-btn,
  .catalog-row-quick-actions .catalog-row-action-btn,
  .catalog-card-actions,
  .sp-card__actions {
    opacity: 1;
  }
  .section-kpi-card:hover,
  .clients-loy-kpi-card:hover,
  .catalog-product-card:hover,
  .sp-card:hover,
  .pm-overview-card:hover,
  .mkt-card:hover {
    transform: none !important;
  }
  .mkt-toggle-btn,
  .lwd-tier-chip {
    min-height: 32px;
    padding-left: 10px;
    padding-right: 10px;
  }
  .mkt-toggle-btn {
    font-size: 11px;
  }
}
@keyframes an-sheet-up {
  from {
    translate: 0 100%;
  }
  to {
    translate: 0 0;
  }
}
@media (max-width: 599px) {
  .md-select-menu-container,
  .md-open-menu-container,
  .md-datepicker-calendar-pane.md-pane-open {
    top: auto !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    max-height: none !important;
    transform: none !important;
    border-radius: 18px 18px 0 0 !important;
    overflow: hidden !important;
    box-shadow: 0 -12px 40px rgba(0, 0, 0, 0.18) !important;
  }
  .md-select-menu-container.md-active,
  .md-open-menu-container.md-active,
  .md-datepicker-calendar-pane.md-pane-open {
    animation: an-sheet-up 0.24s cubic-bezier(0.2, 0.8, 0.2, 1);
  }
  .md-select-menu-container md-select-menu,
  .md-open-menu-container md-menu-content {
    box-sizing: border-box;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    max-height: min(72vh, 560px) !important;
    transform: none !important;
    border-radius: 18px 18px 0 0 !important;
    padding-bottom: env(safe-area-inset-bottom) !important;
    background: var(--an-surface) !important;
  }
  .md-select-menu-container md-select-menu md-content {
    max-height: calc(min(72vh, 560px) - 20px) !important;
  }
  .md-select-menu-container md-select-menu::before,
  .md-open-menu-container md-menu-content::before {
    content: "";
    flex: 0 0 auto;
    display: block;
    width: 36px;
    height: 4px;
    margin: 8px auto 6px;
    border-radius: 2px;
    background: var(--an-border-strong);
  }
  .md-select-menu-container md-option,
  .md-open-menu-container md-menu-item,
  .md-open-menu-container md-menu-item > .md-button {
    min-height: 48px !important;
    height: auto !important;
  }
  .md-select-menu-container md-option {
    padding: 0 var(--an-gutter) !important;
    font-size: 15px !important;
  }
  md-backdrop.md-select-backdrop,
  md-backdrop.md-menu-backdrop {
    background-color: rgba(15, 17, 26, 0.38) !important;
    opacity: 1 !important;
  }
  body:has(.md-datepicker-calendar-pane.md-pane-open)::after {
    content: "";
    position: fixed;
    inset: 0;
    z-index: 99;
    background: rgba(15, 17, 26, 0.38);
    pointer-events: none;
  }
  .md-datepicker-calendar-pane.md-pane-open {
    display: flex !important;
    flex-direction: column;
    align-items: center;
    border: 0 !important;
    background: var(--an-surface) !important;
    padding: 12px 0 env(safe-area-inset-bottom) !important;
  }
  .md-datepicker-calendar-pane.md-pane-open .md-datepicker-input-mask {
    display: none !important;
  }
}
@media (max-width: 599px) {
  .md-dialog-container {
    padding: 0 !important;
  }
  md-dialog:not(:has(.md-dialog-content-body)) {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 100% !important;
    max-height: 100% !important;
    border-radius: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
  }
  md-dialog:not(:has(.md-dialog-content-body)) > form {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
    width: 100%;
    overflow-x: hidden;
  }
  md-dialog:not(:has(.md-dialog-content-body)) md-dialog-content {
    flex: 1 1 auto;
    min-height: 0 !important;
    max-height: none !important;
    overflow-y: auto;
    padding: 16px var(--an-gutter);
    -webkit-overflow-scrolling: touch;
  }
  md-dialog:not(:has(.md-dialog-content-body)) md-dialog-actions {
    flex-shrink: 0;
    flex-wrap: wrap;
    padding: 10px var(--an-gutter) calc(10px + env(safe-area-inset-bottom));
  }
  md-dialog:not(:has(.md-dialog-content-body)) md-toolbar .md-toolbar-tools {
    padding: 0 4px 0 var(--an-gutter);
  }
  md-dialog .wf-form-body,
  md-dialog .wf-form-body--compact {
    padding: 4px 0;
  }
  md-dialog-actions.wf-actions,
  md-dialog .wf-actions {
    padding: 10px var(--an-gutter) calc(10px + env(safe-area-inset-bottom)) !important;
  }
  md-dialog:has(md-toolbar .md-icon-button[ng-click]) md-dialog-actions .wf-cancel-btn,
  md-dialog:has(md-toolbar .md-button[ng-click="cancel()"]) md-dialog-actions .md-button[ng-click="cancel()"],
  md-dialog:has(md-toolbar .md-button[ng-click="hide()"]) md-dialog-actions .md-button[ng-click="hide()"] {
    display: none !important;
  }
  md-dialog-actions .md-button.wf-save-btn,
  md-dialog-actions .md-button.md-primary.md-raised {
    flex: 1 1 auto;
    justify-content: center;
  }
  md-dialog-actions .md-button.wf-cancel-btn {
    width: auto !important;
    min-width: 0 !important;
    padding: 0 14px !important;
  }
  .md-dialog-container:has(> md-dialog .md-dialog-content-body) {
    align-items: flex-end !important;
  }
  md-dialog:has(.md-dialog-content-body) {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    border-radius: 18px 18px 0 0 !important;
    animation: an-sheet-up 0.24s cubic-bezier(0.2, 0.8, 0.2, 1);
  }
  md-dialog:has(.md-dialog-content-body) .md-dialog-content {
    padding: 24px var(--an-gutter) 8px !important;
  }
  md-dialog:has(.md-dialog-content-body) md-dialog-actions {
    flex-direction: column-reverse;
    align-items: stretch;
    gap: 8px;
    padding: 8px var(--an-gutter) calc(12px + env(safe-area-inset-bottom)) !important;
    border-top: 0 !important;
  }
  md-dialog:has(.md-dialog-content-body) md-dialog-actions .md-button {
    width: 100%;
    margin: 0 !important;
    min-height: 48px !important;
    line-height: 48px !important;
    border-radius: 12px !important;
    font-size: 15px !important;
  }
  md-dialog:has(.md-dialog-content-body) md-dialog-actions .md-button.md-primary.md-confirm-button:not(.md-raised):not(.md-icon-button) {
    background: #ec4e36 !important;
    border-color: #ec4e36 !important;
    color: #fff !important;
  }
  md-dialog:has(.md-dialog-content-body) md-dialog-actions .md-button.md-primary.md-cancel-button:not(.md-raised):not(.md-icon-button) {
    color: var(--an-text) !important;
  }
}
@media (max-width: 959px) {
  .layout-column:is(.layout-gt-sm-row, .layout-gt-md-row, .layout-gt-lg-row) > :is(.flex, [class^=flex-], [class*=" flex-"]) {
    flex: 0 0 auto;
    max-height: none;
  }
}
@media (max-width: 599px) {
  :is(.layout-column.layout-gt-xs-row, .layout-xs-column) > :is(.flex, [class^=flex-], [class*=" flex-"]) {
    flex: 0 0 auto;
    max-height: none;
  }
}
@media (max-width: 599px) {
  .pm-cards-row,
  .pm-cards-row--3 {
    grid-template-columns: minmax(0, 1fr);
  }
  .layout-row:has(> [class*=flex-xs-]),
  .layout-row:has(> [class*=flex-gt-xs-]),
  .layout-row:has(> [class*=flex-gt-sm-]) {
    flex-wrap: wrap;
  }
  md-card-content > .layout-row {
    flex-wrap: wrap;
  }
  md-card-content .md-button:not(.md-icon-button) {
    max-width: 100%;
    height: auto;
    min-height: 36px;
    line-height: 1.3;
    padding-top: 8px;
    padding-bottom: 8px;
    white-space: normal;
    text-align: left;
  }
  .table-explain {
    margin: 4px var(--an-gutter) 12px;
    font-size: 12px;
  }
  .layout-row.layout-wrap > .flex-5,
  .layout-row.layout-wrap > .flex-10,
  .layout-row.layout-wrap > .flex-15,
  .layout-row.layout-wrap > .flex-20,
  .layout-row.layout-wrap > .flex-25,
  .layout-row.layout-wrap > .flex-30,
  .layout-row.layout-wrap > .flex-33,
  .layout-row.layout-wrap > .flex-35,
  .layout-row.layout-wrap > .flex-40,
  .layout-row.layout-wrap > .flex-45 {
    flex: 1 1 100% !important;
    max-width: 100% !important;
  }
  .layout-row > [flex-gt-xs]:not([flex]):not([flex-xs]),
  .layout-row > [flex-gt-sm]:not([flex]):not([flex-xs]) {
    flex: 1 1 100%;
    max-width: 100%;
  }
  .md-button:not(.md-icon-button):not(.md-fab) {
    flex-shrink: 0;
  }
  input:not([type=checkbox]):not([type=radio]):not([type=range]),
  textarea,
  select {
    font-size: 16px !important;
  }
  md-input-container.md-block {
    width: auto !important;
    max-width: 100%;
  }
  md-dialog .layout-row.layout-wrap,
  form .layout-row.layout-wrap {
    row-gap: 14px;
  }
  form [layout=row] > md-input-container[flex],
  md-dialog-content [layout=row] > md-input-container[flex] {
    min-width: 0;
  }
}
@media (max-width: 599px) {
  .wt-login-card-container {
    padding: 72px 12px 24px;
    justify-content: flex-start !important;
  }
  .wt-glass-card {
    padding: 28px 20px;
    border-radius: 24px;
  }
  .su-card-container {
    padding: 72px 12px 24px;
  }
  .su-glass-card {
    padding: 28px 18px 24px;
    border-radius: 24px;
    margin: 0;
  }
  .su-venue-finder__search-row {
    flex-wrap: wrap;
  }
  .su-venue-finder__field,
  .su-venue-finder__country {
    flex: 1 1 100%;
  }
  .su-venue-finder__country .su-country-input--compact {
    width: 100% !important;
    max-width: none !important;
  }
  .wt-theme-toggle {
    top: 12px;
    right: 12px;
  }
}
@media (max-width: 959px) {
  md-toolbar.kds-toolbar {
    max-height: none !important;
  }
  md-toolbar.kds-toolbar .md-toolbar-tools {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) 32px 32px;
    grid-template-areas: "left left search menu" "views center center center";
    align-items: center;
    column-gap: 4px;
    row-gap: 8px;
    height: auto !important;
    max-height: none !important;
    padding: 8px var(--an-gutter) !important;
  }
  .kds-toolbar-left {
    grid-area: left;
  }
  .kds-toolbar-right {
    display: contents !important;
  }
  .kds-toolbar-right > button:first-of-type {
    grid-area: search;
  }
  .kds-toolbar-right > button:last-of-type {
    grid-area: menu;
  }
  .kds-views-selector {
    grid-area: views;
    margin-right: 4px;
  }
  .kds-views-selector > md-icon:not(.md-select-icon) {
    display: none !important;
  }
  .kds-views-selector md-select {
    min-width: 0;
    max-width: 120px;
  }
  .kds-toolbar-center {
    grid-area: center;
    min-width: 0;
    justify-content: flex-start !important;
    overflow-x: auto;
    scrollbar-width: none;
    margin: 0 calc(-1 * var(--an-gutter));
    padding: 0 var(--an-gutter);
  }
  .kds-toolbar-center::-webkit-scrollbar {
    display: none;
  }
  .kds-toolbar-center .status-filter {
    flex: none;
    white-space: nowrap;
  }
}
@media (max-width: 599px) {
  .rpt-map-overlay--top-right {
    top: 12px;
    left: 12px;
    right: 12px;
    justify-content: flex-start !important;
    overflow-x: auto;
    scrollbar-width: none;
  }
  .rpt-map-overlay--top-right::-webkit-scrollbar {
    display: none;
  }
  .rpt-map-overlay--top-right > * {
    flex: none;
  }
  .rpt-map-overlay--top-left {
    top: 76px;
    left: 12px;
    right: 12px;
    padding: 8px;
    overflow-x: auto;
    scrollbar-width: none;
  }
  .rpt-map-overlay--top-left::-webkit-scrollbar {
    display: none;
  }
  .rpt-map-overlay__title {
    display: none !important;
  }
  .rpt-map-overlay--bottom-center {
    bottom: 12px;
  }
}
@media (max-width: 599px) {
  .filter-tray--open::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: 1000;
    background: rgba(15, 23, 42, 0.32);
  }
  .filter-tray__panel {
    position: fixed;
    top: auto;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1001;
    width: auto;
    max-height: 80vh;
    padding: 20px var(--an-gutter) calc(16px + env(safe-area-inset-bottom));
    border-radius: 18px 18px 0 0;
    animation: an-sheet-up 0.24s cubic-bezier(0.2, 0.8, 0.2, 1);
  }
  .filter-tray__done {
    align-self: stretch;
    height: 44px;
  }
}
/*# sourceMappingURL=waitry.min.css.map */
