/*
 * Área privada de WooCommerce · Triwuu
 * Navegación lateral basada en el patrón real del catálogo de la tienda.
 */

/*
 * El shortcode puede estar dentro de Gutenberg, Elementor o la plantilla
 * estándar. El layout no depende de que .woocommerce sea hijo directo de
 * .entry-content, evitando que navegación y contenido se separen.
 */
body.triwuu-account-area #content .woocommerce{
  display:flow-root;
  width:min(100%,1280px);
  max-width:1280px;
  margin-inline:auto;
}

/* Layout estable de dos columnas en escritorio. */
.triwuu-account-area .woocommerce-MyAccount-navigation{
  position:sticky;
  top:190px;
  float:left!important;
  width:250px!important;
  min-width:0;
  margin:0!important;
}

.triwuu-account-area .woocommerce-MyAccount-content{
  float:right!important;
  width:calc(100% - 282px)!important;
  min-width:0;
  margin:0!important;
  padding:28px clamp(22px,3vw,38px);
  border:1px solid #e1e6e3;
  border-radius:8px!important;
  background:#fff;
  box-shadow:0 8px 24px rgba(17,24,39,.055);
  color:#383d3b;
}

/* Menú lateral: mismo lenguaje visual que .triwuu-sidebar-card de tienda. */
.triwuu-account-navigation-card{
  width:100%;
  padding:0;
  border:0;
  border-radius:0!important;
  background:transparent;
  box-shadow:none;
}

.triwuu-account-navigation-card__header{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:9px;
  width:100%;
  min-height:38px;
  margin:0 0 10px;
  padding:8px 14px;
  border-radius:999px!important;
  background:#2ccba0;
  color:#173c33;
  font-size:14px;
  font-weight:950;
  line-height:1.1;
}

.triwuu-account-navigation-card__header .dashicons{
  width:20px;
  height:20px;
  font-family:dashicons!important;
  font-size:20px;
  font-weight:400;
  line-height:1;
}

.triwuu-account-area .woocommerce-MyAccount-navigation ul{
  display:block;
  margin:0!important;
  padding:0!important;
  border-top:1px solid rgba(44,203,160,.24);
  list-style:none!important;
}

.triwuu-account-area .woocommerce-MyAccount-navigation li{
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-bottom:1px solid rgba(44,203,160,.24)!important;
  list-style:none!important;
}

.triwuu-account-area .woocommerce-MyAccount-navigation a{
  display:flex;
  align-items:center;
  gap:10px;
  width:100%;
  min-height:44px;
  padding:8px 10px;
  border:0;
  border-radius:0!important;
  background:transparent;
  color:#2f4b42!important;
  font-size:14px;
  font-weight:850;
  line-height:1.25;
  text-decoration:none!important;
  box-shadow:none;
  transition:background-color .18s ease,color .18s ease,padding-left .18s ease;
}

.triwuu-account-area .woocommerce-MyAccount-navigation a::before{
  content:"\f111";
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 24px;
  width:24px;
  height:24px;
  color:#087c61;
  font-family:dashicons!important;
  font-size:19px;
  font-weight:400;
  line-height:1;
  speak:never;
  -webkit-font-smoothing:antialiased;
}

.triwuu-account-area .woocommerce-MyAccount-navigation-link--dashboard a::before{content:"\f226";}
.triwuu-account-area .woocommerce-MyAccount-navigation-link--orders a::before{content:"\f174";}
.triwuu-account-area .woocommerce-MyAccount-navigation-link--payment-methods a::before{content:"\f18e";}
.triwuu-account-area .woocommerce-MyAccount-navigation-link--edit-address a::before{content:"\f231";}
.triwuu-account-area .woocommerce-MyAccount-navigation-link--edit-account a::before{content:"\f110";}
.triwuu-account-area .woocommerce-MyAccount-navigation-link--customer-logout a::before{content:"\f14a";}

.triwuu-account-area .woocommerce-MyAccount-navigation a:hover{
  padding-left:14px;
  background:#e9faf5;
  color:#006b52!important;
}

.triwuu-account-area .woocommerce-MyAccount-navigation .is-active a{
  padding-left:14px;
  background:#dff8f0;
  color:#123f35!important;
  box-shadow:inset 4px 0 0 #2ccba0;
}

.triwuu-account-area .woocommerce-MyAccount-navigation .is-active a::before{
  color:#123f35;
}

.triwuu-account-area .woocommerce-MyAccount-navigation a:focus-visible{
  position:relative;
  z-index:1;
  outline:3px solid #123f35;
  outline-offset:2px;
}

