@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Instrument+Sans:wght@400;500;600;700&display=swap');

:root {
  --bg: #f5f4ee;
  --card: #ffffff;
  --text: #0f2230;
  --muted: #526372;
  --line: #d6ddd8;
  --accent: #0b8a6d;
  --accent-strong: #066952;
  --icon-size-feather: 28px;
  --icon-size-font: 35px;
  --default-page-background:
    radial-gradient(circle at 12% 0%, rgba(11, 138, 109, 0.16), transparent 34%),
    radial-gradient(circle at 88% 12%, rgba(238, 143, 28, 0.14), transparent 36%),
    linear-gradient(180deg, #f5f4ee 0%, #f8f7f3 54%, #eceae0 100%);
}

* {
  box-sizing: border-box;
}

[hidden] {
  display: none !important;
}

html {
  min-height: 100%;
  min-height: 100dvh;
  background-color: var(--bg);
  background: var(--page-background, var(--default-page-background));
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: scroll;
}

body {
  margin: 0;
  min-height: 100%;
  min-height: 100dvh;
  font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  position: relative;
  isolation: isolate;
  background-color: var(--bg);
  background: var(--page-background, var(--default-page-background));
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: scroll;
  color: var(--text);
}

body::before {
  content: '';
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: var(--page-background, var(--default-page-background));
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: scroll;
  filter: blur(var(--page-background-blur, 0px));
  transform: scale(1.02);
}

body.admin-page {
  padding-top: 102px;
}

body.admin-page.has-billing-overdue-alert {
  padding-top: 142px;
}

.container {
  width: min(980px, 92vw);
  margin: 24px auto;
}

.admin-user-summary {
  display: grid;
  justify-items: center;
  gap: 12px;
  margin-bottom: 1cm;
  text-align: center;
}

.admin-user-summary-photo-wrap {
  width: 160px;
  height: 160px;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: transparent;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.admin-user-summary-photo {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.admin-user-summary-photo-placeholder {
  color: var(--muted);
  font-size: 2rem;
  line-height: 1;
}

.admin-user-summary-greeting {
  margin: 0;
  font-size: 2rem;
  color: var(--text);
  font-weight: 600;
}

.admin-card-selector {
  width: min(760px, 100%);
  margin: -8px auto 16px;
  display: grid;
  gap: 8px;
}

.admin-card-selector label {
  font-weight: 600;
  color: var(--text);
}

.admin-card-selector-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 8px;
  align-items: center;
}

.admin-card-selector-row button {
  min-width: 120px;
  height: 42px;
}

.admin-card-selector-hint {
  margin: 0;
  color: var(--muted);
  font-size: 0.92rem;
  line-height: 1.3;
}

.admin-card-selection-notice {
  margin: 8px 0 18px;
  border: 1px dashed var(--line);
  border-radius: 12px;
  padding: 12px 14px;
  background: color-mix(in srgb, var(--card), #fff 8%);
  color: var(--muted);
  font-weight: 600;
}

@media (max-width: 720px) {
  .admin-card-selector-row {
    grid-template-columns: 1fr;
  }

  .admin-card-selector-row button {
    width: 100%;
    min-width: 0;
  }
}

.admin-topbar {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 40;
  height: 86px;
  padding: 14px 18px;
  background: color-mix(in srgb, var(--card), #000 16%);
  border-bottom: 1px solid var(--line);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.billing-overdue-alert {
  position: fixed;
  top: 86px;
  left: 0;
  right: 0;
  z-index: 39;
  background: #fff4e5;
  border-bottom: 1px solid #f2c77c;
  color: #7a4b00;
}

.billing-overdue-alert-inner {
  width: min(980px, 92vw);
  margin: 0 auto;
  min-height: 34px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 6px;
  padding: 4px 0;
}

.billing-overdue-alert-text {
  margin: 0;
  font-size: 0.88rem;
  font-weight: 600;
  line-height: 1.25;
}

.billing-overdue-alert-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 102px;
  height: 28px;
  padding: 0 12px;
  border-radius: 999px;
  text-decoration: none;
  font-weight: 700;
  border: 1px solid #e8a64a;
  background: #ffcf7d;
  color: #5a3500;
  transition: filter 0.16s ease, transform 0.16s ease;
}

.billing-overdue-alert-link-qr {
  border-color: #9a7f3f;
  background: #f4deb2;
  color: #47310a;
}

@media (hover: hover) {
  .billing-overdue-alert-link:hover {
    filter: brightness(0.97);
    transform: translateY(-1px);
  }
}

@media (max-width: 760px) {
  body.admin-page.has-billing-overdue-alert {
    padding-top: 162px;
  }

  .billing-overdue-alert-inner {
    min-height: 48px;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 6px 0;
  }

  .billing-overdue-alert-link {
    min-width: 0;
    height: 28px;
    padding: 0 10px;
  }
}

body.admin-page.has-billing-overdue-pix-modal {
  overflow: hidden;
}

.billing-overdue-pix-modal {
  z-index: 140;
}

.billing-overdue-pix-screen {
  width: min(430px, 92vw);
}

.billing-overdue-pix-topbar {
  justify-content: flex-end;
}

.billing-overdue-pix-card {
  padding-top: 20px;
}

.billing-overdue-pix-card .pix-charge-title {
  font-size: 1.08rem;
}

.billing-overdue-pix-card .pix-charge-value {
  margin: 0;
  font-size: 1rem;
  text-align: center;
  color: #111827;
}

.billing-overdue-pix-card .pix-charge-value strong {
  font-size: 1.12rem;
}

.admin-topbar-logo {
  display: inline-flex;
  align-items: center;
}

.admin-topbar-logo img {
  height: 56px;
  width: auto;
  display: block;
}

.admin-topbar-right {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
}

.topbar-share-btn {
  width: 42px;
  min-width: 42px;
  height: 42px;
  padding: 0;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: transparent !important;
  border: 0;
  color: #f0f4ff;
  transition: transform 0.16s ease;
}

.topbar-share-btn svg {
  width: 18px;
  height: 18px;
}

.topbar-profile-link {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  font-weight: 700;
  letter-spacing: 0.03em;
  color: #f0f4ff;
  transition: transform 0.16s ease;
}

.topbar-profile-link.disabled-link {
  opacity: 0.55;
  pointer-events: none;
}

.topbar-settings-menu {
  position: relative;
}

.topbar-settings-trigger {
  list-style: none;
  width: 42px;
  min-width: 42px;
  height: 42px;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  cursor: pointer;
  transition: transform 0.16s ease;
}

.topbar-settings-trigger::-webkit-details-marker {
  display: none;
}

.topbar-settings-trigger svg {
  width: 18px;
  height: 18px;
}

.topbar-settings-popover {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  min-width: 130px;
  background: #151f3f;
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 8px;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.35);
}

.topbar-settings-popover .topbar-logout-form {
  margin: 0;
}

.topbar-settings-popover .topbar-logout-form button {
  width: 100%;
  min-width: 0;
  height: 38px;
}

.panel-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: 1fr;
  align-items: start;
}

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

.panel-actions {
  margin-top: 38px;
  padding-top: 14px;
  display: grid;
  gap: 8px;
}

.panel-actions #saveBtn {
  width: auto;
  min-width: 132px;
  padding: 10px 22px;
  justify-self: end;
}

.card {
  background: color-mix(in srgb, var(--card), #fff 2%);
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 18px;
}

h1, h2, h3 {
  margin-top: 0;
}

label {
  display: block;
  font-size: 0.85rem;
  color: var(--muted);
  margin-bottom: 6px;
}

input,
textarea,
select,
button {
  width: 100%;
  border-radius: 10px;
  border: 1px solid var(--line);
  background: #0d1430;
  color: var(--text);
  padding: 10px 12px;
  font-size: 0.95rem;
}

input.field-invalid,
textarea.field-invalid,
select.field-invalid {
  border-color: #ff6b6b;
  box-shadow: 0 0 0 1px rgba(255, 107, 107, 0.35);
}

/* Safari may render selects with intrinsic width; force full field width like inputs. */
select:not(.country-native-select) {
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  height: 44px;
  min-height: 44px;
  line-height: 1.2;
  padding-right: 36px;
  -webkit-appearance: menulist;
  appearance: menulist;
}

.field-error-message {
  margin: 6px 0 0;
  font-size: 0.78rem;
  color: #ff9b9b;
}

textarea {
  min-height: 80px;
  resize: vertical;
}

button {
  cursor: pointer;
  border: none;
  background: var(--accent);
  color: white;
  font-weight: 600;
}

button.secondary {
  background: #2b355f;
}

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

.row.align-right-field .row-field-right {
  grid-column: 1 / -1;
}

.row > div,
.row-3 > div {
  min-width: 0;
}

.phone-with-country {
  display: grid;
  grid-template-columns: 90px 1fr;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #0d1430;
  overflow: hidden;
}

.phone-with-country input {
  width: 100%;
}

.country-prefix {
  position: relative;
  height: 100%;
  border-right: 1px solid var(--line);
  background: #111936;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 26px 0 10px;
}

.country-flag {
  font-size: 1.18rem;
  line-height: 1;
}

.country-dial-code {
  font-size: 0.95rem;
  line-height: 1;
  color: var(--text);
}

.country-arrow {
  position: absolute;
  right: 9px;
  top: 50%;
  width: 0;
  height: 0;
  transform: translateY(-40%);
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 5px solid var(--muted);
  pointer-events: none;
}

.country-native-select {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  background: transparent;
  color: transparent;
  cursor: pointer;
  opacity: 0;
  -webkit-appearance: none;
  appearance: none;
}

.country-native-select option {
  color: #0f172a;
  background: #ffffff;
}

.country-native-select option:disabled {
  color: #64748b;
}

.phone-with-country input {
  border: 0;
  border-radius: 0;
  background: transparent;
}

.phone-with-country input:focus,
.country-native-select:focus {
  outline: none;
}

.phone-with-country:focus-within {
  border-color: var(--accent);
  box-shadow: 0 0 0 1px rgba(11, 138, 109, 0.26);
}

.at-handle-input {
  display: grid;
  grid-template-columns: 34px 1fr;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #0d1430;
  overflow: hidden;
}

.at-handle-input span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  color: var(--muted);
  background: #111936;
  pointer-events: none;
  -webkit-user-select: none;
  user-select: none;
}

.at-handle-input input {
  border: 0;
  border-radius: 0;
  background: transparent;
}

.at-handle-input input:focus {
  outline: none;
}

.at-handle-input:focus-within {
  border-color: var(--accent);
  box-shadow: 0 0 0 1px rgba(11, 138, 109, 0.26);
}

.row-3 {
  display: grid;
  gap: 10px;
  grid-template-columns: 1fr 1fr auto;
  align-items: end;
}

.upload-profile-row {
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) 180px;
  align-items: end;
}

.upload-profile-row button {
  margin-bottom: 0;
}

.profile-photo-editor {
  display: grid;
  gap: 10px;
}

.profile-photo-title-row {
  display: flex;
  align-items: center;
  gap: 10px;
}

.profile-photo-title-row > label,
.profile-photo-title-row > p,
.profile-photo-title-row > h3 {
  margin: 0;
}

.profile-photo-title {
  margin: 0;
  font-size: 0.85rem;
  color: var(--muted);
}

.profile-photo-title-line {
  display: block;
  height: 1px;
  flex: 1;
  min-width: 70px;
  background: color-mix(in srgb, var(--line), #ffffff 10%);
}

.profile-photo-preview {
  width: 140px;
  height: 140px;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  color: var(--muted);
  font-size: 0.86rem;
}

.profile-photo-preview img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.profile-image-upload-grid {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 10px;
}

.profile-image-upload-grid.is-uploading {
  opacity: 0.72;
  pointer-events: none;
  cursor: wait;
}

.profile-image-upload-grid.has-image .profile-image-add-tile {
  display: none !important;
}

.profile-image-upload-grid:not(.has-image) .profile-upload-tile {
  display: none !important;
}

.profile-image-upload-grid:not(.has-image) .profile-upload-preview-row {
  display: none !important;
}

.profile-image-add-tile {
  width: 140px;
  min-width: 140px;
  min-height: 140px;
  border-radius: 16px;
  padding: 10px;
}

.profile-image-add-tile i {
  font-size: 1.8rem;
}

.profile-image-add-tile span {
  font-size: 0.9rem;
  font-weight: 600;
}

.profile-image-add-tile.is-uploading {
  cursor: wait;
}

.profile-upload-tile {
  position: relative;
  width: 140px;
  min-width: 140px;
  min-height: 140px;
  border-radius: 16px;
}

.profile-upload-preview-row {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.profile-image-upload-grid-profile .profile-upload-tile {
  border-radius: 999px;
}

.profile-image-upload-grid-profile .profile-image-add-tile {
  border-radius: 999px;
}

.profile-upload-tile > span {
  color: #6a748b;
  font-size: 0.86rem;
  text-align: center;
  padding: 0 10px;
}

.profile-image-remove-btn {
  z-index: 2;
}

.profile-image-delete-side-btn {
  width: 42px;
  min-width: 42px;
  height: 42px;
  color: #c53245;
  border-color: #e8c6cd;
  background: #ffffff !important;
}

.profile-image-upload-grid-logo .profile-image-add-tile,
.profile-image-upload-grid-logo .profile-upload-tile {
  width: min(280px, 100%);
  min-width: 0;
  min-height: 92px;
}

.profile-image-upload-grid-logo .profile-upload-preview-row {
  width: min(332px, 100%);
}

.profile-image-upload-grid-logo .profile-upload-preview-row .profile-upload-tile {
  flex: 1 1 auto;
  width: auto;
}

.profile-image-upload-grid-logo .profile-image-add-tile {
  border-radius: 12px;
}

.profile-image-upload-grid-logo .profile-image-add-tile i {
  font-size: 1.45rem;
}

.profile-image-upload-grid-logo .profile-image-add-tile span {
  font-size: 0.88rem;
}

.profile-upload-tile-logo {
  border-radius: 12px;
}

.profile-photo-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: nowrap;
  width: fit-content;
}

.profile-photo-actions .upload-image-btn {
  width: auto;
  min-width: 130px;
  height: 40px;
  padding: 0 14px;
  justify-self: start;
}

.company-logo-editor {
  display: grid;
  gap: 10px;
  margin-top: 2px;
}

.company-logo-preview {
  width: min(280px, 100%);
  height: 92px;
  border-radius: 12px;
  background: #ffffff;
}

.company-logo-preview img {
  object-fit: contain;
  padding: 8px 10px;
}

.photo-crop-modal {
  position: fixed;
  inset: 0;
  z-index: 90;
}

.photo-crop-backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgba(6, 10, 22, 0.78);
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
}

.photo-crop-panel {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: min(440px, calc(100vw - 24px));
  max-height: calc(100vh - 24px);
  overflow: auto;
  background: color-mix(in srgb, var(--card), #ffffff 4%);
  border: 1px solid var(--line);
  border-radius: 18px;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.42);
  padding: 14px 14px 12px;
  display: grid;
  gap: 12px;
}

.photo-crop-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  position: sticky;
  top: -14px;
  z-index: 8;
  margin: -14px -14px 0;
  padding: 12px 14px 10px;
  background: inherit;
  border-bottom: 1px solid var(--line);
}

.photo-crop-header h3 {
  margin: 0;
  font-size: 1.02rem;
  font-weight: 700;
  flex: 1;
}

.photo-crop-close-btn {
  width: 34px;
  min-width: 34px;
  height: 34px;
  padding: 0;
  border-radius: 10px;
  border: 1px solid var(--line);
  background: #ffffff;
  color: #243248;
  font-size: 1.2rem;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.photo-crop-canvas-wrap {
  width: 100%;
  display: grid;
  place-items: center;
}

.photo-crop-canvas-wrap canvas {
  width: min(280px, 76vw);
  max-width: 280px;
  aspect-ratio: 1 / 1;
  height: auto;
  border-radius: 14px;
  border: 1px solid var(--line);
  background: transparent;
  cursor: grab;
  touch-action: none;
}

.photo-crop-panel.company-logo-crop {
  width: min(520px, calc(100vw - 24px));
}

.photo-crop-panel.company-logo-crop .photo-crop-canvas-wrap canvas {
  width: min(320px, 84vw);
  max-width: 320px;
  aspect-ratio: 3 / 1;
  background: transparent;
}

.photo-crop-canvas-wrap canvas.dragging {
  cursor: grabbing;
}

.photo-crop-controls {
  display: grid;
  gap: 6px;
  padding: 2px 2px 0;
}

.photo-crop-controls label {
  font-size: 0.84rem;
  color: var(--muted);
  font-weight: 600;
}

.photo-crop-zoom-value-line {
  margin: -2px 0 2px;
  text-align: center;
  font-size: 0.86rem;
  font-weight: 700;
  color: var(--text);
}

#photoCropZoomRange {
  --range-track-color: #ffffff;
  --range-track-border: var(--line);
  --range-color: var(--accent);
}

.photo-crop-controls .small {
  margin: 0;
}

.photo-crop-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  padding-top: 6px;
  border-top: 1px solid var(--line);
}

.photo-crop-actions button {
  min-width: 126px;
  height: 38px;
  border-radius: 10px;
}

@media (max-width: 640px) {
  .photo-crop-panel {
    width: min(460px, calc(100vw - 16px));
    border-radius: 14px;
    padding: 12px;
  }

  .photo-crop-panel.company-logo-crop {
    width: min(520px, calc(100vw - 16px));
  }

  .photo-crop-actions {
    justify-content: stretch;
  }

  .photo-crop-actions button {
    flex: 1;
    min-width: 0;
  }
}

.profile-customization-block {
  display: grid;
  gap: 6px;
  margin-top: 6px;
}

.profile-location-settings {
  display: grid;
  gap: 8px;
}

.profile-location-display-toggle {
  margin: 0;
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  color: var(--text);
  font-size: 0.9rem;
  line-height: 1.35;
}

.profile-location-display-toggle input[type='checkbox'] {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: 0;
  opacity: 0;
  pointer-events: none;
}

.profile-location-display-toggle-slider {
  position: relative;
  width: 44px;
  min-width: 44px;
  height: 24px;
  border-radius: 999px;
  background: #d1d6e1;
  border: 1px solid #c7cedb;
  transition: background-color 0.18s ease, border-color 0.18s ease;
}

.profile-location-display-toggle-slider::after {
  content: '';
  position: absolute;
  top: 2px;
  left: 2px;
  width: 18px;
  height: 18px;
  border-radius: 999px;
  background: #ffffff;
  box-shadow: 0 1px 2px rgba(15, 34, 48, 0.25);
  transition: transform 0.18s ease;
}

.profile-location-display-toggle input[type='checkbox']:checked + .profile-location-display-toggle-slider {
  background: #0b8a6d;
  border-color: #0b8a6d;
}

.profile-location-display-toggle input[type='checkbox']:checked + .profile-location-display-toggle-slider::after {
  transform: translateX(20px);
}

.profile-location-display-toggle input[type='checkbox']:focus-visible + .profile-location-display-toggle-slider {
  outline: 2px solid #2f6bff;
  outline-offset: 2px;
}

.field-label-with-toggle {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  flex-wrap: nowrap;
}

.field-label-with-toggle > label {
  margin: 0;
}

.field-label-with-toggle > label:first-child {
  flex: 0 0 auto;
}

.field-label-with-toggle .agenda-notification-toggle {
  margin-left: 0;
  color: #4f5b76;
  font-size: 0.8rem;
  min-width: 0;
  flex: 0 1 auto;
}

.field-label-with-toggle .agenda-notification-toggle .profile-location-display-toggle-text {
  white-space: nowrap;
}

.profile-custom-link-block {
  display: grid;
  gap: 6px;
  margin-top: 4px;
}

.profile-link-input {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #0d1430;
  overflow: hidden;
}

.profile-link-input span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: 0 10px;
  color: var(--muted);
  background: #111936;
  pointer-events: none;
  -webkit-user-select: none;
  user-select: none;
}

.profile-link-input input {
  border: 0;
  border-radius: 0;
  background: transparent;
}

.profile-link-input input:focus {
  outline: none;
}

.profile-link-input:focus-within {
  border-color: var(--accent);
  box-shadow: 0 0 0 1px rgba(15, 87, 213, 0.35);
}

.profile-link-status {
  min-height: 16px;
  color: var(--muted);
  font-size: 0.8rem;
}

.profile-link-status[data-state='ok'] {
  color: #0b8a6d;
}

.profile-link-status[data-state='checking'] {
  color: #2f6f5a;
}

.profile-link-status[data-state='error'] {
  color: #ff9b9b;
}

.pix-charge-section {
  display: grid;
  gap: 10px;
  margin-top: 2px;
  padding: 12px;
  background: linear-gradient(180deg, #ffffff 0%, #fbfcff 100%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.95);
}

.pix-charge-heading {
  margin: 0;
  font-size: 0.98rem;
  color: #1b2c4d;
}

.pix-strong-text {
  margin: 0;
  color: #1b2c4d;
}

.pix-extra-header {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 0;
}

.pix-extra-title-row {
  flex: 0 0 auto;
}

.pix-extra-btn-line {
  flex: 1;
  min-width: 36px;
  margin-left: 10px;
}

.pix-add-extra-btn {
  width: 34px;
  min-width: 20px;
  height: 34px;
  margin-left: 4px;
  border-radius: 999px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.2rem;
  line-height: 1;
  background: #ffffff;
  color: #213150;
  border: 1px solid var(--line);
}

.pix-extra-description {
  margin: 0;
  color: var(--muted);
  font-size: 0.84rem;
}

.pix-extra-list {
  display: grid;
  gap: 10px;
}

.pix-extra-item {
  display: grid;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 10px;
  background: #ffffff;
}

.pix-extra-actions {
  display: flex;
  justify-content: flex-start;
}

.pix-extra-delete-btn {
  width: 34px;
  min-width: 34px;
  min-height: 34px;
  height: 34px;
  padding: 0;
  border: 1px solid #f2c3ca !important;
  border-radius: 999px;
  background: #fff4f6 !important;
  box-shadow: none !important;
  color: #cc2d3f !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transform: none !important;
}

.pix-extra-delete-btn:hover,
.pix-extra-delete-btn:focus-visible {
  background: #ffe8ec !important;
  border-color: #e18a99 !important;
  filter: none;
  box-shadow: none !important;
  transform: none !important;
}

.pix-extra-delete-btn svg {
  width: 16px;
  height: 16px;
}

.pix-divider {
  width: 100%;
  border: 0;
  border-top: 1px solid var(--line);
  margin: 2px 0;
}

@media (hover: hover) {
  .pix-add-extra-btn:hover {
    box-shadow: 0 8px 18px rgba(18, 24, 43, 0.12);
  }
}

#profileCustomizationBtn {
  width: auto;
  min-width: 190px;
  height: 38px;
  padding: 0 14px;
  justify-self: start;
}

.icon-circle-btn {
  width: 44px;
  min-width: 44px;
  height: 44px;
  border-radius: 999px;
  background: #2b355f;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  transition: transform 0.16s ease;
}

.icon-circle-btn svg {
  width: 18px;
  height: 18px;
}

@media (max-width: 640px) {
  .row,
  .row-3 {
    grid-template-columns: 1fr;
  }

  .row.align-right-field .row-field-right {
    grid-column: 1 / -1;
  }

  .phone-with-country {
    grid-template-columns: 132px 1fr;
  }

  .upload-profile-row {
    grid-template-columns: 1fr;
  }

  .profile-image-upload-grid {
    width: 100%;
  }

  .profile-image-upload-grid-profile .profile-image-add-tile,
  .profile-image-upload-grid-profile .profile-upload-tile {
    width: 140px;
    min-width: 140px;
  }

  .profile-image-upload-grid-logo .profile-image-add-tile,
  .profile-image-upload-grid-logo .profile-upload-tile {
    width: 100%;
    min-width: 0;
  }
}

.space {
  display: grid;
  gap: 12px;
}

.small {
  font-size: 0.8rem;
  color: var(--muted);
}

.public-card {
  width: min(460px, 92vw);
  margin: 22px auto;
  border-radius: 22px;
  overflow: hidden;
}

.personalization-page {
  padding-top: 14px;
}

.public-profile-page {
  overflow-x: hidden;
}

.personalization-top-controls {
  width: min(460px, 92vw);
  margin: 0 auto 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.personalization-circle-btn {
  width: 42px;
  min-width: 42px;
  height: 42px;
  border-radius: 999px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--accent);
  color: white;
  transition: transform 0.16s ease;
}

.personalization-circle-btn span {
  font-size: 1rem;
  line-height: 1;
}

.personalization-circle-btn svg {
  width: 18px;
  height: 18px;
}

.personalization-pill-btn {
  width: auto;
  min-width: 124px;
  height: 42px;
  padding: 0 12px;
  border-radius: 999px;
  transition: transform 0.16s ease;
}

.personalization-more-menu {
  position: relative;
}

.personalization-more-menu summary {
  list-style: none;
  transition: transform 0.16s ease;
}

.personalization-more-menu summary::-webkit-details-marker {
  display: none;
}

.personalization-more-popover {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  min-width: 238px;
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 8px;
  box-shadow: 0 10px 24px rgba(7, 23, 31, 0.14);
  z-index: 20;
}

.personalization-more-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 8px;
}

.personalization-more-list-item {
  width: 100%;
  min-width: 0;
  text-align: left;
  border-radius: 10px;
  padding: 10px 12px;
  font-size: 0.92rem;
  color: var(--text);
  background: #ffffff;
  cursor: pointer;
  border: 1px solid var(--line);
  transition: transform 0.16s ease, border-color 0.16s ease, background 0.16s ease;
}

.personalization-more-list-item:focus-visible {
  outline: 2px solid rgba(15, 34, 48, 0.28);
  outline-offset: 2px;
}

@media (hover: hover) {
  .topbar-share-btn:hover,
  .topbar-profile-link:hover,
  .topbar-settings-trigger:hover,
  .personalization-more-menu summary:hover,
  .personalization-circle-btn:hover,
  .personalization-pill-btn:hover,
  .style-edit-close-btn:hover,
  .icon-circle-btn:hover {
    transform: scale(1.06);
  }
}

.style-edit-modal {
  position: fixed;
  inset: 0;
  z-index: 60;
}

.style-edit-backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  border-radius: 0;
  padding: 0;
  background: rgba(5, 8, 20, 0.78);
}

.style-edit-panel {
  position: relative;
  width: min(520px, calc(100vw - 24px));
  margin: 24px auto;
  background: #131c39;
  border: 1px solid #c1d0c8;
  border-radius: 18px;
  padding: 14px;
  display: grid;
  gap: 14px;
  max-height: calc(100vh - 48px);
  overflow: auto;
}

.style-edit-panel button {
  transition: transform 0.16s ease;
}

.style-edit-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: sticky;
  top: -14px;
  z-index: 8;
  margin: -14px -14px 0;
  padding: 12px 14px 10px;
  background: inherit;
  border-bottom: 1px solid #2d3a67;
}

.style-edit-header h3 {
  margin: 0;
}

.style-edit-close-btn {
  width: 38px;
  min-width: 38px;
  height: 38px;
  border-radius: 999px;
  padding: 0;
  background: #eff4f1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.16s ease;
}

.style-edit-close-btn svg {
  width: 16px;
  height: 16px;
}

