* {
   cursor: default;
}

* :not(.d0iyGNSbT7y4O19R4hOv) {
   /* disable text flicker */
   user-select: none;
   -webkit-touch-callout: none;
   -ms-user-select: none;
}

.dBb3N_5pQFUY__rP4Cis {
   background: var(--gradient-brand);
   height: 100%;
   display: flex;
   flex-direction: column;
   justify-content: space-between;
}

.mCgceHkNYskDoGfzsiFu {
   padding-top: 120px;
   display: flex;
   justify-content: center;
}

.M50NtypSP3mAnugit25Q {
   display: flex;
   justify-content: center;
   padding-bottom: 40px;
}

@media screen and (min-width: 600px) {
  .mCgceHkNYskDoGfzsiFu {
    padding-top: 40px;
  }
}

.K8igMsvJbWTDceQt740b {
   height: 120px;
   width: 260px;
}

.r1G4K2Ed3frW2mEbO8Jf {
  display: flex;
  align-items: center;
  flex-direction: column;
}

.HzLGK2xPEOngdr9dq6fb {
  max-width: 300px;
  display: flex;
  flex-direction: column;
  padding-left: 10%;
  padding-right: 10%;
  flex: 1;
}

.sArSITAzviEvRDOGj7PM, .LZXjZ5MA77dy8Xx8qQ0B {
  position: absolute;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  animation: Ufwjrgd1fRhe2dU0eUbK 1s;
  background-color: rgba(100,100,100,0.3);
}

.kVMA9u4E2cnYwKfjbcNm, .eguc4mV_s06yA1QbpLhq {
  text-align: center;
}

@keyframes Ufwjrgd1fRhe2dU0eUbK {
  from {
    background-color: rgba(100,100,100,0);
  }
  to {
    background-color: rgba(100,100,100,0.3);
  }
}

.IOiO5HVKcMt1zQyW_Acv, .xm3Ybj8fL3IEyDFPmoV8 {
  width: 70%;
  animation: tnoU1k9Y78tIdLX5ggRq 1s;
  border-radius: var(--radius-md);
  background-color: white;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  opacity: 1;
}

.IOiO5HVKcMt1zQyW_Acv {
  height: 30%;
}

.xm3Ybj8fL3IEyDFPmoV8 {
  height: 300px;
}

@keyframes tnoU1k9Y78tIdLX5ggRq {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.xg25bYp4s6BFsO46Q0Sm, .nOCvW2tEhGaK23RUl9fs {
  width: 90%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-around;
}

.xg25bYp4s6BFsO46Q0Sm {
  height: 80%;
}

.nOCvW2tEhGaK23RUl9fs {
  height: 90%;
}

.HEh4xyVqOujVwfWVMd9v, .SlLLnxiN2d41r5bVfATd {
  font-weight: bold;
}

/* Quick login setup modal title - centered */
.QmUPjALV81jBeGekC7cv {
  font-weight: bold;
  text-align: center;
  margin-bottom: var(--space-md);
}

.HEAlxxp30SnLoUvjXPWh {
  width: 100%;
}

.OTVIQ9HPFl_A3wjFeVp5 {
  width: 100%;
  display: flex;
  justify-content: center;
}

/* Using doubled selector for higher specificity to override button defaults */
.w7e72PkISm4CNYgjBd6C.w7e72PkISm4CNYgjBd6C {
  width: 50%;
  height: 30px;
  min-width: unset;
  max-width: 150px;
  border-radius: var(--radius-2xl);
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  background-color: var(--brand-brown);
  color: white;
}

.j7I5azSsjmhYiFgX9OtF {
  width: 100%;
  display: flex;
  justify-content: flex-start;
}

.d0iyGNSbT7y4O19R4hOv {
   width: 100%;
   font-size: var(--font-section-title);
   color: white;
   border-radius: 0px;
   background-color: transparent;
   border-top: none;
   border-left: none;
   border-right: none;
   border-width: thin;
   border-color: white;
   box-sizing: border-box;
   margin-bottom: 8px;
   cursor: text;
}

.d0iyGNSbT7y4O19R4hOv::placeholder {
   font-size: var(--font-section-title);
   color: var(--border-strong);
}

.d0iyGNSbT7y4O19R4hOv:focus {
   outline: none;
}

/* Entrar button layout/sizing - styling comes from FilledButton module */
/* Double class selector for higher specificity to override base button width */
.JMt0j9xBfzfX6F5T3Pwf.JMt0j9xBfzfX6F5T3Pwf {
   margin-top: var(--space-md);
   cursor: pointer;
   width: 100%;
   border-radius: var(--radius-full);
   display: flex;
   align-items: center;
   justify-content: center;
}

/* Override button text size to match input fields */
.JMt0j9xBfzfX6F5T3Pwf div {
   font-size: var(--font-section-title);
}

.RFk31RERAzE3QtMcz1sQ {
   display: flex;
   justify-content: center;
   margin-top: 10px;
   width: 250px;
}

.vG2CPoCLuwSiCE33nMYG {
   color: white;
   text-decoration: none;
   width: 50%;
}

.hxJ3NFL0opA9W5x5ycAg {
  margin-top: 10px;
}

.SU6Bihsto7Ssx399bsKZ {
   display: flex;
   flex-direction: row;
   justify-content: space-between;
}

.Z_JCc8gyMFAFxLmfhkQ1 {
   cursor: pointer;
   width: 100%;
   text-align: center;
}

.beVKMYfqKTV3O3h_G_Bn {
   display: flex;
   flex-direction: row;
   width: 100%;
   max-width: 1000px;
   justify-content: space-around;
}

.VgvKoOdiLy5ipFFktsba {
   width: 70px;
   display: flex;
   flex-direction: column;
   align-items: center;
   cursor: pointer;
   text-decoration: none;
}

.DglM291TG_jKK0CHQtAH {
   width: 30px;
   height: 30px;
   cursor: pointer;
}

.YbeaZ5LuaTl2dU3z8FTL {
   word-wrap: break-word;
   color: var(--brand-gold);
   height: 36px;
   margin-top: 5px;
   text-align: center;
   cursor: pointer;
}

.BNKopcNIRZmvRTI9uI2R {
  position: absolute;
  width: 100%;
  top: 100%;
  height: 0%;
  background-color: var(--status-error);
  transition: 0.5s;
  justify-content: center;
  display: flex;
  align-items: center;
}

.mM5jMBUW7fP611HcJmYt {
  top: 75%;
  height: 25%;
}

.CPmKyfVUgFHpHlBx2LZR {
  color: white;
  font-size: var(--font-card-title);
  display: none;
}

.fSQoFG2wjez71S7Cygzz {
  text-align: center;
}

.PmfMbxb_EhmA0iqERDF2 {
  padding-right: 5%;
  padding-left: 5%; 
  display: flex;
  flex-direction: column;
  align-items: center;
}

.PdJu4s1qqq8C3AeV40Ia {
  cursor: pointer;
}

.uN4Rux0MwseIeGjoERzQ {
  position: fixed;
  bottom: 0;
  z-index: 9999;
  background: var(--border-medium);
  padding: var(--space-md);
  border-radius: var(--radius-md);
  max-width: 600px;
  margin: var(--space-lg);
}

.HxY3Khpqlla31hbpH04v {
  color: var(--border-medium);
}

.afRxtYqk4C7dNbkFuAkf {
  position: relative;
}

.tBK4SfRsD7O4PPFyHY1w {
  position: absolute;
  bottom: -5px;
  left: -11px; 
}

/* Used to create the callout */
.uN4Rux0MwseIeGjoERzQ:after {
  display: block;
  width: 0;
  content: "";
  border: 15px solid transparent;
  border-top-color: var(--border-medium);
  border-bottom: 0;
  position: absolute;
  bottom: -15px;
  left: calc(50% - 15px);
}

.ShcULNre0j2gabctXAuy {
  width: 100%;
  display: inline;
  font-size: var(--font-label);
}

/* Container for PIN pad with biometric button */
.zE1Smuq90vokKvJpx9iB {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}

/* Container for biometric-only login (no PIN) */
.vq527uLQisLpE0BjXdCW {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-lg);
  padding: var(--space-xl) var(--space-md);
}