/* Columna derecha. */
.triwuu-account-area .woocommerce-MyAccount-content > :first-child{margin-top:0!important;}
.triwuu-account-area .woocommerce-MyAccount-content > :last-child{margin-bottom:0!important;}

.triwuu-account-area .woocommerce-MyAccount-content h2,
.triwuu-account-area .woocommerce-MyAccount-content h3{
  color:#313837;
  font-weight:950;
  line-height:1.15;
}

.triwuu-account-area .woocommerce-MyAccount-content p{
  line-height:1.65;
}

/* Los enlaces de texto deben reconocerse sin depender solo del color. */
.triwuu-account-area .woocommerce-MyAccount-content a:not(.button):not(.woocommerce-button){
  color:#006b52!important;
  font-weight:850;
  text-decoration-line:underline!important;
  text-decoration-thickness:2px!important;
  text-decoration-color:#2ccba0!important;
  text-underline-offset:4px;
  border-radius:3px!important;
  transition:color .18s ease,background-color .18s ease,text-decoration-color .18s ease;
}

.triwuu-account-area .woocommerce-MyAccount-content a:not(.button):not(.woocommerce-button):hover{
  background:#e9faf5;
  color:#123f35!important;
  text-decoration-color:#123f35!important;
}

.triwuu-account-area .woocommerce-MyAccount-content a:focus-visible{
  outline:3px solid #2ccba0;
  outline-offset:3px;
}

/* Botones de acciones. */
.triwuu-account-area .woocommerce-MyAccount-content .button,
.triwuu-account-area .woocommerce-MyAccount-content .woocommerce-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:0;
  min-height:42px;
  padding:10px 16px!important;
  border:2px solid #123f35!important;
  border-radius:999px!important;
  background:#123f35!important;
  color:#fff!important;
  font-size:14px!important;
  font-weight:900!important;
  line-height:1.1!important;
  text-decoration:none!important;
  box-shadow:none!important;
}

.triwuu-account-area .woocommerce-MyAccount-content .button:hover,
.triwuu-account-area .woocommerce-MyAccount-content .woocommerce-button:hover{
  border-color:#2ccba0!important;
  background:#2ccba0!important;
  color:#123f35!important;
}

/* Avisos y estados vacíos: ocupan toda la columna y no comprimen el texto. */
.triwuu-account-area .woocommerce-MyAccount-content .woocommerce-message,
.triwuu-account-area .woocommerce-MyAccount-content .woocommerce-info,
.triwuu-account-area .woocommerce-MyAccount-content .woocommerce-error{
  position:relative;
  display:flex!important;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:14px 20px;
  width:100%!important;
  max-width:none!important;
  min-height:72px;
  margin:0 0 22px!important;
  padding:16px 18px 16px 56px!important;
  border:1px solid #dce8e3!important;
  border-top:3px solid #2ccba0!important;
  border-radius:8px!important;
  background:#fbfefd!important;
  box-shadow:none!important;
  line-height:1.45;
}

.triwuu-account-area .woocommerce-MyAccount-content .woocommerce-message::before,
.triwuu-account-area .woocommerce-MyAccount-content .woocommerce-info::before,
.triwuu-account-area .woocommerce-MyAccount-content .woocommerce-error::before{
  left:18px!important;
  top:50%!important;
  margin:0!important;
  transform:translateY(-50%);
}

.triwuu-account-area .woocommerce-MyAccount-content .woocommerce-message .button,
.triwuu-account-area .woocommerce-MyAccount-content .woocommerce-info .button,
.triwuu-account-area .woocommerce-MyAccount-content .woocommerce-error .button{
  flex:0 0 auto;
  margin:0 0 0 auto!important;
}

/* Direcciones, pedidos y formularios. */
.triwuu-account-area .woocommerce-Address-title a{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:6px 10px;
  border:1px solid #2ccba0;
  border-radius:999px!important;
  background:#e9faf5;
  text-decoration:none!important;
}

.triwuu-account-area .woocommerce-Address-title a::before{
  content:"\f464";
  font-family:dashicons!important;
  font-size:16px;
  font-weight:400;
  line-height:1;
}

.triwuu-account-area .woocommerce-orders-table__cell-order-number a{
  display:inline-flex;
  padding:4px 8px;
  border-radius:6px!important;
  background:#e9faf5;
}

.triwuu-account-area .woocommerce-MyAccount-content table{
  width:100%;
  border:1px solid #e1e6e3!important;
  border-radius:8px!important;
  overflow:hidden;
  border-collapse:separate!important;
  border-spacing:0!important;
}

.triwuu-account-area .woocommerce-MyAccount-content table th{
  background:#eff7f4;
  color:#313837;
  font-weight:900;
}