.style-edit-actions-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.style-edit-actions-grid-bg {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.style-edit-column {
  display: grid;
  gap: 10px;
}

.style-edit-action-btn {
  width: 100%;
  height: 40px;
  transition: transform 0.16s ease, box-shadow 0.16s ease;
}

.style-control-section {
  display: none;
  gap: 8px;
  margin-top: 2px;
}

.style-control-section.is-open {
  display: grid;
}

.style-mode-choice {
  display: none;
  gap: 8px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 2px;
}

.style-mode-choice.is-open {
  display: grid;
}

.style-control-title {
  margin: 0;
  font-size: 0.9rem;
  color: var(--text);
  text-align: left;
}

.style-color-line-wrap {
  position: relative;
  width: 100%;
  height: 18px;
  border-radius: 999px;
  cursor: pointer;
}

.style-color-line {
  width: 100%;
  height: 6px;
  margin-top: 6px;
  border-radius: 999px;
  background: #0b8a6d;
  border: 1px solid rgba(255, 255, 255, 0.18);
  cursor: pointer;
}

.style-color-overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}

.style-range-input {
  width: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  -webkit-appearance: none;
  appearance: none;
  height: 20px;
  --range-progress: 0%;
  --range-color: var(--accent);
  --range-track-color: #d9e4de;
  --range-track-border: transparent;
}

.style-range-input:focus {
  outline: none;
}

.style-range-input::-webkit-slider-runnable-track {
  width: 100%;
  height: 6px;
  border-radius: 999px;
  border: 1px solid var(--range-track-border);
  background: linear-gradient(
    to right,
    var(--range-color) 0 var(--range-progress),
    var(--range-track-color) var(--range-progress) 100%
  );
}

.style-range-input::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 18px;
  height: 18px;
  border-radius: 999px;
  border: 2px solid #83bca8;
  background: #f0f4ff;
  margin-top: -6px;
}

.style-range-input::-moz-range-track {
  width: 100%;
  height: 6px;
  border-radius: 999px;
  border: 1px solid var(--range-track-border);
  background: var(--range-track-color);
}

.style-range-input::-moz-range-progress {
  height: 6px;
  border-radius: 999px;
  border: 0;
  background: var(--range-color);
}

.style-range-input::-moz-range-thumb {
  width: 18px;
  height: 18px;
  border-radius: 999px;
  border: 2px solid #83bca8;
  background: #f0f4ff;
}

.style-edit-action-btn.is-active {
  box-shadow: 0 0 0 1px rgba(159, 193, 255, 0.35);
}

.bg-upload-actions {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
  align-items: center;
}

.bg-image-preview-wrap {
  width: 100%;
  height: 92px;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  overflow: hidden;
  background: #0d1430;
}

.bg-image-preview {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: filter 0.16s ease;
}

.bg-upload-actions .style-edit-action-btn {
  height: 40px;
}

.bg-upload-status {
  margin: 2px 0 0;
  padding: 8px 10px;
  border-radius: 10px;
  border: 1px solid transparent;
  font-size: 0.82rem;
  line-height: 1.35;
  color: #20324a;
  background: #eef4ff;
}

.bg-upload-status[data-state='error'] {
  color: #7a1627;
  background: #fff1f3;
  border-color: #f2c6cf;
}

.bg-upload-status[data-state='success'] {
  color: #0f4d30;
  background: #ecfbf2;
  border-color: #bde7cc;
}

.style-divider-line {
  width: 100%;
  height: 1px;
  background: #2d3a67;
  margin: 2px 0;
}

.bg-gradient-custom-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.bg-gradient-color-col {
  display: grid;
  gap: 6px;
}

@media (hover: hover) {
  .style-edit-panel button:hover {
    transform: scale(1.06);
  }

  .style-edit-action-btn:hover {
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.28);
  }
}

.style-edit-modal[hidden] {
  display: none !important;
}

@media (max-width: 640px) {
  .style-edit-actions-grid {
    grid-template-columns: 1fr;
  }

  .style-edit-actions-grid-bg {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .bg-gradient-custom-grid {
    grid-template-columns: 1fr;
  }
}

.public-header {
  text-align: center;
  padding: 28px 18px 18px;
}

.profile-block {
  --profile-block-bg: color-mix(
    in srgb,
    var(--personalize-item-bg-solid, var(--personalize-item-bg, #ffffff)) var(--personalize-item-opacity-percent, 100%),
    transparent
  );
  margin: 14px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: var(--profile-block-bg);
  color: var(--personalize-text-color, var(--text));
  position: relative;
}

.advanced-item-wrap {
  position: relative;
}

.public-top-icons-grid .advanced-item-wrap {
  display: flex;
  justify-content: center;
}

.links .advanced-item-wrap {
  min-width: 0;
}

.advanced-item-edit-btn {
  position: absolute;
  top: 50%;
  left: 14px;
  transform: translateY(-50%);
  width: 34px;
  min-width: 34px;
  height: 34px;
  border-radius: 999px;
  padding: 0;
  z-index: 4;
  background: rgba(0, 0, 0, 0.18);
  color: #f1f5ff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.advanced-item-edit-btn svg {
  width: 16px;
  height: 16px;
}

.advanced-item-edit-btn[hidden] {
  display: none !important;
}

.advanced-mode-on .link-btn,
.advanced-mode-on .link-btn-disabled {
  padding-left: 52px;
}

.advanced-mode-on .public-profile-actions .profile-fixed-action-btn {
  padding-left: 12px;
}

@media (hover: hover) {
  .advanced-item-wrap:hover .advanced-item-edit-btn {
    transform: translateY(-50%) scale(1.06);
  }

  .profile-block > .advanced-item-edit-btn:hover {
    transform: translateY(-50%) scale(1.06);
  }
}

.share-toggle-btn {
  position: absolute;
  top: 12px;
  left: 12px;
  width: auto;
  min-width: 100px;
  min-height: 30px;
  border-radius: var(--personalize-item-radius, 0px);
  border: 0;
  background: color-mix(
    in srgb,
    var(--personalize-item-bg-solid, var(--personalize-item-bg, #ffffff)) var(--personalize-item-opacity-percent, 100%),
    transparent
  );
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 0 8px;
  color: var(--personalize-text-color, var(--text));
  transition: transform 0.16s ease, box-shadow 0.16s ease;
}

.share-toggle-btn svg {
  width: 14px;
  height: 14px;
}

.wifi-toggle-btn {
  left: auto;
  right: 12px;
}

.catalog-cart-toggle-btn {
  left: auto;
  right: 12px;
  top: 50px;
}

.catalog-public-cart-toolbar {
  padding: 0 16px;
  display: flex;
  justify-content: flex-end;
  position: relative;
  z-index: 4;
}

.catalog-public-cart-toolbar .catalog-cart-toggle-btn {
  position: relative;
  inset: auto;
  top: auto;
  left: auto;
  right: auto;
  width: 44px;
  min-width: 44px;
  height: 44px;
  min-height: 44px;
  padding: 0;
  border-radius: 999px;
  gap: 0;
}

.catalog-public-cart-toolbar .catalog-cart-toggle-btn svg {
  width: 18px;
  height: 18px;
}

.catalog-public-cart-toolbar .catalog-cart-toggle-btn.is-bump {
  animation: catalog-cart-bump 0.28s ease;
}

.catalog-public-cart-toolbar .catalog-cart-count-pill {
  position: absolute;
  top: -4px;
  right: -4px;
}

@keyframes catalog-cart-bump {
  0% {
    transform: scale(1);
  }

  40% {
    transform: scale(1.14);
  }

  100% {
    transform: scale(1);
  }
}

.catalog-cart-count-pill {
  min-width: 18px;
  height: 18px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--accent), #0a6f56 22%);
  color: #ffffff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.68rem;
  font-weight: 700;
  padding: 0 4px;
}

.share-toggle-label {
  font-size: 0.76rem;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
}

@media (hover: hover) {
  .share-toggle-btn:hover {
    transform: scale(1.06);
    box-shadow: none;
  }
}

.avatar {
  width: clamp(144px, 33vw, 156px);
  height: clamp(144px, 33vw, 156px);
  border-radius: 999px;
  object-fit: cover;
  border: 3px solid var(--personalize-text-color, var(--text));
}

.personalization-page .avatar {
  border-color: var(--personalize-item-bg, #ffffff);
}

.name {
  font-size: 1.35rem;
  margin: 12px 0 4px;
}

.role {
  color: var(--personalize-text-color, var(--muted));
  margin: 0;
}

.bio {
  margin: 10px 0 0;
  color: var(--personalize-text-color, var(--text));
}

.profile-location {
  margin: 10px 0 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: var(--personalize-text-color, var(--text));
  font-size: 1.02rem;
  line-height: 1.2;
}

.profile-location-icon {
  width: 18px;
  height: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: inherit;
  flex-shrink: 0;
}

.profile-location-icon svg {
  width: 100%;
  height: 100%;
  display: block;
}

.profile-location-text {
  display: inline-block;
}

.profile-location + .company-logo-in-profile-wrap,
.profile-location + .company-logo-in-profile {
  margin-top: 12px;
}

.company-logo-in-profile-wrap {
  width: clamp(170px, 58vw, 220px);
  max-width: 220px;
  height: 72px;
  margin: 16px auto 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.company-logo-in-profile {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center;
  display: block;
}

.public-header.profile-block > .company-logo-in-profile {
  width: auto;
  height: auto;
  max-width: clamp(170px, 58vw, 220px);
  max-height: 72px;
  margin: 16px auto 0;
  object-fit: contain;
  object-position: center;
  display: block;
}

.public-profile-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  margin-top: 18px;
  padding: 0 16px 14px;
}

.public-profile-actions .profile-fixed-action-btn {
  width: min(188px, 100%);
  min-width: 0;
  max-width: 188px;
  min-height: 44px;
  padding: 0 12px;
}

.public-profile-actions .profile-fixed-action-btn:first-child {
  justify-self: start;
}

.public-profile-actions .profile-fixed-action-btn:last-child {
  justify-self: end;
}

.public-profile-actions .link-btn-label {
  text-align: left;
}

.links {
  display: grid;
  gap: 18px;
  padding: 24px 16px 18px;
}

.public-top-icons {
  padding: 14px 16px 10px;
}

.public-top-icons-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.public-top-icons-grid.public-top-icons-grid-two-items {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  justify-items: center;
  gap: clamp(18px, 6vw, 42px);
}

.public-top-icons-grid .link-btn,
.public-top-icons-grid .link-btn-disabled {
  min-height: 0;
  padding: 0;
  justify-content: center;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  opacity: 1;
}

.public-top-icons-grid .link-btn-label,
.public-top-icons-grid .link-btn-copy-icon {
  display: none !important;
}

.public-top-icons-grid .link-btn-icon {
  width: 56px;
  height: 56px;
}

.public-top-icons-grid .link-btn-icon svg {
  width: 48px;
  height: 48px;
}

.public-top-icons-grid .link-btn-icon img {
  width: 48px;
  height: 48px;
  object-fit: contain;
}

.public-top-icons-grid .link-btn-icon .las,
.public-top-icons-grid .link-btn-icon .lab,
.public-top-icons-grid .link-btn-icon i {
  font-size: 52px;
}

.public-top-icons-grid .link-btn:focus-visible {
  outline-offset: 4px;
}

@media (hover: hover) {
  .public-top-icons-grid .link-btn:hover {
    transform: scale(1.06);
    box-shadow: none;
  }
}

.link-btn-compact {
  min-height: 52px;
  padding: 10px;
  justify-content: center;
}

.link-btn-compact .link-btn-label,
.link-btn-compact .link-btn-copy-icon {
  display: none !important;
}

.catalog-public-section {
  padding: 0;
  display: grid;
  gap: 10px;
}

.catalog-public-search-row input {
  width: 100%;
  height: 42px;
  border-radius: 10px;
  border: 1px solid var(--line);
  padding: 0 42px 0 12px;
  background: #ffffff;
  color: #1f2937;
}

.catalog-public-search-row input::-webkit-search-cancel-button {
  -webkit-appearance: none;
}

.catalog-public-search-row {
  padding: 0 16px;
}

.catalog-public-search-field {
  position: relative;
}

.catalog-public-search-clear {
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  width: 24px;
  min-width: 24px;
  height: 24px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: #7b8693;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  line-height: 1;
  padding: 0;
  cursor: pointer;
  transition: background-color 0.16s ease, color 0.16s ease;
}

.catalog-public-search-clear:hover {
  transform: translateY(-50%);
  background: rgba(15, 34, 48, 0.08);
  color: #1f2937;
  box-shadow: none;
  filter: none;
}

.catalog-public-search-clear:focus-visible {
  transform: translateY(-50%);
  outline: 2px solid var(--accent, #0b8a6d);
  outline-offset: 1px;
  box-shadow: none;
  filter: none;
}

.catalog-public-search-clear:active,
.catalog-public-search-clear:focus {
  transform: translateY(-50%);
  box-shadow: none;
  filter: none;
}

.catalog-public-grid {
  display: grid;
  gap: 14px;
  padding: 0 14px;
}

.catalog-public-item {
  border: 0;
  border-radius: 14px;
  overflow: hidden;
  background: color-mix(
    in srgb,
    var(--personalize-item-bg-solid, var(--personalize-item-bg, #ffffff)) var(--personalize-item-opacity-percent, 100%),
    transparent
  );
  color: var(--personalize-text-color, var(--text));
}

.catalog-public-image-wrap {
  width: 100%;
  aspect-ratio: 4 / 3;
  background: #dbe3df;
}

.catalog-public-image-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.catalog-public-carousel {
  position: relative;
  cursor: pointer;
  touch-action: pan-y;
  -webkit-user-select: none;
  user-select: none;
}

.catalog-public-carousel-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  pointer-events: none;
}

.catalog-public-carousel-btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 36px;
  min-width: 36px;
  height: 36px;
  padding: 0;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.66);
  background: rgba(10, 18, 34, 0.58);
  color: #ffffff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
  transition: background 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease;
}

.catalog-public-carousel-btn.prev {
  left: 10px;
}

.catalog-public-carousel-btn.next {
  right: 10px;
}

.catalog-public-carousel-btn span {
  font-size: 1.28rem;
  line-height: 1;
}

.catalog-public-carousel-btn:active,
.catalog-public-carousel-btn:focus,
.catalog-public-carousel-btn:focus-visible {
  transform: translateY(-50%);
}

.catalog-public-content {
  padding: 14px;
  display: grid;
  gap: 10px;
}

.catalog-public-title-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 10px;
}

.catalog-public-name {
  margin: 0;
  font-size: 1.14rem;
  line-height: 1.2;
  font-weight: 700;
  color: var(--personalize-text-color, var(--text));
}

.catalog-public-price {
  margin: 0;
  white-space: nowrap;
  font-size: 1.04rem;
  font-weight: 700;
  color: var(--personalize-text-color, var(--text));
}

.catalog-public-description {
  margin: 0;
  color: var(--personalize-text-color, var(--text));
  white-space: pre-wrap;
  word-break: break-word;
}

.catalog-public-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.catalog-public-action {
  width: auto;
  max-width: 100%;
  min-width: 168px;
  min-height: 44px;
  border-radius: 12px;
  border: 1px solid var(--accent);
  background: color-mix(in srgb, var(--accent), #0a6f56 22%);
  color: #ffffff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  padding: 0 14px;
  font-weight: 600;
  transition: transform 0.16s ease, box-shadow 0.16s ease, filter 0.16s ease;
  justify-self: end;
}

.catalog-public-action .link-btn-label {
  text-align: center;
}

.catalog-public-action.is-disabled {
  border-color: var(--line);
  background: color-mix(in srgb, var(--personalize-item-bg-solid, var(--personalize-item-bg, #ffffff)), #ffffff 28%);
  color: var(--personalize-text-color, var(--text));
  cursor: not-allowed;
}

.catalog-public-cart-action {
  width: auto;
  max-width: 100%;
  min-width: 168px;
  min-height: 44px;
  border-radius: 12px;
  border: 1px solid var(--accent);
  background: transparent;
  color: var(--personalize-text-color, var(--text));
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  padding: 0 14px;
  font-weight: 600;
  transition: transform 0.16s ease, box-shadow 0.16s ease, filter 0.16s ease;
}

.catalog-public-cart-action.is-added {
  border-color: var(--accent);
  background: color-mix(in srgb, var(--accent), #0a6f56 22%);
  color: #ffffff;
}

.catalog-public-empty {
  margin: 0;
  padding: 0 16px;
}

.link-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  text-decoration: none;
  background: color-mix(
    in srgb,
    var(--personalize-item-bg-solid, var(--personalize-item-bg, #ffffff)) var(--personalize-item-opacity-percent, 100%),
    transparent
  );
  color: var(--personalize-text-color, var(--text));
  border-radius: var(--personalize-item-radius, 0px);
  padding: 12px;
  border: 1px solid var(--line);
  transition: transform 0.16s ease, box-shadow 0.16s ease;
}

.link-btn-disabled {
  opacity: 0.75;
  cursor: default;
  pointer-events: none;
}

.link-btn:focus-visible {
  outline: 2px solid #83bca8;
  outline-offset: 2px;
}

@media (hover: hover) {
  .link-btn:hover,
  .advanced-item-wrap:hover .link-btn {
    transform: scale(1.06);
  }

  .catalog-public-action:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 18px rgba(18, 24, 43, 0.12);
    filter: brightness(1.02);
  }

  .catalog-public-cart-action:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 18px rgba(18, 24, 43, 0.1);
    filter: brightness(1.02);
  }

  .catalog-public-action.is-disabled:hover {
    transform: none;
    box-shadow: none;
    filter: none;
  }

  .catalog-public-carousel-btn:hover {
    transform: translateY(-50%);
    box-shadow: none;
    filter: none;
  }
}

.link-btn-icon {
  display: inline-flex;
  width: max(var(--icon-size-feather), var(--icon-size-font));
  height: max(var(--icon-size-feather), var(--icon-size-font));
  align-items: center;
  justify-content: center;
  line-height: 1;
}

.link-btn-icon svg {
  width: var(--icon-size-feather);
  height: var(--icon-size-feather);
}

.link-btn-icon .las,
.link-btn-icon .lab,
.link-btn-icon i {
  font-size: var(--icon-size-font);
  line-height: 1;
}

.link-btn-label {
  display: inline-block;
  text-align: left;
}

.link-btn-pix .link-btn-copy-icon {
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  opacity: 0.9;
}

.link-btn-pix .link-btn-copy-icon svg {
  width: 22px;
  height: 22px;
}

.link-btn-pix {
  position: relative;
  padding-right: 44px;
}

.link-btn-pix .link-btn-icon,
.link-btn-pix .link-btn-label {
  pointer-events: none;
}

.link-btn-pix-charge .link-btn-icon .las {
  font-size: var(--icon-size-font);
  line-height: 1;
}

.link-btn-pix-charge .link-btn-icon,
.link-btn-pix-charge .link-btn-label {
  pointer-events: none;
}

@media (hover: hover) {
  .links button.link-btn:hover {
    box-shadow: none;
  }
}

.meta {
  padding: 10px 16px 20px;
  color: var(--muted);
  font-size: 0.86rem;
}

.share-modal {
  position: fixed;
  inset: 0;
  z-index: 110;
}

.pix-charge-flow {
  position: fixed;
  inset: 0;
  z-index: 120;
  background: transparent;
  overflow: auto;
  padding: 14px;
}

.pix-charge-screen {
  width: min(460px, 92vw);
  margin: 0 auto;
}

.pix-charge-topbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
  position: sticky;
  top: 0;
  z-index: 8;
  background: transparent;
  padding: 2px 0 6px;
}

.pix-charge-back-btn,
.pix-charge-close-btn {
  width: 42px;
  height: 42px;
  min-width: 42px;
  padding: 0;
  border-radius: 999px;
  background: transparent;
  color: #111827;
  border: 1px solid rgba(17, 24, 39, 0.2);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.pix-charge-close-btn svg {
  width: 20px;
  height: 20px;
}

.pix-charge-flow[data-charge-mode='catalog'] .pix-charge-back-btn {
  display: none !important;
}

.pix-charge-card {
  background: #ffffff;
  border-radius: 18px;
  padding: 18px;
  color: #111827;
  display: grid;
  gap: 12px;
  justify-items: center;
}

.pix-charge-avatar {
  width: 112px;
  height: 112px;
}

.pix-charge-title {
  margin: 0;
  text-align: center;
  font-weight: 700;
}

.pix-charge-label {
  width: 100%;
  margin: 0;
  text-align: left;
  font-weight: 600;
}

.pix-amount-row {
  width: 100%;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0;
  justify-self: start;
}

.pix-currency-prefix {
  min-width: 52px;
  height: 42px;
  border-radius: 10px 0 0 10px;
  background: #0f2230;
  color: #ffffff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
}

.pix-amount-input {
  height: 42px;
  border-radius: 0 10px 10px 0;
  border: 1px solid #d1d5db;
  border-left: 0;
  padding: 0 12px;
  color: #111827;
  background: #ffffff;
}

.pix-black-btn {
  width: 100%;
  min-height: 44px;
  border-radius: 10px;
  border: 1px solid #066952;
  background: #066952;
  color: #ffffff;
  font-weight: 700;
}

.pix-charge-value {
  margin: 0;
  font-weight: 700;
}

.pix-charge-qr-wrap {
  width: 100%;
  display: grid;
  place-items: center;
}

.pix-charge-qr-wrap img {
  width: min(280px, 78vw);
  max-width: 100%;
  height: auto;
}

.pix-charge-info-image {
  width: min(150px, 64vw);
  height: auto;
  margin: 0 auto;
}

.pix-charge-help-text {
  margin: 1cm 0 0;
  text-align: center;
  color: #111827;
}

.pix-charge-payment-status {
  margin: 2px 0 0;
  text-align: center;
  font-weight: 700;
  color: #2f6f5a;
}

.pix-charge-payment-status[hidden] {
  display: none;
}

.pix-charge-payment-status.is-error {
  color: #c33440;
}

.pix-charge-payment-status.is-success {
  color: #2f6f5a;
}

.pix-plain-btn {
  width: 100%;
  min-height: 42px;
  border-radius: 10px;
  border: 1px solid #d1d5db;
  background: transparent;
  color: #111827;
}

.share-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(5, 8, 20, 0.78);
  border: 0;
  border-radius: 0;
  padding: 0;
}

.share-panel {
  position: relative;
  width: min(560px, calc(100vw - 24px));
  margin: 24px auto;
  background: #131c39;
  border: 1px solid #c1d0c8;
  border-radius: 18px;
  padding: 14px;
  display: grid;
  gap: 12px;
  max-height: calc(100vh - 48px);
  overflow: auto;
}

.share-panel-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: sticky;
  top: -14px;
  z-index: 8;
  margin: -14px -14px 0;
  padding: 12px 14px 10px;
  background: inherit;
  border-bottom: 1px solid #2d3a67;
}

.share-panel-header h3 {
  margin: 0;
}

.share-close-btn {
  width: 38px;
  height: 38px;
  min-width: 38px;
  padding: 0;
  border-radius: 10px;
  background: #eff4f1;
  font-size: 1.2rem;
}

.share-accordion {
  display: grid;
  gap: 8px;
}

.share-item {
  border: 1px solid #2d3a67;
  border-radius: 12px;
  overflow: hidden;
}

.share-toggle-item {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  background: #1d284f;
  border: 0;
  text-align: left;
  border-radius: 0;
}

.share-toggle-item i {
  font-size: 1.35rem;
  width: 24px;
}

.share-toggle-item::after {
  content: '▾';
  margin-left: auto;
  opacity: 0.85;
}

.share-toggle-item[aria-expanded='true']::after {
  content: '▴';
}

.share-item-content {
  display: grid;
  gap: 10px;
  padding: 10px;
  background: #152044;
}

.share-item-content[hidden],
.share-qr[hidden],
.share-modal[hidden] {
  display: none !important;
}

.share-open-btn {
  background: #eff4f1;
}

.direct-send-row {
  display: grid;
  grid-template-columns: minmax(120px, 170px) minmax(0, 1fr) auto;
  gap: 8px;
}

.direct-send-row select {
  width: 100%;
  min-width: 0;
}

.direct-send-row button {
  width: auto;
  min-width: 90px;
}

@media (max-width: 640px) {
  .direct-send-row {
    grid-template-columns: 1fr;
  }

  .direct-send-row select,
  .direct-send-row button {
    width: 100%;
  }

  .wifi-connect-row {
    grid-template-columns: 1fr;
  }

  .wifi-connect-copy-btn {
    width: 100%;
  }

  .wifi-connect-actions {
    grid-template-columns: 1fr;
  }

  .catalog-cart-grid-2 {
    grid-template-columns: 1fr;
  }

  .catalog-cart-grid-2.catalog-cart-grid-2-mobile-inline {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .catalog-cart-item {
    grid-template-columns: 1fr;
  }

  .catalog-cart-item-media {
    width: 100%;
    max-width: 180px;
    height: 120px;
  }
}

.share-qr {
  border: 1px dashed #42518a;
  border-radius: 12px;
  padding: 10px;
  display: flex;
  justify-content: center;
}

.share-qr img {
  width: 240px;
  height: 240px;
  border-radius: 8px;
  background: #fff;
}

.share-url-box {
  position: relative;
}

.catalog-cart-panel {
  width: min(760px, calc(100vw - 20px));
  gap: 12px;
  color: #1f3f52;
  background: #f2f7f4;
  border: 1px solid #c4d2cb;
  box-shadow: 0 24px 52px rgba(11, 19, 35, 0.2);
}

.catalog-cart-panel .share-panel-header {
  border-bottom: 1px solid #cad7d1;
  background: #f2f7f4;
}

.catalog-cart-panel .share-panel-header h3 {
  color: #1b3241;
  font-size: clamp(1.35rem, 2vw, 1.7rem);
}

.catalog-cart-panel .share-close-btn {
  border-color: #c4d2cb;
  background: #f5faf7 !important;
  color: #1f3948;
}

.catalog-cart-items {
  display: grid;
  gap: 10px;
  max-height: min(240px, 36vh);
  overflow: auto;
  padding-right: 2px;
}

.catalog-cart-item {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  gap: 10px;
  padding: 10px;
  border: 1px solid #d1ddd7;
  border-radius: 16px;
  background: #ffffff;
}

.catalog-cart-item-media {
  width: 84px;
  height: 84px;
  border-radius: 12px;
  overflow: hidden;
  background: #edf3ee;
  border: 1px solid #d1ddd7;
}

.catalog-cart-item-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.catalog-cart-item-placeholder {
  width: 100%;
  height: 100%;
  display: grid;
  place-items: center;
  color: #6d8090;
  font-size: 0.74rem;
  text-align: center;
  padding: 6px;
}

.catalog-cart-item-copy {
  display: grid;
  gap: 6px;
}

.catalog-cart-item-copy h4 {
  margin: 0;
  font-size: 1.02rem;
  color: #1f3544;
  line-height: 1.26;
}

.catalog-cart-item-copy p {
  margin: 0;
  font-weight: 700;
  color: #123646;
}

.catalog-cart-item-quantity-label {
  margin: 0;
  font-size: 0.83rem;
  color: #3e5a6b;
  font-weight: 600;
}

.catalog-cart-item-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.catalog-cart-weight-control {
  display: inline-flex;
  align-items: center;
  margin: 0;
}

.catalog-cart-item-actions button {
  width: auto;
  min-height: 34px;
  border-radius: 10px;
  box-shadow: none !important;
  filter: none !important;
}

.catalog-cart-item-actions button[data-catalog-cart-decrease],
.catalog-cart-item-actions button[data-catalog-cart-increase] {
  min-width: 36px;
  padding: 0;
  border: 1px solid #c6d4cd !important;
  background: #ffffff !important;
  color: #1f3e50 !important;
  font-size: 1.14rem;
}

.catalog-cart-item-actions button[data-catalog-cart-remove] {
  border: 1px solid #f0c5ca !important;
  background: #fff6f7 !important;
  color: #8a2c39 !important;
  padding: 0 10px;
  font-weight: 700;
  min-height: 34px;
  border-radius: 999px;
}

.catalog-cart-item-actions button[data-catalog-cart-remove]:hover,
.catalog-cart-item-actions button[data-catalog-cart-remove]:focus-visible {
  transform: none !important;
  box-shadow: none !important;
  filter: none !important;
}

.catalog-cart-item-actions span {
  min-width: 30px;
  text-align: center;
  font-weight: 700;
  color: #30495a;
}

.catalog-cart-item-actions input[data-catalog-cart-weight-input] {
  width: 92px;
  height: 34px;
  min-height: 34px;
  box-sizing: border-box;
  border: 1px solid #c6d4cd;
  border-radius: 10px;
  background: #ffffff;
  padding: 0 8px;
  font-size: 0.9rem;
  color: #1f3e50;
}

.catalog-cart-item-actions select[data-catalog-cart-weight-unit] {
  width: 50px;
  min-width: 50px;
  height: 34px;
  min-height: 34px;
  box-sizing: border-box;
  border: 1px solid #c6d4cd;
  border-radius: 10px;
  background: #ffffff;
  padding: 0 4px;
  color: #1f3e50;
  font-weight: 700;
  line-height: 1;
  text-align: center;
}

.catalog-cart-total-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-top: 1px solid #cedbd5;
  padding-top: 12px;
  color: #253e4d;
  font-size: 1.15rem;
  font-weight: 700;
}

.catalog-cart-total-row strong {
  font-family: 'Sora', sans-serif;
  color: #143648;
  font-size: 1.34rem;
}

.catalog-cart-checkout-form {
  display: grid;
  gap: 12px;
  border-top: 1px solid #cedbd5;
  padding-top: 12px;
}

#catalogCartCheckoutContent[hidden] {
  display: none !important;
}

.catalog-cart-confirmation-screen {
  display: grid;
  gap: 14px;
  border-top: 1px solid #cedbd5;
  padding-top: 14px;
}

.catalog-cart-confirmation-screen[hidden] {
  display: none !important;
}

.catalog-cart-confirmation-title-block {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.catalog-cart-confirmation-title-copy {
  display: grid;
  gap: 4px;
}

.catalog-cart-confirmation-title-copy p {
  margin: 2px 0 0;
  color: #5f6f7f;
  font-size: 0.98rem;
}

.catalog-cart-confirmation-title-copy strong {
  color: #30465a;
  font-family: 'Sora', sans-serif;
}

.catalog-cart-confirmation-title-copy h4 {
  margin: 0;
  color: #121d2b;
  font-family: 'Sora', sans-serif;
  font-size: clamp(1.42rem, 2.4vw, 1.82rem);
  line-height: 1.2;
}

.catalog-cart-confirmation-icon {
  width: 52px;
  min-width: 52px;
  height: 52px;
  border-radius: 999px;
  border: 2px solid #2562da;
  color: #2562da;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  font-weight: 800;
  line-height: 1;
}

.catalog-cart-confirmation-screen[data-status='processing'] .catalog-cart-confirmation-icon {
  border-color: #2f5fbb;
  color: #2f5fbb;
}

.catalog-cart-confirmation-screen[data-status='rejected'] .catalog-cart-confirmation-icon {
  border-color: #c94a4a;
  color: #c94a4a;
}

.catalog-cart-confirmation-status-card {
  border: 1px solid #d6dce7;
  border-radius: 14px;
  background: #f7f9fd;
  padding: 14px;
  display: grid;
  gap: 8px;
}

.catalog-cart-confirmation-status-card h5 {
  margin: 0;
  color: #17273c;
  font-family: 'Sora', sans-serif;
  font-size: 1.16rem;
}

.catalog-cart-confirmation-status-card p {
  margin: 0;
  color: #3e5568;
  font-size: 0.99rem;
  line-height: 1.45;
}

.catalog-cart-confirmation-screen[data-status='approved'] .catalog-cart-confirmation-status-card {
  border-color: #c4dfd6;
  background: #f3fbf7;
}

.catalog-cart-confirmation-screen[data-status='processing'] .catalog-cart-confirmation-status-card {
  border-color: #d8dde8;
  background: #f7f9fc;
}

.catalog-cart-confirmation-screen[data-status='rejected'] .catalog-cart-confirmation-status-card {
  border-color: #e9c9c9;
  background: #fff7f7;
}

.catalog-cart-confirmation-details-card {
  border: 1px solid #d8dde7;
  border-radius: 14px;
  background: #fbfcfe;
  padding: 14px;
  display: grid;
  gap: 12px;
}

.catalog-cart-confirmation-details-card h5 {
  margin: 0;
  font-family: 'Sora', sans-serif;
  color: #16283d;
  font-size: 1.14rem;
}

.catalog-cart-confirmation-info-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 18px;
}

.catalog-cart-confirmation-info-grid article {
  display: grid;
  gap: 6px;
}

.catalog-cart-confirmation-info-grid h6 {
  margin: 0;
  color: #182b42;
  font-family: 'Sora', sans-serif;
  font-size: 0.96rem;
}

.catalog-cart-confirmation-info-lines {
  margin: 0;
  color: #274055;
  line-height: 1.55;
  white-space: pre-line;
  font-size: 0.98rem;
}

.catalog-cart-confirmation-items {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 6px;
}

.catalog-cart-confirmation-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  border: 1px solid #d8dee9;
  border-radius: 11px;
  background: #ffffff;
  padding: 10px 12px;
}

.catalog-cart-confirmation-item span {
  color: #314b60;
  font-size: 0.92rem;
  line-height: 1.3;
}

.catalog-cart-confirmation-item strong {
  color: #18344a;
  font-size: 0.94rem;
  font-family: 'Sora', sans-serif;
}

.catalog-cart-confirmation-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}

.catalog-cart-confirmation-actions .btn {
  width: auto;
  min-width: 160px;
  min-height: 42px;
  padding: 0 18px;
  border-radius: 12px;
}

#catalogCartConfirmationCloseBtn {
  border: 1px solid var(--accent);
  background: var(--accent);
  color: #ffffff;
}

@media (hover: hover) {
  #catalogCartConfirmationCloseBtn:hover {
    filter: brightness(1.03);
  }
}

.catalog-cart-form-section {
  margin: 0;
  min-inline-size: 0;
  display: grid;
  gap: 10px;
  padding: 10px 12px 12px;
  border: 1px solid #bfd0c8;
  border-radius: 22px;
  background: #f7fbf9;
}

.catalog-cart-form-section legend {
  margin-left: 6px;
  padding: 0 10px;
  color: #2f4b5d;
  font-size: clamp(1.02rem, 1.5vw, 1.2rem);
  font-weight: 800;
}

.catalog-cart-secure-copy {
  margin: 0;
  color: #223c4b;
  font-size: clamp(0.92rem, 1.2vw, 1rem);
  font-weight: 700;
  line-height: 1.3;
}

.catalog-cart-payment-option {
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 52px;
  padding: 8px 12px;
  border: 1px solid #bfd0c8;
  border-radius: 18px;
  background: #ffffff;
  cursor: pointer;
}

.catalog-cart-payment-options {
  display: grid;
  gap: 10px;
}

.catalog-cart-payment-option input[type='radio'] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.catalog-cart-payment-option.is-selected {
  border-color: var(--accent);
  background: color-mix(in srgb, var(--accent), #ffffff 94%);
}

.catalog-cart-payment-radio {
  width: 28px;
  height: 28px;
  min-width: 28px;
  border-radius: 999px;
  border: 2px solid #7d8e89;
  background: #ffffff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.catalog-cart-payment-option.is-selected .catalog-cart-payment-radio {
  border-color: var(--accent);
}

.catalog-cart-payment-option.is-selected .catalog-cart-payment-radio::after {
  content: '';
  width: 12px;
  height: 12px;
  border-radius: 999px;
  background: var(--accent);
}

.catalog-cart-payment-label {
  color: #334f60;
  font-size: clamp(0.92rem, 1.3vw, 1rem);
  font-weight: 800;
  white-space: nowrap;
  flex: 0 0 auto;
}

.catalog-cart-pix-help {
  margin: 0;
  display: grid;
  gap: 8px;
  border: 1px solid #bfd0c8;
  border-radius: 18px;
  padding: 14px;
  color: #2e4b5c;
  font-size: clamp(0.9rem, 1.2vw, 0.98rem);
  line-height: 1.45;
  background: #f6fbf8;
}

.catalog-cart-pix-help strong {
  color: #274355;
  font-weight: 800;
}

.catalog-cart-payment-pix-logo {
  margin-left: auto;
  width: 72px;
  max-width: 30%;
  height: auto;
  flex-shrink: 0;
}

.catalog-cart-card-brands {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
}

.catalog-cart-card-brand {
  width: 60px;
  min-width: 60px;
  height: 36px;
  border-radius: 10px;
  border: 1px solid #c7d4cd;
  background: #ffffff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 6px;
}

.catalog-cart-card-brand img {
  width: auto;
  max-width: 100%;
  height: 17px;
  object-fit: contain;
}

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

.catalog-cart-card-fields {
  display: grid;
  gap: 10px;
}

.catalog-cart-checkout-form label {
  display: grid;
  gap: 6px;
  font-size: clamp(0.88rem, 1.2vw, 0.94rem);
  color: #355061;
  font-weight: 800;
}

.catalog-cart-field-label {
  min-height: 24px;
  display: inline-flex;
  align-items: center;
  line-height: 1.2;
}

.catalog-cart-checkout-form input,
.catalog-cart-checkout-form select {
  width: 100%;
  height: 46px;
  min-height: 46px;
  border-radius: 13px;
  border: 1px solid #bfd0c8;
  background: #ffffff;
  padding: 0 14px;
  color: #1f3f52;
  font-family: 'Manrope', sans-serif;
  font-size: 0.97rem;
  box-sizing: border-box;
}

.catalog-cart-checkout-form select {
  padding: 0 38px 0 14px;
  line-height: 1.2;
  -webkit-appearance: none;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23556675' d='M1.4.8A1 1 0 1 0 0 2.2l5.3 5.2a1 1 0 0 0 1.4 0L12 2.2A1 1 0 0 0 10.6.8L6 5.3 1.4.8Z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
}

.catalog-cart-checkout-form input::placeholder,
.catalog-cart-checkout-form select::placeholder {
  color: #727f87;
}

.catalog-cart-checkout-form input:focus-visible,
.catalog-cart-checkout-form select:focus-visible {
  outline: none;
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(11, 138, 109, 0.14);
}

.catalog-cart-label-with-help {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  gap: 8px;
}

.catalog-cart-help-icon {
  width: 24px;
  height: 24px;
  border-radius: 999px;
  border: 1px solid #bfd0c8;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  color: #304b5b;
  background: #ffffff;
}

#catalogCartCheckoutStatus {
  margin: 2px 0 0;
  color: #56627c;
}

.catalog-cart-zip-status {
  margin: 0;
  color: #56627c;
}

.catalog-cart-zip-status:empty {
  display: none;
}

.catalog-cart-zip-status.is-success {
  color: #2f6f5a;
}

.catalog-cart-zip-status.is-error {
  color: #c33440;
}

#catalogCartCheckoutStatus:empty {
  display: none;
}