/* Fallback link to use password instead of biometric */
.rF1ThlkSdkTJgA4zaKMH {
  margin-top: var(--space-md);
}

.qCPVkxQT6MuVkZDdpJMz {
  color: var(--color-white);
  text-decoration: underline;
  cursor: pointer;
  font-size: var(--font-label);
  opacity: 0.8;
}

.qCPVkxQT6MuVkZDdpJMz:hover {
  opacity: 1;
}

/* Base loading cover - always covers entire viewport */
.C_IiwQBtnk2eNU5ZyiAn {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 300;
  background-color: rgba(100,100,100,0.5);
  justify-content: center;
  align-items: center;
}

/* Desktop logged-in loading cover - full viewport background, but content centered on page content area */
.S7b4kQKFevE7I8e6JMdU {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 300;
  background-color: rgba(100,100,100,0.5);
  justify-content: center;
  align-items: center;
  /* Offset content centering to account for left nav */
  padding-left: var(--desktop-navigator-width);
  box-sizing: border-box;
}

.A4ZQbfcPQBU1kLPGGidM {
  display: flex;
}

.klcTwtiuFOAQfhAwc6uY {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

.fuxp_zz0pJQOWWnEG1yg {
  color: white;
  font-size: var(--font-card-title);
  font-weight: 500;
  text-align: center;
  padding: 12px 24px;
  background-color: rgba(0, 0, 0, 0.6);
  border-radius: 8px;
  max-width: 300px;
}

/**
 * Flow Button Styles (Unified mobile/desktop)
 *
 * Semantic flow control buttons for actions like "Continuar", "Confirmar", "Cancelar".
 * Using doubled class selectors for higher specificity to override base button styles.
 */

/* =============================================================================
   BUTTON TYPE VARIANTS
   ============================================================================= */

/* Primary/Move Forward - for "Continuar", "Confirmar", "Submeter" buttons */
.jo3Vcz6rvxrG9OOVZ58f.jo3Vcz6rvxrG9OOVZ58f {
  background-color: var(--flow-button-primary);
}

.micCEJGerSQpZMMRgpQq.micCEJGerSQpZMMRgpQq {
  color: white;
}

/* Secondary/Halt Flow - for "Cancelar", "Voltar" buttons */
.uMH7r8KWD6SaBs2OZpPy.uMH7r8KWD6SaBs2OZpPy {
  background-color: var(--flow-button-secondary);
}

.QRrlZ5ir_FugaJlxviq0.QRrlZ5ir_FugaJlxviq0 {
  color: white;
}

/* Confirm Destructive - for "Remover", "Eliminar" buttons */
.pxUbZmy9GB3xyzcq9_p3.pxUbZmy9GB3xyzcq9_p3 {
  background-color: var(--flow-button-confirm-destructive);
}

.UtJqdOZAmIGR9UAkIfog.UtJqdOZAmIGR9UAkIfog {
  color: white;
}

/* =============================================================================
   LAYOUT - Wrapper for centering buttons
   ============================================================================= */

/* Wrapper container for centering (used on both mobile and desktop) */
.QWXq8nV9FNvq_LqgqLV7 {
  display: flex;
  justify-content: center;
  width: 100%;
}

/* Positioned at bottom of page (mobile only) */
.PuV5My1_gpYctsZ9qsWT {
  position: absolute;
  top: calc(85vh - 94px);
  right: 0px;
}


/* Popup Choice Button Styles - works for both mobile and desktop */

.oYDpQqnuXsbIIoes8a6O {
  min-width: 120px;
  height: 35px;
  padding: 0 var(--space-lg);
  border-radius: var(--radius-2xl);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-sizing: border-box;
  white-space: nowrap;
  transition: transform var(--transition-normal), box-shadow var(--transition-normal);
}

/* Hover effects only for devices that support hover (desktop) */
@media (hover: hover) {
  .oYDpQqnuXsbIIoes8a6O:hover {
    transform: var(--hover-lift-sm);
    box-shadow: var(--shadow-md);
  }
}

.x4pyEO9ksGi6krSGHVEX {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  margin-right: var(--space-sm);
}

.x4pyEO9ksGi6krSGHVEX svg {
  width: 100%;
  height: 100%;
}

.QvZncbr04fOJgH2ks0nY {
  font-size: var(--font-button);
  font-weight: 600;
  cursor: pointer;
}

/* Confirm variant - solid filled with brand color */
.V9bYbmQKLORd_k27qGOw {
  background-color: var(--popup-choice-confirm-bg);
  border: none;
}

.V9bYbmQKLORd_k27qGOw .QvZncbr04fOJgH2ks0nY {
  color: var(--popup-choice-confirm-text);
}

.V9bYbmQKLORd_k27qGOw .x4pyEO9ksGi6krSGHVEX {
  color: var(--popup-choice-confirm-text);
}

/* Decline variant - secondary grey */
.sSkagd2ZFOwZoF2wDjIs {
  background-color: var(--flow-button-secondary);
  border: none;
}

@media (hover: hover) {
  .sSkagd2ZFOwZoF2wDjIs:hover {
    background-color: var(--flow-button-secondary-hover);
  }
}

.sSkagd2ZFOwZoF2wDjIs .QvZncbr04fOJgH2ks0nY {
  color: white;
}

.sSkagd2ZFOwZoF2wDjIs .x4pyEO9ksGi6krSGHVEX {
  color: white;
}

/* Destructive variant - red for delete/remove actions */
.YJjZkxdFqdAxZuE3JqdW {
  background-color: var(--popup-choice-destructive-bg, #880808);
  border: none;
}

@media (hover: hover) {
  .YJjZkxdFqdAxZuE3JqdW:hover {
    background-color: var(--popup-choice-destructive-bg-hover, #660606);
  }
}

.YJjZkxdFqdAxZuE3JqdW .QvZncbr04fOJgH2ks0nY {
  color: white;
}

/* Dismiss variant - gradient for single-button acknowledgment modals */
.kudekyTNoegG_eu2mtOa {
  background: var(--modal-dismiss-button-gradient);
  border: none;
  border-radius: var(--radius-md);
  padding: var(--space-sm) var(--space-xl);
  height: auto;
  min-width: unset;
  box-shadow: var(--shadow-sm);
}

@media (hover: hover) {
  .kudekyTNoegG_eu2mtOa:hover {
    box-shadow: var(--shadow-md);
  }
}

.kudekyTNoegG_eu2mtOa .QvZncbr04fOJgH2ks0nY {
  color: var(--modal-dismiss-button-text);
  font-size: var(--font-body);
  letter-spacing: 0.3px;
}


/* =============================================================================
   SKELETON LOADER STYLES
   ============================================================================= */

/* Base skeleton animation */
@keyframes aB_97eo8xjHDQZrY8xq5 {
  0% {
    background-position: -200% 0;
  }
  100% {
    background-position: 200% 0;
  }
}

/* Base skeleton element */
.u4ijBfwnqk2VPvqW_u5j {
  background: linear-gradient(
    90deg,
    rgba(200, 200, 200, 0.2) 25%,
    rgba(200, 200, 200, 0.4) 50%,
    rgba(200, 200, 200, 0.2) 75%
  );
  background-size: 200% 100%;
  animation: aB_97eo8xjHDQZrY8xq5 1.5s ease-in-out infinite;
  border-radius: var(--radius-sm);
}

/* Text line skeleton */
.f4mIbOOUB1L6841U24cl {
  height: 16px;
  border-radius: 4px;
}

.AI09khpVStSgU0ZtF_g1 {
  height: 12px;
}

.XUzwnc08c0u3ec5WT6bN {
  height: 24px;
}

/* Circle skeleton (for avatars, icons) */
.KWVsNco90D_HIcSKTFOg {
  border-radius: var(--radius-full);
}

/* Card skeleton */
.dYJzRlyuu12XScCHVuzg {
  border-radius: var(--radius-lg);
  padding: 20px;
  background-color: rgba(200, 200, 200, 0.1);
}

/* Account card skeleton */
.xtIKmBd7qzKgjA3yqrDa {
  width: 100%;
  max-width: 280px;
  min-width: 0;
  height: 180px;
  border-radius: var(--radius-lg);
  border: 2px solid rgba(200, 200, 200, 0.3);
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
  flex-shrink: 0;
  box-sizing: border-box;
}

.apvIJYUzOyaa1A5maRV2 {
  width: 60%;
  height: 16px;
  align-self: center;
}

.FgetZd4LbCUKMI6JhR4b {
  width: 80%;
  height: 18px;
  align-self: center;
}

.w02fDxSyLCS5Gs0idSgI {
  width: 50%;
  height: 14px;
  align-self: center;
}

.gZo3u3zjvoj9v8xfPQf6 {
  display: flex;
  flex-direction: row;
  align-items: baseline;
  justify-content: center;
  gap: 8px;
  margin-top: auto;
  padding-top: 12px;
  border-top: 1px solid rgba(200, 200, 200, 0.3);
}

.l7MlGC6XLV49rIYoNLur {
  width: 120px;
  height: 28px;
}

.nuaJnnRYA7dWgBgWZXon {
  width: 40px;
  height: 18px;
}

/* Movement row skeleton */
.tYJwYPTrllkK5PrJMWGg {
  display: flex;
  flex-direction: row;
  padding: 14px;
  background-color: rgba(190, 158, 85, 0.04);
  border-radius: var(--radius-md);
  margin-bottom: var(--space-sm);
  border: 1px solid rgba(190, 158, 85, 0.12);
  align-items: center;
  justify-content: space-between;
}

.ZI5IlsT8CMnZv1it5rxg {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.TSMahRTwq_msqaOlXGeA {
  width: 80px;
  display: flex;
  justify-content: flex-end;
}

.m5aFzp1ID319hrpsajnG {
  width: 70%;
  height: 14px;
}

.vdMwZVYBoIix6LwCB005 {
  width: 40%;
  height: 12px;
}

.qEGUkT9C44ICIJNhHuKU {
  width: 60px;
  height: 16px;
}

/* Table row skeleton (for desktop) */
.d_HBDNSVucl1yLKu54WA {
  display: flex;
  width: 100%;
  padding: 14px 16px;
  background-color: rgba(190, 158, 85, 0.04);
  border-radius: var(--radius-md);
  margin-bottom: 8px;
  gap: 16px;
  box-sizing: border-box;
  /* Ensure row stretches to full width even when parent has align-items: center */
  align-self: stretch;
}

.TI7Tm4iKOG44eLttQTFg {
  height: 14px;
  min-width: 40px;
  flex-shrink: 0;
}

/* Container with multiple skeletons */
.lQCP250OQL6kxdZ9rigA {
  width: 100%;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  box-sizing: border-box;
  /* Ensure container stretches to full width even when parent has align-items: center */
  align-self: stretch;
}

/* Ensure skeleton wrappers don't cause overflow */
.FdbziryxeuKoADD7jq2G {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  box-sizing: border-box;
}

/* =============================================================================
   MOBILE ACTIONS PANEL SKELETON
   ============================================================================= */

/* Container matching mobileActionsPanel from pageContasBase.css */
.aFDeeYg5IwQfg_Sv2D6L {
  width: 90%;
  max-width: 300px;
  margin-top: var(--space-md);
  padding: var(--space-md) 20px;
  background-color: white;
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* Button row skeleton */
.inKz82psCacQ8x7Udh8F {
  display: flex;
  flex-direction: row;
  justify-content: center;
  gap: 10px;
}

/* Single button skeleton */
.UMBX7fzz2jPh_YO12kZe {
  width: 80px;
  height: 32px;
  border-radius: var(--radius-sm);
}


.Wmdp_PQn0AsVg0L3wvaE {
  cursor: pointer;
}

/* Desktop: Position arrow to the left of the title within .pageTitleRow */
.AI35nSb55DxunTZSLdE9 {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
}

/**
 * PullToRefresh Component Styles
 *
 * Provides visual feedback during pull-to-refresh gesture.
 * Uses smooth transitions and subtle animations.
 */

.FKf7UBGjzJ0fmaKXJQ5v {
  position: relative;
  width: 100%;
  overflow: visible;
}

.kArj7KLcH8SzSi66BqzC {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  pointer-events: none;
  z-index: 100;
  transform: translateY(-100%);
}

.QQquNuwKTOhXDpbIiTfq {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 12px 20px;
  background-color: white;
  border-radius: 0 0 16px 16px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.ciSvI0Wp_oIIimcBzaW6 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  transition: transform 0.2s ease-out;
}

.ciSvI0Wp_oIIimcBzaW6.Xjq6yVj3G2OOl71zbTrZ {
  transform: rotate(180deg);
}

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

.pCL8b5W_lx4US4RQ5cql {
  font-size: var(--font-caption);
  font-weight: 500;
  color: rgb(120, 100, 60);
  white-space: nowrap;
}

/* Arrow icon styling */
.hhHnQ_88nuJ58UuDeR9J {
  width: 24px;
  height: 24px;
  stroke: rgb(190, 158, 85);
  stroke-width: 2.5;
  fill: none;
}

/* Animation for refreshing state */
@keyframes A3_lrYVfw0zmn2VuYl5w {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.6;
  }
}

.o_Ci3MydOROelKL8RvbQ .pCL8b5W_lx4US4RQ5cql {
  animation: A3_lrYVfw0zmn2VuYl5w 1.5s ease-in-out infinite;
}

/* Smooth transition for pulling */
.fxyUzr1zQdi5VDlGv5UY {
  transition: none;
}

.Wiip8uDjg7DAdZPQgE6H {
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}


/**
 * OfflineIndicator Component Styles
 *
 * Displays a subtle indicator when showing cached/offline data
 */

.RquwCxGrO3kqanaSyepj {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px 16px;
  background-color: var(--status-offline-bg);
  border: 1px solid var(--status-offline-border);
  border-radius: 8px;
  margin-bottom: 16px;
}

.IMzUfy3b5MW4rFV5Bvlq {
  width: 18px;
  height: 18px;
  margin-right: 8px;
  color: var(--status-offline-icon);
  flex-shrink: 0;
}

.sPNdmUpfGRjKApd_97Hd {
  font-size: var(--font-label);
  color: var(--status-offline-text);
  text-align: center;
}

.AO2Fys4YRmZRdTFD8Dth {
  font-weight: 600;
}

.ZpKlq5yP25BpoxNDD1NL {
  margin-left: 4px;
  opacity: 0.85;
}


/**
 * AccountDetailsPanel - Unified styles for account details panel
 *
 * Combines styles from mobileAccountDetailsPanel and desktopAccountDetailsAndActionsPanel.
 * Uses CSS variables for consistency across the app.
 */

/* =============================================================================
   MOBILE STYLES
   ============================================================================= */

/* Container for the mobile details panel */
.DWmQLbDCMn_ycVs5auiF {
  margin-top: 15px;
  padding-top: 15px;
  border-top: 1px solid rgba(200, 200, 200, 0.5);
}

/* Individual mobile detail row - stacked layout with label on top, value below */
.cWC64t9hZ95FJOgbq2WM {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-bottom: 14px;
  font-size: var(--font-caption);
}

.cWC64t9hZ95FJOgbq2WM:last-child {
  margin-bottom: 0;
}

/* Mobile label styling */
.M9POzcXz7M7WOuGESKg_ {
  color: var(--text-muted);
  font-weight: 500;
  margin-bottom: 4px;
}

/* Container for value and copy icon - value on left, icon on right */
.ExIioE4SmSjSWwwM6E3g {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

/* Mobile value styling */
.dpmGuUAEtOkPLUcNHths {
  color: var(--text-primary);
  text-align: left;
}

/* =============================================================================
   DESKTOP STYLES
   ============================================================================= */

.NhECeBT68A5Mlqzvj8ug {
  display: flex;
  flex-direction: row;
  margin-top: var(--space-lg);
  justify-content: center;
  gap: 20px;
}

/* Consistent width for all action buttons in the row */
.NhECeBT68A5Mlqzvj8ug > * {
  width: 120px;
}

.g80f1B8aHPZBXvrYOqqf {
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* Card wrapper for the details table */
.qbf_NViUIQ_wXf9GtozW {
  background: var(--gradient-card);
  border-radius: var(--radius-xl);
  padding: var(--space-lg) var(--space-xl);
  box-shadow: var(--shadow-card);
  border: 1px solid var(--border-card-brand);
  min-width: 320px;
  position: relative;
  overflow: hidden;
}

/* Subtle gold accent line at top */
.qbf_NViUIQ_wXf9GtozW::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: var(--gradient-gold);
  border-radius: 16px 16px 0 0;
}

/* Container for all detail rows */
.uHQKfE_B4VfFwKUHyIDA {
  display: flex;
  flex-direction: column;
  width: 100%;
}

/* Individual desktop detail row - stacked layout with label on top, value below */
.sc_Z0i0WzE3qmfqIsnNx {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 12px 0;
  border-bottom: 1px solid rgba(190, 158, 85, 0.12);
  transition: background-color 0.2s ease;
}

.sc_Z0i0WzE3qmfqIsnNx:hover {
  background-color: rgba(190, 158, 85, 0.04);
}

.sc_Z0i0WzE3qmfqIsnNx:last-child {
  border-bottom: none;
}

.donWVJOmKY438rhJIiGN {
  color: var(--brand-brown);
  font-weight: 500;
  font-size: var(--font-label);
  letter-spacing: 0.01em;
  margin-bottom: 4px;
}

/* Container for value and copy icon - value on left, icon on right */
.Th7leu0ziLCqnUV4Py5A {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

.gCwCE1ZQiU07zkjfZyF2 {
  text-align: left;
  color: var(--text-secondary);
  font-size: var(--font-label);
  font-weight: 400;
}

.JibU4F93gTQ1Mcs0Xdog {
  font-size: var(--font-card-title);
  color: var(--brand-gold);
  cursor: pointer;
  transition: all 0.2s ease;
  padding: 6px;
  border-radius: 6px;
}

.JibU4F93gTQ1Mcs0Xdog:hover {
  color: var(--brand-brown);
  background-color: rgba(190, 158, 85, 0.12);
  transform: scale(1.1);
}


/* PageTransferirLanding styles */

/* Beneficiaries button container - mobile (below selection icons, centered) */
.h0j0eFpXJWPbe6R3tt8I {
  display: flex;
  justify-content: center;
  width: 100%;
  margin-top: var(--space-xl);
}

/* Beneficiaries button container - desktop */
.tel2Z7USyDb0DArqavZ4 {
  display: flex;
  justify-content: center;
  width: 100%;
  margin-top: var(--space-3xl);
}

/* Sheet styles for mobile beneficiarios */
.gAfr7xpPDfEk75NCvobw {
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  padding: 15px;
}

.A47YBwViR3vhwhnUiEtg {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 15px;
  border-bottom: 1px solid rgba(0,0,0,0.1);
  cursor: pointer;
}

.A47YBwViR3vhwhnUiEtg:hover {
  background-color: rgba(195,158,85,0.1);
}

.HI0Pz9tsMCknKlFr12AT {
  font-size: var(--font-card-title);
  font-weight: 500;
  color: var(--brand-brown);
}

.E0yl62mS38i8VRNS8Y_q {
  font-size: var(--font-label);
  color: var(--text-muted);
}

/* Desktop beneficiarios modal content - uses layoutClasses.modalOverlay for overlay */
.Ylt2VM9hq6WGHt18_Kbd {
  background-color: white;
  border-radius: var(--radius-lg);
  padding: var(--space-lg);
  max-width: 500px;
  width: 90%;
  max-height: 80vh;
  overflow-y: auto;
}

.w9zkpHUwDIuh5jN1Mp1s {
  margin-top: var(--space-md);
}

/* Note: beneficiarioGuardadoItemDesktop replaced by layoutClasses.listItemCard */

/* Mobile Item Styles */
.P2yjdYXqUGm9Xlfn60YF {
  background-color: white;
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-sm);
  margin-bottom: var(--space-md);
  padding: var(--space-md);
  transition: box-shadow var(--transition-normal);
  width: 100%;
  box-sizing: border-box;
}

/* Hover effects only for devices that support hover (desktop) */
@media (hover: hover) {
  .P2yjdYXqUGm9Xlfn60YF:hover {
    box-shadow: var(--shadow-md);
  }
}

.qje9bcPcPg5QpMtBsT1L {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
}

.fesSAoKnVDa1f40RWSpw {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(190, 158, 85, 0.1);
  border-radius: var(--radius-full);
  margin-top: 2px;
}

.AYRo4YkS5973JiycrWUA {
  flex: 1;
  min-width: 0;
}

.VVXCkGbGVT4T0a3VyzxZ {
  font-size: var(--font-list-item-title);
  font-weight: 600;
  color: var(--brand-brown);
  margin-bottom: var(--space-xs);
  word-break: break-word;
}

.yaY1YaQQI7cx6vWaXniT {
  font-size: var(--font-list-item-subtitle);
  color: var(--text-tertiary);
  margin-bottom: 2px;
}

.vUiX0z27IrbHjG8N_IK2 {
  font-size: var(--font-list-item-subtitle);
  color: var(--text-muted);
  margin-top: var(--space-xs);
}

.OclZnkNA_w011it2byM7 {
  flex-shrink: 0;
  display: flex;
  align-items: flex-start;
  margin-top: -4px;
}

.XpIzIL4ZR9JXmvjJa9WO {
  margin-top: var(--space-md);
  padding-top: var(--space-md);
  border-top: 1px solid var(--border-light);
}

.lD7Z_Eoqk2fJjjHgdUNg {
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}

/* Desktop Table Styles */
.pyYgxWRODISocefogWGI {
  margin-top: var(--space-lg);
  padding: 0 var(--space-2xl);
  overflow-x: auto;
}

.SnVwje0uazsbBOqjkWAf {
  width: 100%;
  border-collapse: collapse;
  background-color: var(--bg-card);
  border-radius: var(--radius-md);
  overflow: hidden;
  box-shadow: var(--shadow-sm);
  table-layout: fixed;
}

.QWHjgB6P26x2irWDsKNb {
  background-color: var(--bg-card-alt);
}

.rBX5ZoqAuwZca1TO55CO {
  padding: var(--space-md) var(--space-sm);
  text-align: left;
  font-weight: 600;
  color: var(--brand-brown);
  font-size: var(--font-table-header);
  border-bottom: 2px solid var(--border-medium);
}

.VuD86_7NZjfoj54AYQTg {
  text-align: center;
  width: 8%;
}

.jclP_VlducTzGci0nHsQ {
  border-bottom: 1px solid var(--border-light);
  transition: background-color var(--transition-normal);
}

/* Hover effects only for devices that support hover (desktop) */
@media (hover: hover) {
  .jclP_VlducTzGci0nHsQ:hover {
    background-color: var(--bg-subtle);
  }
}

.eY61IVJRM2uYO2BZPqWT {
  padding: var(--space-md) var(--space-sm);
  font-size: var(--font-table-cell);
  color: var(--text-tertiary);
  vertical-align: middle;
}

.VuDsc41C_UhQlxpuF6HG {
  text-align: center;
}

.nc8AoUheV3ebCmbIg8DY {
  background-color: var(--bg-card-alt);
}

.Ksco6hYSsn3OPrH8VSSt {
  padding: 0;
  border-bottom: 1px solid var(--border-medium);
}

.K3FnzpHEyIgfMlq1Vgbs {
  padding: var(--space-md) 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-md);
  margin-left: 56px;
  margin-right: var(--space-sm);
}

/* Mobile List Styles */
.Q6KaMeWs9xzRsdve5Shq {
  padding: 0 var(--space-md) 0px var(--space-md);
  margin-top: var(--space-lg);
  margin-bottom: var(--space-lg);
  width: 100%;
  box-sizing: border-box;
}

/* Detail Row Styles */
.aVfFK4bj7YTqbYH0V3so {
  display: flex;
  flex-direction: column;
  margin-bottom: var(--space-sm);
}

.aVfFK4bj7YTqbYH0V3so:last-child {
  margin-bottom: 0;
}

.MmKNX2Zc2zaTgRzjw9a2 {
  font-weight: 600;
  color: var(--brand-brown);
  font-size: var(--font-label);
  margin-bottom: var(--space-xs);
}

.I64e2Xm32p9GXdxzxqLD {
  color: var(--text-tertiary);
  font-size: var(--font-body);
  word-break: break-word;
}

/* Desktop details specific styles */
.K3FnzpHEyIgfMlq1Vgbs .aVfFK4bj7YTqbYH0V3so {
  display: flex;
  flex-direction: column;
  margin-bottom: 0;
}

.K3FnzpHEyIgfMlq1Vgbs .MmKNX2Zc2zaTgRzjw9a2 {
  font-size: var(--font-label);
  font-weight: 600;
  color: var(--brand-brown);
  margin-bottom: var(--space-xs);
  text-align: left;
}

.K3FnzpHEyIgfMlq1Vgbs .I64e2Xm32p9GXdxzxqLD {
  color: var(--text-tertiary);
  font-size: var(--font-body);
  word-break: break-word;
  text-align: left;
}

/* Empty State Styles */
.rcXUSAX26WOul16lPJEL {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: var(--space-3xl) 0; /* Removed horizontal padding for proper centering */
  text-align: center;
  width: 100%;
  min-height: 200px;
}

._7hDzVhAVFq0MRp4dSB2 {
  font-size: var(--font-body);
  color: var(--text-muted);
  font-style: normal;
}

/* Specific styles for beneficiarios table */
._VJCxDGu44J6DVQiB90k {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
}

.qi3FugulLgFkvkcXae2Y {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(190, 158, 85, 0.1);
  border-radius: var(--radius-full);
}

.AMI6STOvJuo33EehGSgA {
  font-weight: 500;
  color: var(--brand-brown);
  font-size: var(--font-table-cell);
}

/* Specific styles for transferencias table */
.aOcJzS6OmHViIjIxGqAm.aOcJzS6OmHViIjIxGqAm {
  font-weight: 600;
  color: var(--brand-brown);
  font-size: var(--font-table-cell);
}

/* Column width configurations */
/* Transferencias table column widths */
.fwVCqIdyoxThbNQSKz2x .rBX5ZoqAuwZca1TO55CO:nth-child(1) { width: 25%; } /* Nome do beneficiário */
.fwVCqIdyoxThbNQSKz2x .rBX5ZoqAuwZca1TO55CO:nth-child(2) { width: 12%; } /* Valor */
.fwVCqIdyoxThbNQSKz2x .rBX5ZoqAuwZca1TO55CO:nth-child(3) { width: 8%; }  /* Moeda */
.fwVCqIdyoxThbNQSKz2x .rBX5ZoqAuwZca1TO55CO:nth-child(4) { width: 20%; } /* Finalidade */
.fwVCqIdyoxThbNQSKz2x .rBX5ZoqAuwZca1TO55CO:nth-child(5) { width: 15%; } /* Data da solicitação */
.fwVCqIdyoxThbNQSKz2x .rBX5ZoqAuwZca1TO55CO:nth-child(6) { width: 12%; } /* Estado */
.fwVCqIdyoxThbNQSKz2x .rBX5ZoqAuwZca1TO55CO:nth-child(7) { width: 8%; text-align: center; } /* Ações */

/* Beneficiarios table column widths */
.KqXpg30ajv3IU5_cDH1x .rBX5ZoqAuwZca1TO55CO:nth-child(1) {
  width: 40%;
} /* Nome */
.KqXpg30ajv3IU5_cDH1x .rBX5ZoqAuwZca1TO55CO:nth-child(2) { width: 25%; } /* Destino */
.KqXpg30ajv3IU5_cDH1x .rBX5ZoqAuwZca1TO55CO:nth-child(3) { width: 25%; } /* Finalidade */
.KqXpg30ajv3IU5_cDH1x .rBX5ZoqAuwZca1TO55CO:nth-child(4) { width: 10%; text-align: center; } /* Ações */

/* Pendentes table column widths and alignment */
.l2PjGQY2a_y5oMMXppo4 .rBX5ZoqAuwZca1TO55CO:nth-child(1) { width: calc(100% - 22% - 70px); } /* Operação */
.l2PjGQY2a_y5oMMXppo4 .rBX5ZoqAuwZca1TO55CO:nth-child(2) { width: 22%; text-align: left; } /* Montante header left-aligned */
.l2PjGQY2a_y5oMMXppo4 .rBX5ZoqAuwZca1TO55CO:nth-child(3) { width: 70px; text-align: center; } /* Ações */

/* Pendentes table cell alignment - remove text-align to allow natural left alignment as group */
.l2PjGQY2a_y5oMMXppo4 .eY61IVJRM2uYO2BZPqWT:nth-child(2) {
  /* No text-align specified - defaults to left, creating the desired effect */
}

/* Dynamic details alignment based on icon presence - using doubled selector for higher specificity */
.nsWR9WZKwfsp5_aVlnXP.nsWR9WZKwfsp5_aVlnXP {
  margin-left: 56px; /* Align with content after icon (12px cell padding + 32px icon + 12px gap) */
}

.xuWb_oKRDv8VcHECpevR.xuWb_oKRDv8VcHECpevR {
  margin-left: 13px; /* Align with first column header text (no icon) */
}

/* Legacy table-specific overrides (kept for compatibility) */
.KqXpg30ajv3IU5_cDH1x .K3FnzpHEyIgfMlq1Vgbs {
  margin-left: 56px; /* Match the first column's padding-left */
  margin-right: var(--space-sm); /* Match table cell right padding */
}

.fwVCqIdyoxThbNQSKz2x .K3FnzpHEyIgfMlq1Vgbs {
  margin-left: 13px; /* Align with first column header text (no icon) */
  margin-right: var(--space-sm); /* Match table cell right padding */
}

/**
 * ConfirmationModal - Reusable confirmation modal styles
 *
 * Consolidated modal styling used across the app for confirmation dialogs.
 * Replaces duplicated styles from customTable, pageTransferirLanding, etc.
 */

/* Overlay - semi-transparent background */
.qyMuD2BiBhQ_gfk2eQL0 {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
}

/* Desktop content-centered overlay - adds padding to shift centering point
   while keeping overlay covering the entire page including navigator */
.YmWRu7_no7MkQDkTDkTZ {
  padding-left: var(--desktop-navigator-width);
}

/* Modal container */
.bbvuAmzPfu5CVXaidVNg {
  background-color: var(--bg-card);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lg);
  max-width: 450px;
  width: 90%;
  max-height: 90vh;
  overflow: hidden;
  outline: none;
}

/* Content wrapper */
.hNV0KORAaTCJwiGsK31u {
  display: flex;
  flex-direction: column;
}

/* Header section */
.AfG0dvPCs6iDMAdNP_KK {
  padding: var(--space-lg) var(--space-lg) var(--space-md) var(--space-lg);
  border-bottom: 1px solid var(--border-light);
}

/* Title */
.KNxAgYx_a2F349hS_map {
  font-size: var(--font-title);
  font-weight: bold;
  color: var(--brand-brown);
  text-align: center;
}

/* Body section */
.VHAX7a_kkVpIQb5in0xS {
  padding: var(--space-lg);
}

/* Message text */
.ujl0XEk4cV5LhAE5qgeE {
  font-size: var(--font-body);
  color: var(--text-primary);
  text-align: center;
  margin-bottom: var(--space-md);
  line-height: 1.5;
}

/* Info section for displaying item details */
.k12P1m_leiDEFt1SrKtg {
  background-color: var(--bg-card-alt);
  border-radius: var(--radius-md);
  padding: var(--space-md);
  margin-bottom: var(--space-sm);
}

/* Info row for label/value pairs */
.RbDuM3heWbi9lRjoZl9G {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: var(--space-sm);
}

.RbDuM3heWbi9lRjoZl9G:last-child {
  margin-bottom: 0;
}

/* Info label */
.oUOcGRqySlVCAvcxjMmV {
  font-weight: 600;
  color: var(--brand-brown);
  font-size: var(--font-label);
}

/* Info value */
.x7ENLcOcOzPFHRpXTIX6 {
  font-weight: 500;
  color: var(--text-primary);
  font-size: var(--font-body);
  text-align: right;
}

/* Actions section (buttons) */
.BxiPuaLD1MHlrVBRF8CF {
  display: flex;
  gap: var(--space-md);
  padding: var(--space-md) var(--space-lg) var(--space-lg) var(--space-lg);
  justify-content: center;
}


/* PageTransferirNacional styles */

.Eo9o62r1J_aLZeOZcrIK {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 20px;
}

/**
 * FlowButtonGroup - Device-based responsive styles
 *
 * Uses device-based view detection (via useView hook) instead of CSS media queries.
 * This matches the app's pattern of detecting device type rather than screen width.
 *
 * Layout:
 * - Mobile: Vertical column layout, buttons stacked
 * - Desktop: Horizontal row layout, buttons centered side by side
 *
 * NOTE: Spacing above the button group is handled by FormButtonGroup (margin-top).
 * This component only handles the internal layout of buttons, not external spacing.
 */

/* =============================================================================
 * MOBILE STYLES
 * ============================================================================= */

/* Button Group Wrapper - no padding, spacing handled by FormButtonGroup */
.MY8mIjd6H_ru1i2ZEhVb {
  width: 100%;
}

/* Base Button Group Container - vertical on mobile */
.jqeV5DXTisbbn5xsiixW {
  display: flex;
  flex-direction: column;
  gap: 15px;
  width: 100%;
  align-items: center;
}

/* =============================================================================
 * DESKTOP STYLES (applied via className in component when view === 'desktop')
 * ============================================================================= */

/* No additional padding for desktop - spacing handled by FormButtonGroup */
.aGKMnpuGMzYmuDvZwIhg {
  /* Inherits from buttonGroupWrapper */
}

.NznF_RkweKOW9Cuhbenw {
  flex-direction: row;
  gap: 30px;
  justify-content: center;
}


/**
 * DisplayFieldWithText - Device-based responsive styles
 *
 * Uses device-based view detection (via useView hook) instead of CSS media queries.
 * This matches the app's pattern of detecting device type rather than screen width.
 */

/* =============================================================================
 * MOBILE STYLES
 * ============================================================================= */

/* Container for a single field with title and content */
.tU_vG5KfnC_yFmZr7Sfc {
  display: flex;
  flex-direction: column;
  margin-bottom: var(--space-md);
}

/* Field title/label */
.C3JyfuEdysLrR86JLfh0 {
  font-weight: bold;
  color: var(--brand-brown);
  margin-bottom: var(--space-xs);
}

/* Field content/value */
.Bck5hTTsuPW1FHr_Nb9v {
  color: var(--text-primary);
}

/* =============================================================================
 * DESKTOP STYLES (applied via className in component when view === 'desktop')
 * ============================================================================= */

/* Desktop container has fixed width */
.y9TvHWxImueDybQFeu4o {
  width: 360px;
}

/* Content top margin for desktop */
.qaSYKWqAeJIhzDFx963o {
  margin-top: var(--space-xs);
}

/* =============================================================================
 * MODIFIER CLASSES
 * ============================================================================= */

/* Remove bottom margin */
.immvk4OuYoXFQIr8Lw80 {
  margin-bottom: 0;
}

/* Add larger bottom margin (desktop section spacing) */
.hlHzs3MOwo0pgVjEuYaX {
  margin-bottom: var(--space-lg);
}


/* .footnote now uses layoutClasses.footnote from layoutPatterns.css */

.gHqaC2_fmhc7h66ZZGml {
  width: 360px;
}

/* .mobileContainerReturnArrow now handled by mobilePage component */
/* .titleAtTopContainer and .titleAtTop removed - use layoutClasses.titleContainer and layoutClasses.pageTitle */
/* .hide moved to layoutPatterns.css as layout-hide */

/* .mobilePageContent moved to layoutPatterns.css as layout-pageContentColumn */
/* .section width and padding now handled by mobilePage component */

.FdqyKg_36LuOGU0gBanj {
  width: 100%;
}

.dGYGtsZHqFqvyu40vDQM {
  width: 100%;
  margin-bottom: var(--space-lg);
}

/* .containerSectionTitle moved to layoutPatterns.css as layout-containerSectionTitle */

.lQIHpPOOTvdTNNAV2wKc {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: var(--space-3xl);
}

.e5mkJSzBkdflE9aEK4JH {
  display: flex;
  flex-direction:column;
  align-items: center;
  justify-content: center;
  width: 100px;
  height: 100px;
  border-width: 1px;
  border-radius: var(--radius-sm);
  background-color: var(--border-dark);
}

.DwL14RnJM6eQZu_Ft1Bi {
  display: flex;
  flex-direction:column;
  align-items: center;
  justify-content: center;
  width: 100px;
  height: 100px;
  border-width: 1px;
  border-radius: var(--radius-sm);
  background-color: var(--border-dark);
  cursor: pointer;
}

.P0LSVS5KKL2av5t7Ai42 {
  margin-top: var(--space-xs);
  color: var(--brand-brown);
  cursor: pointer;
}

.gRqJmmsFhQUxXYUTzt0d {
  margin-top: var(--space-xs);
  color: var(--brand-brown);
  cursor: pointer;
}

.e5mkJSzBkdflE9aEK4JH:not(:last-child) {
  margin-bottom: var(--space-lg);
}

.q0llfrw79TH0y908BSkg {
  background-color: var(--bg-input-disabled);
  cursor: default;
}

.D7XpYvlxzwm8gh70crf9 {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: var(--space-md);
}

.xrtiw5NneVfRAO9T5EEG {
  width: 100%;
  display: flex;
  justify-content: center;
}

/* Center the SelectionIconGroup grid - let SelectionIconGroup keep its grid layout */
.xrtiw5NneVfRAO9T5EEG > div {
  justify-content: center;
}

.AI8wlIyG0gqvRuNewyMX {
  display: flex;
  flex-direction: row;
  align-items: center;
  width: 80%;
  max-width: 300px;
  border: solid;
  border-width: 1px;
  border-radius: var(--radius-sm);
  padding-top: var(--space-sm);
  padding-bottom: var(--space-sm);
  justify-content: center;
  cursor: pointer;
}

.AI8wlIyG0gqvRuNewyMX:not(:last-child) {
  margin-bottom: var(--space-md);
}

.RaurU64FczrVzS1p_Y27 {
  margin-left: var(--space-sm);
  color: var(--brand-brown);
  font-size: var(--font-body);
  width: 70%;
  max-width: 200px;
  cursor: pointer;
}

.JMoJBaAR3DBl73hj4SKY {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center;
}

.HXYaQ0_qCuaFit6DuV18 {
  width: 80%;
  max-width: 250px;
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: var(--space-xs);
  border: solid;
  border-radius: var(--radius-sm);
  border-width: 1px;
  border-color: var(--text-tertiary);
  cursor: pointer;
}

.HXYaQ0_qCuaFit6DuV18:not(:last-child) {
  margin-bottom: var(--space-md);
}

.rHXQfwPyjnL70EMXdfOC {
  margin-right: var(--space-sm);
  display: flex;
  cursor: pointer;
}

.v2vQ9yoso7zdS_tBURsK {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center;
}

.bOshrhsYI4RareKLtx9x {
  width: 80%;
  max-width: 300px;
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: var(--space-xs);
  border: solid;
  border-radius: var(--radius-sm);
  border-width: 1px;
  border-color: var(--text-tertiary);
  cursor: pointer;
}

.QqvrcWpsmctofuNDbRp_ {
  cursor: pointer;
}

._NHHe20nUq2yz1fg7qnd {
  cursor: pointer;
}

.bOshrhsYI4RareKLtx9x:not(:last-child) {
  margin-bottom: var(--space-md);
}

.c3yWtlnDn59TxeLS0Sbe {
  cursor: pointer;
}

/* .sectionTitle moved to layoutPatterns.css as layout-sectionTitle */

.ML5BvFoOHvmXIS5cxIIN {
  display: flex;
  flex-direction: row;
  background-color: rgba(190, 158, 85, 0.2);
  padding: var(--space-sm);
  align-items: center;
  height: 43px;
}

/* Use centralized input styles via composition */
.kpz3i25CFWMNqDTmfDCO {
}

/* Note: containerContinuarButton removed - button spacing now handled by FormButtonGroup */
/* Note: .desktopSection removed - page title spacing now standardized via --desktop-page-title-content-spacing */
/* Note: .desktopSectionTitle moved to layoutPatterns.css as layout-desktopSectionTitle */

.BlZCU3Afif40osk3cOnA {
  width: 100%;
  display: flex;
  justify-content: center;
}

.LZaddNoRBfc5KZ5L2YnZ {
  width: 100%;
  display: flex;
  justify-content: center;
}

.usHPhCWAag1QHdSPh7Ui {
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  align-items: center;
  margin-top: var(--space-2xl);
  max-width: 500px;
  width: 100%;
}

.lSgkXgJ8ornh_DnCUemX {
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  align-items: center;
  margin-top: var(--space-2xl);
  max-width: 500px;
  width: 100%;
}

/* Note: .dadosPagamentoSectionField removed - spacing now handled by FormFieldGroup gap system */

.aBjvTvssnZkX2Te0BoPy {
  width: 100%;
  display: flex;
  justify-content: center;
}

.t_wKOXgZMmUO9GzPiZN9 {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: var(--space-3xl);
}

.Iv6akbyOi5g5WKvYJWSr {
  display: flex;
  flex-direction:row;
  align-items: center;
  justify-content: center;
  width: 150px;
  height: 100px;
  border-width: 1px;
  border-radius: var(--radius-sm);
  background-color: var(--border-dark);
}

.HsasG7_9EGaFKZVWXbry {
  cursor: pointer;
  display: flex;
  flex-direction:row;
  align-items: center;
  justify-content: center;
  width: 150px;
  height: 100px;
  border-width: 1px;
  border-radius: var(--radius-sm);
  background-color: var(--border-dark);
}

.czd18N1KHHF0uUfTdDPq {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-left: var(--space-sm);
}

.vvZWCIOimibZD0WXYRqb {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-left: var(--space-sm);
  cursor: pointer;
}

.ug7lHQAB71pQte0sZIDF {
  color: var(--brand-brown);
}

.odBTnHmJ8Mhy5hmAuwCv {
  color: var(--brand-brown);
  cursor: pointer;
}

.Iv6akbyOi5g5WKvYJWSr:not(:last-child) {
  margin-bottom: var(--space-lg);
}

/* Empty State Component Styles */

/* Container for the empty state */
.ueYoGmOr2y0Ys60T14JL {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: var(--space-3xl) var(--space-lg);
  text-align: center;
  min-height: 200px;
  animation: RZ_uAH6Dwe1yctCKWxeo var(--transition-slow) ease-out;
}

/* Compact variant - less padding */
.B6NnDb97Bu7JOhq2SfET {
  padding: var(--space-xl) var(--space-md);
  min-height: 120px;
}

/* Icon container */
.adOnHoq2iHMTfAN70dfk {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  margin-bottom: var(--space-lg);
  border-radius: var(--radius-full);
  background-color: var(--bg-card-alt);
}

.adOnHoq2iHMTfAN70dfk svg {
  width: 32px;
  height: 32px;
  color: var(--text-muted);
}

/* Compact icon */
.B6NnDb97Bu7JOhq2SfET .adOnHoq2iHMTfAN70dfk {
  width: 48px;
  height: 48px;
  margin-bottom: var(--space-md);
}

.B6NnDb97Bu7JOhq2SfET .adOnHoq2iHMTfAN70dfk svg {
  width: 24px;
  height: 24px;
}

/* Title text */
.mJZ2aD2asDIVk_uk5FiA {
  font-size: var(--font-subtitle);
  font-weight: 600;
  color: var(--text-tertiary);
  margin-bottom: var(--space-sm);
  line-height: 1.4;
}

/* Subtitle/description text */
.M1tEAJ2fn2CdoE03mN_V {
  font-size: var(--font-body);
  color: var(--text-muted);
  line-height: 1.5;
  max-width: 300px;
}

/* Animation */
@keyframes RZ_uAH6Dwe1yctCKWxeo {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Mobile adjustments */
@media (max-width: 480px) {
  .ueYoGmOr2y0Ys60T14JL {
    padding: var(--space-2xl) var(--space-md);
  }

  .adOnHoq2iHMTfAN70dfk {
    width: 56px;
    height: 56px;
  }

  .adOnHoq2iHMTfAN70dfk svg {
    width: 28px;
    height: 28px;
  }
}


/* =============================================================================
   Offline Banner Styles
   ============================================================================= */

/* Animation keyframes */
@keyframes FSRX32t0v_xLO6nTFaqQ {
  0% {
    transform: translateY(-100%);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes Us3GjeObPaqxM9vSQslY {
  0% {
    transform: translateY(0);
    opacity: 1;
  }
  100% {
    transform: translateY(-100%);
    opacity: 0;
  }
}

/* Banner Container */
.C8uqLvDncj1IdfOAzbpS {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  padding: var(--space-sm) var(--space-md);
  display: flex;
  justify-content: center;
  align-items: center;
  animation: FSRX32t0v_xLO6nTFaqQ 300ms ease-out forwards;
  box-shadow: var(--shadow-md);
}

/* Hiding state - slides up before unmounting */
.C8uqLvDncj1IdfOAzbpS.gcGwqePDWsbD_ViSLKu8 {
  animation: Us3GjeObPaqxM9vSQslY 300ms ease-in forwards;
}

/* Offline state - red */
.p8u4NkeU0og_hBiqZq7P {
  background-color: var(--status-error);
  color: white;
}

/* Online state - green (with auto-hide) */
.VuHnJu9SrS4ZuQgyTVyi {
  background-color: var(--status-success);
  color: white;
}

/* Content wrapper */
.vtOC3AeUW1LRJOi7ZQqo {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  max-width: 600px;
  width: 100%;
}

/* Icon container */
.mK_4jPlslFjxpSVGj7kq {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.mK_4jPlslFjxpSVGj7kq svg {
  width: 24px;
  height: 24px;
  color: white;
}

/* Message text area */
.LdLTc0d3Ww432PMJK2Nh {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

/* Title text */
.HZlvNrpXIEjUwav1RfrK {
  font-weight: 600;
  font-size: var(--font-subtitle);
  line-height: 1.3;
}

/* Subtitle text */
.Z2qIIz5I6iQWREJ2QoyW {
  font-size: var(--font-body);
  opacity: 0.9;
  line-height: 1.3;
}

/* Mobile adjustments */
@media (max-width: 480px) {
  .C8uqLvDncj1IdfOAzbpS {
    padding: var(--space-xs) var(--space-sm);
  }

  .vtOC3AeUW1LRJOi7ZQqo {
    gap: var(--space-xs);
  }

  .HZlvNrpXIEjUwav1RfrK {
    font-size: var(--font-body);
  }

  .Z2qIIz5I6iQWREJ2QoyW {
    font-size: var(--font-caption);
  }
}


/* Toast Container - positions the toast at bottom center */
/* Desktop positioning (left/right offsets) is handled via inline styles in the component */
.RtBNAz4gG8oLyFc0TQhC {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  padding: var(--space-lg);
  padding-bottom: calc(var(--space-lg) + env(safe-area-inset-bottom, 0px));
  z-index: 9999;
  pointer-events: none;
}

/* Toast Card - the actual toast element */
.ez_DM5YPc62dpSw3KtmX {
  display: flex;
  align-items: flex-start;
  gap: var(--space-md);
  max-width: 420px;
  width: 100%;
  padding: var(--space-md) var(--space-lg);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lg);
  pointer-events: auto;
  opacity: 0;
  transform: translateY(20px);
  transition: opacity var(--transition-normal), transform var(--transition-normal);
  overflow: hidden;
  position: relative;
}

/* Toast visible state */
.e3lS6d_4Zkj3lzVnO0QM {
  opacity: 1;
  transform: translateY(0);
}

/* Toast type variants */
.g2o2knDWQL7vEDXtHKcw {
  background-color: var(--status-error);
}

.ob08TNpCUIg79sAoddj_ {
  background-color: var(--status-info);
}

.crGrIFo4l4FTUpcwZWpK {
  background-color: var(--status-success);
}

/* Icon container */
.MDASEpsfexAcTZ_7dXTJ {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  margin-top: 2px;
}

.MDASEpsfexAcTZ_7dXTJ svg {
  width: 24px;
  height: 24px;
  color: white;
}

/* Content area */
.XRiDdgAo3e0PzANquTGT {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
}

/* Title - primary message */
.j3M2Ljx5AArEIUyJtPt3 {
  color: white;
  font-size: var(--font-subtitle);
  font-weight: 600;
  line-height: 1.4;
  word-break: break-word;
}

/* Description - secondary message */
.R3ciRtpuTG2PotIic5d6 {
  color: rgba(255, 255, 255, 0.9);
  font-size: var(--font-body);
  line-height: 1.4;
  word-break: break-word;
}

/* Progress bar container */
.CoTvfUtvu7ZgKWBu2dRM {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 3px;
  background-color: rgba(0, 0, 0, 0.15);
}

/* Progress bar fill */
.rVQO3MESdpjA4m45UI78 {
  height: 100%;
  background-color: rgba(255, 255, 255, 0.5);
  transform-origin: left;
  transition: transform linear;
}

/* Animation keyframes */
@keyframes y748t5PefvLub9Qv4LNQ {
  from {
    transform: scaleX(1);
  }
  to {
    transform: scaleX(0);
  }
}

/* Mobile adjustments */
@media (max-width: 480px) {
  .RtBNAz4gG8oLyFc0TQhC {
    padding: var(--space-md);
    padding-bottom: calc(var(--space-md) + env(safe-area-inset-bottom, 0px));
  }

  .ez_DM5YPc62dpSw3KtmX {
    max-width: 100%;
    padding: var(--space-sm) var(--space-md);
    border-radius: var(--radius-md);
  }

  .j3M2Ljx5AArEIUyJtPt3 {
    font-size: var(--font-body);
  }

  .R3ciRtpuTG2PotIic5d6 {
    font-size: var(--font-body);
  }
}