.triwuu-account-area .woocommerce-MyAccount-content table th,
.triwuu-account-area .woocommerce-MyAccount-content table td{
  padding:13px 14px!important;
  border-color:#e1e6e3!important;
}

.triwuu-account-area .woocommerce-Addresses{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.triwuu-account-area .woocommerce-Addresses::before,
.triwuu-account-area .woocommerce-Addresses::after{display:none!important;}

.triwuu-account-area .woocommerce-Address{
  float:none!important;
  width:auto!important;
  padding:18px!important;
  border:1px solid #e1e6e3;
  border-radius:8px!important;
  background:#fbfcfb;
}

.triwuu-account-area .woocommerce-MyAccount-content input[type="text"],
.triwuu-account-area .woocommerce-MyAccount-content input[type="email"],
.triwuu-account-area .woocommerce-MyAccount-content input[type="tel"],
.triwuu-account-area .woocommerce-MyAccount-content input[type="password"],
.triwuu-account-area .woocommerce-MyAccount-content select,
.triwuu-account-area .woocommerce-MyAccount-content textarea{
  min-height:48px;
  border:1px solid #aeb8b3!important;
  border-radius:8px!important;
  background:#fff;
}

.triwuu-account-area .woocommerce-MyAccount-content input:focus,
.triwuu-account-area .woocommerce-MyAccount-content select:focus,
.triwuu-account-area .woocommerce-MyAccount-content textarea:focus{
  border-color:#123f35!important;
  outline:3px solid rgba(44,203,160,.32)!important;
  outline-offset:1px;
}

@media (max-width:980px){
  body.triwuu-account-area #content .woocommerce{
    width:100%;
  }

  .triwuu-account-area .woocommerce-MyAccount-navigation,
  .triwuu-account-area .woocommerce-MyAccount-content{
    position:static;
    float:none!important;
    width:100%!important;
  }

  .triwuu-account-area .woocommerce-MyAccount-navigation{
    margin-bottom:24px!important;
  }

  .triwuu-account-area .woocommerce-MyAccount-navigation ul{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    border-top:0;
    gap:0 18px;
  }


  .triwuu-account-area .woocommerce-MyAccount-navigation a:hover,
  .triwuu-account-area .woocommerce-MyAccount-navigation .is-active a{
    padding-left:14px;
  }
}

@media (max-width:640px){
  .triwuu-account-area .woocommerce-MyAccount-content{
    padding:22px 16px;
  }

  .triwuu-account-area .woocommerce-MyAccount-navigation ul,
  .triwuu-account-area .woocommerce-Addresses{
    grid-template-columns:1fr;
  }

  .triwuu-account-area .woocommerce-MyAccount-navigation li{
    border-bottom-color:rgba(44,203,160,.24)!important;
  }

  .triwuu-account-area .woocommerce-MyAccount-navigation li:last-child{
    border-bottom-color:transparent!important;
  }

  .triwuu-account-area .woocommerce-MyAccount-navigation a{
    min-height:48px;
  }

  .triwuu-account-area .woocommerce-MyAccount-content .woocommerce-message,
  .triwuu-account-area .woocommerce-MyAccount-content .woocommerce-info,
  .triwuu-account-area .woocommerce-MyAccount-content .woocommerce-error{
    align-items:flex-start;
    padding:18px 16px 18px 50px!important;
  }

  .triwuu-account-area .woocommerce-MyAccount-content .woocommerce-message::before,
  .triwuu-account-area .woocommerce-MyAccount-content .woocommerce-info::before,
  .triwuu-account-area .woocommerce-MyAccount-content .woocommerce-error::before{
    left:16px!important;
    top:22px!important;
    transform:none;
  }

  .triwuu-account-area .woocommerce-MyAccount-content .woocommerce-message .button,
  .triwuu-account-area .woocommerce-MyAccount-content .woocommerce-info .button,
  .triwuu-account-area .woocommerce-MyAccount-content .woocommerce-error .button{
    width:100%!important;
    margin-left:0!important;
  }

  .triwuu-account-area .woocommerce-MyAccount-content table,
  .triwuu-account-area .woocommerce-MyAccount-content tbody,
  .triwuu-account-area .woocommerce-MyAccount-content tr,
  .triwuu-account-area .woocommerce-MyAccount-content td{
    max-width:100%;
  }

  .triwuu-account-area .woocommerce-MyAccount-content .button,
  .triwuu-account-area .woocommerce-MyAccount-content .woocommerce-button{
    min-height:44px;
  }
}

@media (prefers-reduced-motion:reduce){
  .triwuu-account-area .woocommerce-MyAccount-navigation a,
  .triwuu-account-area .woocommerce-MyAccount-content a{
    transition:none!important;
  }
}