#catalogCartCheckoutStatus.is-success {
  color: #2f6f5a;
}

#catalogCartCheckoutStatus.is-error {
  color: #c33440;
}

#catalogCartEmpty {
  margin: 0;
  color: #526372;
  line-height: 1.6;
  border: 1px dashed #cfdbd4;
  border-radius: 14px;
  padding: 14px 16px;
  background: #f8fbf8;
}

.catalog-cart-installment-summary {
  margin: 0;
  color: #3f5a6a;
  font-weight: 700;
}

.catalog-cart-submit-btn {
  border: 1px solid var(--catalog-cart-submit-bg, var(--accent)) !important;
  background: var(--catalog-cart-submit-bg, var(--accent)) !important;
  color: #ffffff;
  min-height: 46px;
  border-radius: 12px;
  font-size: 0.95rem;
  font-weight: 800;
}

.catalog-cart-panel .checkout-form {
  gap: 12px;
}

.catalog-cart-panel .checkout-form fieldset {
  padding: 12px;
  border-radius: 12px;
  gap: 9px;
}

.catalog-cart-panel .checkout-form legend {
  font-size: 1.02rem;
}

.catalog-cart-panel .checkout-grid-2 {
  gap: 8px;
}

.catalog-cart-panel .checkout-form input:not([type='checkbox']):not([type='radio']),
.catalog-cart-panel .checkout-form select {
  height: 40px;
  min-height: 40px;
  font-size: 0.93rem;
}

.catalog-cart-panel .checkout-form input.field-invalid:not([type='checkbox']):not([type='radio']),
.catalog-cart-panel .checkout-form select.field-invalid {
  border-color: #d04242;
  box-shadow: 0 0 0 1px rgba(208, 66, 66, 0.24);
}

.catalog-cart-panel .checkout-field-error {
  margin: 4px 0 0;
  font-size: 0.78rem;
  line-height: 1.35;
  font-weight: 700;
  color: #d04242;
}

.catalog-cart-panel .checkout-payment-option {
  min-height: 46px;
  padding-right: 10px;
}

.catalog-cart-panel .checkout-payment-option.is-selected {
  border-color: var(--accent);
  background: color-mix(in srgb, var(--accent), #ffffff 95%);
}

.catalog-cart-panel .checkout-payment-option-main {
  flex: 1;
}

.catalog-cart-payment-option-text {
  white-space: nowrap;
}

.catalog-cart-panel .checkout-payment-logo {
  width: 96px;
}

.catalog-cart-panel .checkout-card-flags {
  gap: 5px;
}

.catalog-cart-panel .checkout-card-flag {
  width: 36px;
  min-width: 36px;
  height: 24px;
  min-height: 24px;
}

.catalog-cart-panel .checkout-card-flag-logo {
  width: 34px;
  height: 22px;
}

.catalog-cart-panel .checkout-card-brick-container {
  min-height: 240px;
  border-color: #bfd0c8;
  background: #ffffff;
  padding: 10px;
}

.catalog-cart-panel .checkout-card-brick-container:empty {
  min-height: 170px;
}

.catalog-cart-card-inline-grid > label {
  align-content: start;
}

.catalog-cart-card-inline-grid .checkout-inline-help-title {
  min-height: 20px;
  align-items: center;
}

.catalog-cart-static-help {
  cursor: default;
  pointer-events: none;
}

@media (hover: hover) {
  .catalog-cart-submit-btn:hover {
    box-shadow: 0 10px 20px color-mix(in srgb, var(--accent), transparent 72%);
    filter: brightness(1.02);
  }
}

@media (max-width: 640px) {
  .catalog-cart-modal {
    padding: 6px;
  }

  .catalog-cart-panel {
    width: 100%;
    max-width: none;
    margin: 0;
    height: calc(100vh - 12px);
    max-height: calc(100vh - 12px);
    height: calc(100dvh - 12px);
    max-height: calc(100dvh - 12px);
    border-radius: 14px;
    padding: 10px;
    gap: 10px;
  }

  .catalog-cart-panel .share-panel-header {
    top: -10px;
    margin: -10px -10px 0;
    padding: 10px 10px 8px;
  }

  .catalog-cart-items {
    max-height: min(190px, 30vh);
    max-height: min(190px, 30dvh);
  }

  .catalog-cart-form-section {
    padding: 10px 12px 12px;
    border-radius: 18px;
  }

  .catalog-cart-grid-2 {
    grid-template-columns: 1fr;
  }

  .catalog-cart-grid-2.catalog-cart-grid-2-mobile-inline {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .catalog-cart-item {
    grid-template-columns: 1fr;
  }

  .catalog-cart-item-media {
    width: 100%;
    max-width: 180px;
    height: 120px;
  }

  .catalog-cart-payment-option {
    flex-wrap: wrap;
    row-gap: 8px;
  }

  .catalog-cart-payment-option-text {
    font-size: 0.94rem;
  }

  .catalog-cart-card-brands {
    margin-left: 0;
    width: 100%;
    justify-content: flex-start;
    flex-wrap: wrap;
  }

  .catalog-cart-panel .checkout-payment-option {
    flex-wrap: wrap;
    align-items: flex-start;
    row-gap: 8px;
    padding-right: 8px;
  }

  .catalog-cart-panel .checkout-payment-option-main {
    width: 100%;
  }

  .catalog-cart-panel .checkout-payment-logo {
    margin-left: auto;
    width: 78px;
    max-width: 40%;
  }

  .catalog-cart-panel .checkout-card-flags {
    margin-left: 0;
    width: 100%;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 4px;
  }

  .catalog-cart-payment-option-text {
    white-space: normal;
    line-height: 1.3;
  }

  .catalog-cart-panel .checkout-card-flag {
    width: 32px;
    min-width: 32px;
    height: 22px;
    min-height: 22px;
  }

  .catalog-cart-panel .checkout-card-flag-logo {
    width: 30px;
    height: 20px;
  }

  .catalog-cart-panel .checkout-card-brick-container {
    min-height: 220px;
  }

  .catalog-cart-confirmation-info-grid {
    grid-template-columns: 1fr;
  }

  .catalog-cart-confirmation-title-block {
    gap: 10px;
  }

  .catalog-cart-confirmation-icon {
    width: 48px;
    min-width: 48px;
    height: 48px;
    font-size: 1.38rem;
  }

  .catalog-cart-confirmation-title-copy h4 {
    font-size: clamp(1.3rem, 5vw, 1.6rem);
  }

  .catalog-cart-confirmation-actions {
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
  }

  .catalog-cart-confirmation-actions .btn {
    width: 100%;
  }

  .catalog-cart-checkout-form input,
  .catalog-cart-checkout-form select {
    height: 48px;
    min-height: 48px;
    border-radius: 14px;
  }
}

@media (max-height: 520px) and (orientation: landscape) and (max-width: 932px) {
  .catalog-cart-modal {
    padding: 4px;
  }

  .catalog-cart-panel {
    width: 100%;
    max-width: none;
    height: calc(100vh - 8px);
    max-height: calc(100vh - 8px);
    height: calc(100dvh - 8px);
    max-height: calc(100dvh - 8px);
    border-radius: 12px;
    padding: 8px;
    gap: 8px;
  }

  .catalog-cart-panel .share-panel-header {
    top: -8px;
    margin: -8px -8px 0;
    padding: 8px 8px 6px;
  }

  .catalog-cart-panel .share-panel-header h3 {
    font-size: 1.05rem;
    line-height: 1.2;
  }

  .catalog-cart-items {
    max-height: min(124px, 30vh);
    max-height: min(124px, 30dvh);
    gap: 6px;
  }

  .catalog-cart-item {
    padding: 8px;
    gap: 8px;
  }

  .catalog-cart-panel .checkout-form {
    gap: 8px;
  }

  .catalog-cart-panel .checkout-form fieldset {
    padding: 9px;
    gap: 7px;
  }

  .catalog-cart-panel .checkout-form legend {
    font-size: 0.95rem;
    margin-bottom: 4px;
  }

  .catalog-cart-panel .checkout-form input:not([type='checkbox']):not([type='radio']),
  .catalog-cart-panel .checkout-form select,
  .catalog-cart-checkout-form input,
  .catalog-cart-checkout-form select,
  .catalog-cart-submit-btn {
    height: 42px;
    min-height: 42px;
    font-size: 0.9rem;
  }

  .catalog-cart-panel .checkout-card-brick-container {
    min-height: 170px;
  }
}

@media (max-width: 380px) {
  .catalog-cart-modal {
    padding: 4px;
  }

  .catalog-cart-panel {
    height: calc(100vh - 8px);
    max-height: calc(100vh - 8px);
    height: calc(100dvh - 8px);
    max-height: calc(100dvh - 8px);
    border-radius: 12px;
    padding: 8px;
    gap: 8px;
  }

  .catalog-cart-panel .share-panel-header {
    margin: -8px -8px 0;
    padding: 8px 8px 7px;
    top: -8px;
  }

  .catalog-cart-panel .share-panel-header h3 {
    font-size: 1.08rem;
    line-height: 1.25;
  }

  .catalog-cart-items {
    max-height: min(156px, 25vh);
    max-height: min(156px, 25dvh);
    gap: 8px;
  }

  .catalog-cart-item {
    padding: 8px;
    border-radius: 12px;
    gap: 8px;
  }

  .catalog-cart-item-actions {
    gap: 6px;
  }

  .catalog-cart-item-actions button {
    min-height: 32px;
  }

  .catalog-cart-item-actions input[data-catalog-cart-weight-input],
  .catalog-cart-item-actions select[data-catalog-cart-weight-unit] {
    height: 32px;
    min-height: 32px;
    font-size: 0.86rem;
  }

  .catalog-cart-item-actions select[data-catalog-cart-weight-unit] {
    width: 44px;
    min-width: 44px;
    padding: 0 3px;
  }

  .catalog-cart-panel .checkout-form {
    gap: 10px;
  }

  .catalog-cart-panel .checkout-form fieldset {
    padding: 10px;
    border-radius: 10px;
    gap: 8px;
  }

  .catalog-cart-panel .checkout-form legend {
    font-size: 0.96rem;
  }

  .catalog-cart-panel .checkout-form input:not([type='checkbox']):not([type='radio']),
  .catalog-cart-panel .checkout-form select,
  .catalog-cart-checkout-form input,
  .catalog-cart-checkout-form select {
    height: 44px;
    min-height: 44px;
    font-size: 0.9rem;
  }

  .catalog-cart-panel .checkout-payment-logo {
    width: 68px;
  }

  .catalog-cart-panel .checkout-card-flag {
    width: 30px;
    min-width: 30px;
    height: 20px;
    min-height: 20px;
  }

  .catalog-cart-panel .checkout-card-flag-logo {
    width: 28px;
    height: 18px;
  }

  .catalog-cart-submit-btn {
    min-height: 44px;
    font-size: 0.9rem;
  }
}

.wifi-connect-panel {
  width: min(460px, calc(100vw - 24px));
}

.wifi-connect-body {
  display: grid;
  gap: 10px;
}

.wifi-connect-intro {
  margin: 0;
  color: #111827;
}

.wifi-connect-qr-wrap {
  width: 100%;
  border: 1px dashed #42518a;
  border-radius: 12px;
  padding: 12px;
  display: flex;
  justify-content: center;
  background: #f8fbff;
}

.wifi-connect-qr-wrap img {
  width: min(260px, 78vw);
  max-width: 100%;
  height: auto;
  border-radius: 8px;
  background: #ffffff;
}

.wifi-connect-meta {
  display: grid;
  gap: 8px;
}

.wifi-connect-row {
  display: grid;
  grid-template-columns: 84px minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
}

.wifi-connect-row span {
  color: #4b5563;
  font-weight: 600;
}

.wifi-connect-row strong {
  font-size: 0.95rem;
  color: #111827;
  word-break: break-word;
}

.wifi-connect-copy-btn {
  width: auto;
  min-width: 90px;
  min-height: 34px;
  padding: 0 10px;
}

.wifi-connect-actions {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}

.wifi-connect-actions button {
  min-height: 40px;
}

.share-url-box input {
  background: #0d1430;
  padding-right: 64px;
}

.copy-inline-text {
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  width: auto;
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font-size: 0.86rem;
  font-weight: 400;
}

.status {
  margin-top: 8px;
  font-size: 0.9rem;
  color: #2f6f5a;
}

.preview-frame {
  width: 100%;
  height: 640px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #f5f4ee;
}

.logout-form {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 10px;
}

.topbar-logout-form {
  margin: 0;
}

.logout-form button {
  width: auto;
  min-width: 100px;
}

.topbar-logout-form button {
  min-width: 82px;
  height: 40px;
  padding: 0 14px;
}

@media (max-width: 640px) {
  body.admin-page {
    padding-top: 108px;
  }

  .admin-topbar {
    padding: 12px;
  }

  .admin-topbar-logo img {
    height: 48px;
  }

  .topbar-profile-link {
    font-size: 0.82rem;
  }
}

.login-wrap {
  min-height: 100vh;
  display: grid;
  place-items: center;
  margin: 0 auto;
}

.login-card {
  width: min(440px, 92vw);
}

.hidden {
  display: none;
}

.status.error {
  color: #ff9b9b;
}

.users-table-wrap {
  overflow-x: auto;
  overflow-y: visible;
  max-height: none;
}

.users-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.9rem;
}

.users-table th,
.users-table td {
  border: 1px solid var(--line);
  padding: 10px;
  text-align: left;
}

.users-table th {
  color: #c7d2ff;
  font-weight: 600;
  background: #1b2548;
}

.users-table a {
  color: #0b8a6d;
}

.users-filter {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
}

.users-filter-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

.users-filter button {
  width: auto;
  min-width: 90px;
}

.users-filter-secondary {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-top: 8px;
}

@media (max-width: 980px) {
  .users-filter-secondary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .users-filter-secondary {
    grid-template-columns: 1fr;
  }
}

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

.master-users-table .master-users-enterprise-action-col,
.master-users-table .master-users-enterprise-action-cell {
  width: 78px;
  text-align: center;
}

.master-users-table .master-users-agenda-col,
.master-users-table .master-users-agenda-cell {
  width: 78px;
  text-align: center;
}

.master-users-feature-toggle-switch {
  margin: 0;
  width: 100%;
  justify-content: center;
}

.master-users-feature-toggle-btn {
  min-width: 34px;
  width: 34px;
  height: 34px;
  padding: 0;
}

.master-users-feature-toggle-btn svg {
  width: 16px;
  height: 16px;
}

.master-page button.master-users-icon-plain {
  min-width: 30px;
  width: 30px;
  height: 30px;
  padding: 0;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #213150 !important;
  box-shadow: none !important;
  transform: none !important;
}

.master-page button.master-users-icon-plain:hover {
  transform: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

.master-page button.master-users-icon-plain:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}

.master-users-table .master-users-actions-col,
.master-users-table .master-users-actions-cell {
  width: 96px;
}

.master-users-table .master-users-actions-col {
  text-align: center;
}

.master-users-table td.master-users-actions-cell {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  white-space: nowrap;
}

.master-users-table td.master-users-enterprise-action-cell {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  white-space: nowrap;
}

.master-users-table td.master-users-agenda-cell {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  white-space: nowrap;
}

.master-users-table td.master-users-enterprise-action-cell .action-btn {
  min-width: 34px;
}

.master-users-table td.master-users-agenda-cell .action-btn {
  min-width: 34px;
}

.master-users-enterprise-icon-btn {
  min-width: 34px;
  width: 34px;
  height: 34px;
  padding: 0;
}

.master-users-enterprise-icon-btn svg {
  width: 16px;
  height: 16px;
}

.master-agenda-modal-form {
  display: grid;
  gap: 12px;
}

.master-agenda-modal-tabs {
  display: flex;
  gap: 4px;
  flex-wrap: nowrap;
  align-items: flex-end;
  border-bottom: 1px solid #d9d9d9;
  padding: 0 2px;
}

.master-agenda-modal-tab {
  flex: 1 1 0;
  min-width: 0;
  height: 36px;
  padding: 0 14px;
  border: 1px solid #d9d9d9 !important;
  border-bottom: 0;
  border-radius: 16px 16px 0 0;
  background: #ffffff !important;
  background-image: none !important;
  color: #000000 !important;
  font-size: 0.84rem;
  font-weight: 700;
  margin-bottom: -1px;
}

.master-agenda-modal-tab.is-active {
  border-color: #d9d9d9 !important;
  background: #ffffff !important;
  background-image: none !important;
  color: #000000 !important;
  box-shadow: none !important;
}

.master-agenda-modal-tab:hover,
.master-agenda-modal-tab:focus,
.master-agenda-modal-tab:focus-visible,
.master-agenda-modal-tab:active {
  background: #ffffff !important;
  background-image: none !important;
  color: #000000 !important;
  box-shadow: none !important;
  transform: none !important;
}

.master-page button.master-agenda-modal-tab,
.master-page button.master-agenda-modal-tab:hover,
.master-page button.master-agenda-modal-tab:focus,
.master-page button.master-agenda-modal-tab:focus-visible,
.master-page button.master-agenda-modal-tab:active,
.master-page button.master-agenda-modal-tab.is-active {
  background: #ffffff !important;
  background-image: none !important;
  color: #000000 !important;
  box-shadow: none !important;
  transform: none !important;
}

.master-agenda-modal-tab-panel {
  display: grid;
  gap: 12px;
  border: 1px solid #d9d9d9;
  border-top: 0;
  border-radius: 0 0 12px 12px;
  background: #ffffff;
  padding: 12px;
}

.master-agenda-modal-flags-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.master-agenda-modal-single-flag-row {
  grid-template-columns: minmax(220px, 320px);
}

.master-agenda-modal-flag-item {
  border: 1px solid var(--line);
  border-radius: 10px;
  min-height: 44px;
  padding: 8px 10px;
  background: #ffffff;
  justify-content: flex-start;
  gap: 10px;
}

.master-agenda-modal-flag-item .profile-location-display-toggle-slider {
  flex-shrink: 0;
}

.master-agenda-modal-flag-label {
  font-weight: 600;
  color: #000000;
}

.master-agenda-enterprise-config {
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 10px;
  display: grid;
  gap: 10px;
}

.master-agenda-enterprise-config h4 {
  margin: 0;
  font-size: 0.95rem;
  color: #000000;
}

.master-agenda-enterprise-config.is-disabled {
  opacity: 0.55;
}

.master-agenda-enterprise-config[data-multi-cards-config-wrap] .master-enterprise-modal-grid > label {
  display: grid;
  grid-template-rows: minmax(2.7em, auto) auto;
  align-content: start;
  gap: 6px;
}

.master-agenda-enterprise-config[data-multi-cards-config-wrap] .master-enterprise-modal-grid > label > input {
  width: 100%;
}

.master-users-table td.master-users-actions-cell .action-btn + .action-btn {
  margin-left: 8px;
}

.master-enterprise-cell {
  display: grid;
  gap: 6px;
  justify-items: center;
}

.master-enterprise-actions {
  display: flex;
  gap: 6px;
  justify-content: center;
}

.master-enterprise-actions .action-btn {
  min-width: 74px;
  padding: 6px 10px;
}

.marketing-leads-card {
  margin-top: 18px;
  display: grid;
  gap: 12px;
}

.marketing-leads-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
}

