.checkout-flow-modal.disk-checkout-premium-v2 {
  --checkout-bg: #03170f;
  --checkout-surface: #08271b;
  --checkout-surface-2: #0c3224;
  --checkout-border: rgba(52, 211, 153, .28);
  --checkout-text: #f8fafc;
  --checkout-muted: #a7c7b8;
  display: flex;
  width: min(960px, calc(100vw - 40px)) !important;
  max-width: 960px !important;
  max-height: min(88dvh, 760px) !important;
  flex-direction: column;
  overflow: hidden !important;
  border: 1px solid rgba(0, 230, 118, .46) !important;
  border-radius: 22px !important;
  background: linear-gradient(145deg, #03180f, #02130d) !important;
  padding: 0 !important;
  color: var(--checkout-text) !important;
  box-shadow: 0 30px 90px rgba(0, 0, 0, .58) !important;
}

.disk-checkout-premium-v2 > h2 {
  flex: 0 0 auto;
  margin: 0 !important;
  padding: 18px 64px 16px 24px !important;
  border-bottom: 1px solid var(--checkout-border);
  color: #fff !important;
  font-size: 21px !important;
  letter-spacing: 0 !important;
}

.disk-checkout-premium-v2 > button.absolute {
  z-index: 8;
  top: 12px !important;
  right: 16px !important;
  display: grid !important;
  width: 42px !important;
  height: 42px !important;
  min-height: 42px !important;
  place-items: center;
  border: 1px solid rgba(15, 23, 42, .12) !important;
  border-radius: 12px !important;
  background: #fff !important;
  color: #0f172a !important;
  box-shadow: 0 8px 20px rgba(0,0,0,.2);
}

.disk-checkout-premium-v2 .disk-checkout-progress {
  display: grid;
  flex: 0 0 auto;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 12px 24px;
  border-bottom: 1px solid #dbe5ec;
  background: #f8fafc;
}

.disk-checkout-premium-v2 .disk-checkout-progress__step {
  position: relative;
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 8px;
  color: #8ba0b8;
  font: 800 12px/1.2 Inter, system-ui, sans-serif;
}

.disk-checkout-premium-v2 .disk-checkout-progress__step::after {
  height: 2px;
  flex: 1;
  border-radius: 999px;
  background: #dbe5ec;
  content: '';
}

.disk-checkout-premium-v2 .disk-checkout-progress__step:last-child::after { display: none; }

.disk-checkout-premium-v2 .disk-checkout-progress__number {
  display: grid;
  width: 30px;
  height: 30px;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 999px;
  background: #e4ebf3;
  color: #7890aa;
}

.disk-checkout-premium-v2 .disk-checkout-progress__step.is-complete,
.disk-checkout-premium-v2 .disk-checkout-progress__step.is-current { color: #047857; }
.disk-checkout-premium-v2 .disk-checkout-progress__step.is-complete::after { background: #00d977; }
.disk-checkout-premium-v2 .disk-checkout-progress__step.is-complete .disk-checkout-progress__number,
.disk-checkout-premium-v2 .disk-checkout-progress__step.is-current .disk-checkout-progress__number {
  background: #00d977;
  color: #022015;
}
.disk-checkout-premium-v2 .disk-checkout-progress__step.is-current .disk-checkout-progress__number {
  box-shadow: 0 0 0 4px rgba(0, 217, 119, .18);
}

body.cardapio-dark-active .disk-checkout-premium-v2 .disk-checkout-progress {
  border-bottom-color: rgba(52, 211, 153, .24);
  background: #061d14;
}

body.cardapio-dark-active .disk-checkout-premium-v2 .disk-checkout-progress__step {
  color: #d9f4e7;
}

body.cardapio-dark-active .disk-checkout-premium-v2 .disk-checkout-progress__step::after {
  background: #25473a;
}

body.cardapio-dark-active .disk-checkout-premium-v2 .disk-checkout-progress__number {
  background: #17372b;
  color: #ffffff;
}

body.cardapio-dark-active .disk-checkout-premium-v2 .disk-checkout-progress__step.is-complete,
body.cardapio-dark-active .disk-checkout-premium-v2 .disk-checkout-progress__step.is-current {
  color: #ffffff;
}

body.cardapio-dark-active .disk-checkout-premium-v2 .disk-checkout-progress__step.is-complete::after {
  background: #00d977;
}

body.cardapio-dark-active .disk-checkout-premium-v2 .disk-checkout-progress__step.is-complete .disk-checkout-progress__number,
body.cardapio-dark-active .disk-checkout-premium-v2 .disk-checkout-progress__step.is-current .disk-checkout-progress__number {
  background: #00d977;
  color: #022015;
}

.disk-checkout-premium-v2 > .disk-checkout-body-v2 {
  display: grid;
  min-height: 0;
  flex: 1 1 auto;
  grid-template-columns: minmax(0, 1fr) 280px;
  gap: 20px;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  padding: 20px 22px 22px !important;
  scrollbar-color: rgba(52,211,153,.5) transparent;
  scrollbar-gutter: stable;
}

.disk-checkout-body-v2 > :not(.disk-checkout-summary) { min-width: 0; }

.disk-checkout-premium-v2 label,
.disk-checkout-premium-v2 p,
.disk-checkout-premium-v2 div,
.disk-checkout-premium-v2 span { color: inherit; }

.disk-checkout-premium-v2 input,
.disk-checkout-premium-v2 select,
.disk-checkout-premium-v2 textarea {
  width: 100%;
  min-height: 44px;
  border: 1px solid rgba(52, 211, 153, .32) !important;
  border-radius: 12px !important;
  background: #052016 !important;
  color: #fff !important;
  box-sizing: border-box;
  outline: none;
}

.disk-checkout-premium-v2 input:focus,
.disk-checkout-premium-v2 select:focus,
.disk-checkout-premium-v2 textarea:focus {
  border-color: #00d977 !important;
  box-shadow: 0 0 0 3px rgba(0,217,119,.14) !important;
}

.disk-checkout-premium-v2 input::placeholder,
.disk-checkout-premium-v2 textarea::placeholder { color: #789888; }

.disk-checkout-premium-v2 .rounded-lg,
.disk-checkout-premium-v2 .rounded-xl,
.disk-checkout-premium-v2 .rounded-2xl {
  border-color: var(--checkout-border) !important;
}

.disk-checkout-premium-v2 .bg-gray-50,
.disk-checkout-premium-v2 .bg-slate-50,
.disk-checkout-premium-v2 .bg-slate-50\/80,
.disk-checkout-premium-v2 .bg-white,
.disk-checkout-premium-v2 .bg-white\/75 {
  background: var(--checkout-surface) !important;
}

.disk-checkout-premium-v2 .text-slate-950,
.disk-checkout-premium-v2 .text-slate-900,
.disk-checkout-premium-v2 .text-slate-800,
.disk-checkout-premium-v2 .text-slate-700 { color: #f8fafc !important; }
.disk-checkout-premium-v2 .text-slate-600,
.disk-checkout-premium-v2 .text-slate-500,
.disk-checkout-premium-v2 .text-gray-700,
.disk-checkout-premium-v2 .text-gray-600 { color: var(--checkout-muted) !important; }

.disk-checkout-premium-v2 .disk-checkout-summary {
  position: sticky;
  top: 0;
  align-self: start;
  overflow: hidden;
  border: 1px solid var(--checkout-border);
  border-radius: 18px;
  background: linear-gradient(155deg, #0c3224, #08251a);
  padding: 16px;
  color: #fff;
  box-shadow: 0 16px 38px rgba(0,0,0,.24);
}

.disk-checkout-summary__eyebrow {
  color: #81d9ae !important;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.disk-checkout-summary__count { margin-top: 3px; font-size: 20px; font-weight: 900; }
.disk-checkout-summary__items { margin: 14px 0; padding: 0; list-style: none; }
.disk-checkout-summary__items li {
  overflow: hidden;
  padding: 8px 0;
  border-bottom: 1px solid rgba(255,255,255,.1);
  color: #d9f4e7;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.disk-checkout-summary__line,
.disk-checkout-summary__total { display: flex; justify-content: space-between; gap: 12px; padding-top: 12px; }
.disk-checkout-summary__line { color: #b9d9c9 !important; font-size: 13px; }
.disk-checkout-summary__total { margin-top: 10px; border-top: 1px solid rgba(255,255,255,.14); font-size: 17px; }

.disk-checkout-premium-v2 .disk-checkout-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-top: 16px;
  padding: 0;
  background: transparent;
}
.disk-checkout-premium-v2 .disk-checkout-actions button { min-height: 44px; width: auto; }

body .disk-pix-confirm-button {
  border-color: #00d977 !important;
  background: linear-gradient(135deg, #00b864, #00e676) !important;
  color: #ffffff !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, .28) !important;
  box-shadow: 0 10px 24px rgba(0, 217, 119, .22) !important;
}

body .disk-pix-confirm-button:hover {
  border-color: #35f39b !important;
  background: linear-gradient(135deg, #00c96e, #00ef7d) !important;
  color: #ffffff !important;
}

body .disk-pix-confirm-button:active,
body .disk-pix-confirm-button.is-pressed {
  border-color: #00d977 !important;
  background: #022015 !important;
  color: #ffffff !important;
  transform: scale(.985) !important;
}

body .disk-pix-copy-toast {
  z-index: 2147483647 !important;
  border: 1px solid rgba(15, 23, 42, .12) !important;
  background: #ffffff !important;
  color: #071437 !important;
  text-shadow: none !important;
  font-weight: 900 !important;
  box-shadow: 0 14px 34px rgba(0, 0, 0, .22) !important;
}

@media (max-width: 767px) {
  .fixed:has(> .checkout-flow-modal.disk-checkout-premium-v2) {
    align-items: stretch !important;
    padding: 0 !important;
  }

  .checkout-flow-modal.disk-checkout-premium-v2 {
    width: 100vw !important;
    max-width: none !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    border: 0 !important;
    border-radius: 0 !important;
  }

  .disk-checkout-premium-v2 > h2 {
    padding: calc(14px + env(safe-area-inset-top)) 62px 13px 15px !important;
    font-size: 18px !important;
  }

  .disk-checkout-premium-v2 > button.absolute {
    top: calc(7px + env(safe-area-inset-top)) !important;
    right: 10px !important;
  }

  .disk-checkout-premium-v2 .disk-checkout-progress { padding: 10px 14px 12px; }
  .disk-checkout-premium-v2 .disk-checkout-progress__step { justify-content: center; }
  .disk-checkout-premium-v2 .disk-checkout-progress__label,
  .disk-checkout-premium-v2 .disk-checkout-progress__step::after { display: none; }

  .disk-checkout-premium-v2 > .disk-checkout-body-v2 {
    display: block;
    padding: 14px 12px calc(82px + env(safe-area-inset-bottom)) !important;
    overscroll-behavior: contain;
  }

  .disk-checkout-premium-v2 .disk-checkout-summary { display: none; }
  .disk-checkout-premium-v2 .grid.grid-cols-\[120px_1fr\] { grid-template-columns: 72px minmax(0,1fr) !important; }
  .disk-checkout-premium-v2 .grid.sm\:grid-cols-2,
  .disk-checkout-premium-v2 .grid.sm\:grid-cols-3 { grid-template-columns: 1fr !important; }

  .disk-checkout-premium-v2 .disk-checkout-actions {
    position: fixed;
    z-index: 20;
    right: 0;
    bottom: 0;
    left: 0;
    margin: 0;
    padding: 9px 12px calc(9px + env(safe-area-inset-bottom));
    border-top: 1px solid rgba(52,211,153,.2);
    background: rgba(3, 23, 15, .96);
    backdrop-filter: blur(18px);
    box-shadow: 0 -12px 30px rgba(0,0,0,.25);
  }

  .disk-checkout-premium-v2 .disk-checkout-actions button { min-height: 46px; }
  .disk-checkout-premium-v2 .disk-checkout-actions button:last-child { flex: 1; }
}

@media (max-width: 390px) {
  .disk-checkout-premium-v2 > h2 { font-size: 17px !important; }
  .disk-checkout-premium-v2 .disk-checkout-progress__number { width: 28px; height: 28px; }
}
