:root {
  --orange: #f08a24;
  --orange-soft: #f2c9a8;
  --cream: #fff8f1;
  --ink: #151515;
  --muted: #7a5a3a;
  --surface: #ffffff;
}

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  font-family: "Rubik", "Segoe UI", sans-serif;
  color: var(--ink);
  background: radial-gradient(
    1200px 600px at 20% 0%,
    #fff1e2 0%,
    #fffaf5 45%,
    #ffffff 100%
  );
}

.page-login .page {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
}

.page-login .layout {
  width: min(420px, 100%);
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.page-login .header h1 {
  margin: 0;
  font-size: 32px;
  font-weight: 700;
}

.page-login .header p {
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 16px;
}

.page-login .card {
  border-radius: 18px;
  border: 1px solid var(--orange-soft);
  padding: 20px;
  background: var(--surface);
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.page-login .card h2 {
  margin: 0;
  font-size: 20px;
}

.page-login .form {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.page-login .field {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--orange-soft);
  border-radius: 12px;
  background: var(--cream);
}

.page-login .field__icon {
  width: 18px;
  height: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--orange);
}

.page-login .field input {
  border: none;
  outline: none;
  background: transparent;
  width: 100%;
  font-size: 15px;
  color: var(--ink);
}

.page-login .error {
  margin: 0;
  color: #b42318;
  font-size: 14px;
  min-height: 18px;
}

.page-login .error a {
  color: inherit;
  font-weight: 700;
  text-decoration: underline;
}

.page-login .actions {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.page-login .helper-link {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  font-size: 14px;
  color: var(--orange);
  text-decoration: none;
}

.page-login .helper-link.is-inline {
  justify-content: flex-start;
}

.page-login .helper-link.is-hidden {
  display: none;
}

.page-login .message-box {
  margin: 0;
  padding: 12px 14px;
  border-radius: 12px;
  font-size: 14px;
  border: 1px solid var(--orange-soft);
  background: #fff7ef;
  color: #7a4b1f;
}

.page-login .message-box.is-hidden {
  display: none;
}

.page-login .message-box.is-error {
  border-color: #f1b9b9;
  background: #fff3f3;
  color: #a12929;
}

.page-login .message-box.is-success {
  border-color: #cce6d1;
  background: #f3fbf4;
  color: #236236;
}

.page-login .secondary-card {
  display: none;
}

.page-login .secondary-card.is-visible {
  display: flex;
}

.page-login .btn {
  border-radius: 12px;
  border: 1px solid transparent;
  padding: 12px 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
  transition:
    transform 0.08s ease,
    box-shadow 0.08s ease;
}

.page-login .btn:active {
  transform: translateY(1px);
}

.page-login .btn-primary {
  background: var(--orange);
  color: #ffffff;
  box-shadow: 0 10px 20px rgba(240, 138, 36, 0.3);
}

.page-login .btn-outline {
  border-color: var(--orange-soft);
  color: var(--orange);
  background: #ffffff;
}

.page-login .btn__icon {
  width: 18px;
  height: 18px;
  display: inline-flex;
}

.page-login .download-buttons {
  margin-top: 18px;
  display: flex;
  flex-wrap: nowrap;
  gap: 10px;
}

.page-login .android-button {
  flex: 1 1 0;
  min-width: 0;
  border-radius: 12px;
  border: 1px solid var(--orange-soft);
  padding: 10px 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  color: #1f1f1f;
  background: #ffffff;
  transition: transform 0.08s ease, box-shadow 0.08s ease;
}

.page-login .android-button:active {
  transform: translateY(1px);
}

.page-login .android-button__icon {
  width: 22px;
  height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 22px;
}

.page-login .android-button__icon svg,
.page-login .android-button__icon i {
  width: 22px;
  height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

@media (max-width: 600px) {
  .page-login .header h1 {
    font-size: 28px;
  }
}

.page-tools .page,
.page-cadastros .page {
  min-height: 100vh;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: 24px;
}

.page-tools .layout,
.page-cadastros .layout {
  width: min(700px, 100%);
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.page-cadastros .header {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.page-tools .header {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.page-tools .header h1,
.page-cadastros .header h1 {
  margin: 0;
  font-size: 30px;
  font-weight: 700;
}

.page-tools .header p,
.page-cadastros .header p {
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 16px;
}

.page-tools .user-summary {
  text-align: right;
  background: #fff4e7;
  border: 1px solid var(--orange-soft);
  border-radius: 12px;
  padding: 8px 12px;
  min-width: 140px;
}

.page-tools .user-summary__name {
  font-weight: 700;
  font-size: 14px;
}

.page-tools .user-summary__profile {
  font-size: 12px;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: 0.4px;
}

.page-tools .grid,
.page-cadastros .grid {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

.page-tools .card,
.page-cadastros .card {
  width: calc(50% - 8px);
  border-radius: 16px;
  border: 1px solid var(--orange-soft);
  padding: 16px;
  background: #fff7ed;
  min-height: 110px;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 12px;
  cursor: pointer;
  transition:
    transform 0.08s ease,
    box-shadow 0.08s ease;
}

.page-tools .card:active,
.page-cadastros .card:active {
  transform: translateY(1px);
}

.page-tools .card__icon,
.page-cadastros .card__icon {
  width: 24px;
  height: 24px;
  color: var(--orange);
}

.page-tools .card__label,
.page-cadastros .card__label {
  font-size: 16px;
  font-weight: 600;
}

.page-tools .card__badge,
.page-cadastros .card__badge {
  position: absolute;
  top: 12px;
  right: 12px;
  min-width: 22px;
  height: 22px;
  padding: 0 6px;
  border-radius: 999px;
  background: var(--orange);
  color: #ffffff;
  font-size: 12px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.page-tools .actions,
.page-cadastros .actions {
  margin-top: 8px;
  display: flex;
  justify-content: flex-end;
}

.page-tools .btn,
.page-cadastros .btn {
  border-radius: 12px;
  border: 1px solid var(--orange-soft);
  padding: 10px 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  color: var(--orange);
  background: #ffffff;
  cursor: pointer;
}

.page-tools .btn__icon,
.page-cadastros .btn__icon {
  width: 16px;
  height: 16px;
}

.page-cadastros .back-button {
  border-radius: 12px;
  border: 1px solid var(--orange-soft);
  padding: 10px 16px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  color: var(--orange);
  background: #ffffff;
  white-space: nowrap;
}

@media (max-width: 640px) {
  .page-tools .card,
  .page-cadastros .card {
    width: 100%;
  }
}

.page-stores .page {
  min-height: 100vh;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: 24px;
}

.page-stores .layout {
  width: min(900px, 100%);
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.page-stores .header {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.page-stores .header h1 {
  margin: 0;
  font-size: 28px;
  font-weight: 700;
}

.page-stores .header p {
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 15px;
}

.page-stores .header-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.page-stores .search-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}

.page-stores .search-bar input {
  flex: 1;
  min-width: 220px;
  border-radius: 12px;
  border: 1px solid var(--orange-soft);
  padding: 10px 14px;
  font-size: 14px;
  background: var(--surface);
}

.page-stores .btn {
  border-radius: 12px;
  border: 1px solid transparent;
  padding: 10px 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
}

.page-stores .btn-primary {
  background: var(--orange);
  color: #ffffff;
}

.page-stores .btn-outline {
  border-color: var(--orange-soft);
  color: var(--orange);
  background: #ffffff;
}

.page-stores .btn-danger {
  background: #b42318;
  color: #ffffff;
}

.page-stores .table-wrap {
  border-radius: 16px;
  border: 1px solid var(--orange-soft);
  background: var(--surface);
  overflow-x: auto;
}

.page-stores .contact-cell {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 220px;
}

.page-stores .contact-name {
  font-weight: 600;
}

.page-stores .contact-meta {
  font-size: 12px;
  color: var(--muted);
}

.page-stores table {
  width: 100%;
  border-collapse: collapse;
  min-width: 760px;
}

.page-stores th,
.page-stores td {
  padding: 12px 14px;
  text-align: left;
  font-size: 14px;
  border-bottom: 1px solid #f2e2d2;
  vertical-align: middle;
}

.page-stores th {
  background: #fff4e7;
  color: var(--muted);
  font-weight: 600;
}

.page-stores tr:last-child td {
  border-bottom: none;
}

.page-stores .row-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.page-stores .store-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.page-stores .store-item {
  border-radius: 16px;
  border: 1px solid var(--orange-soft);
  padding: 16px;
  background: var(--surface);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.page-stores .store-info {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 240px;
}

.page-stores .store-name {
  font-weight: 700;
  font-size: 16px;
}

.page-stores .store-meta {
  font-size: 14px;
  color: var(--muted);
}

.page-stores .store-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.page-stores .store-status {
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
}

.page-stores .store-status--1 {
  background: #e9f7ef;
  color: #1a7f37;
}

.page-stores .store-status--0 {
  background: #fbe9e9;
  color: #b42318;
}

.page-stores .inline-form {
  margin: 0;
}

.page-stores .message {
  margin: 0;
  font-size: 14px;
  color: var(--muted);
}

.page-stores .error {
  margin: 0;
  font-size: 14px;
  color: #b42318;
}

.page-store-form .page {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
}

.page-store-form .layout {
  width: min(560px, 100%);
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.page-store-form .header {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.page-store-form .header h1 {
  margin: 0;
  font-size: 28px;
  font-weight: 700;
}

.page-store-form .header p {
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 15px;
}

.page-store-form .back-button {
  border-radius: 12px;
  border: 1px solid var(--orange-soft);
  padding: 10px 16px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  color: var(--orange);
  background: #ffffff;
  white-space: nowrap;
}

.page-store-form .card {
  border-radius: 18px;
  border: 1px solid var(--orange-soft);
  padding: 20px;
  background: var(--surface);
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.page-store-form .form {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.page-store-form .field {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--orange-soft);
  border-radius: 12px;
  background: var(--cream);
}

.page-store-form .field input {
  border: none;
  outline: none;
  background: transparent;
  width: 100%;
  font-size: 15px;
  color: var(--ink);
}

.page-store-form .field select {
  border: none;
  outline: none;
  background: transparent;
  width: 100%;
  font-size: 15px;
  color: var(--ink);
}

.page-store-form .field--stack {
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
}

.page-store-form .field-label {
  font-weight: 600;
  color: var(--muted);
  font-size: 14px;
}

.page-store-form .radio-group {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

.page-store-form .radio-group label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 14px;
}

.page-store-form .is-hidden {
  display: none;
}

.page-store-form .field label {
  font-weight: 600;
}

.page-store-form .actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: flex-end;
}

.page-store-form .btn {
  border-radius: 12px;
  border: 1px solid transparent;
  padding: 10px 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
}

.page-store-form .btn-primary {
  background: var(--orange);
  color: #ffffff;
}

.page-store-form .btn-outline {
  border-color: var(--orange-soft);
  color: var(--orange);
  background: #ffffff;
}

.page-store-form .error {
  margin: 0;
  font-size: 14px;
  color: #b42318;
}

.page-faixa-cobranca .page {
  align-items: flex-start;
}

.page-faixa-cobranca .layout {
  width: min(1180px, 100%);
}

.page-faixa-cobranca .header-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}

.page-faixa-cobranca .card-hero {
  display: grid;
  grid-template-columns: minmax(260px, 0.9fr) minmax(0, 1.5fr);
  gap: 14px;
  overflow: hidden;
  position: relative;
}

.page-faixa-cobranca .card-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at top right, rgba(240, 138, 36, 0.12), transparent 38%),
    linear-gradient(135deg, rgba(255, 247, 239, 0.95), rgba(255, 255, 255, 0.98));
  pointer-events: none;
}

.page-faixa-cobranca .card-hero > * {
  position: relative;
  z-index: 1;
}

.page-faixa-cobranca .eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--orange);
}

.page-faixa-cobranca .hero-copy h2 {
  margin: 8px 0 4px;
  font-size: 24px;
}

.page-faixa-cobranca .hero-copy p {
  margin: 0;
  color: var(--muted);
  line-height: 1.6;
}

.page-faixa-cobranca .hero-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  align-items: stretch;
}

.page-faixa-cobranca .metric-card {
  border: 1px solid rgba(240, 138, 36, 0.18);
  border-radius: 14px;
  padding: 12px 14px;
  background: rgba(255, 255, 255, 0.84);
  box-shadow: 0 12px 28px rgba(240, 138, 36, 0.07);
}

.page-faixa-cobranca .metric-card strong {
  display: block;
  margin-top: 4px;
  font-size: 22px;
  line-height: 1.1;
}

.page-faixa-cobranca .metric-card__label {
  display: block;
  color: var(--muted);
  font-size: 12px;
}

.page-faixa-cobranca .section-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
}

.page-faixa-cobranca .section-heading--compact {
  margin-bottom: 12px;
}

.page-faixa-cobranca .section-heading h2 {
  margin: 0 0 6px;
}

.page-faixa-cobranca .section-heading p {
  margin: 0;
  color: var(--muted);
}

.page-faixa-cobranca .hero-note {
  min-width: 220px;
  border: 1px solid var(--orange-soft);
  border-radius: 16px;
  padding: 12px 14px;
  background: #fff7ef;
}

.page-faixa-cobranca .builder-aside {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
}

.page-faixa-cobranca .hero-note--compact {
  min-width: 260px;
}

.page-faixa-cobranca .hero-note strong,
.page-faixa-cobranca .hero-note span {
  display: block;
}

.page-faixa-cobranca .hero-note strong {
  font-size: 18px;
}

.page-faixa-cobranca .hero-note span {
  margin-top: 4px;
  color: var(--muted);
  font-size: 13px;
}

.page-faixa-cobranca .filter-panel {
  border: 1px solid rgba(240, 138, 36, 0.16);
  border-radius: 18px;
  padding: 16px;
  background: linear-gradient(180deg, #fffaf4, #ffffff);
  margin-bottom: 18px;
}

.page-faixa-cobranca .filter-panel--compact {
  margin-bottom: 0;
  padding: 12px 14px;
}

.page-faixa-cobranca .filter-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.page-faixa-cobranca .segmented {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

.page-faixa-cobranca .segmented label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 14px;
  white-space: nowrap;
}

.page-faixa-cobranca .segmented--compact {
  gap: 10px;
}

.page-faixa-cobranca .inline-fields {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: 12px;
  width: 100%;
}

.page-faixa-cobranca .inline-fields input {
  min-width: 0;
}

.page-faixa-cobranca .form-row {
  display: grid;
  gap: 12px;
}

.page-faixa-cobranca .compact-builder {
  display: grid;
  gap: 10px;
}

.page-faixa-cobranca .form-row--three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.page-faixa-cobranca .form-row--two {
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
}

.page-faixa-cobranca .form-row--four {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.page-faixa-cobranca .form-row--cta {
  grid-template-columns: minmax(0, 2fr) minmax(0, 2fr) minmax(0, 1fr);
  align-items: end;
}

.page-faixa-cobranca .form-row--submit {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

.page-faixa-cobranca .form-row .field {
  width: 100%;
}

.page-faixa-cobranca .field-note {
  color: var(--muted);
  font-size: 14px;
  line-height: 1.5;
}

.page-faixa-cobranca .card-builder .field-note {
  font-size: 13px;
  line-height: 1.4;
}

.page-faixa-cobranca .field.is-disabled {
  opacity: 0.6;
  background: #fbf7f2;
}

.page-faixa-cobranca .search-results {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 8px;
}

.page-faixa-cobranca #rede_options {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
}

.page-faixa-cobranca #rede_options .checkbox-line {
  width: 100%;
  min-height: 54px;
  align-items: center;
  padding: 10px 14px;
}

.page-faixa-cobranca #rede_options .checkbox-line span {
  font-weight: 700;
  line-height: 1.2;
}

.page-faixa-cobranca .search-item {
  border: 1px solid var(--orange-soft);
  background: #fff7ef;
  border-radius: 12px;
  padding: 10px 12px;
  text-align: left;
  cursor: pointer;
}

.page-faixa-cobranca .search-item strong {
  display: block;
  font-size: 14px;
}

.page-faixa-cobranca .search-item span {
  display: block;
  font-size: 12px;
  color: var(--muted);
}

.page-faixa-cobranca .search-item:hover {
  background: #fff1e3;
}

.page-faixa-cobranca .selected-box {
  border: 1px solid var(--orange-soft);
  border-radius: 12px;
  padding: 12px;
  background: #fff7ef;
}

.page-faixa-cobranca .selected-title {
  font-weight: 600;
  color: var(--muted);
  font-size: 13px;
  margin-bottom: 6px;
}

.page-faixa-cobranca .selected-info {
  font-size: 14px;
}

.page-faixa-cobranca .faixa-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 14px;
}

.page-faixa-cobranca .faixa-gallery--static {
  margin-top: 4px;
}

.page-faixa-cobranca .faixa-card--visual-dashboard {
  border-radius: 24px;
  border: 1px solid #dfe6f5;
  padding: 20px;
  background: linear-gradient(180deg, #ffffff 0%, #fbfcff 100%);
  box-shadow: 0 14px 34px rgba(86, 102, 140, 0.12);
}

.page-faixa-cobranca .faixa-card {
  border-radius: 18px;
  border: 1px solid #f2dfcb;
  padding: 18px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(255, 247, 239, 0.96));
  box-shadow: 0 18px 34px rgba(46, 32, 16, 0.06);
}

.page-faixa-cobranca .faixa-card--loja {
  background:
    radial-gradient(circle at top right, rgba(240, 138, 36, 0.16), transparent 30%),
    linear-gradient(180deg, #fffdf9, #fff4e8);
}

.page-faixa-cobranca .faixa-card--entregador {
  background:
    radial-gradient(circle at top right, rgba(21, 21, 21, 0.08), transparent 28%),
    linear-gradient(180deg, #ffffff, #fff8f1);
}

.page-faixa-cobranca .faixa-card h3 {
  margin: 14px 0 6px;
  font-size: 20px;
}

.page-faixa-cobranca .faixa-card--visual-dashboard h3 {
  margin: 0;
  font-size: 26px;
  line-height: 1.1;
  color: #16213d;
}

.page-faixa-cobranca .faixa-card__topline {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.page-faixa-cobranca .faixa-card__identity-wrap {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
}

.page-faixa-cobranca .faixa-card__avatar {
  width: 58px;
  height: 58px;
  border-radius: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 58px;
  color: #ffffff;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.04em;
  box-shadow: 0 10px 22px rgba(95, 78, 235, 0.25);
}

.page-faixa-cobranca .faixa-card__avatar--loja {
  background: linear-gradient(135deg, #ff7ca1, #ff5a70);
}

.page-faixa-cobranca .faixa-card__avatar--entregador {
  background: linear-gradient(135deg, #6558f5, #4d87ff);
}

.page-faixa-cobranca .faixa-card__identity {
  min-width: 0;
}

.page-faixa-cobranca .faixa-card__identity p {
  margin: 4px 0 0;
  color: #7c89a8;
  font-size: 15px;
}

.page-faixa-cobranca .faixa-card__mini-badges {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.page-faixa-cobranca .faixa-card__mini-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  padding: 8px 12px;
  border-radius: 14px;
  background: #f5f4ff;
  border: 1px solid #e6e2ff;
  color: #5c52d7;
  font-size: 12px;
  font-weight: 700;
}

.page-faixa-cobranca .faixa-card__mini-badge--accent {
  background: #eef4ff;
  border-color: #d9e7ff;
  color: #3773ea;
}

.page-faixa-cobranca .faixa-card__stats-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-top: 22px;
}

.page-faixa-cobranca .faixa-card__stat-box span {
  display: block;
  color: #6f7c98;
  font-size: 13px;
}

.page-faixa-cobranca .faixa-card__stat-box strong {
  display: block;
  margin-top: 4px;
  color: #16213d;
  font-size: 19px;
  letter-spacing: 0.01em;
}

.page-faixa-cobranca .faixa-card__progress-group {
  margin-top: 18px;
}

.page-faixa-cobranca .faixa-card__progress-track {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.page-faixa-cobranca .faixa-card__progress-bar {
  display: block;
  height: 8px;
  border-radius: 999px;
}

.page-faixa-cobranca .faixa-card__progress-bar--purple {
  background: linear-gradient(90deg, #6b5cf6, #7c68ff);
}

.page-faixa-cobranca .faixa-card__progress-bar--green {
  background: linear-gradient(90deg, #23b97e, #37cf95);
}

.page-faixa-cobranca .faixa-card__progress-bar--blue {
  background: linear-gradient(90deg, #2c9ae8, #35b4ff);
}

.page-faixa-cobranca .faixa-card__progress-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  margin-top: 12px;
}

.page-faixa-cobranca .faixa-card__progress-legend span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #45506d;
  font-size: 14px;
}

.page-faixa-cobranca .faixa-card__dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  display: inline-block;
}

.page-faixa-cobranca .faixa-card__dot--purple {
  background: #6659f5;
}

.page-faixa-cobranca .faixa-card__dot--green {
  background: #23b97e;
}

.page-faixa-cobranca .faixa-card__dot--blue {
  background: #2c9ae8;
}

.page-faixa-cobranca .faixa-card__footerline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-top: 22px;
}

.page-faixa-cobranca .faixa-card__footer-icons {
  display: flex;
  align-items: center;
  gap: 10px;
}

.page-faixa-cobranca .faixa-card__footer-icon {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  display: inline-block;
  box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.55);
}

.page-faixa-cobranca .faixa-card__footer-icon--gold {
  background: linear-gradient(135deg, #ffd049, #ffb300);
}

.page-faixa-cobranca .faixa-card__footer-icon--pink {
  background: linear-gradient(135deg, #ff7a9d, #ff5d74);
}

.page-faixa-cobranca .faixa-card__footer-icon--amber {
  background: linear-gradient(135deg, #ffc94f, #f0a100);
}

.page-faixa-cobranca .faixa-card__footer-date {
  color: #7c89a8;
  font-size: 13px;
}

.page-faixa-cobranca .faixa-card__subtitle {
  margin: 0 0 14px;
  color: var(--muted);
  font-size: 13px;
}

.page-faixa-cobranca .faixa-card__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.page-faixa-cobranca .faixa-card__pricing {
  margin-top: 12px;
  border: 1px solid #f0dfcf;
  border-radius: 14px;
  padding: 12px;
  background: rgba(255, 255, 255, 0.72);
}

.page-faixa-cobranca .faixa-card__pricing-label {
  display: block;
  margin-bottom: 8px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

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

.page-faixa-cobranca .faixa-card__pricing-item {
  border-radius: 12px;
  padding: 10px 12px;
  background: linear-gradient(180deg, #fff8f1, #ffffff);
  border: 1px solid #f4e4d4;
}

.page-faixa-cobranca .faixa-card__pricing-item span {
  display: block;
  color: var(--muted);
  font-size: 12px;
}

.page-faixa-cobranca .faixa-card__pricing-item strong {
  display: block;
  margin-top: 4px;
  font-size: 15px;
  color: var(--ink);
}

.page-faixa-cobranca .chip {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 6px 10px;
  background: rgba(255, 255, 255, 0.88);
  border: 1px solid #f0dfcf;
  font-size: 12px;
  font-weight: 600;
  color: var(--muted);
}

.page-faixa-cobranca .chip--loja {
  color: #985200;
  background: #fff2e1;
}

.page-faixa-cobranca .chip--entregador {
  color: #5a4630;
  background: #f8efe6;
}

.page-faixa-cobranca .faixa-card__ruler {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 10px;
  align-items: center;
  margin: 18px 0;
}

.page-faixa-cobranca .faixa-card__ruler-min,
.page-faixa-cobranca .faixa-card__ruler-max {
  color: var(--muted);
  font-size: 12px;
  white-space: nowrap;
}

.page-faixa-cobranca .faixa-card__track {
  position: relative;
  height: 12px;
  border-radius: 999px;
  background: linear-gradient(90deg, #fde7d0, #f7d9b4);
  overflow: hidden;
}

.page-faixa-cobranca .faixa-card__segment {
  position: absolute;
  top: 1px;
  bottom: 1px;
  border-radius: 999px;
  background: linear-gradient(90deg, #f08a24, #ffb04f);
  box-shadow: 0 4px 12px rgba(240, 138, 36, 0.28);
}

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

.page-faixa-cobranca .faixa-card__values div {
  border-radius: 14px;
  border: 1px solid #f0dfcf;
  background: rgba(255, 255, 255, 0.78);
  padding: 12px;
}

.page-faixa-cobranca .faixa-card__values span {
  display: block;
  color: var(--muted);
  font-size: 12px;
}

.page-faixa-cobranca .faixa-card__values strong {
  display: block;
  margin-top: 6px;
  font-size: 16px;
}

.page-faixa-cobranca .faixa-empty {
  border: 1px dashed var(--orange-soft);
  border-radius: 18px;
  padding: 24px;
  text-align: center;
  color: var(--muted);
  background: #fffaf4;
}

.page-faixa-cobranca .faixa-empty strong,
.page-faixa-cobranca .faixa-empty span {
  display: block;
}

.page-faixa-cobranca .faixa-empty span {
  margin-top: 6px;
}

.page-faixa-cobranca .faixas-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.page-faixa-cobranca .checkbox-line {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  border: 1px solid #f2e2d2;
  border-radius: 10px;
  padding: 8px 10px;
  background: #fffaf3;
  font-size: 14px;
}

.page-faixa-cobranca .checkbox-line--faixa {
  align-items: center;
}

.page-faixa-cobranca .checkbox-line__content {
  display: block;
}

.page-faixa-cobranca .checkbox-line__content strong,
.page-faixa-cobranca .checkbox-line__content small {
  display: block;
}

.page-faixa-cobranca .checkbox-line__content small {
  margin-top: 4px;
  color: var(--muted);
}

.page-faixa-cobranca .empty-state {
  font-size: 13px;
  color: var(--muted);
}

.page-faixa-cobranca .cell-stack {
  display: grid;
  gap: 4px;
  font-size: 13px;
}

.page-faixa-cobranca .cell-stack div {
  display: flex;
  gap: 6px;
  align-items: center;
}

.page-faixa-cobranca .cell-label {
  font-weight: 600;
  color: var(--muted);
  min-width: 38px;
}

.page-faixa-cobranca .cell-value {
  color: var(--ink);
}

.page-faixa-cobranca .cell-nowrap {
  white-space: nowrap;
}

.page-faixa-cobranca .field--action {
  align-items: stretch;
}

.page-faixa-cobranca .btn-save {
  width: 100%;
}

@media (max-width: 860px) {
  .page-faixa-cobranca .header-actions,
  .page-faixa-cobranca .card-hero,
  .page-faixa-cobranca .section-heading,
  .page-faixa-cobranca .filter-grid,
  .page-faixa-cobranca .faixa-card__stats-grid,
  .page-faixa-cobranca .faixa-card__pricing-grid,
  .page-faixa-cobranca .form-row--three,
  .page-faixa-cobranca .form-row--two,
  .page-faixa-cobranca .form-row--four,
  .page-faixa-cobranca .form-row--submit,
  .page-faixa-cobranca .form-row--cta {
    grid-template-columns: 1fr;
  }

  .page-faixa-cobranca .section-heading {
    align-items: stretch;
  }

  .page-faixa-cobranca .header-actions {
    justify-content: stretch;
  }

  .page-faixa-cobranca .hero-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .page-faixa-cobranca .faixa-card__topline,
  .page-faixa-cobranca .faixa-card__footerline {
    flex-direction: column;
    align-items: flex-start;
  }

  .page-faixa-cobranca .faixa-card__mini-badges {
    justify-content: flex-start;
  }

  .page-faixa-cobranca #rede_options {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .page-faixa-cobranca #rede_options .checkbox-line {
    width: 100%;
  }
}

@media (max-width: 520px) {
  .page-faixa-cobranca .hero-metrics {
    grid-template-columns: 1fr;
  }

  .page-faixa-cobranca #rede_options {
    grid-template-columns: 1fr;
  }
}

.page-faixa-cobranca .alert {
  border-radius: 12px;
  padding: 10px 14px;
  font-size: 14px;
}

.page-faixa-cobranca .alert-error {
  background: #fbe9e9;
  color: #b42318;
  border: 1px solid #f5c2c7;
}

.page-faixa-cobranca .alert-success {
  background: #e9f7ef;
  color: #1a7f37;
  border: 1px solid #cbe7d6;
}

.page-faixa-cobranca .table-wrap {
  border-radius: 16px;
  border: 1px solid var(--orange-soft);
  background: var(--surface);
  overflow-x: auto;
}

.page-faixa-cobranca .row-actions {
  display: flex;
  justify-content: flex-end;
}

.page-faixa-cobranca .btn-icon {
  width: 36px;
  height: 36px;
  padding: 0;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-color: #f5c2c7;
  color: #b42318;
  background: #ffffff;
}

.page-faixa-cobranca .btn-icon:hover {
  background: #fbe9e9;
}

.page-faixa-cobranca .btn-icon svg {
  width: 16px;
  height: 16px;
}

.page-faixa-cobranca table {
  width: 100%;
  border-collapse: collapse;
  min-width: 640px;
}

.page-faixa-cobranca th,
.page-faixa-cobranca td {
  padding: 12px 14px;
  text-align: left;
  font-size: 14px;
  border-bottom: 1px solid #f2e2d2;
  vertical-align: middle;
}

.page-faixa-cobranca th {
  background: #fff4e7;
  color: var(--muted);
  font-weight: 600;
}

.page-faixa-cobranca tr:last-child td {
  border-bottom: none;
}

.page-deliverers .page {
  min-height: 100vh;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: 24px;
}

.page-deliverers .layout {
  width: min(1000px, 100%);
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.page-deliverers .header {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.page-deliverers .header h1 {
  margin: 0;
  font-size: 28px;
  font-weight: 700;
}

.page-deliverers .header p {
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 15px;
}

.page-deliverers .header-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

.page-deliverers .header-actions .inline-form {
  margin: 0;
}

.page-deliverers .btn-rating-recalc {
  min-height: 42px;
}

.page-deliverers .btn {
  border-radius: 12px;
  border: 1px solid transparent;
  padding: 10px 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
}

.page-deliverers .btn-primary {
  background: var(--orange);
  color: #ffffff;
}

.page-deliverers .btn-outline {
  border-color: var(--orange-soft);
  color: var(--orange);
  background: #ffffff;
}

.page-deliverers .btn-danger {
  background: #111111;
  color: #ffffff;
}

.page-deliverers .btn-warn {
  background: #b42318;
  color: #ffffff;
}

.page-deliverers .search-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}

.page-deliverers .search-bar input {
  flex: 1;
  min-width: 220px;
  border-radius: 12px;
  border: 1px solid var(--orange-soft);
  padding: 10px 14px;
  font-size: 14px;
  background: var(--surface);
}

.page-deliverers .table-wrap {
  border-radius: 16px;
  border: 1px solid var(--orange-soft);
  background: var(--surface);
  overflow-x: auto;
}

.page-deliverers .contact-cell {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 200px;
}

.page-deliverers .contact-name {
  font-weight: 600;
}

.page-deliverers .deliverer-rating {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  margin-top: 4px;
  line-height: 1;
}

.page-deliverers .deliverer-rating__star {
  font-size: 16px;
  letter-spacing: 0;
  font-weight: 700;
}

.page-deliverers .deliverer-rating__star.is-filled {
  color: #f4c542;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.12);
}

.page-deliverers .deliverer-rating__star.is-empty {
  color: #d9d0c7;
}

.page-deliverers .btn-rating-recalc:disabled {
  opacity: 0.65;
  cursor: progress;
}

.page-deliverers .contact-meta {
  font-size: 12px;
  color: var(--muted);
}

.page-deliverers table {
  width: 100%;
  border-collapse: collapse;
  min-width: 840px;
}

.page-deliverers th,
.page-deliverers td {
  padding: 12px 14px;
  text-align: left;
  font-size: 14px;
  border-bottom: 1px solid #f2e2d2;
  vertical-align: middle;
}

.page-deliverers th {
  background: #fff4e7;
  color: var(--muted);
  font-weight: 600;
}

.page-deliverers tr:last-child td {
  border-bottom: none;
}

.page-deliverers .status-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
}

.page-deliverers .status-pill--0 {
  background: #fbe9e9;
  color: #b42318;
}

.page-deliverers .status-pill--1 {
  background: #fff1e6;
  color: #c55c00;
}

.page-deliverers .status-pill--2 {
  background: #ffe4e1;
  color: #b42318;
}

.page-deliverers .status-pill--3 {
  background: #e9f7ef;
  color: #1a7f37;
}

.page-deliverers .status-pill--4 {
  background: #111111;
  color: #ffffff;
}

.page-deliverers .row-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.page-deliverers .inline-form {
  margin: 0;
}

.page-deliverers .message {
  margin: 0;
  font-size: 14px;
  color: var(--muted);
}

.page-deliverers .error {
  margin: 0;
  font-size: 14px;
  color: #b42318;
}

.page-deliverers .deliverer-rating-modal__actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.page-deliverers .deliverer-rating-modal {
  position: fixed;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 18px;
  z-index: 80;
}

.page-deliverers .deliverer-rating-modal.is-open {
  display: flex;
}

.page-deliverers .deliverer-rating-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(25, 16, 8, 0.58);
  backdrop-filter: blur(2px);
}

.page-deliverers .deliverer-rating-modal__card {
  position: relative;
  z-index: 1;
  width: min(760px, 100%);
  max-height: min(82vh, 900px);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 20px;
  border-radius: 20px;
  background: linear-gradient(180deg, #fffaf5 0%, #ffffff 100%);
  border: 1px solid var(--orange-soft);
  box-shadow: 0 20px 60px rgba(58, 31, 4, 0.28);
}

.page-deliverers .deliverer-rating-modal__header {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  justify-content: space-between;
}

.page-deliverers .deliverer-rating-modal__header h2 {
  margin: 0 0 6px;
  font-size: 24px;
  line-height: 1.1;
}

.page-deliverers .deliverer-rating-modal__header p,
.page-deliverers .deliverer-rating-modal__status,
.page-deliverers .deliverer-rating-modal__progress-row {
  margin: 0;
  color: var(--muted);
  font-size: 14px;
}

.page-deliverers .deliverer-rating-modal__close {
  white-space: nowrap;
}

.page-deliverers .deliverer-rating-modal__progress {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.page-deliverers .deliverer-rating-modal__progress-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  font-weight: 600;
}

.page-deliverers .deliverer-rating-modal__progress-bar {
  width: 100%;
  height: 12px;
  border-radius: 999px;
  background: #f2e2d2;
  overflow: hidden;
}

.page-deliverers .deliverer-rating-modal__progress-bar span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #f28c28, #f4c542);
  transition: width 0.25s ease;
}

.page-deliverers .deliverer-rating-modal__status {
  padding: 12px 14px;
  border-radius: 14px;
  background: #fff4e7;
  border: 1px solid #f2dcc2;
}

.page-deliverers .deliverer-rating-modal__items {
  display: grid;
  gap: 12px;
  overflow: auto;
  padding-right: 4px;
}

.page-deliverers .deliverer-rating-modal__item {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 14px 16px;
  border-radius: 16px;
  border: 1px solid #f2e2d2;
  background: #ffffff;
}

.page-deliverers .deliverer-rating-modal__item-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.page-deliverers .deliverer-rating-modal__item-top strong {
  font-size: 16px;
}

.page-deliverers .deliverer-rating-modal__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px 10px;
  border-radius: 999px;
  background: #fff4e7;
  color: var(--orange);
  font-size: 12px;
  font-weight: 700;
}

.page-deliverers .deliverer-rating-modal__stars .deliverer-rating {
  margin-top: 0;
}

.page-deliverers .deliverer-rating-modal__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 16px;
  font-size: 13px;
  color: var(--muted);
}

.page-deliverers .deliverer-rating-modal__grid strong {
  color: var(--text);
}

.page-deliverers .deliverer-rating-modal__empty {
  padding: 18px;
  border-radius: 14px;
  background: #fff4e7;
  color: var(--muted);
  text-align: center;
  border: 1px dashed #f2dcc2;
}

.page-rating-config .rating-config-card {
  display: flex;
  flex-direction: column;
  gap: 18px;
  padding: 24px;
  border-radius: 24px;
  background:
    radial-gradient(circle at top right, rgba(242, 140, 40, 0.08), transparent 35%),
    linear-gradient(180deg, #fffaf5 0%, #ffffff 100%);
  border: 1px solid var(--orange-soft);
  box-shadow: 0 20px 50px rgba(58, 31, 4, 0.14);
}

.page-rating-config .rating-config-card__hero {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 4px;
}

.page-rating-config .rating-config-kicker {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  padding: 4px 10px;
  border-radius: 999px;
  background: #fff4e7;
  color: var(--orange);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.02em;
}

.page-rating-config .rating-config-card__intro {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.page-rating-config .rating-config-card__intro strong {
  font-size: 26px;
  line-height: 1.05;
  letter-spacing: -0.02em;
}

.page-rating-config .rating-config-card__intro p {
  margin: 0;
  color: var(--muted);
  max-width: 58ch;
}

.page-rating-config .rating-config-chip {
  min-width: 160px;
  padding: 14px 16px;
  border-radius: 18px;
  background: #111111;
  color: #ffffff;
  box-shadow: 0 12px 26px rgba(17, 17, 17, 0.16);
}

.page-rating-config .rating-config-chip span {
  display: block;
  font-size: 12px;
  opacity: 0.75;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.page-rating-config .rating-config-chip strong {
  display: block;
  margin-top: 4px;
  font-size: 16px;
  font-weight: 700;
}

.page-rating-config .rating-config-panel {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 18px;
  border-radius: 20px;
  background: rgba(255, 244, 231, 0.55);
  border: 1px solid #f2dcc2;
}

.page-rating-config .rating-config-panel__head {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.page-rating-config .rating-config-panel__head strong {
  font-size: 18px;
}

.page-rating-config .rating-config-panel__head span {
  color: var(--muted);
  font-size: 14px;
}

.page-rating-config .rating-config-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 16px;
}

.page-rating-config .rating-config-field--accent {
  position: relative;
}

.page-rating-config .rating-config-field--accent::before {
  content: '';
  position: absolute;
  inset: 32px auto 14px 0;
  width: 4px;
  border-radius: 999px;
  background: linear-gradient(180deg, #f28c28, #f4c542);
}

.page-rating-config .rating-config-field {
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-size: 14px;
  color: var(--muted);
}

.page-rating-config .rating-config-field--accent span {
  padding-left: 12px;
}

.page-rating-config .rating-config-field input {
  width: 100%;
  border-radius: 16px;
  border: 1px solid var(--orange-soft);
  padding: 14px 16px;
  font-family: inherit;
  font-size: 16px;
  background: #ffffff;
  color: var(--text);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.75);
}

.page-rating-config .rating-config-field input:focus {
  outline: none;
  border-color: var(--orange);
  box-shadow: 0 0 0 4px rgba(242, 140, 40, 0.14);
}

.page-rating-config .rating-config-summary {
  display: grid;
  gap: 10px;
}

.page-rating-config .rating-config-summary--base {
  margin-top: 2px;
}

.page-rating-config .rating-config-summary__item--base {
  background: linear-gradient(135deg, rgba(17, 17, 17, 0.96), rgba(44, 30, 15, 0.96));
  border-color: #111111;
}

.page-rating-config .rating-config-summary__item--base strong,
.page-rating-config .rating-config-summary__item--base span {
  color: #ffffff;
}

.page-rating-config .rating-config-summary__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  border-radius: 16px;
  background: #ffffff;
  border: 1px solid #f2dcc2;
  font-size: 13px;
  box-shadow: 0 6px 16px rgba(58, 31, 4, 0.05);
  position: relative;
  overflow: hidden;
}

.page-rating-config .rating-config-summary__item::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 5px;
  background: linear-gradient(180deg, #f28c28, #f4c542);
}

.page-rating-config .rating-config-summary__item strong {
  color: var(--text);
  font-size: 14px;
}

.page-rating-config .rating-config-summary__item span {
  color: var(--muted);
  text-align: right;
  font-size: 13px;
}

.page-rating-config .rating-config-summary__item--filled {
  background: linear-gradient(135deg, rgba(255, 244, 231, 0.95), rgba(255, 255, 255, 1));
}

.page-rating-config .rating-config-summary__item--warn {
  background: linear-gradient(135deg, #1b120a, #111111);
  border-color: #111111;
}

.page-rating-config .rating-config-summary__item--warn strong,
.page-rating-config .rating-config-summary__item--warn span {
  color: #ffffff;
}

.page-rating-config .rating-config-actions {
  display: flex;
  justify-content: flex-end;
}

.page-rating-config .btn-rating-save {
  min-width: 180px;
  min-height: 48px;
  border-radius: 14px;
  box-shadow: 0 12px 28px rgba(242, 140, 40, 0.18);
}

.page-deliverer-form .page {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
}

.page-deliverer-form .layout {
  width: min(620px, 100%);
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.page-deliverer-form .header {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.page-deliverer-form .header h1 {
  margin: 0;
  font-size: 28px;
  font-weight: 700;
}

.page-deliverer-form .header p {
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 15px;
}

.page-deliverer-form .back-button {
  border-radius: 12px;
  border: 1px solid var(--orange-soft);
  padding: 10px 16px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  color: var(--orange);
  background: #ffffff;
  white-space: nowrap;
}

.page-deliverer-form .card {
  border-radius: 18px;
  border: 1px solid var(--orange-soft);
  padding: 20px;
  background: var(--surface);
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.page-deliverer-form .form {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.page-deliverer-form .field {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--orange-soft);
  border-radius: 12px;
  background: var(--cream);
}

.page-deliverer-form .field--stack {
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
}

.page-deliverer-form .field-label {
  font-weight: 600;
  color: var(--muted);
  font-size: 14px;
}

.page-deliverer-form .field input,
.page-deliverer-form .field select {
  border: none;
  outline: none;
  background: transparent;
  width: 100%;
  font-size: 15px;
  color: var(--ink);
}

.page-deliverer-form .actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: flex-end;
}

.page-deliverer-form .btn {
  border-radius: 12px;
  border: 1px solid transparent;
  padding: 10px 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
}

.page-deliverer-form .btn-primary {
  background: var(--orange);
  color: #ffffff;
}

.page-deliverer-form .btn-outline {
  border-color: var(--orange-soft);
  color: var(--orange);
  background: #ffffff;
}

.page-deliverer-form .error {
  margin: 0;
  font-size: 14px;
  color: #b42318;
}

.page-permissions .page {
  min-height: 100vh;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: 24px;
}

.page-permissions .layout {
  width: min(1100px, 100%);
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.page-permissions .header {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.page-permissions .header h1 {
  margin: 0;
  font-size: 28px;
  font-weight: 700;
}

.page-permissions .header p {
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 15px;
}

.page-permissions .back-button {
  border-radius: 12px;
  border: 1px solid var(--orange-soft);
  padding: 10px 16px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  color: var(--orange);
  background: #ffffff;
  white-space: nowrap;
}

.page-permissions .card {
  border-radius: 18px;
  border: 1px solid var(--orange-soft);
  padding: 20px;
  background: var(--surface);
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.page-permissions .card h2 {
  margin: 0;
  font-size: 18px;
  font-weight: 600;
}

.page-permissions .search-bar,
.page-permissions .select-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}

.page-permissions input,
.page-permissions select {
  border-radius: 12px;
  border: 1px solid var(--orange-soft);
  padding: 10px 14px;
  font-size: 14px;
  background: var(--surface);
}

.page-permissions .search-bar input,
.page-permissions .select-row input {
  flex: 1;
  min-width: 220px;
}

.page-permissions .btn {
  border-radius: 12px;
  border: 1px solid transparent;
  padding: 10px 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
}

.page-permissions .btn-primary {
  background: var(--orange);
  color: #ffffff;
}

.page-permissions .btn-outline {
  border-color: var(--orange-soft);
  color: var(--orange);
  background: #ffffff;
}

.page-permissions .search-results {
  display: grid;
  gap: 8px;
}

.page-permissions .result-item {
  border-radius: 12px;
  border: 1px solid var(--orange-soft);
  padding: 10px 12px;
  text-align: left;
  background: var(--cream);
  cursor: pointer;
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: 13px;
}

.page-permissions .result-item strong {
  font-size: 14px;
}

.page-permissions .user-details {
  border-radius: 12px;
  border: 1px solid var(--orange-soft);
  background: var(--cream);
  padding: 12px;
  display: grid;
  gap: 8px;
}

.page-permissions .user-details.is-hidden {
  display: none;
}

.page-permissions .user-line {
  display: flex;
  gap: 8px;
  align-items: center;
  font-size: 14px;
}

.page-permissions .user-line .label {
  font-weight: 600;
  color: var(--muted);
  min-width: 64px;
}

.page-permissions .status-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
}

.page-permissions .status-pill--0 {
  background: #fbe9e9;
  color: #b42318;
}

.page-permissions .status-pill--1 {
  background: #fff1e6;
  color: #c55c00;
}

.page-permissions .status-pill--2 {
  background: #ffe4e1;
  color: #b42318;
}

.page-permissions .status-pill--3 {
  background: #e9f7ef;
  color: #1a7f37;
}

.page-permissions .status-pill--4 {
  background: #111111;
  color: #ffffff;
}

.page-permissions .access-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.page-permissions .access-columns {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 16px;
}

.page-permissions .access-column h3 {
  margin: 0 0 8px;
  font-size: 14px;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: 0.4px;
}

.page-permissions .access-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  border-radius: 12px;
  border: 1px solid var(--orange-soft);
  background: #fff4e7;
  padding: 8px 10px;
  font-size: 13px;
}

.page-permissions .access-warning {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  color: #b42318;
}

.page-permissions .access-fixed {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  color: #1a7f37;
}

.card-full {
  position: fixed;
  inset: 0;
  width: 100vw;
  max-width: none;
  border-radius: 0;
  margin: 0;
  z-index: 9999;
}

.page-permissions .access-chip {
  border-radius: 999px;
  border: 1px solid var(--orange-soft);
  background: #fff4e7;
  padding: 6px 10px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
}

.page-permissions .chip-remove {
  border: none;
  background: transparent;
  color: #b42318;
  font-weight: 600;
  cursor: pointer;
}

.page-permissions .option-form {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px;
}

.page-permissions .table-wrap {
  border-radius: 16px;
  border: 1px solid var(--orange-soft);
  background: var(--surface);
  overflow-x: auto;
}

.page-permissions .row-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.page-permissions table {
  width: 100%;
  border-collapse: collapse;
  min-width: 680px;
}

.page-permissions th,
.page-permissions td {
  padding: 12px 14px;
  text-align: left;
  font-size: 14px;
  border-bottom: 1px solid #f2e2d2;
  vertical-align: middle;
}

.page-permissions th {
  background: #fff4e7;
  color: var(--muted);
  font-weight: 600;
}

.page-permissions tr:last-child td {
  border-bottom: none;
}

.page-permissions .message {
  margin: 0;
  font-size: 14px;
  color: var(--muted);
}

.page-permissions .error {
  margin: 0;
  font-size: 14px;
  color: #b42318;
}

.page-approve .page {
  min-height: 100vh;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: 24px;
}

.page-approve .layout {
  width: min(860px, 100%);
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.page-approve .header {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.page-approve .header h1 {
  margin: 0;
  font-size: 28px;
  font-weight: 700;
}

.page-approve .header p {
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 15px;
}

.page-approve .back-button {
  border-radius: 12px;
  border: 1px solid var(--orange-soft);
  padding: 10px 16px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  color: var(--orange);
  background: #ffffff;
  white-space: nowrap;
}

.page-approve .toolbar {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.page-approve .toolbar label {
  font-weight: 600;
}

.page-approve .toolbar select {
  border-radius: 10px;
  border: 1px solid var(--orange-soft);
  padding: 8px 12px;
  background: var(--surface);
  font-size: 14px;
}

.page-approve .list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.page-approve .item {
  border-radius: 16px;
  border: 1px solid var(--orange-soft);
  padding: 16px;
  background: var(--surface);
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.page-approve .item-header {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.page-approve .item-name {
  font-weight: 700;
  font-size: 16px;
}

.page-approve .item-email {
  font-size: 14px;
  color: var(--muted);
}

.page-approve .status {
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
}

.page-approve .status--0 {
  background: #fbe9e9;
  color: #b42318;
}

.page-approve .status--1 {
  background: #fff1e6;
  color: #c55c00;
}

.page-approve .status--2 {
  background: #ffe4e1;
  color: #b42318;
}

.page-approve .status--3 {
  background: #e9f7ef;
  color: #1a7f37;
}

.page-approve .status--4 {
  background: #111111;
  color: #ffffff;
}

.page-approve .actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.page-approve .btn {
  border-radius: 10px;
  border: none;
  padding: 8px 12px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  color: #ffffff;
}

.page-approve .btn-approve {
  background: #1a7f37;
}

.page-approve .btn-reject {
  background: #b42318;
}

.page-approve .btn-ban {
  background: #111111;
}

.page-approve .message {
  margin: 0;
  font-size: 14px;
  color: var(--muted);
}

.page-approve .error {
  margin: 0;
  font-size: 14px;
  color: #b42318;
}

.page-approve .modal {
  position: fixed;
  inset: 0;
  background: rgba(15, 10, 5, 0.5);
  display: none;
  align-items: center;
  justify-content: center;
  padding: 16px;
}

.page-approve .modal.is-open {
  display: flex;
}

.page-approve .modal-card {
  width: min(420px, 100%);
  background: var(--surface);
  border-radius: 16px;
  padding: 18px;
  border: 1px solid var(--orange-soft);
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.page-approve .modal-card textarea {
  resize: vertical;
  min-height: 90px;
  border-radius: 12px;
  border: 1px solid var(--orange-soft);
  padding: 10px;
  font-family: inherit;
}

.page-approve .modal-actions {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
}

.page-approve .btn-outline {
  background: #ffffff;
  color: var(--orange);
  border: 1px solid var(--orange-soft);
}

@media (max-width: 640px) {
  .page-approve .actions {
    flex-direction: column;
  }

  .page-deliverers .deliverer-rating-modal__header {
    flex-direction: column;
  }

  .page-deliverers .deliverer-rating-modal__grid {
    grid-template-columns: 1fr;
  }

  .page-rating-config .rating-config-grid,
  .page-rating-config .rating-config-summary {
    grid-template-columns: 1fr;
  }

  .page-rating-config .rating-config-card__hero {
    flex-direction: column;
  }

  .page-rating-config .rating-config-chip {
    width: 100%;
  }
}

.page-register .page {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
}

.page-register .layout {
  width: min(560px, 100%);
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.page-register .header h1 {
  margin: 0;
  font-size: 28px;
  font-weight: 700;
}

.page-register .header p {
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 15px;
}

.page-register .header-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.page-register .header-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.page-register .back-button {
  border-radius: 12px;
  border: 1px solid var(--orange-soft);
  padding: 10px 16px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  color: var(--orange);
  background: #ffffff;
  white-space: nowrap;
}

.page-register .card {
  border-radius: 18px;
  border: 1px solid var(--orange-soft);
  padding: 20px;
  background: var(--surface);
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.page-register .step-header {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.page-register .step-title {
  font-weight: 600;
}

.page-register .progress {
  height: 8px;
  background: #f7e1cd;
  border-radius: 999px;
  overflow: hidden;
}

.page-register .progress__fill {
  height: 100%;
  width: 20%;
  background: var(--orange);
  transition: width 0.2s ease;
}

.page-register .step-label {
  font-size: 14px;
  color: var(--muted);
}

.page-register .step {
  display: none;
  flex-direction: column;
  gap: 12px;
}

.page-register .step.is-active {
  display: flex;
}

.page-register .option-grid {
  display: flex;
  gap: 8px;
  justify-content: space-between;
}

.page-register .option-card {
  width: 31%;
  border-radius: 16px;
  border: 1px solid var(--orange-soft);
  padding: 12px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  background: var(--cream);
  cursor: pointer;
  transition:
    border-color 0.2s ease,
    background 0.2s ease;
}

.page-register .option-card img {
  width: 34px;
  height: 34px;
}

.page-register .option-card.is-active {
  border-color: var(--orange);
  background: #fff1e6;
}

.page-register .field {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--orange-soft);
  border-radius: 12px;
  background: var(--cream);
}

.page-register .field__icon {
  width: 18px;
  height: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--orange);
}

.page-register .field input {
  border: none;
  outline: none;
  background: transparent;
  width: 100%;
  font-size: 15px;
  color: var(--ink);
}

.page-register .field select {
  border: none;
  outline: none;
  background: transparent;
  width: 100%;
  font-size: 15px;
  color: var(--ink);
  font-family: inherit;
}

.page-register .doc-grid {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.page-register .doc-card {
  border-radius: 14px;
  border: 1px solid var(--orange-soft);
  padding: 14px;
  background: var(--cream);
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.page-register .doc-card.is-hidden {
  display: none;
}

.page-register .doc-header {
  display: flex;
  align-items: center;
  gap: 10px;
  font-weight: 600;
}

.page-register .doc-input {
  display: flex;
  align-items: center;
  gap: 10px;
}

.page-register .doc-input input[type="file"] {
  flex: 1;
}

.page-register .doc-name {
  font-size: 12px;
  color: var(--muted);
}

.page-register .error {
  margin: 0;
  color: #b42318;
  font-size: 14px;
  min-height: 18px;
}

.page-register .actions {
  display: flex;
  gap: 12px;
}

.page-register .btn {
  flex: 1;
  border-radius: 12px;
  border: 1px solid transparent;
  padding: 12px 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
}

.page-register .btn-primary {
  background: var(--orange);
  color: #ffffff;
  box-shadow: 0 10px 20px rgba(240, 138, 36, 0.3);
}

.page-register .btn-outline {
  border-color: var(--orange-soft);
  color: var(--orange);
  background: #ffffff;
}

@media (max-width: 600px) {
  .page-register .option-grid {
    flex-direction: column;
  }

  .page-register .option-card {
    width: 100%;
  }

  .page-register .header-top {
    flex-direction: column;
    align-items: flex-start;
  }
}

.page-activate {
  background: #fff7ed;
}

.page-activate .activate-wrap {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
}

.page-activate .activate-card {
  max-width: 520px;
  width: 100%;
  background: var(--surface);
  border: 1px solid var(--orange-soft);
  border-radius: 20px;
  padding: 28px;
}

.page-activate .activate-badge {
  display: inline-block;
  padding: 6px 12px;
  border-radius: 999px;
  background: var(--orange);
  color: #ffffff;
  font-weight: 600;
  font-size: 12px;
  letter-spacing: 0.4px;
  text-transform: uppercase;
}

.page-activate .activate-badge--error {
  background: #b42318;
}

.page-activate .activate-title {
  margin: 16px 0 8px;
  font-size: 26px;
}

.page-activate .activate-message {
  margin: 0 0 16px;
  color: var(--muted);
  line-height: 1.5;
}

.page-activate .activate-actions {
  margin-top: 18px;
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.page-activate .btn {
  display: inline-block;
  padding: 10px 16px;
  border-radius: 12px;
  text-decoration: none;
  font-weight: 600;
}

.page-activate .btn-primary {
  background: var(--orange);
  color: #ffffff;
}

.page-activate .btn-outline {
  border: 1px solid var(--orange);
  color: var(--orange);
}

.pendencia-title {
  cursor: pointer;
}

.saldo-item {
  cursor: pointer;
  font-weight: bold;
}

.saldo-item--fixed {
  width: 150px;
  display: inline-block;
}

.page-delivery-request .page {
  min-height: 100vh;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: 24px;
}

.page-delivery-request .layout {
  width: min(1200px, 100%);
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.page-delivery-request .request-columns {
  display: grid;
  grid-template-columns: 25% 75%;
  /* gap: 24px; */
  align-items: stretch;
}

.page-delivery-request .request-col {
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-height: 0;
}

.page-delivery-request .request-col--map {
  min-height: 100%;
  gap: 0;
}

.page-delivery-request .request-header {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.page-delivery-request .request-header--map {
  flex-direction: row;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.page-delivery-request .request-header__info {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.page-delivery-request .request-header h1,
.page-delivery-request .request-header h2 {
  margin: 0;
  font-size: 28px;
  font-weight: 700;
}

.page-delivery-request .request-header p {
  margin: 0;
  color: var(--muted);
  font-size: 15px;
}

.page-delivery-request .back-button {
  border-radius: 12px;
  border: 1px solid var(--orange-soft);
  padding: 10px 16px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  color: var(--orange);
  background: #ffffff;
  white-space: nowrap;
}

.page-delivery-request .map-back-link {
  color: var(--orange);
  font-weight: 600;
  font-size: 14px;
  text-decoration: none;
  width: fit-content;
}

.page-delivery-request .map-back-link:hover {
  text-decoration: underline;
}

.page-delivery-request .map-status {
  margin-top: 6px;
  font-size: 13px;
  color: var(--muted);
}

.page-delivery-request .card {
  border-radius: 18px;
  border: 1px solid var(--orange-soft);
  padding: 18px;
  background: var(--surface);
}

.page-delivery-request .map-card {
  padding: 12px;
  flex: 1 1 auto;
  display: flex;
  min-height: 640px;
}

.page-delivery-request .map-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 260px;
  gap: 12px;
  align-items: stretch;
  min-height: 640px;
  height: 100%;
  flex: 1 1 auto;
}

.page-delivery-request .map-sidebar {
  border-radius: 16px;
  border: 1px solid var(--orange-soft);
  background: #fffaf5;
  padding: 12px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  overflow: hidden;
  min-height: 0;
}

.page-delivery-request .map-sidebar__header {
  display: flex;
  justify-content: space-between;
  font-size: 12px;
  font-weight: 600;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: 0.4px;
}

.page-delivery-request .map-sidebar__actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

.page-delivery-request .map-sidebar__actions .btn {
  padding: 6px 10px;
  font-size: 11px;
}

.page-delivery-request .map-sidebar__actions .btn.is-active {
  background: var(--orange);
  color: #ffffff;
  border-color: var(--orange);
}

.page-delivery-request .deliverer-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1 1 auto;
  overflow-y: auto;
  padding-right: 4px;
  min-height: 0;
}

.page-delivery-request .deliverer-item {
  border-radius: 12px;
  border: 1px solid var(--orange-soft);
  background: #fff4e7;
  padding: 5px 8px;
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  text-align: left;
}

.page-delivery-request .deliverer-item img {
  width: 20px;
  height: 20px;
}

.page-delivery-request .deliverer-item__info {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
}

.page-delivery-request .deliverer-item__name {
  font-size: 12px;
  font-weight: 600;
  color: var(--ink);
  line-height: 1.1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.page-delivery-request .deliverer-item__meta {
  font-size: 11px;
  color: var(--muted);
  line-height: 1.05;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.page-delivery-request .deliverer-empty {
  font-size: 12px;
  color: var(--muted);
}

.page-delivery-request #map-container {
  font-family: inherit;
}

.page-delivery-request #locations-panel {
  position: relative;
  width: 100%;
  height: auto;
  overflow: visible;
  background: transparent;
  border-radius: 0;
  border: none;
  padding: 0;
  top: auto;
  bottom: auto;
  left: auto;
  right: auto;
}

.page-delivery-request #map {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 640px;
  border-radius: 16px;
  border: 1px solid var(--orange-soft);
  overflow: hidden;
  left: auto;
  right: auto;
  top: auto;
  bottom: auto;
}

.page-delivery-request #locations-panel-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.page-delivery-request .request-form {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.page-delivery-request .form-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
}

.page-delivery-request .form-row--two {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.page-delivery-request .field {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.page-delivery-request .field label {
  font-weight: 600;
  font-size: 13px;
  color: var(--muted);
}

.page-delivery-request .field input,
.page-delivery-request .field select,
.page-delivery-request .field textarea {
  border-radius: 12px;
  border: 1px solid var(--orange-soft);
  padding: 10px 12px;
  font-size: 14px;
  background: var(--cream);
  color: var(--ink);
  font-family: inherit;
}

.page-delivery-request .field textarea {
  resize: vertical;
  min-height: 88px;
}

.page-delivery-request .field--full {
  grid-column: 1 / -1;
}

.page-delivery-request .is-hidden {
  display: none;
}

.page-delivery-request .search-input {
  position: relative;
}

.page-delivery-request .search-input input {
  width: 100%;
  padding-right: 44px;
}

.page-delivery-request .search-input-overlay.search {
  position: absolute;
  right: 6px;
  top: 50%;
  transform: translateY(-50%);
}

.page-delivery-request .search-input-overlay.search button {
  width: 32px;
  height: 32px;
  border-radius: 10px;
  border: 1px solid var(--orange-soft);
  background: #ffffff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.page-delivery-request .search-input-overlay .icon {
  width: 18px;
  height: 18px;
}

.page-delivery-request .action-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.page-delivery-request .actions {
  display: flex;
  justify-content: flex-end;
}

.page-delivery-request .btn {
  border-radius: 12px;
  border: 1px solid transparent;
  padding: 10px 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
}

.page-delivery-request .btn-primary {
  background: var(--orange);
  color: #ffffff;
}

.page-delivery-request .btn-outline {
  border-color: var(--orange-soft);
  color: var(--orange);
  background: #ffffff;
}

.page-delivery-request .btn-success {
  background: #1a7f37;
  color: #ffffff;
}

.page-delivery-request .notice-wrap {
  cursor: pointer;
}

.page-delivery-request .toast {
  border-radius: 14px;
  padding: 12px 14px;
  color: #ffffff;
}

.page-delivery-request .toast-header {
  display: flex;
  justify-content: space-between;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  opacity: 0.85;
}

.page-delivery-request .toast-body {
  margin-top: 6px;
  font-size: 13px;
}

.page-delivery-request .bg-warning {
  background: #f59e0b;
}

.page-delivery-request .bg-danger {
  background: #b42318;
}

.page-delivery-request .bg-success {
  background: #1a7f37;
}

.page-delivery-request .notice {
  border-radius: 14px;
  border: 1px solid var(--orange-soft);
  padding: 14px;
  background: #fff4e7;
}

.page-delivery-request .notice h3 {
  margin: 0 0 6px;
  font-size: 16px;
}

.page-delivery-request .notice--danger {
  background: #fff1f0;
  border-color: #f5c2c7;
  color: #b42318;
}

.page-delivery-request .section-name {
  font-weight: 600;
  font-size: 13px;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: 0.4px;
}

.page-delivery-request .results {
  border-radius: 12px;
  border: 1px solid var(--orange-soft);
  background: #fffaf5;
  padding: 6px;
  max-height: 180px;
  overflow-y: auto;
}

.page-delivery-request #location-results-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.page-delivery-request .location-result {
  padding: 8px;
  border-bottom: 1px solid #f1dfcb;
}

.page-delivery-request .location-result:last-child {
  border-bottom: none;
}

.page-delivery-request .price-note {
  font-size: 12px;
  color: var(--muted);
}

.page-user-store .page {
  min-height: 100vh;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: 24px;
}

.page-user-store .layout {
  width: min(720px, 100%);
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.page-user-store .header {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.page-user-store .header h1 {
  margin: 0;
  font-size: 28px;
  font-weight: 700;
}

.page-user-store .header p {
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 15px;
}

.page-user-store .header-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.page-user-store .card {
  border-radius: 18px;
  border: 1px solid var(--orange-soft);
  padding: 20px;
  background: var(--surface);
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.page-user-store .user-summary {
  border-radius: 14px;
  border: 1px solid var(--orange-soft);
  background: #fff4e7;
  padding: 12px 14px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.page-user-store .user-summary__name {
  font-weight: 700;
  font-size: 16px;
}

.page-user-store .user-summary__meta {
  font-size: 13px;
  color: var(--muted);
}

.page-user-store .form {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.page-user-store .field {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.page-user-store .field label {
  font-weight: 600;
  font-size: 13px;
  color: var(--muted);
}

.page-user-store .field select,
.page-user-store .field input {
  border-radius: 12px;
  border: 1px solid var(--orange-soft);
  padding: 10px 12px;
  font-size: 14px;
  background: var(--cream);
  color: var(--ink);
  font-family: inherit;
}

.page-user-store .actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: flex-end;
}

.page-user-store .btn {
  border-radius: 12px;
  border: 1px solid transparent;
  padding: 10px 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
}

.page-user-store .btn-primary {
  background: var(--orange);
  color: #ffffff;
}

.page-user-store .btn-outline {
  border-color: var(--orange-soft);
  color: var(--orange);
  background: #ffffff;
}

.page-user-store .message {
  margin: 0;
  font-size: 14px;
  color: var(--muted);
}

.page-user-store .error {
  margin: 0;
  font-size: 14px;
  color: #b42318;
}