.marketing-leads-head h2 {
  margin-bottom: 4px;
}

.marketing-leads-stats {
  display: grid;
  justify-items: center;
  gap: 2px;
  min-width: 88px;
  padding: 8px 10px;
  border-radius: 12px;
  border: 1px solid var(--line);
  background: #f5f8ff;
}

.marketing-leads-stats strong {
  font-size: 1.32rem;
  line-height: 1;
}

.marketing-leads-stats span {
  color: #54627a;
  font-size: 0.8rem;
  font-weight: 600;
}

.marketing-actions {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.marketing-actions button {
  width: auto;
  min-width: 160px;
  height: 40px;
  padding: 0 16px;
}

#createUserBtn,
#exportLeadsBtn,
#createCouponBtn,
#savePixSettingsBtn,
#saveWhatsappSettingsBtn,
#saveShippingSettingsBtn,
#saveShopProductBtn {
  min-width: 160px;
  height: 40px;
  padding: 0 16px;
}

.marketing-actions .icon-action-btn {
  width: 38px;
  min-width: 38px;
  height: 38px;
  padding: 0;
}

#exportCheckoutOrdersBtn {
  width: auto;
  min-width: 90px;
  height: 38px;
  padding: 0 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
}

#exportCheckoutOrdersBtn span {
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.02em;
}

#exportCheckoutOrdersPdfBtn {
  width: auto;
  min-width: 90px;
  height: 38px;
  padding: 0 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
}

#exportCheckoutOrdersPdfBtn span {
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.02em;
}

#exportLeadsBtn,
#exportLeadsPdfBtn {
  width: auto;
  min-width: 90px;
  padding: 0 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  height: 38px;
}

#exportLeadsBtn span,
#exportLeadsPdfBtn span {
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.02em;
}

.marketing-filters {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 180px 180px;
  gap: 8px;
}

@media (max-width: 900px) {
  .marketing-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .marketing-filters {
    grid-template-columns: 1fr;
  }
}

.marketing-table-wrap {
  max-height: 360px;
}

.coupon-form {
  display: grid;
  gap: 8px;
}

.coupon-form-row {
  align-items: start;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.coupon-form-row select {
  width: 100%;
}

.coupon-filters {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 220px 220px auto;
  gap: 8px;
}

.coupon-filters button {
  width: auto;
  min-width: 130px;
}

@media (max-width: 980px) {
  .coupon-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .coupon-filters {
    grid-template-columns: 1fr;
  }
}

.coupon-table td {
  vertical-align: middle;
}

.coupon-status-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 84px;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.coupon-status-pill.is-active {
  background: rgba(47, 111, 90, 0.18);
  color: #58c09a;
}

.coupon-status-pill.is-inactive {
  background: rgba(191, 97, 106, 0.2);
  color: #ff9b9b;
}

.coupon-table-actions {
  display: flex;
  justify-content: center;
  gap: 8px;
}

.coupon-table-actions .icon-action-btn {
  width: 34px;
  min-width: 34px;
  height: 34px;
  padding: 0;
}

.coupon-usage-text {
  font-weight: 700;
}

.coupon-usage-text.is-limited {
  color: #ff9b9b;
}

.shipping-settings-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr)) auto;
  align-items: end;
  gap: 10px;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #f5f8ff;
}

#shippingSettingsForm {
  grid-template-columns: minmax(260px, 1fr) auto;
}

#shippingSettingsForm .shipping-settings-toggle {
  margin-bottom: 0;
}

.shipping-settings-fields {
  display: grid;
  gap: 4px;
}

.shipping-settings-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 600;
  margin-bottom: 9px;
}

.shipping-settings-toggle input {
  width: 18px;
  min-width: 18px;
  height: 18px;
  min-height: 18px;
  margin: 0;
  accent-color: #0b8a6d;
}

.shipping-settings-form button {
  width: auto;
  min-width: 160px;
  height: 40px;
  padding: 0 16px;
}

.payment-settings-form button {
  justify-self: end;
  grid-column: 2 / 3;
}

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

.master-panel-payment-card {
  display: grid;
  gap: 10px;
}

.master-settings-form {
  grid-template-columns: 1fr;
  align-items: stretch;
  gap: 10px;
  padding: 0;
  border: 0;
  background: transparent;
}

.master-settings-group {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #f5f8ff;
}

.master-settings-group h3 {
  margin: 0;
  font-size: 0.95rem;
}

.master-settings-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: end;
  gap: 10px;
}

.master-settings-field-full {
  grid-column: 1 / -1;
}

.master-settings-form-actions {
  display: flex;
  justify-content: flex-end;
}

.master-settings-form-actions button {
  width: auto;
  min-width: 160px;
  height: 40px;
  padding: 0 16px;
}

.master-settings-shipping-form {
  grid-template-columns: minmax(260px, 1fr) auto;
  align-items: stretch;
  gap: 10px;
  padding: 0;
  border: 0;
  background: transparent;
}

.master-settings-shipping-form .shipping-settings-toggle {
  margin-bottom: 0;
}

.master-settings-shipping-form button {
  align-self: end;
}

.shop-product-form {
  display: grid;
  gap: 8px;
}

.shop-product-form-row {
  align-items: start;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.shop-product-form-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}

.shop-product-form-actions button {
  width: auto;
  min-width: 160px;
  height: 40px;
  padding: 0 16px;
}

.shop-product-filters {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 220px 220px auto;
  gap: 8px;
}

.shop-product-filters button {
  width: auto;
  min-width: 130px;
}

@media (max-width: 980px) {
  .shop-product-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .shop-product-filters {
    grid-template-columns: 1fr;
  }
}

.shop-product-status-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 84px;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.shop-product-status-pill.is-active {
  background: rgba(47, 111, 90, 0.18);
  color: #58c09a;
}

.shop-product-status-pill.is-inactive {
  background: rgba(191, 97, 106, 0.2);
  color: #ff9b9b;
}

.shop-products-table-actions {
  display: flex;
  justify-content: center;
  gap: 8px;
}

.shop-products-table-actions button {
  width: auto;
  min-width: 110px;
  padding: 0 12px;
}

.shop-products-table-actions .icon-action-btn {
  width: 34px;
  min-width: 34px;
  height: 34px;
  padding: 0;
}

.checkout-orders-table td {
  vertical-align: middle;
}

.checkout-orders-filters {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 180px 200px 220px 220px auto;
  gap: 8px;
}

.checkout-orders-filters button {
  width: auto;
  min-width: 130px;
}

@media (max-width: 980px) {
  .checkout-orders-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .checkout-orders-filters {
    grid-template-columns: 1fr;
  }
}

.checkout-orders-table th:nth-child(2),
.checkout-orders-table td:nth-child(2) {
  min-width: 240px;
  white-space: nowrap;
}

.checkout-orders-table th:nth-child(5),
.checkout-orders-table td:nth-child(5) {
  min-width: 180px;
  white-space: nowrap;
}

.checkout-orders-table th:last-child,
.checkout-orders-table td:last-child {
  width: 140px;
  min-width: 140px;
  text-align: center;
  white-space: nowrap;
}

.checkout-order-field {
  width: 100%;
  min-width: 150px;
  border-radius: 8px;
  border: 1px solid var(--line);
  background: #ffffff;
  color: #233559;
  padding: 6px 8px;
  font-size: 0.84rem;
}

.checkout-order-field::placeholder {
  color: #8c9ab5;
}

.checkout-order-field:focus {
  outline: none;
  border-color: var(--accent);
  box-shadow: 0 0 0 4px rgba(11, 138, 109, 0.16);
}

.checkout-orders-table td:nth-child(5) .checkout-order-field {
  min-width: 180px;
  white-space: nowrap;
}

.checkout-orders-table-actions {
  display: table-cell;
  text-align: center;
}

.checkout-orders-table-actions button {
  display: inline-flex;
  width: 34px;
  height: 34px;
  min-width: 0;
  padding: 0;
  margin: 0;
}

.checkout-orders-table-actions button + button {
  margin-left: 6px;
}

.checkout-orders-table-actions .icon-action-btn {
  width: 34px;
  min-width: 34px;
  height: 34px;
  padding: 0;
  margin: 0;
  flex: 0 0 34px;
}

.checkout-order-status-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 96px;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.checkout-order-status-pill.is-approved {
  background: rgba(47, 111, 90, 0.18);
  color: #58c09a;
}

.checkout-order-status-pill.is-processing {
  background: rgba(15, 87, 213, 0.2);
  color: #9fc5ff;
}

.checkout-order-status-pill.is-rejected {
  background: rgba(191, 97, 106, 0.2);
  color: #ff9b9b;
}

.icon-action-btn.is-block-action {
  border-color: #e5c6c6;
  background: #fff5f5;
  color: #a23b3b;
}

.icon-action-btn.is-unblock-action {
  border-color: #bedecf;
  background: #f1fbf6;
  color: #1f6e52;
}

@media (max-width: 1020px) {
  .marketing-leads-head {
    flex-direction: column;
    align-items: stretch;
  }

  .marketing-leads-stats {
    justify-items: start;
  }

  .coupon-form-row {
    grid-template-columns: 1fr;
  }

  .coupon-table-actions {
    justify-content: flex-start;
  }

  .shop-product-form-row {
    grid-template-columns: 1fr;
  }

  .shop-products-table-actions {
    justify-content: flex-start;
  }

  .shipping-settings-form {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .shipping-settings-toggle {
    margin-bottom: 0;
  }

  .shipping-settings-form button {
    width: 100%;
    min-width: 0;
  }

  .payment-settings-form button {
    grid-column: auto;
    justify-self: stretch;
  }

  .master-settings-grid {
    grid-template-columns: 1fr;
  }

  .master-settings-form-actions {
    justify-content: stretch;
  }

  .master-settings-shipping-form button {
    align-self: stretch;
  }
}

.agenda-services-table td,
.agenda-services-table th {
  vertical-align: middle;
}

.agenda-services-table {
  table-layout: fixed;
  width: auto;
  min-width: 100%;
}

.agenda-services-table th:nth-child(1),
.agenda-services-table td:nth-child(1) {
  width: 170px;
}

.agenda-services-table th:nth-child(2),
.agenda-services-table td:nth-child(2) {
  min-width: 180px;
}

.agenda-services-table th:nth-child(3),
.agenda-services-table td:nth-child(3) {
  width: 120px;
}

.agenda-services-table th:nth-child(4),
.agenda-services-table td:nth-child(4) {
  width: 132px;
}

.agenda-services-table th:nth-child(5),
.agenda-services-table td:nth-child(5) {
  width: 132px;
  text-align: center;
  white-space: nowrap;
}

.agenda-services-table td.users-actions {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  white-space: nowrap;
}

.agenda-services-table td.users-actions .action-btn + .action-btn {
  margin-left: 8px;
}

.agenda-services-table .agenda-service-actions-cell .action-btn {
  min-width: 34px;
}

.action-btn {
  width: auto;
  min-width: 80px;
  padding: 6px 10px;
  font-size: 0.8rem;
}

.icon-action-btn {
  min-width: 34px;
  width: 34px;
  height: 34px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.icon-action-btn svg {
  width: 16px;
  height: 16px;
}

.icon-action-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.danger-btn {
  background: #b82738;
}

.pagination-bar {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.pagination-controls {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-left: auto;
}

.pagination-controls button {
  width: auto;
  min-width: 38px;
  height: 38px;
  padding: 0 12px;
  font-size: 1rem;
}

.pagination-controls .small {
  min-width: 112px;
  text-align: center;
}

.page-size-control {
  display: flex;
  align-items: center;
  gap: 8px;
}

.master-user-form-actions {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.master-user-form-actions button {
  width: auto;
  min-width: 160px;
  height: 40px;
  padding: 0 16px;
}

.master-enterprise-modal {
  position: fixed;
  inset: 0;
  z-index: 130;
}

.master-enterprise-modal-backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  border-radius: 0;
  background: rgba(5, 8, 20, 0.68);
}

.master-enterprise-modal-panel {
  position: relative;
  width: min(560px, calc(100vw - 28px));
  margin: 28px auto;
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 14px;
  display: grid;
  gap: 12px;
  max-height: calc(100vh - 56px);
  overflow: auto;
}

.master-enterprise-modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  position: sticky;
  top: -14px;
  z-index: 8;
  margin: -14px -14px 0;
  padding: 12px 14px 10px;
  background: #ffffff;
  border-bottom: 1px solid var(--line);
}

.master-enterprise-modal-header h3 {
  margin: 0;
}

.master-enterprise-modal-subtitle,
.master-enterprise-share-subtitle {
  margin: 0;
  color: #516079;
}

.master-enterprise-modal-close {
  min-width: 34px;
  width: 34px;
  height: 34px;
  padding: 0;
}

.master-enterprise-modal-form {
  display: grid;
  gap: 10px;
}

.master-enterprise-modal-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.master-enterprise-modal-readonly-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.master-enterprise-modal-readonly-item {
  margin: 0;
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 8px 10px;
  display: grid;
  gap: 4px;
  background: #f7f9fe;
}

.master-enterprise-modal-readonly-item span {
  font-size: 0.78rem;
  color: #5a6780;
}

.master-enterprise-modal-readonly-item strong {
  font-size: 0.95rem;
  color: #1a2742;
}

.master-enterprise-invoice-content {
  display: grid;
  gap: 8px;
}

.master-enterprise-invoice-history-filters {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.master-enterprise-invoice-history-filters label {
  display: grid;
  gap: 4px;
  color: #4a5772;
  font-size: 0.76rem;
  font-weight: 700;
}

.master-enterprise-invoice-history-filters input,
.master-enterprise-invoice-history-filters select {
  width: 100%;
  min-height: 34px;
}

.master-enterprise-invoice-history-table-wrap {
  border: 1px solid var(--line);
  border-radius: 10px;
  overflow: auto;
  max-height: 180px;
  background: #ffffff;
}

.master-enterprise-invoice-history-table {
  width: 100%;
  min-width: 460px;
  table-layout: fixed;
  border-collapse: collapse;
  font-size: 0.76rem;
}

.master-enterprise-invoice-history-table th,
.master-enterprise-invoice-history-table td {
  padding: 5px 6px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  white-space: nowrap;
}

.master-enterprise-invoice-history-table th:nth-child(1),
.master-enterprise-invoice-history-table td:nth-child(1) {
  width: 84px;
}

.master-enterprise-invoice-history-table th:nth-child(2),
.master-enterprise-invoice-history-table td:nth-child(2) {
  width: 92px;
}

.master-enterprise-invoice-history-table th:nth-child(3),
.master-enterprise-invoice-history-table td:nth-child(3) {
  width: 90px;
}

.master-enterprise-invoice-history-table th:nth-child(4),
.master-enterprise-invoice-history-table td:nth-child(4) {
  width: 96px;
}

.master-enterprise-invoice-history-table th:last-child,
.master-enterprise-invoice-history-table td:last-child {
  text-align: center;
  width: 98px;
}

.master-enterprise-invoice-history-table th {
  background: #f7f9fe;
  color: #1a2742;
  font-weight: 700;
}

.master-enterprise-invoice-history-table tbody tr:last-child td {
  border-bottom: 0;
}

.master-enterprise-invoice-reference-link {
  border: 0 !important;
  background: transparent !important;
  padding: 0;
  margin: 0;
  color: #0b8a6d;
  font: inherit;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
  cursor: pointer;
}

.master-enterprise-invoice-reference-link:hover,
.master-enterprise-invoice-reference-link:focus,
.master-enterprise-invoice-reference-link:focus-visible {
  color: #08745d;
  background: transparent !important;
  transform: none !important;
  box-shadow: none !important;
}

.master-enterprise-invoice-reference-link:active {
  background: transparent !important;
  box-shadow: none !important;
}

.master-enterprise-invoice-reference-link:focus-visible {
  outline: 2px solid rgba(11, 138, 109, 0.35);
  outline-offset: 2px;
  border-radius: 4px;
}

.master-enterprise-invoice-history-empty {
  text-align: center !important;
  color: #6a7691;
}

.master-enterprise-invoice-status-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 1px 6px;
  border-radius: 999px;
  background: #eef3ff;
  color: #1f3768;
  font-weight: 600;
}

.master-enterprise-modal-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
  align-items: center;
}

.master-enterprise-modal-actions-left {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-right: auto;
}

.master-enterprise-modal-actions button {
  width: auto;
  min-width: 120px;
}

.master-enterprise-invoice-detail-modal .master-enterprise-modal-panel {
  width: min(680px, calc(100vw - 28px));
}

.master-enterprise-invoice-detail {
  display: grid;
  gap: 10px;
}

.master-enterprise-invoice-detail-summary {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.master-enterprise-invoice-detail-table-wrap {
  border: 1px solid var(--line);
  border-radius: 10px;
  overflow: auto;
  background: #ffffff;
}

.master-enterprise-invoice-detail-table {
  width: 100%;
  min-width: 520px;
  table-layout: fixed;
  border-collapse: collapse;
  font-size: 0.8rem;
}

.master-enterprise-invoice-detail-table th,
.master-enterprise-invoice-detail-table td {
  padding: 8px 9px;
  border-bottom: 1px solid var(--line);
  text-align: left;
  white-space: nowrap;
}

.master-enterprise-invoice-detail-table th {
  background: #f7f9fe;
  color: #1a2742;
  font-weight: 700;
}

.master-enterprise-invoice-detail-table th:nth-child(1),
.master-enterprise-invoice-detail-table td:nth-child(1) {
  width: 32%;
}

.master-enterprise-invoice-detail-table th:nth-child(2),
.master-enterprise-invoice-detail-table td:nth-child(2) {
  width: 24%;
}

.master-enterprise-invoice-detail-table th:nth-child(3),
.master-enterprise-invoice-detail-table td:nth-child(3),
.master-enterprise-invoice-detail-table th:nth-child(4),
.master-enterprise-invoice-detail-table td:nth-child(4) {
  width: 22%;
}

.master-enterprise-invoice-detail-table tbody tr:last-child td {
  border-bottom: 0;
}

.master-enterprise-invoice-detail-total {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 8px 10px;
  background: #f7f9fe;
}

.master-enterprise-invoice-detail-total span {
  color: #4a5772;
  font-weight: 700;
}

.master-enterprise-invoice-detail-total strong {
  font-size: 0.98rem;
  color: #1a2742;
}

@media (max-width: 720px) {
  .master-enterprise-modal-grid,
  .master-enterprise-modal-readonly-grid {
    grid-template-columns: 1fr;
  }

  .master-agenda-modal-tabs {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6px;
    border-bottom: 0;
    padding: 0;
  }

  .master-page .master-agenda-modal-form .master-premium-settings-tabs {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .master-page .master-agenda-modal-form button.master-premium-settings-tab-btn,
  .master-page .master-agenda-modal-form button.master-premium-settings-tab-btn:hover,
  .master-page .master-agenda-modal-form button.master-premium-settings-tab-btn:focus,
  .master-page .master-agenda-modal-form button.master-premium-settings-tab-btn:active {
    min-height: 44px;
    font-size: 0.9rem;
    padding: 10px;
  }

  .master-agenda-modal-tab {
    border: 1px solid #d9d9d9;
    border-radius: 16px;
    margin-bottom: 0;
    background: #ffffff;
    color: #000000;
  }

  .master-agenda-modal-tab.is-active {
    border-color: #d9d9d9;
    background: #ffffff;
    color: #000000;
    box-shadow: none;
  }

  .master-agenda-modal-tab-panel {
    border-top: 1px solid #d9d9d9;
    border-radius: 12px;
  }

  .master-agenda-modal-flags-row {
    grid-template-columns: 1fr;
  }

  .master-enterprise-invoice-history-filters {
    grid-template-columns: 1fr;
  }

  .master-enterprise-modal-actions button {
    min-width: 100px;
  }

  .master-enterprise-invoice-detail-summary {
    grid-template-columns: 1fr;
  }
}

.page-size-control select {
  border-radius: 8px;
  border: 1px solid var(--line);
  background: #0d1430;
  color: var(--text);
  padding: 6px 8px;
}

.panel-section {
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: 12px;
}

.accordion-section {
  padding: 8px;
}

.accordion-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  width: 100%;
  text-align: left;
}

.accordion-toggle::before {
  content: '';
  width: 1.1rem;
  min-width: 1.1rem;
  height: 1.1rem;
  border-radius: 999px;
  border: 1px solid transparent;
  color: #1f8f69;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transform: scale(0.84);
  transition:
    opacity 0.16s ease,
    transform 0.16s ease,
    border-color 0.16s ease,
    background 0.16s ease;
}

@keyframes accordionSavedCheckPop {
  0% {
    opacity: 0;
    transform: scale(0.72);
  }

  65% {
    opacity: 1;
    transform: scale(1.08);
  }

  100% {
    opacity: 1;
    transform: scale(1);
  }
}

.accordion-toggle.has-save-success::before {
  content: '✓';
  opacity: 1;
  transform: scale(1);
  color: #16664d;
  background: #f6fff9;
  border-color: #66ba8e;
  animation: accordionSavedCheckPop 0.24s ease-out;
}

@media (prefers-reduced-motion: reduce) {
  .accordion-toggle::before,
  .accordion-toggle.has-save-success::before {
    transition: none;
    animation: none;
  }
}

.accordion-toggle::after {
  content: '▾';
  font-size: 0.9rem;
  opacity: 0.9;
}

.accordion-toggle[aria-expanded='true']::after {
  content: '▴';
}

.accordion-content {
  margin-top: 10px;
}

.accordion-content.is-saving {
  opacity: 0.76;
}

.section-save-actions {
  margin-top: 16px;
  display: flex;
  justify-content: flex-end;
}

.section-save-actions .agenda-confirm-palette-btn {
  width: auto;
  min-width: 150px;
  padding: 10px 18px;
}

.section-save-actions .agenda-confirm-palette-btn.is-saving {
  opacity: 0.78;
  cursor: wait;
}

.section-save-actions .agenda-confirm-palette-btn.is-saved {
  background: #1f8f69;
  border-color: #1f8f69;
}

.section-status {
  margin-top: 8px;
  min-height: 18px;
}

.accordion-content[hidden] {
  display: none !important;
}

.links-layout-options {
  margin: 0 0 10px;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #ffffff;
  display: grid;
  gap: 8px;
}

.links-layout-title {
  margin: 0;
  color: #4f5b76;
  font-size: 0.86rem;
  font-weight: 700;
}

.links-layout-option {
  margin: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  color: #4f5b76;
}

.links-layout-option input[type='radio'] {
  width: 18px;
  height: 18px;
  min-width: 18px;
  min-height: 18px;
  flex: 0 0 18px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: transparent;
  box-shadow: none;
  accent-color: #0d7cff;
  align-self: center;
}

.links-layout-option span {
  display: block;
  line-height: 1.35;
  font-size: 0.9rem;
}

.links-order-table td,
.links-order-table th {
  vertical-align: middle;
}

.links-order-table {
  table-layout: fixed;
  width: auto;
  min-width: 100%;
}

.links-order-table th:nth-child(1),
.links-order-table td:nth-child(1) {
  width: 170px;
}

.links-order-table th:nth-child(3),
.links-order-table td:nth-child(3) {
  width: 150px;
  text-align: center;
}

.links-order-table th:nth-child(4),
.links-order-table td:nth-child(4) {
  width: 110px;
  text-align: center;
  white-space: nowrap;
}

.links-order-table th:nth-child(2),
.links-order-table td:nth-child(2) {
  min-width: 180px;
}

.links-order-table td.users-actions {
  display: table-cell;
  text-align: center;
  white-space: nowrap;
}

.links-order-table td.users-actions .icon-action-btn {
  vertical-align: middle;
}

.links-order-table td.users-actions .icon-action-btn + .icon-action-btn {
  margin-left: 8px;
}

.catalog-payment-settings {
  margin: 0 0 14px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: color-mix(in srgb, #ffffff 6%, transparent);
  display: grid;
  gap: 8px;
}

.catalog-payment-settings h3 {
  margin: 0;
  font-size: 1rem;
}

.catalog-payment-settings p {
  margin: 0;
}

.catalog-payment-settings-actions {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
}

.catalog-payment-settings-actions .action-btn {
  width: auto;
  min-width: 156px;
  height: 36px;
  padding: 0 14px;
}

#catalogPaymentSettingsStatus {
  margin: 0;
}

.catalog-checkout-orders-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}

.catalog-checkout-orders-header h3 {
  margin: 0;
}

.catalog-checkout-orders-header-actions {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.catalog-checkout-orders-header .action-btn {
  width: auto;
  min-width: 104px;
  height: 36px;
  padding: 0 12px;
}

.catalog-checkout-orders-filter-row {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(0, 1fr)) auto;
  align-items: end;
}

.catalog-checkout-orders-filter-row > div {
  min-width: 0;
}

.catalog-checkout-orders-filter-row input[type='date'],
.catalog-checkout-orders-filter-row select {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

.catalog-checkout-orders-filter-actions {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
}

.catalog-checkout-orders-filter-actions button {
  width: auto;
  min-width: 88px;
}

.catalog-checkout-orders-table {
  table-layout: fixed;
  width: auto;
  min-width: 100%;
}

.catalog-checkout-orders-table th:nth-child(1),
.catalog-checkout-orders-table td:nth-child(1) {
  width: 120px;
}

.catalog-checkout-orders-table th:nth-child(2),
.catalog-checkout-orders-table td:nth-child(2) {
  width: 86px;
}

.catalog-checkout-orders-table th:nth-child(3),
.catalog-checkout-orders-table td:nth-child(3) {
  min-width: 180px;
}

.catalog-checkout-orders-table th:nth-child(4),
.catalog-checkout-orders-table td:nth-child(4) {
  width: 92px;
}

.catalog-checkout-orders-table th:nth-child(5),
.catalog-checkout-orders-table td:nth-child(5) {
  width: 62px;
  text-align: center;
}

.catalog-checkout-orders-table th:nth-child(6),
.catalog-checkout-orders-table td:nth-child(6) {
  width: 98px;
}

.catalog-checkout-orders-table th:nth-child(7),
.catalog-checkout-orders-table td:nth-child(7) {
  width: 132px;
  text-align: center;
}

.catalog-checkout-orders-empty {
  text-align: center !important;
  color: #5d6986;
}

.catalog-checkout-items-trigger {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  border: 0;
  background: transparent;
  color: #0f57d5;
  font-weight: 700;
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 2px;
  padding: 0;
}

.catalog-checkout-items-trigger-icon {
  font-size: 0.9rem;
}

.catalog-checkout-items-trigger:hover {
  color: #0a3f9b;
}

.catalog-checkout-items-trigger:focus-visible {
  outline: 2px solid rgba(15, 87, 213, 0.35);
  outline-offset: 2px;
  border-radius: 4px;
}

.catalog-checkout-items-modal-body {
  display: grid;
  gap: 10px;
}

.catalog-checkout-items-modal-meta {
  display: grid;
  gap: 6px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #f5f8ff;
  padding: 10px 12px;
}

.catalog-checkout-items-modal-meta-line {
  margin: 0;
  color: #2f3f5f;
  line-height: 1.4;
  font-size: 0.94rem;
  word-break: break-word;
}

.catalog-checkout-items-modal-meta-line strong {
  color: #1c2a47;
}

.catalog-checkout-items-modal-table {
  width: 100%;
  border-collapse: collapse;
}

.catalog-checkout-items-modal-table th,
.catalog-checkout-items-modal-table td {
  border-bottom: 1px solid var(--line);
  padding: 8px 6px;
  text-align: left;
  vertical-align: top;
}

.catalog-checkout-items-modal-table thead th {
  background: #eef3ff;
  color: #1b2c52;
  font-weight: 700;
}

.catalog-checkout-items-modal-table th:nth-child(2),
.catalog-checkout-items-modal-table td:nth-child(2),
.catalog-checkout-items-modal-table th:nth-child(3),
.catalog-checkout-items-modal-table td:nth-child(3),
.catalog-checkout-items-modal-table th:nth-child(4),
.catalog-checkout-items-modal-table td:nth-child(4) {
  text-align: right;
}

.catalog-checkout-items-modal-table tfoot th {
  border-top: 2px solid #c6cfde;
  border-bottom: 0;
  background: #eef3ff;
  color: #1b2c52;
  font-weight: 700;
}

#catalogCheckoutOrdersStatus {
  margin: 0;
}

.catalog-checkout-orders-pagination {
  margin-top: 4px;
}

.catalog-payment-modal {
  position: fixed;
  inset: 0;
  z-index: 140;
}

.catalog-payment-modal[hidden] {
  display: none !important;
}

.catalog-payment-modal-backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  border-radius: 0;
  background: rgba(5, 8, 20, 0.68);
  padding: 0;
}

.catalog-payment-modal-panel {
  position: relative;
  width: min(700px, calc(100vw - 24px));
  margin: 24px auto;
  background: #ffffff;
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: 12px;
  display: grid;
  gap: 10px;
  max-height: calc(100vh - 48px);
  overflow: auto;
}

.catalog-payment-modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  position: sticky;
  top: -12px;
  z-index: 3;
  margin: -12px -12px 0;
  padding: 10px 12px 8px;
  background: #ffffff;
  border-bottom: 1px solid var(--line);
}

.catalog-payment-modal-header h3 {
  margin: 0;
  color: #1b2c4d;
}

.catalog-payment-modal-close {
  width: 34px;
  min-width: 34px;
  height: 34px;
  padding: 0;
  font-size: 1.2rem;
  line-height: 1;
}

.catalog-payment-modal-form {
  display: grid;
  gap: 10px;
}

#catalogPaymentSettingsModal .catalog-payment-modal-panel {
  display: flex;
  flex-direction: column;
}

#catalogPaymentSettingsModal .catalog-payment-modal-tabs {
  display: flex;
  gap: 0;
  flex-wrap: nowrap;
  border-bottom: 1px solid var(--line);
}

#catalogPaymentSettingsModal .catalog-payment-modal-tab {
  border: 1px solid transparent;
  border-bottom: 0;
  background: #f7f9ff;
  color: #5a6a89;
  border-radius: 18px 18px 0 0;
  height: 42px;
  padding: 0 16px;
  font-weight: 600;
  margin-bottom: -1px;
}

#catalogPaymentSettingsModal .catalog-payment-modal-tab.is-active {
  color: #0f57d5;
  border-color: var(--line);
  background: #ffffff;
}

#catalogPaymentSettingsModal .catalog-payment-modal-blocks {
  display: block;
  width: 100%;
  flex: 1;
  min-height: 0;
}

#catalogPaymentSettingsModal .catalog-payment-modal-block {
  width: 100%;
  border: 0;
  border-radius: 0;
  padding: 6px 0 0;
  display: grid;
  gap: 8px;
  background: transparent;
}

#catalogPaymentSettingsModal .catalog-payment-modal-block > p.small {
  margin: 0 0 10px;
}

#catalogPaymentSettingsModal .catalog-payment-required-note {
  margin: 0 0 10px;
  border: 1px solid #f0d39b;
  border-radius: 10px;
  background: #fff8ea;
  color: #6b4a16;
  padding: 10px 12px;
  line-height: 1.45;
  display: flex;
  align-items: flex-start;
  gap: 8px;
}

.catalog-cart-payment-unavailable {
  margin: 2px 0 0;
  border: 1px solid #f0d39b;
  border-radius: 10px;
  background: #fff8ea;
  color: #6b4a16;
  padding: 10px 12px;
  line-height: 1.45;
  display: flex;
  align-items: flex-start;
  gap: 8px;
}

#catalogPaymentSettingsModal .catalog-payment-required-note::before,
.catalog-cart-payment-unavailable::before {
  content: '!';
  width: 18px;
  min-width: 18px;
  height: 18px;
  border-radius: 999px;
  border: 1px solid #d8b16b;
  background: #ffecc8;
  color: #7a5318;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.76rem;
  font-weight: 700;
  line-height: 1;
  margin-top: 1px;
}

@media (max-width: 640px) {
  #catalogPaymentSettingsModal .catalog-payment-required-note,
  .catalog-cart-payment-unavailable {
    border-color: #f3dfbb;
    background: #fffbf3;
    color: #6d542a;
    padding: 9px 10px;
    gap: 7px;
  }

  #catalogPaymentSettingsModal .catalog-payment-required-note::before,
  .catalog-cart-payment-unavailable::before {
    width: 16px;
    min-width: 16px;
    height: 16px;
    font-size: 0.7rem;
    margin-top: 2px;
  }
}

@media (min-width: 641px) and (max-width: 820px) {
  #catalogPaymentSettingsModal .catalog-payment-required-note,
  .catalog-cart-payment-unavailable {
    border-color: #efdab3;
    background: #fff9ee;
    color: #6c5222;
  }

  #catalogPaymentSettingsModal .catalog-payment-required-note::before,
  .catalog-cart-payment-unavailable::before {
    width: 17px;
    min-width: 17px;
    height: 17px;
    font-size: 0.73rem;
  }
}

#catalogPaymentSettingsModal .catalog-payment-modal-block[hidden] {
  display: none !important;
}

#catalogPaymentSettingsModal .catalog-payment-modal-block h4 {
  margin: 0;
  color: #1b2c4d;
}

.catalog-payment-modal-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: nowrap;
}

.catalog-payment-modal-actions .action-btn,
.catalog-payment-modal-actions .secondary {
  width: auto;
  min-width: 116px;
  height: 38px;
  padding: 0 14px;
}

@media (min-width: 980px) {
  .catalog-payment-modal-blocks {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
  }
}

.master-page #checkoutOrderItemsModal .catalog-payment-modal-backdrop {
  background: rgba(5, 8, 20, 0.68) !important;
  border: 0 !important;
  color: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}

.master-page #checkoutOrderItemsModal .catalog-payment-modal-backdrop:hover,
.master-page #checkoutOrderItemsModal .catalog-payment-modal-backdrop:focus-visible {
  background: rgba(5, 8, 20, 0.68) !important;
  border: 0 !important;
  box-shadow: none !important;
  transform: none !important;
}

.master-page #checkoutOrderItemsModal .catalog-payment-modal-close,
.master-page #checkoutOrderItemsModal .catalog-payment-modal-actions .secondary,
.master-page #checkoutOrderItemsModal .catalog-payment-modal-actions .action-btn {
  border: 1px solid var(--line) !important;
  background: #ffffff !important;
  color: #213150 !important;
}

.catalog-header-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 12px;
  margin-bottom: 10px;
}

#catalogSection #addCatalogProductBtn {
  width: auto;
  min-width: 144px;
  height: 38px;
  padding: 0 14px;
  justify-self: end;
  align-self: start;
}

.catalog-description {
  margin: 0;
  text-align: left;
  color: var(--muted);
  font-size: 0.84rem;
  max-width: 760px;
}

.catalog-search-check {
  margin: 0 0 10px;
  justify-content: flex-start;
  gap: 8px;
}

.catalog-search-check > span:last-child {
  white-space: nowrap;
}

.catalog-order-table td,
.catalog-order-table th {
  vertical-align: middle;
}

.catalog-order-table {
  table-layout: fixed;
  width: auto;
  min-width: 100%;
}

.catalog-order-table th:nth-child(1),
.catalog-order-table td:nth-child(1) {
  width: 170px;
}

.catalog-order-table th:nth-child(2),
.catalog-order-table td:nth-child(2) {
  min-width: 180px;
}

.catalog-order-table th:nth-child(3),
.catalog-order-table td:nth-child(3) {
  width: 130px;
}

.catalog-order-table th:nth-child(4),
.catalog-order-table td:nth-child(4) {
  width: 110px;
  text-align: center;
  white-space: nowrap;
}

.catalog-order-table th:nth-child(5),
.catalog-order-table td:nth-child(5) {
  width: 112px;
  text-align: center;
}

.catalog-order-table td.users-actions {
  display: table-cell;
  text-align: center;
  white-space: nowrap;
}

.catalog-order-table td.users-actions .icon-action-btn {
  vertical-align: middle;
}

.catalog-order-table td.users-actions .icon-action-btn + .icon-action-btn {
  margin-left: 8px;
}

.catalog-price-cell {
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

.catalog-hide-cell {
  text-align: center;
}

.catalog-hide-toggle {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 70px;
  min-width: 70px;
  height: 38px;
  cursor: pointer;
}

.catalog-hide-toggle input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.catalog-hide-toggle-slider {
  position: relative;
  display: inline-flex;
  width: 66px;
  height: 34px;
  border-radius: 999px;
  background: #34445e;
  border: 1px solid #d8dde7;
  box-shadow: inset 0 0 0 1px rgba(52, 68, 94, 0.18);
  transition: background-color 0.18s ease, border-color 0.18s ease;
}

.catalog-hide-toggle-slider::after {
  content: '';
  position: absolute;
  top: 3px;
  left: 3px;
  width: 26px;
  height: 26px;
  border-radius: 999px;
  background: #ffffff;
  box-shadow: 0 1px 2px rgba(15, 34, 48, 0.32);
  transition: transform 0.18s ease;
}

.catalog-hide-toggle input:checked + .catalog-hide-toggle-slider {
  background: #0b8a6d;
  border-color: #0b8a6d;
  box-shadow: inset 0 0 0 1px rgba(11, 138, 109, 0.2);
}

.catalog-hide-toggle input:checked + .catalog-hide-toggle-slider::after {
  transform: translateX(32px);
}

.catalog-hide-toggle input:focus-visible + .catalog-hide-toggle-slider {
  outline: 2px solid #2f6bff;
  outline-offset: 2px;
}

.drag-handle {
  display: inline-flex;
  width: 22px;
  height: 22px;
  align-items: center;
  justify-content: center;
  color: var(--muted);
  cursor: grab;
  -webkit-user-select: none;
  user-select: none;
}

.drag-handle svg {
  width: 16px;
  height: 16px;
}

.drag-order-controls {
  display: none;
  align-items: center;
  gap: 6px;
  margin-left: 8px;
}

.drag-order-btn {
  width: 30px;
  min-width: 30px;
  height: 30px;
  padding: 0;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.9rem;
  line-height: 1;
}

.drag-order-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

@media (max-width: 820px) {
  #catalogSection .catalog-payment-settings-actions {
    align-items: flex-start;
  }

  #catalogSection .catalog-payment-settings-actions .action-btn {
    min-width: 0;
    width: auto;
    max-width: 100%;
  }

  #catalogSection .catalog-checkout-orders-header {
    align-items: flex-start;
  }

  #catalogSection .catalog-checkout-orders-header .action-btn {
    width: auto;
    min-width: 0;
  }

  #catalogSection .catalog-checkout-orders-filter-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #catalogSection .catalog-checkout-orders-filter-actions {
    grid-column: 1 / -1;
  }

  #catalogSection .catalog-header-row {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  #catalogSection #addCatalogProductBtn {
    justify-self: start;
    min-width: 0;
    width: auto;
    max-width: 100%;
  }

  #catalogSection .catalog-search-check {
    align-items: flex-start;
  }

  #catalogSection .catalog-search-check > span:last-child {
    white-space: normal;
    line-height: 1.4;
  }

  .drag-handle {
    display: none;
  }

  .drag-order-controls {
    display: inline-flex;
  }

  .links-order-table th:nth-child(1),
  .links-order-table td:nth-child(1) {
    width: 128px;
  }

  .links-order-table th:nth-child(3),
  .links-order-table td:nth-child(3) {
    width: 96px;
  }

  .links-order-table th:nth-child(4),
  .links-order-table td:nth-child(4) {
    width: 86px;
  }

  .links-order-table th:nth-child(2),
  .links-order-table td:nth-child(2) {
    min-width: 170px;
  }

  .catalog-order-table th:nth-child(1),
  .catalog-order-table td:nth-child(1) {
    width: 128px;
  }

  .catalog-order-table th:nth-child(2),
  .catalog-order-table td:nth-child(2) {
    min-width: 160px;
  }

  .catalog-order-table th:nth-child(3),
  .catalog-order-table td:nth-child(3) {
    width: 112px;
  }

  .catalog-order-table th:nth-child(4),
  .catalog-order-table td:nth-child(4) {
    width: 86px;
  }

  .catalog-order-table th:nth-child(5),
  .catalog-order-table td:nth-child(5) {
    width: 104px;
  }

  .catalog-checkout-orders-table th:nth-child(1),
  .catalog-checkout-orders-table td:nth-child(1) {
    width: 108px;
  }

  .catalog-checkout-orders-table th:nth-child(2),
  .catalog-checkout-orders-table td:nth-child(2) {
    width: 84px;
  }

  .catalog-checkout-orders-table th:nth-child(3),
  .catalog-checkout-orders-table td:nth-child(3) {
    min-width: 160px;
  }

  .catalog-checkout-orders-table th:nth-child(4),
  .catalog-checkout-orders-table td:nth-child(4) {
    width: 90px;
  }

  .catalog-checkout-orders-table th:nth-child(5),
  .catalog-checkout-orders-table td:nth-child(5) {
    width: 60px;
  }

  .catalog-checkout-orders-table th:nth-child(6),
  .catalog-checkout-orders-table td:nth-child(6) {
    width: 94px;
  }

  .catalog-checkout-orders-table th:nth-child(7),
  .catalog-checkout-orders-table td:nth-child(7) {
    width: 122px;
  }

  .agenda-services-table th:nth-child(1),
  .agenda-services-table td:nth-child(1) {
    width: 128px;
  }

  .agenda-services-table th:nth-child(2),
  .agenda-services-table td:nth-child(2) {
    min-width: 160px;
  }

  .agenda-services-table th:nth-child(3),
  .agenda-services-table td:nth-child(3) {
    width: 108px;
  }

  .agenda-services-table th:nth-child(4),
  .agenda-services-table td:nth-child(4) {
    width: 108px;
  }

  .agenda-services-table th:nth-child(5),
  .agenda-services-table td:nth-child(5) {
    width: 96px;
  }
}

@media (max-width: 640px) {
  .catalog-payment-modal-panel {
    width: min(100vw - 14px, 100%);
    margin: 10px auto;
    max-height: calc(100vh - 20px);
  }

  .catalog-payment-modal-actions {
    justify-content: flex-end;
    flex-wrap: nowrap;
  }

  .catalog-payment-modal-actions .action-btn,
  .catalog-payment-modal-actions .secondary {
    width: auto;
    min-width: 116px;
  }

  #catalogSection .catalog-checkout-orders-filter-row {
    grid-template-columns: 1fr;
  }

  #catalogSection .catalog-checkout-orders-filter-actions {
    width: 100%;
  }

  #catalogSection .catalog-checkout-orders-filter-actions button {
    width: 100%;
    min-width: 0;
  }

  #catalogSection #addCatalogProductBtn {
    width: 100%;
    justify-self: stretch;
  }
}

#linksSection #addLink {
  width: auto;
  min-width: 130px;
  height: 38px;
  padding: 0 14px;
  justify-self: end;
  margin-top: 6px;
}

.dragging-row {
  opacity: 0.5;
}

.inline-check {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--text);
  font-size: 0.9rem;
}

.inline-check input {
  width: auto;
}

.link-icon-only-cell {
  text-align: center;
}

.link-icon-only-cell .inline-check {
  justify-content: center;
  gap: 0;
  margin: 0;
}

.link-actions-cell-empty {
  padding: 10px;
}

.link-editor {
  padding: 12px;
  gap: 10px;
}

.link-title-cell {
  max-width: 280px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.link-page-header {
  margin-bottom: 14px;
}

.link-page-card {
  gap: 14px;
}

.link-editor-actions {
  grid-template-columns: auto auto;
  justify-content: end;
}

.link-editor-actions button {
  width: auto;
  min-width: 108px;
  min-height: 38px;
  height: 38px;
  padding: 0 14px;
  font-size: 0.9rem;
}

.link-wifi-fields {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: color-mix(in srgb, var(--card), #f6f8fc 48%);
}

.link-wifi-hidden-field {
  display: flex;
  align-items: center;
}

.link-wifi-hidden-check {
  margin: 0;
  min-height: 44px;
}

.icon-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: 10px;
}

.icon-option {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: calc(max(var(--icon-size-feather), var(--icon-size-font)) * 2.5);
  background: #ffffff;
  border: 1px solid var(--line);
  transition: transform 0.16s ease, border-color 0.16s ease;
}

@media (hover: hover) {
  .icon-option:hover {
    transform: scale(1.06);
    border-color: #83bca8;
  }
}

.icon-option.is-selected {
  border-color: var(--accent);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent), transparent 55%);
}

.icon-preview {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: max(var(--icon-size-feather), var(--icon-size-font));
  height: max(var(--icon-size-feather), var(--icon-size-font));
  line-height: 1;
}

.icon-preview svg {
  width: var(--icon-size-feather);
  height: var(--icon-size-feather);
}

.icon-preview .las,
.icon-preview .lab,
.icon-preview i {
  font-size: var(--icon-size-font);
  line-height: 1;
}

.icon-empty {
  font-weight: 700;
  font-size: 1rem;
}

.catalog-product-page .container {
  width: min(1220px, 94vw);
}

.catalog-product-header {
  margin-bottom: 14px;
}

.catalog-product-topbar {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
}

.catalog-product-topbar h1 {
  margin: 0;
}

.catalog-product-back-btn {
  width: 42px;
  min-width: 42px;
  height: 42px;
  padding: 0;
  border-radius: 12px;
  font-size: 1.2rem;
  line-height: 1;
}

.catalog-product-intro {
  margin: 8px 0 0;
  text-align: left;
  line-height: 1.55;
}

.catalog-product-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 460px);
  gap: 18px;
  align-items: start;
}

.catalog-product-form {
  display: grid;
  gap: 12px;
}

.catalog-char-counter {
  margin: 6px 0 0;
  text-align: right;
}

.catalog-product-form label[for='catalogProductPrice'] {
  letter-spacing: 0;
  font-size: 0.95rem;
  font-weight: 700;
}

.catalog-line-label,
.catalog-line-text {
  display: flex;
  align-items: center;
  gap: 10px;
  white-space: nowrap;
  font-size: 0.95rem;
  font-weight: 700;
}

.catalog-line-label::after,
.catalog-line-text::after {
  content: '';
  display: block;
  height: 1px;
  flex: 1;
  min-width: 56px;
  background: color-mix(in srgb, var(--line), #ffffff 10%);
}

.catalog-price-row {
  display: grid;
  grid-template-columns: minmax(86px, 98px) minmax(0, 1fr);
  gap: 0;
  align-items: stretch;
  border: 1px solid #d2d6dc;
  border-radius: 10px;
  overflow: hidden;
  background: #ffffff;
}

.catalog-currency-combo {
  position: relative;
  min-height: 44px;
  border: 0;
  border-right: 1px solid #d2d6dc;
  border-radius: 0;
  background: #d0d4da;
  display: flex;
  align-items: center;
  padding: 0 24px 0 10px;
  color: #445067;
}

.catalog-currency-label {
  font-weight: 500;
  font-size: 0.88rem;
  white-space: nowrap;
}

.catalog-currency-combo .country-arrow {
  position: absolute;
  right: 8px;
  top: 50%;
  width: auto;
  height: auto;
  transform: translateY(-50%);
  border: 0;
  pointer-events: none;
}

.catalog-currency-combo .country-arrow::before {
  content: '▾';
  color: #525e74;
  font-size: 0.8rem;
  line-height: 1;
}

.catalog-currency-combo select {
  position: absolute;
  inset: 0;
  min-height: 44px;
  width: 100%;
  opacity: 0;
  cursor: pointer;
}

.catalog-price-row input {
  min-height: 44px;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  font-size: 0.98rem;
  padding: 0 12px;
}

.catalog-price-row input:focus {
  box-shadow: none;
}

.catalog-measurement-row {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.catalog-measurement-row select {
  min-height: 44px;
  border: 1px solid #d2d6dc;
  border-radius: 10px;
  background: #ffffff;
  padding: 0 12px;
  font-size: 0.95rem;
}

.catalog-inline-label {
  margin: 0;
  color: #4f5b76;
  font-weight: 700;
  font-size: 0.95rem;
}

.catalog-link-type-options {
  display: flex;
  align-items: center;
  gap: 22px;
  flex-wrap: wrap;
}

.catalog-link-radio {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
  color: #4f596c;
  font-size: 0.95rem;
  cursor: pointer;
}

.catalog-link-radio input {
  width: 20px;
  height: 20px;
  min-width: 20px;
  accent-color: #0d7cff;
  margin: 0;
}

.catalog-whatsapp-options {
  display: grid;
  gap: 10px;
}

.catalog-custom-options {
  display: grid;
  gap: 10px;
}

.catalog-pix-options {
  display: grid;
  gap: 10px;
}

.catalog-whatsapp-options[hidden],
.catalog-custom-options[hidden],
.catalog-pix-options[hidden] {
  display: none !important;
}

.catalog-pix-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.catalog-pix-row label {
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-size: 0.98rem !important;
}

.catalog-whatsapp-title {
  margin: 0;
  color: #4f5b76;
  letter-spacing: 0.04em;
  font-size: 0.82rem;
  font-weight: 700;
}

.catalog-whatsapp-description {
  margin: -2px 0 8px;
  color: #6d778c;
  font-size: 0.95rem;
  line-height: 1.42;
}

.catalog-whatsapp-phone {
  display: grid;
  grid-template-columns: minmax(86px, 98px) minmax(0, 1fr);
  align-items: center;
  border: 1px solid #d2d6dc;
  border-radius: 10px;
  background: #ffffff;
  overflow: hidden;
}

.catalog-whatsapp-country {
  position: relative;
  height: 100%;
  min-height: 40px;
  border-right: 1px solid #d2d6dc;
  background: #d0d4da;
  display: inline-flex;
  align-items: center;
  gap: 2px;
  padding: 0 16px 0 6px;
}

.catalog-whatsapp-country .country-flag {
  font-size: 0.82rem;
}

.catalog-whatsapp-country .country-dial-code {
  font-size: 0.76rem;
}

.catalog-whatsapp-country .country-arrow {
  right: 6px;
}

.catalog-whatsapp-phone input {
  border: 0;
  border-radius: 0;
  min-height: 40px;
  padding: 0 10px;
  box-shadow: none;
}

.catalog-whatsapp-phone input:focus {
  box-shadow: none;
}

.catalog-images-help {
  margin: 0;
  color: #56627c;
  white-space: nowrap;
  font-size: 0.95rem;
  font-weight: 700;
}

.catalog-show-images-toggle {
  margin: 0;
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  cursor: pointer;
}

.catalog-show-images-toggle input {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: 0;
  opacity: 0;
  pointer-events: none;
}

.catalog-show-images-toggle-slider {
  position: relative;
  width: 44px;
  min-width: 44px;
  height: 24px;
  border-radius: 999px;
  background: #d1d6e1;
  border: 1px solid #c7cedb;
  transition: background-color 0.18s ease, border-color 0.18s ease;
}

.catalog-show-images-toggle-slider::after {
  content: '';
  position: absolute;
  top: 2px;
  left: 2px;
  width: 18px;
  height: 18px;
  border-radius: 999px;
  background: #ffffff;
  box-shadow: 0 1px 2px rgba(15, 34, 48, 0.25);
  transition: transform 0.18s ease;
}

.catalog-show-images-toggle input:checked + .catalog-show-images-toggle-slider {
  background: #0b8a6d;
  border-color: #0b8a6d;
}

.catalog-show-images-toggle input:checked + .catalog-show-images-toggle-slider::after {
  transform: translateX(20px);
}

.catalog-show-images-toggle input:focus-visible + .catalog-show-images-toggle-slider {
  outline: 2px solid #2f6bff;
  outline-offset: 2px;
}

.catalog-show-images-toggle .catalog-show-images-text {
  white-space: nowrap;
  min-width: 0;
  width: auto;
  flex: 1 1 auto;
}

.catalog-button-toggle-text {
  letter-spacing: 0;
  font-size: 0.95rem;
  font-weight: 700;
  color: #4f5b76;
}

.catalog-image-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.catalog-image-add-tile {
  min-height: 170px;
  border: 2px dashed #76839d;
  border-radius: 18px;
  background: #f3f5fa;
  color: #5e6677;
  display: grid;
  place-items: center;
  gap: 6px;
  text-align: center;
  padding: 12px;
}

.catalog-image-add-tile i {
  font-size: 2rem;
  line-height: 1;
}

.catalog-image-add-tile span {
  font-size: 1.25rem;
  font-weight: 500;
}

.catalog-image-item {
  position: relative;
  min-height: 170px;
  border: 1px solid var(--line);
  border-radius: 14px;
  overflow: hidden;
  background: #ffffff;
  cursor: grab;
}

.catalog-image-item.dragging {
  opacity: 0.55;
}

.catalog-image-item img {
  width: 100%;
  min-height: 170px;
  height: 100%;
  object-fit: cover;
  display: block;
}

.catalog-image-drag {
  position: absolute;
  top: 8px;
  left: 8px;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: rgba(15, 34, 48, 0.72);
  color: #ffffff;
  display: grid;
  place-items: center;
  font-size: 0.95rem;
  letter-spacing: -2px;
}

.catalog-image-order-controls {
  position: absolute;
  top: 8px;
  left: 42px;
  display: none;
  align-items: center;
  gap: 6px;
  z-index: 2;
}

.catalog-image-order-btn {
  width: 30px;
  min-width: 30px;
  height: 30px;
  padding: 0;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.68);
  background: rgba(10, 16, 34, 0.72);
  color: #ffffff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.95rem;
  line-height: 1;
}

.catalog-image-order-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.catalog-image-remove-btn {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 30px;
  min-width: 30px;
  height: 30px;
  padding: 0;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.68);
  background: rgba(10, 16, 34, 0.72);
  color: #ffffff;
  font-size: 1rem;
  line-height: 1;
}

.catalog-product-actions {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

.catalog-product-actions button {
  width: auto;
  min-width: 148px;
}

.catalog-preview-pane {
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-self: stretch;
}

.catalog-preview-pane .catalog-product-actions {
  margin-top: auto;
  justify-content: flex-end;
}

.catalog-preview-label {
  margin: 0;
  text-align: left;
  color: #4a576f;
  font-size: 0.95rem;
  letter-spacing: 0.02em;
  font-weight: 700;
}

.catalog-preview-card {
  border: 1px solid var(--line);
  border-radius: 16px;
  overflow: hidden;
  background: #ffffff;
  display: grid;
}

.catalog-preview-image-wrap {
  width: 100%;
  aspect-ratio: 4 / 3;
  max-height: 360px;
  background: #e8ecf4;
  border-bottom: 1px solid var(--line);
}

.catalog-preview-image-wrap[hidden] {
  display: none !important;
}

.catalog-preview-image-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.catalog-preview-content {
  padding: 16px;
  display: grid;
  gap: 12px;
}

.catalog-preview-top-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

.catalog-preview-name {
  margin: 0;
  color: #3f4a5f;
  font-size: 2rem;
  line-height: 1.1;
}

.catalog-preview-price {
  margin: 0;
  color: #1aa24f;
  font-size: 2rem;
  line-height: 1.1;
  font-weight: 700;
}

.catalog-preview-description {
  margin: 0;
  color: #9aa3b3;
  font-size: 1.1rem;
  line-height: 1.45;
  white-space: pre-line;
}

.catalog-preview-action {
  width: 100%;
  min-height: 56px;
  border-radius: 14px;
  border: 1px solid transparent;
  background: var(--catalog-preview-button-bg, linear-gradient(135deg, var(--accent), var(--accent-strong)));
  color: var(--catalog-preview-button-text, #ffffff);
  font-size: 1.15rem;
  box-shadow: none;
}

.catalog-preview-action:disabled {
  cursor: default;
  opacity: 1;
}

.catalog-preview-card.images-below .catalog-preview-image-wrap {
  order: 2;
  border-bottom: 0;
  border-top: 1px solid var(--line);
}

@media (max-width: 1020px) {
  .catalog-product-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 820px) {
  .catalog-price-row {
    grid-template-columns: minmax(84px, 94px) minmax(0, 1fr);
  }

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

  .catalog-image-drag {
    display: none;
  }

  .catalog-image-order-controls {
    display: inline-flex;
  }
}

@media (max-width: 640px) {
  .catalog-link-type-options {
    gap: 12px;
  }

  .catalog-whatsapp-phone {
    grid-template-columns: 1fr;
  }

  .catalog-pix-row {
    grid-template-columns: 1fr;
  }

  .catalog-whatsapp-country {
    min-height: 40px;
    border-right: 0;
    border-bottom: 1px solid #d2d6dc;
  }

  .catalog-image-grid {
    grid-template-columns: 1fr;
  }

  .catalog-image-add-tile,
  .catalog-image-item,
  .catalog-image-item img {
    min-height: 220px;
  }

  .catalog-product-actions {
    justify-content: flex-end;
  }

  .catalog-preview-name,
  .catalog-preview-price {
    font-size: 1.65rem;
  }

  .catalog-preview-action {
    min-height: 50px;
    font-size: 1.02rem;
  }
}

.catalog-image-crop-modal {
  position: fixed;
  inset: 0;
  z-index: 98;
}

.catalog-image-crop-backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgba(12, 20, 36, 0.74);
  -webkit-backdrop-filter: blur(3px);
  backdrop-filter: blur(3px);
}

.catalog-image-crop-panel {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: min(980px, calc(100vw - 48px));
  max-height: min(860px, calc(100vh - 48px));
  overflow: auto;
  background: #f4f5f7;
  border: 1px solid #d0d5de;
  border-radius: 16px;
  box-shadow: 0 26px 48px rgba(6, 12, 26, 0.38);
  padding: 18px;
  display: grid;
  gap: 14px;
}

.catalog-image-crop-header {
  display: grid;
  gap: 8px;
  position: sticky;
  top: -18px;
  z-index: 8;
  margin: -18px -18px 0;
  padding: 14px 18px 12px;
  background: #f4f5f7;
  border-bottom: 1px solid #d6dbe4;
}

.catalog-image-crop-title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.catalog-image-crop-header h3 {
  margin: 0;
  color: #4f596c;
  font-size: 1.1rem;
  font-weight: 700;
}

.catalog-image-crop-close-btn {
  width: 34px;
  min-width: 34px;
  height: 34px;
  padding: 0;
  border-radius: 10px;
  border: 1px solid #c6ccd8;
  background: #ffffff;
  color: #2f3e56;
  font-size: 1.2rem;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.catalog-image-crop-header p {
  margin: 0;
  color: #5d687f;
  line-height: 1.35;
  font-size: 0.95rem;
}

.catalog-image-crop-header p:first-of-type {
  margin-top: 2px;
  color: #4f596c;
  font-size: 0.95rem;
  font-weight: 600;
}

.catalog-image-crop-canvas-wrap {
  width: 100%;
  border: 1px solid #c6ccd8;
  border-radius: 14px;
  overflow: hidden;
  background: #121c30;
}

.catalog-image-crop-canvas-wrap canvas {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: min(50vh, 520px);
  min-height: 0;
  margin: 0 auto;
  display: block;
  cursor: grab;
  touch-action: none;
}

.catalog-image-crop-canvas-wrap canvas.dragging {
  cursor: grabbing;
}

.catalog-image-crop-zoom-value-line {
  margin: -2px 0 0;
  text-align: center;
  font-size: 0.9rem;
  font-weight: 700;
  color: #42506a;
}

.catalog-image-crop-controls {
  display: grid;
  gap: 6px;
  margin-top: -6px;
}

#catalogImageCropZoomRange {
  --range-track-color: #ffffff;
  --range-track-border: #c6ccd8;
  --range-color: #2c66e6;
}

.catalog-image-crop-controls .small {
  margin: 0;
}

.catalog-image-crop-actions {
  display: flex;
  justify-content: flex-end;
  border-top: 1px solid #d6dbe4;
  padding-top: 14px;
}

.catalog-image-crop-actions button {
  width: auto;
  min-width: 132px;
  min-height: 42px;
  padding: 0 24px;
  border-radius: 10px;
}

@media (max-width: 820px) {
  .catalog-image-crop-panel {
    width: min(980px, calc(100vw - 14px));
    max-height: calc(100vh - 14px);
    padding: 12px;
    gap: 12px;
  }

  .catalog-image-crop-header h3 {
    font-size: 1.05rem;
  }

  .catalog-image-crop-header p:first-of-type {
    font-size: 0.92rem;
  }
}

.public-brand-footer {
  width: min(500px, 96vw);
  margin: 20px auto 10px;
  text-align: center;
  overflow-x: hidden;
  position: relative;
  z-index: 1;
}

.public-brand-footer a {
  display: inline-flex;
  width: 100%;
  justify-content: center;
}

.public-brand-footer img {
  width: clamp(168px, 46vw, 260px);
  max-width: 260px;
  height: auto;
  display: block;
  margin: 0 auto;
  transform: none;
}

/* Modern Minimal Refresh */
:root {
  --bg: #f5f4ee;
  --card: #ffffff;
  --text: #0f2230;
  --muted: #526372;
  --line: #d6ddd8;
  --accent: #0b8a6d;
  --accent-strong: #066952;
  --surface-soft: #eef3f0;
  --shadow-soft: 0 12px 32px rgba(7, 23, 31, 0.1);
  --default-page-background:
    radial-gradient(circle at 12% 0%, rgba(11, 138, 109, 0.16), transparent 34%),
    radial-gradient(circle at 88% 12%, rgba(238, 143, 28, 0.14), transparent 36%),
    linear-gradient(180deg, #f5f4ee 0%, #f8f7f3 54%, #eceae0 100%);
}

html {
  background-color: var(--bg);
  background: var(--page-background, var(--default-page-background));
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: scroll;
}

body {
  font-family: 'Space Grotesk', 'Instrument Sans', sans-serif;
  color: var(--text);
}

body::before {
  opacity: 1;
}

body::after {
  content: '';
  position: fixed;
  inset: 0;
  z-index: -2;
  pointer-events: none;
  background:
    linear-gradient(0deg, rgba(255, 255, 255, 0.22), rgba(255, 255, 255, 0.22)),
    repeating-linear-gradient(
      90deg,
      rgba(14, 24, 44, 0.018) 0,
      rgba(14, 24, 44, 0.018) 1px,
      transparent 1px,
      transparent 48px
    );
}

.container {
  width: min(1120px, 92vw);
  margin: 34px auto;
}

.master-page .container {
  width: min(1560px, 96vw);
}

.master-page .panel-grid {
  grid-template-columns: minmax(0, 640px) minmax(0, 1fr);
  gap: 18px;
}

.master-page .master-panel-users-card {
  grid-column: 1 / -1;
}

.master-page {
  --accent: #0f57d5;
}

.master-page .master-panel-soft-card {
  background: #f5f8ff;
  border-color: #c7d1e0;
}

.master-page .master-panel-soft-card .marketing-leads-stats {
  background: #ffffff;
  border-color: #c7d1e0;
}

.card {
  background: color-mix(in srgb, var(--card), #f2f5fb 6%);
  border: 1px solid var(--line);
  border-radius: 20px;
  box-shadow: var(--shadow-soft);
  padding: 20px;
}

h1,
h2,
h3 {
  color: #0e1630;
  letter-spacing: -0.025em;
}

label {
  color: #4f5b76;
  font-weight: 600;
}

input,
textarea,
select,
button {
  border: 1px solid var(--line);
  background: #ffffff;
  color: var(--text);
  border-radius: 12px;
  min-height: 20px;
  font-family: inherit;
}

input::placeholder,
textarea::placeholder {
  color: #93a0bc;
}

input:focus,
textarea:focus,
select:focus {
  outline: none;
  border-color: var(--accent);
  box-shadow: 0 0 0 4px rgba(11, 138, 109, 0.16);
}

input:disabled,
textarea:disabled,
select:disabled,
input[readonly],
textarea[readonly],
select[readonly],
input[aria-disabled='true'],
textarea[aria-disabled='true'],
select[aria-disabled='true'] {
  background: #e9edf3 !important;
  color: #5f6c86 !important;
  border-color: #c8d1e1 !important;
  -webkit-text-fill-color: #5f6c86;
  cursor: not-allowed;
  opacity: 1;
}

input:disabled:focus,
textarea:disabled:focus,
select:disabled:focus,
input[readonly]:focus,
textarea[readonly]:focus,
select[readonly]:focus,
input[aria-disabled='true']:focus,
textarea[aria-disabled='true']:focus,
select[aria-disabled='true']:focus {
  box-shadow: none;
}

button {
  border: 1px solid transparent;
  background: linear-gradient(135deg, var(--accent), var(--accent-strong));
  color: #ffffff;
  font-weight: 600;
  letter-spacing: 0.01em;
  transition: transform 0.16s ease, box-shadow 0.16s ease, filter 0.16s ease;
}

button.secondary {
  background: #ffffff;
  color: #213150;
  border-color: var(--line);
}

.master-page button:not(.danger-btn):not(.icon-action-btn):not(.master-agenda-modal-tab):not(.agenda-settings-modal-tab-btn):not(.master-enterprise-invoice-reference-link) {
  border: 1px solid transparent !important;
  background: linear-gradient(135deg, var(--accent), var(--accent-strong)) !important;
  color: #ffffff !important;
}

.master-page .master-users-table td.master-users-actions-cell [data-edit],
.master-page .master-users-table button[data-open-agenda-settings],
.master-page .master-users-table button[data-issue-enterprise-invoice],
.master-page .pagination-controls button {
  border: 1px solid var(--line) !important;
  background: #ffffff !important;
  color: #213150 !important;
}

.master-page .pagination-controls #prevPageBtn,
.master-page .pagination-controls #nextPageBtn,
.master-page .pagination-controls #marketingLeadsPrevPageBtn,
.master-page .pagination-controls #marketingLeadsNextPageBtn,
.master-page .pagination-controls #checkoutOrdersPrevPageBtn,
.master-page .pagination-controls #checkoutOrdersNextPageBtn,
.master-page .pagination-controls #couponPrevPageBtn,
.master-page .pagination-controls #couponNextPageBtn,
.master-page .pagination-controls #shopProductsPrevPageBtn,
.master-page .pagination-controls #shopProductsNextPageBtn {
  border: 1px solid var(--line) !important;
  background: #ffffff !important;
  color: #000000 !important;
}

.master-page .master-users-table button[data-issue-enterprise-invoice].is-overdue-warning {
  border-color: #ca8a04 !important;
  background: #facc15 !important;
  color: #1f2937 !important;
}

.master-page .master-users-table button[data-issue-enterprise-invoice].is-overdue-critical {
  border-color: #b42318 !important;
  background: #d92d20 !important;
  color: #ffffff !important;
}

.master-page .master-enterprise-plain-btn {
  border: 1px solid var(--line) !important;
  background: #ffffff !important;
  color: #213150 !important;
}

.master-page .master-enterprise-modal-actions button.master-enterprise-plain-btn {
  border: 1px solid var(--line) !important;
  background: #ffffff !important;
  color: #213150 !important;
}

.master-page .master-enterprise-modal-actions-left .icon-action-btn {
  border: 1px solid var(--line) !important;
  background: #ffffff !important;
  color: #213150 !important;
}

.master-page .master-enterprise-modal-actions-left .icon-action-btn.master-enterprise-invoice-mark-paid-btn {
  border: 1px solid transparent !important;
  background: linear-gradient(135deg, var(--accent), var(--accent-strong)) !important;
  color: #ffffff !important;
}

.master-page .master-enterprise-modal-actions .master-enterprise-modal-primary-btn {
  border: 1px solid transparent !important;
  background: linear-gradient(135deg, var(--accent), var(--accent-strong)) !important;
  color: #ffffff !important;
}

.master-page .master-enterprise-modal-actions .master-enterprise-invoice-cancel-btn {
  border: 1px solid var(--line) !important;
  background: #ffffff !important;
  color: #213150 !important;
}

.master-page .master-enterprise-share-modal {
  z-index: 140;
}

.master-page .master-enterprise-share-backdrop {
  position: absolute;
  inset: 0;
  z-index: 0;
  background: rgba(10, 16, 34, 0.28) !important;
  border: 0 !important;
  color: transparent !important;
  box-shadow: none !important;
  transform: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

.master-page .master-enterprise-share-backdrop:hover,
.master-page .master-enterprise-share-backdrop:focus-visible {
  background: rgba(10, 16, 34, 0.28) !important;
  border: 0 !important;
  box-shadow: none !important;
  transform: none !important;
}

.master-page .master-enterprise-share-panel {
  position: relative;
  z-index: 1;
  margin: 22px auto;
}

.agenda-confirm-palette-btn {
  border: 1px solid transparent;
  background: linear-gradient(135deg, var(--accent), var(--accent-strong)) !important;
  color: #ffffff !important;
}

#saveBtn,
#addLink,
#addCatalogProductBtn,
#catalogPreviewButton,
#catalogSaveBtn {
  border: 1px solid transparent !important;
  background: linear-gradient(135deg, var(--accent), var(--accent-strong)) !important;
  color: #ffffff !important;
}

@media (hover: hover) {
  button:hover {
    transform: translateY(-1px);
    box-shadow: 0 10px 20px rgba(6, 105, 82, 0.22);
  }

  button.secondary:hover {
    box-shadow: 0 8px 18px rgba(18, 24, 43, 0.12);
  }

  .master-page button:not(.danger-btn):not(.icon-action-btn):not(.master-agenda-modal-tab):not(.agenda-settings-modal-tab-btn):not(.master-enterprise-invoice-reference-link):hover {
    box-shadow: 0 10px 20px rgba(6, 105, 82, 0.22);
  }

  .master-page .master-users-table td.master-users-actions-cell [data-edit]:hover,
  .master-page .master-users-table button[data-open-agenda-settings]:hover,
  .master-page .master-users-table button[data-issue-enterprise-invoice]:hover,
  .master-page .pagination-controls button:hover {
    box-shadow: 0 8px 18px rgba(18, 24, 43, 0.12);
  }

  .master-page .pagination-controls #prevPageBtn:hover,
  .master-page .pagination-controls #nextPageBtn:hover,
  .master-page .pagination-controls #marketingLeadsPrevPageBtn:hover,
  .master-page .pagination-controls #marketingLeadsNextPageBtn:hover,
  .master-page .pagination-controls #checkoutOrdersPrevPageBtn:hover,
  .master-page .pagination-controls #checkoutOrdersNextPageBtn:hover,
  .master-page .pagination-controls #couponPrevPageBtn:hover,
  .master-page .pagination-controls #couponNextPageBtn:hover,
  .master-page .pagination-controls #shopProductsPrevPageBtn:hover,
  .master-page .pagination-controls #shopProductsNextPageBtn:hover {
    background: #ffffff !important;
    color: #000000 !important;
  }

  .master-page .master-users-table button[data-issue-enterprise-invoice].is-overdue-warning:hover {
    box-shadow: 0 10px 20px rgba(234, 179, 8, 0.32);
  }

  .master-page .master-users-table button[data-issue-enterprise-invoice].is-overdue-critical:hover {
    box-shadow: 0 10px 20px rgba(185, 28, 28, 0.3);
  }

  .master-page .master-enterprise-plain-btn:hover {
    box-shadow: 0 8px 18px rgba(18, 24, 43, 0.12);
  }

  .master-page .master-enterprise-modal-actions button.master-enterprise-plain-btn:hover {
    box-shadow: 0 8px 18px rgba(18, 24, 43, 0.12);
  }

  .master-page .master-enterprise-modal-actions-left .icon-action-btn:hover {
    background: #ffffff !important;
    box-shadow: 0 8px 18px rgba(18, 24, 43, 0.12);
  }

  .master-page .master-enterprise-modal-actions-left .icon-action-btn.master-enterprise-invoice-mark-paid-btn:hover {
    background: linear-gradient(135deg, var(--accent), var(--accent-strong)) !important;
    box-shadow: 0 10px 20px rgba(6, 105, 82, 0.22);
  }

  .master-page .master-enterprise-modal-actions .master-enterprise-modal-primary-btn:hover {
    box-shadow: 0 10px 20px rgba(6, 105, 82, 0.22);
  }
}

.master-page .master-users-table button.master-users-icon-plain {
  min-width: 34px !important;
  width: 34px !important;
  height: 34px !important;
  padding: 0 !important;
  border-radius: 10px !important;
}

a {
  color: #0b8a6d;
}

a.link-btn,
a.link-btn:visited,
a.link-btn:hover,
a.link-btn:active,
a.profile-fixed-action-btn,
a.profile-fixed-action-btn:visited,
a.profile-fixed-action-btn:hover,
a.profile-fixed-action-btn:active {
  color: var(--personalize-text-color, var(--text));
  text-decoration: none;
}

.small {
  color: #56627c;
}

.status {
  color: #325162;
}

.status.error {
  color: #cc2d3f;
}

.admin-topbar {
  height: 86px;
  padding: 14px 20px;
  border-bottom: 1px solid rgba(121, 138, 173, 0.32);
  background: rgba(196, 207, 226, 0.96);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}

.admin-topbar-logo img {
  height: 58px;
}

.topbar-profile-link {
  color: #15233f;
  font-size: 0.84rem;
  letter-spacing: 0.06em;
}

.topbar-share-btn,
.topbar-settings-trigger,
.personalization-circle-btn,
.style-edit-close-btn,
.share-close-btn,
.icon-circle-btn {
  border: 1px solid var(--line);
  background: #ffffff !important;
  color: #15233f;
}

.topbar-settings-popover,
.personalization-more-popover,
.style-edit-panel,
.share-panel {
  background: color-mix(in srgb, var(--card), #f8f8f8 8%);
  border: 1px solid var(--line);
  box-shadow: var(--shadow-soft);
}

#deletePhotoBtn,
#bgDeleteBtn {
  color: #c53245 !important;
  border-color: #e8c6cd !important;
  background: #fff4f6 !important;
}

#deletePhotoBtn:hover,
#deletePhotoBtn:focus-visible,
#bgDeleteBtn:hover,
#bgDeleteBtn:focus-visible {
  background: #ffe8ec !important;
  border-color: #e18a99 !important;
}

.share-backdrop {
  background: rgba(10, 16, 34, 0.46);
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
}

.share-item {
  border-color: var(--line);
  background: #ffffff;
  border-radius: 12px;
  overflow: hidden;
}

.share-toggle-item {
  background: #f7f9fe;
  color: #1d2f52;
  min-height: 46px;
  padding: 10px 14px;
  border-radius: 12px;
}

.share-toggle-item[aria-expanded='true'] {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.share-toggle-item i {
  color: #2a4679;
}

.share-toggle-item::after {
  color: #617193;
}

.share-item-content {
  background: #ffffff;
  padding: 12px;
  border-bottom-left-radius: 12px;
  border-bottom-right-radius: 12px;
}

.admin-user-summary-photo-wrap,
.bg-image-preview-wrap,
.share-qr {
  background: var(--surface-soft);
  border-color: var(--line);
}

.admin-user-summary-photo-wrap {
  background: transparent;
  border-color: #c7cfde;
  position: relative;
}

.admin-user-summary-photo {
  position: relative;
  z-index: 1;
}

.admin-user-summary-photo-placeholder {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 16px;
  color: #59657d;
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  pointer-events: none;
  z-index: 0;
}

.admin-user-summary-photo[hidden],
.admin-user-summary-photo-placeholder[hidden] {
  display: none !important;
}

.phone-with-country,
.at-handle-input,
.profile-link-input,
.share-url-box input,
.icon-option {
  background: #ffffff;
  border-color: var(--line);
}

.country-prefix,
.at-handle-input span,
.profile-link-input span {
  background: #f5f7fc;
  border-right-color: var(--line);
  color: #53617f;
}

.panel-section,
.accordion-section {
  border-color: var(--line);
  background: linear-gradient(180deg, #ffffff 0%, #fbfcff 100%);
}

.accordion-toggle {
  border-radius: 12px;
  border: 1px solid var(--line);
  background: #f8faff;
  color: #1b2c4d;
  min-height: 48px;
}

.users-table-wrap {
  border: 1px solid var(--line);
  border-radius: 14px;
  overflow: auto;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.95);
}

.users-table {
  border-collapse: separate;
  border-spacing: 0;
}

.users-table th,
.users-table td {
  border: 0;
  border-bottom: 1px solid var(--line);
  background: #ffffff;
}

.users-table th {
  position: sticky;
  top: 0;
  z-index: 1;
  color: #233559;
  background: #f4f7fd;
}

.users-table tr:last-child td {
  border-bottom: 0;
}

.users-filter input,
.users-filter-secondary select,
.marketing-filters select,
.marketing-filters input,
.coupon-filters input,
.coupon-filters select,
.shop-product-filters input,
.shop-product-filters select,
.checkout-orders-filters input,
.checkout-orders-filters select,
.page-size-control select {
  background: #ffffff;
}

.pagination-controls button {
  border: 1px solid var(--line);
}

.master-user-form-actions button {
  min-width: 160px;
}

.login-wrap {
  min-height: 100dvh;
  padding: 24px 0;
}

.login-page {
  --accent: #0f57d5;
}

.login-card {
  width: min(480px, 94vw);
  border-radius: 22px;
  position: relative;
  overflow: hidden;
}

.login-card::before {
  content: '';
  position: absolute;
  inset: 0 0 auto;
  height: 4px;
  background: linear-gradient(90deg, #0b8a6d, #ee8f1c, #066952);
}

.login-card > * {
  position: relative;
}

.public-card {
  width: min(500px, 94vw);
}

.public-header {
  padding: 30px 20px 18px;
}

.public-header .name,
.public-header .bio {
  color: var(--personalize-text-color, var(--text));
}

.personalize-text-gradient .public-header .name,
.personalize-text-gradient .public-header .bio,
.personalize-text-gradient .public-header .role,
.personalize-text-gradient .profile-location,
.personalize-text-gradient .profile-location-text,
.personalize-text-gradient .link-btn-label {
  background-image: var(--personalize-text-gradient, var(--personalize-text-color, var(--text)));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent !important;
  -webkit-text-fill-color: transparent;
}

.personalize-text-gradient .advanced-text-override .name,
.personalize-text-gradient .advanced-text-override .bio,
.personalize-text-gradient .advanced-text-override .role,
.personalize-text-gradient .advanced-text-override .profile-location,
.personalize-text-gradient .advanced-text-override .profile-location-text,
.personalize-text-gradient .advanced-text-override .link-btn-label {
  background-image: none;
  color: inherit !important;
  -webkit-text-fill-color: currentColor;
}

.public-header .bio {
  white-space: pre-line;
}

.profile-block {
  margin: 14px;
  border-color: var(--line);
  box-shadow: 0 6px 22px rgba(18, 24, 43, 0.09);
}

.public-header.profile-block {
  margin: 0 14px 6px;
  border: 0 !important;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none !important;
}

.public-header .share-toggle-btn {
  min-width: 112px;
  min-height: 34px;
  height: 34px;
  padding: 0 10px;
  gap: 5px;
}

.public-header .share-toggle-btn svg {
  width: 14px;
  height: 14px;
}

.public-header .share-toggle-label {
  font-size: 0.76rem;
  line-height: 1;
}

.link-btn {
  border-color: var(--line);
}

.link-page-header,
.link-page-card {
  background: color-mix(in srgb, #ffffff, #f3f7ff 8%);
}

.icon-option {
  border-radius: 12px;
  color: #1d2f52;
  background: #ffffff;
}

.icon-option .icon-empty {
  color: #53617f;
}

.icon-option.is-selected {
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(11, 138, 109, 0.16);
}

.personalization-top-controls {
  margin-top: 8px;
}

.personalization-pill-btn {
  border: 1px solid var(--line);
  background: #ffffff;
  color: #20304f;
}

.personalization-more-list-item {
  min-height: 42px;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #ffffff;
  color: var(--text);
  font-weight: 600;
  display: flex;
  align-items: center;
  transition: transform 0.16s ease, border-color 0.16s ease, background 0.16s ease, box-shadow 0.16s ease;
}

.personalization-more-list-item:focus-visible {
  outline: 2px solid rgba(15, 34, 48, 0.28);
  outline-offset: 2px;
}

@media (hover: hover) {
  .personalization-more-list-item:hover {
    transform: translateY(-1px);
    background: #f7f8f7;
    border-color: #cfd7d2;
    box-shadow: 0 8px 18px rgba(18, 24, 43, 0.12);
  }
}

#advancedModeToggleItem.personalization-more-list-item.is-active {
  background: #f3f5f4;
  border-color: var(--line);
  color: var(--text);
}

.style-divider-line {
  background: var(--line);
}

.style-color-line-wrap {
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #ffffff;
  overflow: hidden;
}

.style-color-line {
  width: 100%;
  height: 100%;
  margin-top: 0;
  border: 0;
  border-radius: inherit;
  cursor: pointer;
}

.style-color-line-wrap:hover {
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent), #ffffff 72%);
}

.style-color-line-wrap:active {
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent), #ffffff 58%);
  transform: scale(0.995);
}

.style-color-line-wrap:focus-within {
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent), #ffffff 64%);
}

#opacityRange,
#radiusRange {
  --range-track-color: #ffffff;
  --range-track-border: var(--line);
  --range-color: transparent;
}

#opacityRange[data-user-dragged='true'],
#radiusRange[data-user-dragged='true'] {
  --range-color: var(--accent);
}

.preview-frame {
  border-color: var(--line);
  background: #ffffff;
}

.copy-inline-text {
  top: 6px;
  bottom: 6px;
  right: 8px;
  min-height: 0;
  height: auto;
  line-height: 1;
  padding: 0 10px;
  border-radius: 8px;
  border: 1px solid transparent;
  white-space: nowrap;
  font-size: 0.8rem;
  font-weight: 600;
  transform: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.share-url-box input {
  padding-right: 102px;
}

.copy-inline-text:hover {
  transform: none;
  color: #0b8a6d;
  background: rgba(11, 138, 109, 0.1);
  box-shadow: 0 8px 18px rgba(18, 24, 43, 0.12);
}

.public-brand-footer {
  margin-top: 52px;
}

@keyframes rise-fade {
  from {
    opacity: 0;
    transform: translateY(10px);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

@keyframes fade-in {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.card,
.style-edit-panel,
.share-panel {
  animation: rise-fade 0.4s ease both;
}

.public-card {
  animation: fade-in 0.25s ease both;
}

@media (max-width: 820px) {
  body.admin-page {
    padding-top: 88px;
  }

  .admin-topbar {
    height: 78px;
    padding: 12px;
  }

  .container {
    width: min(100%, calc(100vw - 20px));
    margin: 18px auto;
  }

  .card {
    padding: 16px;
    border-radius: 16px;
  }

  .topbar-profile-link {
    display: inline-flex;
    font-size: 0.76rem;
    letter-spacing: 0.03em;
    white-space: nowrap;
  }

  .admin-topbar-logo img {
    height: 52px;
  }
}

@media (max-width: 640px) {
  .admin-topbar-logo img {
    height: 44px;
  }
}

@media (max-width: 1020px) {
  .master-page .panel-grid {
    grid-template-columns: 1fr;
  }

  .master-page .master-panel-users-card {
    grid-column: auto;
  }
}

/* Force no blur on admin accordion content sections requested by UX */
#socialSection,
#customSection,
#linksSection,
#pixSection,
#catalogSection {
  filter: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  border-radius: 0 0 12px 12px;
  padding: 12px;
}

/* Typography alignment requested for specific labels across blocks 1-5 */
#socialSection label,
#customSection label,
#customSection .profile-photo-title,
#linksSection .links-layout-title,
#linksSection .links-layout-option span,
#pixSection .pix-charge-heading,
#pixSection .pix-strong-text,
#pixSection .pix-strong-text strong,
#catalogSection .catalog-search-check > span:last-child {
  font-size: 0.95rem;
  font-weight: 700;
}

/* Match requested text color with block 5 search-toggle label text */
#socialSection label,
#customSection label,
#customSection .profile-photo-title,
#linksSection .links-layout-title,
#pixSection .pix-charge-heading,
#pixSection .pix-strong-text,
#pixSection .pix-strong-text strong {
  color: var(--text);
}

.accordion-toggle[data-accordion-target='socialSection'],
.accordion-toggle[data-accordion-target='customSection'],
.accordion-toggle[data-accordion-target='linksSection'],
.accordion-toggle[data-accordion-target='pixSection'],
.accordion-toggle[data-accordion-target='catalogSection'] {
  border-radius: 12px !important;
  filter: none !important;
  transition:
    transform 0.16s ease,
    box-shadow 0.16s ease,
    border-color 0.16s ease,
    background 0.16s ease !important;
}

.accordion-toggle[data-accordion-target='socialSection'].has-save-success,
.accordion-toggle[data-accordion-target='customSection'].has-save-success,
.accordion-toggle[data-accordion-target='linksSection'].has-save-success,
.accordion-toggle[data-accordion-target='pixSection'].has-save-success,
.accordion-toggle[data-accordion-target='catalogSection'].has-save-success {
  color: #154f3d !important;
  background: #dff3e8 !important;
  border-color: #7ec4a0 !important;
  box-shadow: 0 0 0 2px rgba(22, 102, 77, 0.22) !important;
}

.accordion-toggle[data-accordion-target='socialSection'][aria-expanded='true'],
.accordion-toggle[data-accordion-target='customSection'][aria-expanded='true'],
.accordion-toggle[data-accordion-target='linksSection'][aria-expanded='true'],
.accordion-toggle[data-accordion-target='pixSection'][aria-expanded='true'],
.accordion-toggle[data-accordion-target='catalogSection'][aria-expanded='true'] {
  border-bottom-left-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

@media (hover: hover) {
  .accordion-toggle[data-accordion-target='socialSection']:hover,
  .accordion-toggle[data-accordion-target='customSection']:hover,
  .accordion-toggle[data-accordion-target='linksSection']:hover,
  .accordion-toggle[data-accordion-target='pixSection']:hover,
  .accordion-toggle[data-accordion-target='catalogSection']:hover {
    transform: translateY(-1px) !important;
    background: #f7f8f7 !important;
    border-color: #cfd7d2 !important;
    box-shadow: 0 8px 18px rgba(18, 24, 43, 0.12) !important;
    filter: none !important;
  }

  .accordion-toggle[data-accordion-target='socialSection'][aria-expanded='true']:hover,
  .accordion-toggle[data-accordion-target='customSection'][aria-expanded='true']:hover,
  .accordion-toggle[data-accordion-target='linksSection'][aria-expanded='true']:hover,
  .accordion-toggle[data-accordion-target='pixSection'][aria-expanded='true']:hover,
  .accordion-toggle[data-accordion-target='catalogSection'][aria-expanded='true']:hover {
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
  }
}

/* Public profile watermark branding */
.public-profile-page .public-card {
  position: relative;
  z-index: 2;
}

.public-profile-page .public-brand-footer,
.personalization-page .public-brand-footer {
  pointer-events: auto;
}

@media (max-width: 640px) {
  .public-profile-actions {
    gap: 12px;
    padding: 0 12px 12px;
  }

  .public-profile-actions .profile-fixed-action-btn {
    width: 100%;
    max-width: none;
    padding: 0 10px;
  }

  .public-brand-footer {
    width: min(460px, 95vw);
    margin: 16px auto 10px;
  }

  .public-brand-footer img {
    width: clamp(152px, 62vw, 220px);
    max-width: 220px;
    margin: 0 auto;
    transform: none;
  }
}

@media (min-width: 641px) and (max-width: 820px) {
  .public-brand-footer {
    width: min(460px, 95vw);
    margin: 18px auto 12px;
  }

  .public-brand-footer img {
    width: clamp(164px, 44vw, 248px);
    max-width: 248px;
    margin: 0 auto;
    transform: none;
  }
}

@media (max-width: 640px) {
  .catalog-product-page .container {
    width: min(100%, calc(100vw - 14px));
    margin: 12px auto;
  }

  .catalog-product-page .card {
    padding: 14px;
  }

  .catalog-product-topbar {
    gap: 8px;
    flex-wrap: wrap;
  }

  .catalog-product-topbar h1 {
    font-size: 1.2rem;
    line-height: 1.22;
  }

  .catalog-product-intro {
    font-size: 0.9rem;
    line-height: 1.45;
  }

  .catalog-line-label,
  .catalog-line-text {
    white-space: normal;
    align-items: flex-start;
    gap: 8px;
  }

  .catalog-line-label::after,
  .catalog-line-text::after {
    min-width: 22px;
  }

  .catalog-images-help {
    white-space: normal;
    line-height: 1.4;
  }

  .catalog-show-images-toggle {
    align-items: flex-start;
  }

  .catalog-show-images-toggle-slider {
    margin-top: 2px;
    flex-shrink: 0;
  }

  .catalog-show-images-toggle .catalog-show-images-text {
    white-space: normal;
    line-height: 1.35;
  }

  .catalog-link-type-options {
    align-items: flex-start;
  }

  .catalog-link-radio {
    font-size: 0.9rem;
  }

  .catalog-whatsapp-description {
    font-size: 0.9rem;
    line-height: 1.4;
  }

  .catalog-preview-top-row {
    flex-wrap: wrap;
    gap: 8px;
  }

  .catalog-preview-name,
  .catalog-preview-price {
    font-size: 1.35rem;
    line-height: 1.15;
  }

  .catalog-preview-description {
    font-size: 0.98rem;
  }

  .catalog-product-actions button {
    min-width: 0;
    max-width: 100%;
    padding: 0 12px;
    min-height: 44px;
    font-size: 0.95rem;
    font-weight: 600;
  }
}

@media (max-width: 460px) {
  .admin-topbar {
    padding: 10px;
  }

  .admin-topbar-logo img {
    height: 38px;
  }

  .admin-topbar-right {
    gap: 6px;
  }

  .topbar-profile-link {
    width: 42px;
    min-width: 42px;
    height: 42px;
    border-radius: 12px;
    border: 1px solid var(--line);
    background: #ffffff;
    color: #15233f;
    font-size: 0;
    letter-spacing: 0;
    justify-content: center;
  }

  .topbar-profile-link span {
    display: none;
  }

  .topbar-profile-link::before {
    content: '\f06e';
    font-family: 'Line Awesome Free';
    font-weight: 900;
    font-size: 18px;
    line-height: 1;
  }
}

body.catalog-product-page {
  padding-top: 16px;
}

.catalog-product-page .container {
  margin: 0 auto 18px;
}

.catalog-product-form > br {
  display: none;
}

@media (max-width: 820px) {
  body.catalog-product-page {
    padding-top: 10px;
  }

  .catalog-product-page .container {
    width: min(100%, calc(100vw - 12px));
    margin: 0 auto 14px;
  }

  .catalog-product-header {
    margin-bottom: 10px;
  }

  .catalog-product-layout {
    gap: 14px;
  }

  .catalog-product-actions {
    flex-direction: column-reverse;
    align-items: stretch;
    gap: 10px;
  }

  .catalog-product-actions button {
    width: 100%;
    min-width: 0;
    min-height: 44px;
    font-size: 0.95rem;
    font-weight: 600;
  }

  .catalog-link-type-options {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .catalog-link-radio {
    min-height: 42px;
    width: 100%;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: #ffffff;
    padding: 0 10px;
  }
}

@media (max-width: 640px) {
  .catalog-image-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .catalog-image-add-tile,
  .catalog-image-item,
  .catalog-image-item img {
    min-height: 156px;
  }

  .catalog-image-add-tile span {
    font-size: 0.94rem;
  }

  .photo-crop-close-btn,
  .catalog-image-crop-close-btn {
    width: 36px;
    min-width: 36px;
    height: 36px;
  }
}

@media (max-width: 420px) {
  .catalog-image-grid {
    grid-template-columns: 1fr;
  }

  .catalog-image-add-tile,
  .catalog-image-item,
  .catalog-image-item img {
    min-height: 188px;
  }
}

.agenda-premium-notice {
  background: #fff6dd;
  color: #6a4a00;
  border: 1px solid #f0dba4;
  border-radius: 12px;
  padding: 12px 14px;
}

.agenda-premium-content {
  display: grid;
  gap: 14px;
}

.agenda-appointments-panel {
  display: grid;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 12px;
  background: rgba(255, 255, 255, 0.6);
}

.agenda-appointments-panel h3 {
  margin: 0;
  font-size: 1rem;
}

.agenda-panel-title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.agenda-panel-title-row h3 {
  margin: 0;
  font-size: 1rem;
}

.agenda-panel-title-row .icon-action-btn {
  min-width: 34px;
  width: 34px;
  height: 34px;
  padding: 0;
}

.agenda-section-description-title {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.agenda-section-description-title h3 {
  margin: 0;
  font-size: 1rem;
  min-width: 0;
}

.agenda-section-description-title::after {
  content: '';
  flex: 1;
  min-width: 48px;
  height: 1px;
  background: var(--line);
}

.agenda-appointments-filter-row {
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 0.9fr) auto;
  align-items: end;
}

.agenda-appointments-filter-actions {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  justify-content: flex-start;
  min-width: 0;
}

.agenda-appointments-filter-actions button {
  width: auto;
  min-width: 88px;
}

.agenda-appointments-filter-actions .icon-action-btn {
  min-width: 34px;
  width: 34px;
  height: 34px;
  padding: 0;
}

#agendaAppointmentsReportBtn,
#agendaRecentUnfulfilledReportBtn,
#agendaServicesReportBtn {
  min-width: 74px;
  width: auto;
  height: 34px;
  padding: 0 10px;
  gap: 4px;
  white-space: nowrap;
}

#agendaAppointmentsReportBtn span,
#agendaRecentUnfulfilledReportBtn span,
#agendaServicesReportBtn span {
  display: inline;
}

.agenda-create-appointment-row {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: end;
}

.agenda-create-availability-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: end;
}

.agenda-create-availability-action {
  display: flex;
  align-items: end;
}

.agenda-create-availability-action button {
  width: auto;
  min-width: 146px;
}

.agenda-collaborator-toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: end;
}

.agenda-collaborator-toolbar .agenda-create-availability-action {
  justify-content: flex-end;
}

.agenda-collaborator-toolbar .agenda-create-availability-action button {
  min-width: 170px;
}

.agenda-collaborator-toolbar-actions {
  margin-bottom: 8px;
}

.agenda-collaborator-selector-panel {
  display: grid;
  gap: 8px;
}

.agenda-collaborator-selector-panel.agenda-collaborator-selector-panel-flat {
  border: 0;
  border-radius: 0;
  padding: 0;
  background: transparent;
}

.agenda-collaborator-selector-panel label {
  margin: 0;
}

.agenda-collaborator-selector-row {
  display: flex;
  flex-wrap: nowrap;
  gap: 10px;
  align-items: center;
}

.agenda-collaborator-selector-row button {
  width: auto;
  min-width: 168px;
  flex: 0 0 auto;
  white-space: nowrap;
}

.agenda-collaborator-selector-row #agendaAddCollaboratorBtn {
  width: auto;
  min-width: 152px;
  height: 40px;
  padding: 0 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  font-size: 0.82rem;
  font-weight: 600;
  white-space: nowrap;
}

.agenda-collaborator-selector-panel select {
  width: auto;
}

.agenda-collaborator-selector-row select {
  flex: 0 1 320px;
  min-width: 0;
  width: min(320px, 100%);
}

.agenda-collaborators-table td,
.agenda-collaborators-table th {
  vertical-align: middle;
}

.agenda-collaborators-table th:nth-child(2),
.agenda-collaborators-table td:nth-child(2) {
  width: 96px;
}

.agenda-collaborators-table th:nth-child(3),
.agenda-collaborators-table td:nth-child(3) {
  width: 132px;
  text-align: center;
}

.agenda-collaborators-table td.agenda-collaborators-actions-cell {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  white-space: nowrap;
}

.agenda-collaborators-table td.agenda-collaborators-actions-cell .icon-action-btn + .icon-action-btn {
  margin-left: 8px;
}

.agenda-collaborators-summary {
  margin: 8px 0 0;
}

.agenda-public-active-panel {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}

.agenda-public-active-panel .profile-location-display-toggle {
  margin: 0;
}

.agenda-public-active-panel #agendaOpenCashModalBtn {
  width: auto;
  min-width: 172px;
  height: 40px;
  padding: 0 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  font-size: 0.82rem;
  font-weight: 600;
  white-space: nowrap;
}

.agenda-config-modal-trigger-row {
  display: flex;
  justify-content: flex-end;
}

.agenda-config-modal-trigger-row #agendaOpenSettingsModalBtn {
  width: auto;
  min-width: 196px;
  height: 40px;
  padding: 0 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  font-size: 0.82rem;
  font-weight: 600;
  white-space: nowrap;
}

.agenda-collaborator-selector-panel > .agenda-public-active-panel {
  border: 0;
  border-radius: 0;
  padding: 0;
  background: transparent;
  box-shadow: none;
}

.agenda-collaborator-modal-panel {
  width: min(460px, calc(100vw - 24px));
}

.agenda-collaborator-modal-panel.with-agenda-config {
  width: min(1120px, calc(100vw - 24px));
  max-height: calc(100vh - 24px);
  overflow: auto;
  --agenda-collaborator-context-sticky-offset: 46px;
}

.agenda-collaborator-modal-form {
  display: grid;
  gap: 10px;
}

.agenda-collaborator-name-row {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: end;
}

.agenda-collaborator-phone-row {
  grid-template-columns: minmax(0, 1fr) minmax(280px, auto);
  align-items: end;
  gap: 10px;
}

.agenda-collaborator-notify-wrap {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
}

.agenda-collaborator-notify-wrap .profile-location-display-toggle {
  color: #4f5b76;
  font-size: 0.84rem;
}

.agenda-collaborator-modal-config-wrap {
  margin-top: 4px;
  padding-top: 12px;
  border-top: 1px solid var(--line);
}

.agenda-collaborator-modal-context {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  flex-wrap: wrap;
  margin: 2px 0 8px;
  padding: 7px 10px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #f8fbfa;
}

.agenda-collaborator-modal-context-name {
  font-size: 0.82rem;
  font-weight: 700;
  color: #20324a;
}

.agenda-collaborator-modal-context-tab {
  font-size: 0.78rem;
  color: #4f5b76;
}

.agenda-collaborator-modal-collaborators-wrap {
  margin-top: 4px;
  padding-top: 12px;
  border-top: 1px solid var(--line);
  display: grid;
  gap: 10px;
}

.agenda-collaborator-modal-config-wrap #agendaCollaboratorConfigBlock {
  display: grid;
  gap: 12px;
}

.agenda-settings-modal-panel {
  width: min(1180px, calc(100vw - 24px));
  max-height: calc(100vh - 24px);
  overflow: auto;
}

.agenda-settings-modal-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  align-items: flex-end;
  border-bottom: 1px solid var(--line);
  margin-bottom: 12px;
}

.agenda-collaborator-modal-config-caption {
  margin: -2px 0 8px;
  color: #4f5b76;
}

.agenda-settings-modal-tab-btn {
  width: auto;
  min-width: 148px;
  margin: 0 4px -1px 0;
  padding: 10px 16px;
  border-radius: 10px 10px 0 0;
  border: 1px solid transparent;
  background: transparent;
  color: #4f5b76;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.master-page button.agenda-settings-modal-tab-btn,
.master-page button.agenda-settings-modal-tab-btn:hover,
.master-page button.agenda-settings-modal-tab-btn:focus,
.master-page button.agenda-settings-modal-tab-btn:focus-visible,
.master-page button.agenda-settings-modal-tab-btn:active {
  border: 1px solid transparent !important;
  background: transparent !important;
  color: #4f5b76 !important;
  box-shadow: none !important;
  transform: none !important;
}

.agenda-settings-modal-tab-btn:focus-visible {
  outline: none;
  box-shadow: 0 0 0 4px rgba(11, 138, 109, 0.16);
}

.master-page button.agenda-settings-modal-tab-btn:focus-visible {
  outline: none;
  box-shadow: 0 0 0 4px rgba(11, 138, 109, 0.16) !important;
}

.master-page .master-agenda-modal-form button.agenda-settings-modal-tab-btn,
.master-page .master-agenda-modal-form button.agenda-settings-modal-tab-btn:hover,
.master-page .master-agenda-modal-form button.agenda-settings-modal-tab-btn:focus,
.master-page .master-agenda-modal-form button.agenda-settings-modal-tab-btn:focus-visible,
.master-page .master-agenda-modal-form button.agenda-settings-modal-tab-btn:active {
  border: 1px solid #d9d9d9 !important;
  background: transparent !important;
  color: #000000 !important;
  box-shadow: none !important;
  transform: none !important;
}

.agenda-settings-modal-tab-btn:hover {
  background: #f3f7f5;
  color: #123a2f;
}

.agenda-settings-modal-tab-btn.is-active {
  border-color: var(--line);
  border-bottom-color: #ffffff;
  background: #ffffff;
  color: #123a2f;
}

.master-page button.agenda-settings-modal-tab-btn.is-active,
.master-page button.agenda-settings-modal-tab-btn[aria-selected='true'],
.master-page button.agenda-settings-modal-tab-btn.is-active:hover,
.master-page button.agenda-settings-modal-tab-btn[aria-selected='true']:hover {
  border-color: var(--line) !important;
  border-bottom-color: #ffffff !important;
  background: #ffffff !important;
  color: #123a2f !important;
}

.master-page .master-agenda-modal-form button.agenda-settings-modal-tab-btn.is-active,
.master-page .master-agenda-modal-form button.agenda-settings-modal-tab-btn[aria-selected='true'],
.master-page .master-agenda-modal-form button.agenda-settings-modal-tab-btn.is-active:hover,
.master-page .master-agenda-modal-form button.agenda-settings-modal-tab-btn[aria-selected='true']:hover {
  border-color: #d9d9d9 !important;
  border-bottom-color: #ffffff !important;
  background: #ffffff !important;
  color: #000000 !important;
}

.master-page .master-agenda-modal-form .master-premium-settings-tabs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  align-items: stretch;
  border-bottom: 0;
  margin-bottom: 14px;
  padding: 0;
}

.master-page .master-agenda-modal-form button.master-premium-settings-tab-btn,
.master-page .master-agenda-modal-form button.master-premium-settings-tab-btn:hover,
.master-page .master-agenda-modal-form button.master-premium-settings-tab-btn:focus,
.master-page .master-agenda-modal-form button.master-premium-settings-tab-btn:active {
  width: 100%;
  min-width: 0;
  min-height: 48px;
  margin: 0;
  padding: 10px 12px;
  border: 1px solid #d9d9d9 !important;
  border-radius: 12px;
  background: #f5f7fb !important;
  color: #1e2b46 !important;
  font-size: 0.96rem;
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
  box-shadow: none !important;
  transform: none !important;
}

.master-page .master-agenda-modal-form button.master-premium-settings-tab-btn:hover {
  background: #edf2fa !important;
}

.master-page .master-agenda-modal-form button.master-premium-settings-tab-btn:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(15, 87, 213, 0.18) !important;
}

.master-page .master-agenda-modal-form button.master-premium-settings-tab-btn.is-active,
.master-page .master-agenda-modal-form button.master-premium-settings-tab-btn[aria-selected='true'],
.master-page .master-agenda-modal-form button.master-premium-settings-tab-btn.is-active:hover,
.master-page .master-agenda-modal-form button.master-premium-settings-tab-btn[aria-selected='true']:hover {
  border-color: #b8c7da !important;
  background: #ffffff !important;
  color: #101d34 !important;
}

.agenda-settings-modal-mount {
  display: grid;
  gap: 12px;
}

.agenda-settings-modal-mount #agendaCollaboratorConfigBlock {
  display: grid;
  gap: 12px;
}

.agenda-settings-tab-panel {
  display: grid;
  gap: 12px;
}

.agenda-settings-tab-panel[hidden] {
  display: none !important;
}

.agenda-collaborator-modal-inline-error {
  margin: 0;
  color: #b42318;
  font-size: 0.88rem;
  font-weight: 600;
}

.agenda-collaborator-modal-footer {
  position: relative;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid var(--line);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.88) 0%, #ffffff 40%);
}

.agenda-collaborator-modal-actions {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.agenda-collaborator-modal-actions-buttons {
  display: flex;
  gap: 8px;
  margin-left: auto;
}

.agenda-collaborator-modal-actions button {
  width: auto;
  min-width: 112px;
}

.agenda-collaborator-modal-inline-status {
  margin: 0;
  font-size: 0.88rem;
  font-weight: 600;
  color: #2f6f5a;
}

.agenda-collaborator-modal-inline-status.is-success {
  color: #2f6f5a;
}

.agenda-collaborator-modal-inline-status.is-error {
  color: #b42318;
}

.agenda-create-whatsapp-flag {
  display: flex;
  align-items: end;
}

.agenda-create-whatsapp-flag .profile-location-display-toggle {
  margin: 0;
}

.agenda-create-services-wrap {
  display: grid;
  gap: 8px;
}

.agenda-create-services-wrap > label {
  font-weight: 600;
}

.agenda-create-services-list {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.agenda-create-slots-wrap {
  margin-top: 8px;
}

.agenda-create-slots-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.agenda-create-slot-btn {
  width: auto;
  min-width: 68px;
  min-height: 32px;
  border-radius: 999px;
  padding: 4px 10px;
  font-size: 0.82rem;
  line-height: 1;
}

.agenda-create-slot-btn.is-selected {
  border-color: var(--accent);
  background: color-mix(in srgb, var(--accent), #ffffff 78%);
  color: #0e2d26;
}

.agenda-create-service-option {
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 8px 10px;
  background: #ffffff;
  margin: 0;
  min-width: 0;
}

.agenda-create-service-option input[type='checkbox'] {
  -webkit-appearance: checkbox;
  appearance: auto;
  width: auto;
  min-width: 18px;
  height: 18px;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  display: inline-block;
  vertical-align: middle;
  flex-shrink: 0;
  accent-color: var(--accent);
}

.agenda-create-appointment-actions button {
  width: auto;
  min-width: 220px;
}

.agenda-create-appointment-actions {
  gap: 10px;
  flex-wrap: wrap;
}

.agenda-appointments-pagination {
  margin-top: 4px;
}

.agenda-sort-btn {
  width: auto;
  min-width: 0;
  background: transparent;
  border: 0;
  color: inherit;
  padding: 0;
  font: inherit;
  cursor: pointer;
  text-align: left;
}

.agenda-appointments-table td,
.agenda-appointments-table th {
  vertical-align: top;
}

.agenda-appointments-table th:nth-child(1),
.agenda-appointments-table td:nth-child(1) {
  width: 110px;
}

.agenda-appointments-table th:nth-child(2),
.agenda-appointments-table td:nth-child(2) {
  width: 120px;
}

.agenda-appointments-table th:nth-child(4),
.agenda-appointments-table td:nth-child(4) {
  white-space: nowrap;
}

.agenda-appointments-table th:nth-child(5),
.agenda-appointments-table td:nth-child(5) {
  width: 92px;
  text-align: center;
}

.agenda-appointments-table th:last-child,
.agenda-appointments-table td:last-child {
  width: 140px;
}

.agenda-appointments-table th.agenda-appointments-actions-col {
  text-align: center;
}

.agenda-appointments-table td.agenda-appointments-actions-cell {
  display: table-cell;
  text-align: center;
  vertical-align: middle;
  white-space: nowrap;
}

.agenda-appointments-table td.agenda-appointments-actions-cell .icon-action-btn + .icon-action-btn {
  margin-left: 8px;
}

.agenda-appointments-table td.agenda-appointments-actions-cell .icon-action-btn {
  vertical-align: middle;
}

.agenda-top-panels {
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: start;
}

.agenda-workdays-panel {
  display: grid;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 12px;
  background: rgba(255, 255, 255, 0.6);
}

.agenda-workdays-panel h3 {
  margin: 0;
  font-size: 1rem;
}

.agenda-workdays-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(64px, 1fr));
  gap: 8px;
}

.agenda-workday-option {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 38px;
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 6px 10px;
  background: #ffffff;
  cursor: pointer;
  white-space: nowrap;
}

.agenda-workday-option input[type='checkbox'] {
  -webkit-appearance: checkbox;
  appearance: auto;
  width: auto;
  min-width: 18px;
  height: 18px;
  min-height: 18px;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  display: inline-block;
  vertical-align: middle;
  flex-shrink: 0;
  accent-color: var(--accent);
}

.agenda-settings-modal .agenda-workday-option input[type='checkbox'] {
  accent-color: #2f6bff;
}

.agenda-workday-option span {
  display: inline-flex;
  align-items: center;
  line-height: 1;
  white-space: nowrap;
}

.agenda-settings-row {
  align-items: end;
}

.agenda-breaks-panel,
.agenda-services-panel {
  display: grid;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 12px;
  background: rgba(255, 255, 255, 0.6);
}

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

.agenda-panel-header-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}

.agenda-panel-header h3 {
  margin: 0;
  font-size: 1rem;
}

.agenda-panel-header button:not(.icon-action-btn) {
  width: auto;
  min-width: 168px;
}

.agenda-panel-header .icon-action-btn {
  min-width: 34px;
  width: 34px;
  height: 34px;
  padding: 0;
}

.agenda-collapsible-toggle {
  position: relative;
  display: none;
  width: auto;
  min-width: 132px;
  height: 34px;
  min-height: 34px;
  padding: 0 24px 0 10px;
  font-size: 0.73rem;
  transition: color 140ms ease, border-color 140ms ease, background-color 140ms ease;
}

.agenda-collapsible-toggle::after {
  content: '>';
  position: absolute;
  right: 9px;
  top: 50%;
  transform: translateY(-50%) rotate(90deg);
  font-size: 0.72rem;
  font-weight: 800;
  line-height: 1;
  opacity: 0.8;
  color: currentColor;
  transition: transform 160ms ease, opacity 160ms ease, color 140ms ease;
}

.agenda-collapsible-toggle:hover {
  border-color: #9fb2dd;
  background: #f7faff;
  color: #17325e;
}

.agenda-collapsible-toggle:hover::after {
  opacity: 1;
}

.agenda-collapsible-toggle:focus-visible {
  outline: 2px solid #2f6bff;
  outline-offset: 1px;
  border-color: #2f6bff;
  background: #f3f7ff;
  color: #15305b;
}

.agenda-collapsible-toggle:focus-visible::after {
  opacity: 1;
}

.agenda-collapsible-toggle.is-collapsed {
  background: #f5f8ff;
  border-color: #c8d3ef;
  color: #1e3566;
}

.agenda-collapsible-toggle.is-collapsed::after {
  transform: translateY(-50%) rotate(0deg);
  opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
  .agenda-collapsible-toggle {
    transition: none;
  }

  .agenda-collapsible-toggle::after {
    transition: none;
  }
}

.agenda-collapsible-content {
  display: grid;
  gap: 12px;
}

.agenda-panel-actions {
  display: flex;
  justify-content: flex-end;
}

.agenda-panel-actions button {
  width: auto;
  min-width: 168px;
  max-width: 100%;
}

.agenda-break-row,
.agenda-service-form-row,
.agenda-cash-password-row,
.agenda-cash-search-row,
.agenda-cash-close-row,
.agenda-cash-report-filter-row,
.agenda-cash-closures-filter-row {
  align-items: start;
}

.agenda-break-row {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.agenda-service-form-row,
.agenda-cash-password-row {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.agenda-cash-close-row,
.agenda-cash-report-filter-row {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.agenda-cash-search-row {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
}

.agenda-cash-search-action {
  display: flex;
  align-items: end;
  align-self: end;
}

.agenda-cash-search-action button {
  width: auto;
  min-width: 120px;
  height: 38px;
  min-height: 38px;
  padding: 0 12px;
}

.agenda-cash-closures-filter-row {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: end;
}

.agenda-cash-closures-filter-row > div {
  display: grid;
  gap: 6px;
  align-content: end;
}

.agenda-cash-closures-status-field {
  display: grid;
  gap: 6px;
}

.agenda-cash-closures-status-inline {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 8px;
}

.agenda-cash-closures-status-inline select {
  min-width: 0;
  min-height: 44px;
}

.agenda-cash-closures-status-inline button {
  width: auto;
  min-width: 168px;
  height: 44px;
  min-height: 44px;
}

.agenda-appointments-filter-row > div,
.agenda-break-row > div,
.agenda-settings-row > div,
.agenda-create-availability-row > div,
.agenda-create-appointment-row > div,
.agenda-service-form-row > div,
.agenda-cash-password-row > div,
.agenda-cash-search-row > div,
.agenda-cash-close-row > div,
.agenda-cash-report-filter-row > div,
.agenda-cash-closures-filter-row > div {
  min-width: 0;
  overflow: visible;
  padding-right: 0;
}

.agenda-appointments-filter-row input[type='date'],
.agenda-appointments-filter-row input[type='time'],
.agenda-appointments-filter-row input[type='text'],
.agenda-appointments-filter-row select,
.agenda-break-row input[type='time'],
.agenda-break-row input[type='text'],
.agenda-create-appointment-row input[type='text'],
.agenda-settings-row input[type='time'],
.agenda-settings-row input[type='text'],
.agenda-settings-row input[type='number'],
.agenda-service-form-row input[type='text'],
.agenda-service-form-row input[type='number'],
.agenda-cash-password-row input[type='password'],
.agenda-cash-search-row select,
.agenda-cash-close-row input[type='text'],
.agenda-cash-close-row select,
.agenda-cash-report-filter-row input[type='text'],
.agenda-cash-report-filter-row select,
.agenda-cash-closures-filter-row input[type='text'],
.agenda-cash-closures-filter-row select {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  min-inline-size: 0;
  box-sizing: border-box;
}

#agendaAppointmentsStartDate,
#agendaAppointmentsEndDate,
#agendaAppointmentsStatusFilter,
#agendaCreateFirstName,
#agendaCreateLastName,
#agendaCreatePhone,
#agendaCreateDate,
#agendaBreakStart,
#agendaBreakEnd,
#agendaWorkStart,
#agendaWorkEnd,
#agendaSlotInterval,
#agendaServicePrice,
#agendaCashSearchScope,
#agendaCashDate,
#agendaCashStartDate,
#agendaCashEndDate,
#agendaCashReportStartDate,
#agendaCashReportEndDate,
#agendaCashClosuresStartDate,
#agendaCashClosuresEndDate,
#publicAgendaDate {
  display: block;
  width: 100% !important;
  inline-size: 100% !important;
  max-width: 100% !important;
  max-inline-size: 100% !important;
  min-width: 0 !important;
  min-inline-size: 0 !important;
  box-sizing: border-box;
  margin: 0;
}

#agendaAppointmentsStartDate,
#agendaAppointmentsEndDate,
#agendaAppointmentsStatusFilter,
#agendaCreateFirstName,
#agendaCreateLastName,
#agendaCreatePhone,
#agendaCreateDate,
#agendaBreakStart,
#agendaBreakEnd,
#agendaWorkStart,
#agendaWorkEnd,
#agendaCashSearchScope,
#publicAgendaDate {
  min-height: 44px;
}

.agenda-services-panel .users-table-wrap {
  margin-top: 14px;
}

.agenda-cash-panel {
  display: grid;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 12px;
  background: rgba(255, 255, 255, 0.6);
}

.agenda-cash-panel .small {
  margin: 0;
}

.agenda-cash-inline-status {
  margin: 0;
  min-height: 20px;
}

.agenda-cash-top-panels {
  grid-template-columns: minmax(0, 1fr);
}

.agenda-cash-report-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.agenda-cash-report-actions button {
  width: auto;
  min-width: 160px;
}

#agendaCashReportCsvBtn,
#agendaCashReportPdfBtn {
  width: auto;
  min-width: 90px;
  height: 38px;
  padding: 0 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
}

#agendaCashReportCsvBtn span,
#agendaCashReportPdfBtn span {
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.02em;
}

#agendaCashSearchBtn,
#agendaCashReportCsvBtn,
#agendaCashReportPdfBtn {
  border-radius: 10px;
}

#agendaCashSearchBtn:focus-visible,
#agendaCashReportCsvBtn:focus-visible,
#agendaCashReportPdfBtn:focus-visible {
  outline: none;
  box-shadow: 0 0 0 4px rgba(11, 138, 109, 0.16);
}

@media (hover: hover) {
  #agendaCashSearchBtn:hover,
  #agendaCashReportCsvBtn:hover,
  #agendaCashReportPdfBtn:hover {
    transform: translateY(-1px);
    box-shadow: 0 8px 18px rgba(18, 24, 43, 0.12);
  }
}

#agendaCashSearchBtn:active,
#agendaCashReportCsvBtn:active,
#agendaCashReportPdfBtn:active {
  transform: translateY(0);
}

.agenda-cash-report-panel,
.agenda-cash-closures-panel {
  padding: 12px;
}

.agenda-cash-report-panel .agenda-panel-title-row {
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #f4f7fd;
}

.agenda-cash-modal-panel {
  width: min(1180px, calc(100vw - 24px));
  max-height: calc(100vh - 24px);
  overflow: auto;
}

.agenda-cash-modal-mount {
  display: grid;
  gap: 12px;
}

.agenda-cash-report-table th:nth-child(2),
.agenda-cash-report-table td:nth-child(2) {
  width: 132px;
  text-align: center;
}

.agenda-cash-report-table th:nth-child(3),
.agenda-cash-report-table td:nth-child(3) {
  width: 160px;
  text-align: right;
}

.agenda-cash-report-table tfoot th,
.agenda-cash-report-table tfoot td {
  position: sticky;
  bottom: 0;
  z-index: 2;
  color: #233559;
  background: #f4f7fd !important;
  font-weight: 700;
}

.agenda-cash-report-table tfoot th:nth-child(2),
.agenda-cash-report-table tfoot td:nth-child(2) {
  text-align: center;
}

.agenda-cash-report-table tfoot th:nth-child(3),
.agenda-cash-report-table tfoot td:nth-child(3) {
  text-align: right;
}

.agenda-cash-report-table tfoot .agenda-cash-report-total-row > * {
  border-bottom: 1px solid var(--line);
  box-shadow: 0 -1px 0 var(--line);
}

body.admin-page #agendaCashReportTableFoot .agenda-cash-report-total-cell {
  background-color: #f4f7fd !important;
  color: #233559 !important;
}

.agenda-cash-closures-table th:nth-child(3),
.agenda-cash-closures-table td:nth-child(3) {
  width: 154px;
}

.agenda-cash-closures-table th:nth-child(4),
.agenda-cash-closures-table td:nth-child(4) {
  width: 140px;
}

.agenda-cash-closures-table th:nth-child(5),
.agenda-cash-closures-table td:nth-child(5) {
  width: 110px;
}

.agenda-cash-closures-table th:nth-child(6),
.agenda-cash-closures-table td:nth-child(6) {
  width: 132px;
  text-align: center;
  white-space: nowrap;
}

.agenda-cash-closures-table .users-actions {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}

.agenda-cash-closure-details-panel {
  padding: 12px;
}

.agenda-cash-closure-details-table th:nth-child(1),
.agenda-cash-closure-details-table td:nth-child(1) {
  width: 118px;
}

.agenda-cash-closure-details-table th:nth-child(2),
.agenda-cash-closure-details-table td:nth-child(2) {
  width: 128px;
}

.agenda-cash-closure-details-table th:nth-child(5),
.agenda-cash-closure-details-table td:nth-child(5) {
  width: 134px;
}

.agenda-breaks-list {
  margin: 12px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 8px;
}

.agenda-breaks-list li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 8px 10px;
}

.agenda-break-remove-btn {
  min-width: 34px;
}

.agenda-actions-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  justify-content: flex-end;
}

.agenda-actions-row button {
  width: auto;
  min-width: 220px;
  max-width: 280px;
}

.agenda-actions-row #agendaStatus {
  flex-basis: 100%;
  text-align: right;
}

.agenda-actions-row .status {
  margin: 0;
}

.public-agenda-section {
  padding: 16px;
  color: var(--personalize-text-color, var(--text));
}

.public-agenda-section h2,
.public-agenda-section h3,
.public-agenda-section p,
.public-agenda-section label,
.public-agenda-section .small,
.public-agenda-section .status,
.public-agenda-section .profile-location-display-toggle {
  color: var(--personalize-text-color, var(--text));
}

.public-agenda-section input[type='text'],
.public-agenda-section select {
  color: var(--personalize-text-color, var(--text));
}

.public-agenda-section input[type='text']::placeholder {
  color: #6b7280;
  opacity: 1;
}

/* Agenda pública: textos de campos e botões sempre em preto, sem herdar personalização */
.public-agenda-section input[type='text'],
.public-agenda-section input[type='date'],
.public-agenda-section select,
.public-agenda-section select option,
.public-agenda-filter-action button,
.public-agenda-form-actions button,
.public-agenda-slot-btn {
  color: #000000 !important;
  -webkit-text-fill-color: #000000;
}

.public-agenda-section input[type='text']::placeholder {
  color: #000000 !important;
  opacity: 1;
}

.public-agenda-header h2 {
  margin: 0;
  font-size: 1.15rem;
  color: var(--personalize-text-color, var(--text));
}

.public-agenda-header p {
  margin: 6px 0 0;
  color: var(--personalize-text-color, var(--text));
}

.public-agenda-services {
  margin-top: 12px;
  display: grid;
  gap: 8px;
}

.public-agenda-collaborator-picker {
  margin-top: 12px;
  display: grid;
  gap: 6px;
}

.public-agenda-collaborator-picker select {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

.public-agenda-collaborator-hint {
  margin: 12px 0 0;
}

.public-agenda-client-identification,
.public-agenda-existing-bookings {
  margin-top: 12px;
}

.public-agenda-existing-bookings {
  overflow-x: auto;
}

.public-agenda-client-identification h3,
.public-agenda-existing-bookings h3 {
  margin: 0 0 8px;
}

.public-agenda-client-actions {
  margin-top: 10px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

.public-agenda-client-actions button {
  width: auto;
  min-width: 210px;
}

.public-agenda-client-actions .small,
.public-agenda-client-actions .status {
  margin: 0;
  flex-basis: 100%;
  text-align: right;
}

.public-agenda-appointments-table th:nth-child(1),
.public-agenda-appointments-table td:nth-child(1) {
  width: 112px;
}

.public-agenda-appointments-table td {
  color: #233559 !important;
  -webkit-text-fill-color: #233559;
}

.public-agenda-appointments-table th:nth-child(2),
.public-agenda-appointments-table td:nth-child(2) {
  width: 124px;
}

.public-agenda-appointments-table th:nth-child(4),
.public-agenda-appointments-table td:nth-child(4) {
  width: 98px;
}

.public-agenda-appointments-table th.public-agenda-appointments-actions-col,
.public-agenda-appointments-table td.public-agenda-appointments-actions-cell {
  width: 108px;
  text-align: center;
  white-space: nowrap;
}

.public-agenda-appointments-table td.public-agenda-appointments-actions-cell .icon-action-btn {
  min-width: 34px;
  width: 34px;
  height: 34px;
  padding: 0;
}

.public-agenda-appointments-table td.public-agenda-appointments-actions-cell .icon-action-btn + .icon-action-btn {
  margin-left: 6px;
}

.public-agenda-service-option {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin: 0;
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 8px 12px;
  background: color-mix(in srgb, var(--personalize-item-bg-solid, var(--personalize-item-bg, #ffffff)), #ffffff 8%);
  color: var(--personalize-text-color, var(--text));
  cursor: pointer;
}

.public-agenda-service-label {
  flex: 1;
}

.public-agenda-service-option input {
  -webkit-appearance: checkbox;
  appearance: auto;
  width: auto;
  min-width: 18px;
  height: 18px;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  display: inline-block;
  vertical-align: middle;
  flex-shrink: 0;
  accent-color: var(--accent);
}

.public-agenda-filters {
  margin-top: 12px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: end;
}

.public-agenda-filters.has-collaborator {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
}

.public-agenda-filters > div {
  min-width: 0;
  overflow: visible;
  padding-right: 0;
}

.public-agenda-filters select,
.public-agenda-filters input[type='date'],
.public-agenda-filters input[type='text'] {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  min-inline-size: 0;
  box-sizing: border-box;
}

.agenda-appointments-panel,
.agenda-breaks-panel,
.public-agenda-section {
  overflow-x: hidden;
}

#agendaSection,
#agendaSection .accordion-content,
#agendaPremiumContent {
  max-width: 100%;
  min-width: 0;
  overflow-x: hidden;
}

.public-agenda-filter-action {
  display: flex;
  align-items: end;
}

.public-agenda-filter-action button,
.public-agenda-form-actions .public-agenda-confirm-btn {
  color: var(--personalize-text-color, var(--text));
}

.public-agenda-slots-wrap {
  margin-top: 12px;
}

.public-agenda-slots-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.public-agenda-slot-btn {
  width: auto;
  min-width: 68px;
  min-height: 32px;
  border: 1px solid #d5dbe8;
  border-radius: 999px;
  background: #ffffff !important;
  color: #111111 !important;
  padding: 4px 10px;
  font-size: 0.82rem;
  line-height: 1;
  cursor: pointer;
  box-shadow: none !important;
}

.public-agenda-slot-btn.is-selected {
  border-color: #1f6feb;
  background: #1f6feb !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff;
}

.public-agenda-slot-btn.is-selected:hover,
.public-agenda-slot-btn.is-selected:focus-visible {
  border-color: #1f6feb;
  background: #1f6feb !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff;
  box-shadow: none !important;
}

.public-agenda-slot-btn:hover,
.public-agenda-slot-btn:focus-visible {
  background: #ffffff !important;
  color: #111111 !important;
  box-shadow: none !important;
}

.public-agenda-form {
  margin-top: 14px;
  border-top: 1px dashed var(--line);
  padding-top: 12px;
}

.public-agenda-form h3 {
  margin-top: 0;
}

.public-agenda-phone-field {
  width: 100%;
  grid-template-columns: 76px 1fr;
}

.public-agenda-phone-field .country-prefix {
  gap: 4px;
  padding: 0 22px 0 8px;
}

.public-agenda-whatsapp-flag {
  display: flex;
  align-items: end;
}

.public-agenda-whatsapp-flag .profile-location-display-toggle {
  margin: 0;
}

.public-agenda-form-actions {
  margin-top: 10px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  justify-content: flex-end;
}

.public-agenda-form-actions button {
  width: auto;
}

.public-agenda-form-actions .public-agenda-confirm-btn {
  width: auto;
  min-width: 168px;
}

.public-agenda-form-actions .status {
  margin: 0;
  flex-basis: 100%;
  text-align: right;
}

.public-agenda-result {
  margin-top: 14px;
  display: grid;
  gap: 8px;
}

.public-agenda-result a {
  color: var(--personalize-text-color, var(--text));
  font-weight: 600;
  text-decoration: underline;
}

.public-agenda-result .public-agenda-notify-link {
  display: inline-flex;
  width: fit-content;
  padding: 2px 8px;
  border-radius: 4px;
  color: #111111;
  text-decoration: none;
  line-height: 1.35;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  background-image: linear-gradient(
    transparent 18%,
    rgba(255, 228, 77, 0.86) 18%,
    rgba(255, 228, 77, 0.86) 96%,
    transparent 96%
  );
  animation: publicAgendaNotifyPulse 1.4s ease-in-out infinite;
  transform-origin: center;
}

@keyframes publicAgendaNotifyPulse {
  0%,
  100% {
    transform: scale(1);
    opacity: 1;
  }
  50% {
    transform: scale(1.05);
    opacity: 0.84;
  }
}

@media (prefers-reduced-motion: reduce) {
  .public-agenda-result .public-agenda-notify-link {
    animation: none;
  }
}

@media (max-width: 760px) {
  .agenda-appointments-filter-row,
  .agenda-create-appointment-row,
  .agenda-create-availability-row,
  .agenda-collaborator-toolbar,
  .agenda-top-panels,
  .agenda-break-row,
  .agenda-settings-row,
  .agenda-service-form-row,
  .agenda-cash-password-row,
  .agenda-cash-search-row,
  .agenda-cash-close-row,
  .agenda-cash-report-filter-row,
  .agenda-cash-closures-filter-row,
  .public-agenda-filters,
  .public-agenda-form .row {
    grid-template-columns: 1fr;
  }

  .agenda-appointments-filter-actions {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
  }

  .agenda-panel-header button,
  .agenda-create-availability-action button,
  .public-agenda-filter-action button,
  .public-agenda-client-actions button,
  .agenda-cash-search-action button,
  .agenda-cash-report-actions button,
  .agenda-actions-row button {
    width: 100%;
    min-width: 0;
    max-width: none;
  }

  #agendaCashReportCsvBtn,
  #agendaCashReportPdfBtn {
    width: 100%;
    min-width: 0;
    max-width: none;
  }

  .public-agenda-client-actions .small,
  .public-agenda-client-actions .status {
    text-align: left;
  }

  .agenda-create-appointment-actions {
    justify-content: stretch;
  }

  .agenda-create-appointment-actions button {
    width: 100%;
    min-width: 0;
  }

  .agenda-workdays-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .agenda-collaborator-name-row {
    grid-template-columns: 1fr;
  }

  .agenda-collaborator-phone-row {
    grid-template-columns: 1fr;
  }

  .agenda-collaborator-notify-wrap {
    justify-content: flex-start;
  }

  .field-label-with-toggle {
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .field-label-with-toggle .agenda-notification-toggle {
    width: 100%;
  }

  .field-label-with-toggle .agenda-notification-toggle .profile-location-display-toggle-text {
    white-space: normal;
  }

  .agenda-collaborator-selector-row {
    flex-wrap: nowrap;
  }

  .agenda-collaborator-selector-row button {
    width: auto;
    min-width: 0;
  }

  .agenda-collaborator-selector-row #agendaAddCollaboratorBtn {
    width: auto;
    min-width: 138px;
    height: 38px;
    flex-basis: auto;
    padding: 0 10px;
    font-size: 0.78rem;
  }

  .agenda-collaborator-selector-row select {
    flex-basis: 220px;
    width: min(220px, 100%);
  }

  .agenda-public-active-panel #agendaOpenCashModalBtn {
    width: auto;
    min-width: 148px;
    height: 38px;
    flex-basis: auto;
    padding: 0 10px;
    font-size: 0.78rem;
  }

  .agenda-config-modal-trigger-row #agendaOpenSettingsModalBtn {
    width: auto;
    min-width: 168px;
    height: 38px;
    flex-basis: auto;
    padding: 0 10px;
    font-size: 0.78rem;
  }

  .agenda-collaborator-modal-panel.with-agenda-config {
    width: min(1120px, calc(100vw - 12px));
    max-height: calc(100vh - 12px);
  }

  .agenda-collaborator-modal-panel.with-agenda-config {
    padding: 12px;
  }

  .agenda-collaborator-modal-panel.with-agenda-config .agenda-collaborator-modal-form {
    gap: 8px;
  }

  .agenda-collaborator-modal-panel.with-agenda-config .agenda-settings-modal-tabs {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6px;
    border-bottom: 0;
    margin: 4px 0 8px;
    position: sticky;
    top: var(--agenda-collaborator-context-sticky-offset, 46px);
    z-index: 2;
    background: #ffffff;
    padding: 4px 0 2px;
    box-shadow: 0 1px 0 rgba(23, 37, 84, 0.08);
  }

  .agenda-collaborator-modal-panel.with-agenda-config .agenda-collaborator-modal-footer {
    position: sticky;
    bottom: 0;
    z-index: 4;
    border-top-color: #d9e2dd;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.86) 0%, rgba(255, 255, 255, 0.98) 44%, #ffffff 100%);
    box-shadow: 0 -8px 20px rgba(18, 35, 32, 0.08);
    padding: 8px 0 2px;
    margin-top: 8px;
  }

  @supports ((-webkit-backdrop-filter: blur(6px)) or (backdrop-filter: blur(6px))) {
    .agenda-collaborator-modal-panel.with-agenda-config .agenda-collaborator-modal-footer {
      -webkit-backdrop-filter: blur(6px) saturate(1.04);
      backdrop-filter: blur(6px) saturate(1.04);
    }
  }

  #agendaCollaboratorConfigBlock.is-mounted-in-collaborator-modal .agenda-collapsible-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  #agendaCollaboratorConfigBlock.is-mounted-in-collaborator-modal .agenda-panel-header-actions {
    gap: 6px;
  }

  #agendaCollaboratorConfigBlock.is-mounted-in-collaborator-modal .agenda-collapsible-content {
    gap: 8px;
  }

  .agenda-collaborator-modal-context {
    position: sticky;
    top: 0;
    z-index: 3;
    margin: 0 0 8px;
    border-radius: 10px;
  }

  .agenda-collaborator-modal-panel.with-agenda-config .agenda-settings-modal-tab-btn {
    width: 100%;
    min-width: 0;
    margin: 0;
    border: 1px solid #d9d9d9;
    border-radius: 16px;
    background: #ffffff;
    color: #000000;
    padding: 9px 10px;
    font-size: 0.82rem;
  }

  .agenda-collaborator-modal-panel.with-agenda-config .agenda-settings-modal-tab-btn.is-active,
  .agenda-collaborator-modal-panel.with-agenda-config .agenda-settings-modal-tab-btn[aria-selected='true'] {
    border-color: #d9d9d9;
    border-bottom-color: #d9d9d9;
    background: #ffffff;
    color: #000000;
    box-shadow: none;
  }

  .agenda-collaborator-modal-config-caption {
    margin: 0 0 6px;
    font-size: 0.8rem;
    line-height: 1.35;
  }

  .agenda-collaborator-modal-config-wrap,
  .agenda-collaborator-modal-collaborators-wrap {
    margin-top: 0;
    padding-top: 8px;
    gap: 8px;
  }

  .agenda-collaborator-modal-panel.with-agenda-config .agenda-services-panel .users-table-wrap {
    margin: 6px 0 0;
  }

  .agenda-collaborator-modal-panel.with-agenda-config .agenda-services-table th,
  .agenda-collaborator-modal-panel.with-agenda-config .agenda-services-table td {
    padding: 6px 8px;
    font-size: 0.8rem;
  }

  .agenda-collaborator-modal-panel.with-agenda-config .agenda-services-table .users-actions {
    gap: 4px;
  }

  .agenda-cash-closures-status-inline {
    flex-direction: column;
    align-items: stretch;
  }

  .agenda-cash-closures-status-inline button {
    width: 100%;
    min-width: 0;
  }

  .agenda-cash-modal-panel {
    width: min(1180px, calc(100vw - 12px));
    max-height: calc(100vh - 12px);
  }

  .agenda-settings-modal-panel {
    width: min(1180px, calc(100vw - 12px));
    max-height: calc(100vh - 12px);
  }

  .agenda-workday-option {
    justify-content: flex-start;
    padding: 8px 10px;
  }

  .agenda-create-services-list {
    grid-template-columns: 1fr;
  }

  .agenda-collaborator-selector-panel select {
    width: auto;
  }
}
