/* CV Area de Cliente — rótulos com o mesmo design das categorias do catalogo.
 * CSS apenas na pagina WooCommerce Minha Conta; sem alterar markup ou formulários.
 * Referencia: src/styles/catalog-headings.css (.cvl-search-category-tile).
 */

/* Porto presents this navigation as a narrow left sidebar.
 * Switch BOTH navigation and content to full width so tiles match catalog categories. */
body.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation,
body.woocommerce-account .woocommerce-MyAccount-navigation {
  box-sizing:border-box;
  display:block!important;
  float:none!important;
  clear:both;
  width:100%!important;
  max-width:none!important;
  min-width:0;
  margin:0 0 24px!important;
  padding:0!important;
}
body.woocommerce-account .woocommerce .woocommerce-MyAccount-content,
body.woocommerce-account .woocommerce-MyAccount-content {
  box-sizing:border-box;
  float:none!important;
  clear:both;
  width:100%!important;
  max-width:none!important;
  min-width:0;
  margin:0!important;
}
body.woocommerce-account .woocommerce .woocommerce-MyAccount-navigation ul,
body.woocommerce-account .woocommerce-MyAccount-navigation ul {
  display:grid!important;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li {
  display:block;
  min-width:0;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
  box-sizing:border-box;
  display:flex!important;
  min-width:0;
  min-height:72px;
  width:100%;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:12px 10px!important;
  border:1px solid #e3e8ea!important;
  border-radius:9px!important;
  background:#fff!important;
  box-shadow:0 2px 8px rgba(18,38,48,.035);
  color:#26343b!important;
  font-family:"DM Sans",system-ui,sans-serif;
  font-size:11px!important;
  font-weight:850!important;
  line-height:1.3!important;
  letter-spacing:0;
  text-align:center;
  text-decoration:none!important;
  text-transform:uppercase;
  white-space:normal;
  overflow-wrap:anywhere;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:focus-visible,
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation ul li a[aria-current="page"] {
  border-color:#9bcfc5!important;
  background:#f3faf8!important;
  box-shadow:0 7px 18px rgba(18,38,48,.08);
  color:#005c53!important;
  transform:translateY(-1px);
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:focus-visible {
  outline:2px solid #007267!important;
  outline-offset:2px;
}

/* Cabecalhos: as mesmas cores, tipografia e contorno suave das categorias. */
.woocommerce-account :is(.page-title, .entry-title, .woocommerce-MyAccount-content>h2, .woocommerce-MyAccount-content>h3) {
  color:#101820;
  font-family:Manrope,"DM Sans",system-ui,sans-serif;
  font-weight:800;
  letter-spacing:-.025em;
  line-height:1.2;
}
.woocommerce-account :is(.page-title, .entry-title) {
  margin-bottom:24px;
  padding:22px clamp(17px,2.6vw,32px);
  border:1px solid #e0ebe8;
  border-left:4px solid #007267;
  border-radius:12px;
  background:linear-gradient(108deg,#f3faf8 0%,#fff 74%);
  font-size:clamp(25px,3vw,36px);
}
.woocommerce-account .woocommerce-MyAccount-content {
  min-width:0;
  color:#26343b;
  font-family:"DM Sans",system-ui,sans-serif;
}
.woocommerce-account .woocommerce-MyAccount-content :is(h2,h3) {
  margin:0 0 16px;
  color:#172b3a;
  font-weight:800;
}
.woocommerce-account .woocommerce-MyAccount-content p {
  line-height:1.65;
}
.woocommerce-account .woocommerce-MyAccount-content a:not(.button):hover {
  color:#007267;
}

/* Tabelas da conta: encomendas, transferencias e favoritos. */
.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-orders-table,
.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-table,
.woocommerce-account .woocommerce-MyAccount-content table.shop_table {
  max-width:100%;
  border:1px solid #dfe5e8;
  border-radius:10px;
  border-collapse:separate;
  border-spacing:0;
  background:#fff;
  box-shadow:0 3px 12px rgba(20,34,45,.055);
}
.woocommerce-account .woocommerce-MyAccount-content :is(table.woocommerce-orders-table,table.woocommerce-table,table.shop_table) thead th {
  padding:13px 14px;
  border-bottom:1px solid #dfe5e8;
  background:#f7f9f9;
  color:#53626c;
  font-size:11px;
  font-weight:850;
  letter-spacing:.035em;
  text-transform:uppercase;
}
.woocommerce-account .woocommerce-MyAccount-content :is(table.woocommerce-orders-table,table.woocommerce-table,table.shop_table) tbody td {
  padding:13px 14px;
  border-color:#edf0f2;
  vertical-align:middle;
}

/* Rótulos com bordas arredondadas e cor contextual: estados nao mudam de sentido. */
.woocommerce-account .woocommerce-MyAccount-content :is(
  .woocommerce-orders-table__cell-order-status,
  .woocommerce-order-status,
  .woocommerce-order-overview__status,
  .order-status,
  .woocommerce-info .cvwl-label
) {
  color:#007267;
  font-size:11px;
  font-weight:850;
  line-height:1.3;
}

/* Botões com preenchimento simétrico e estados de hover consistentes. */
.woocommerce-account .woocommerce-MyAccount-content :is(
  a.button,button.button,button[type="submit"],
  input[type="submit"],.woocommerce-Button,.woocommerce-button
) {
  box-sizing:border-box;
  display:inline-flex;
  min-height:40px;
  max-width:100%;
  align-items:center;
  justify-content:center;
  padding:9px 15px!important;
  border:1px solid #009a56;
  border-radius:5px;
  background:#009a56;
  color:#fff;
  font-size:11px;
  font-weight:850;
  line-height:1.3;
  text-align:center;
  text-decoration:none;
  white-space:normal;
}
.woocommerce-account .woocommerce-MyAccount-content :is(
  a.button,button.button,button[type="submit"],input[type="submit"],.woocommerce-Button,.woocommerce-button
):hover {
  border-color:#087d4b;
  background:#087d4b;
  color:#fff;
}
.woocommerce-account .woocommerce-MyAccount-content :is(
  a.button,button.button,button[type="submit"],input[type="submit"],.woocommerce-Button,.woocommerce-button
):focus-visible {
  outline:2px solid #007267;
  outline-offset:3px;
}

/* Formulários e moradas mantêm todos os campos originais. */
.woocommerce-account .woocommerce-MyAccount-content :is(
  .woocommerce-Address,.woocommerce-EditAccountForm,.woocommerce-address-fields,
  .woocommerce-form
) {
  min-width:0;
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address {
  padding:18px;
  border:1px solid #e3e8ea;
  border-radius:9px;
  background:#fff;
  box-shadow:0 2px 8px rgba(18,38,48,.035);
}
.woocommerce-account .woocommerce-MyAccount-content :is(
  input.input-text,select,textarea
) {
  box-sizing:border-box;
  max-width:100%;
  border:1px solid #d6dfe2;
  border-radius:5px;
}
.woocommerce-account .woocommerce-MyAccount-content :is(input.input-text,select,textarea):focus-visible {
  outline:2px solid #007267;
  outline-offset:1px;
}

@media (max-width:767.98px) {
  .woocommerce-account .woocommerce-MyAccount-navigation {
    width:100%;
    max-width:100%;
    float:none;
  }
  .woocommerce-account .woocommerce-MyAccount-navigation ul {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }
  .woocommerce-account .woocommerce-MyAccount-navigation ul li a {
    min-height:64px;
    padding:11px 8px!important;
    font-size:10px!important;
  }
  .woocommerce-account :is(.page-title,.entry-title) {
    margin-bottom:20px;
    padding:19px 17px;
    border-radius:10px;
    font-size:clamp(24px,6vw,29px);
  }
  .woocommerce-account .woocommerce-MyAccount-content :is(table.woocommerce-orders-table,table.woocommerce-table,table.shop_table) :is(td,th) {
    padding:10px 9px;
  }
}
@media (max-width:360px) {
  .woocommerce-account .woocommerce-MyAccount-navigation ul {
    grid-template-columns:1fr 1fr;
  }
  .woocommerce-account .woocommerce-MyAccount-navigation ul li a {
    min-height:60px;
    font-size:9px!important;
  }
}
@media (prefers-reduced-motion:reduce) {
  .woocommerce-account .woocommerce-MyAccount-navigation ul li a {
    transition:none;
    transform:none!important;
  }
}

/* Encomendas: link da fatura disponibilizado manualmente no backoffice. */
.woocommerce-account .woocommerce-MyAccount-content :is(
  .woocommerce-orders-table__cell-cv-invoice,
  .woocommerce-orders-table__cell--cv-invoice,
  td.cv-invoice
) {
  vertical-align:middle;
}
.woocommerce-account .woocommerce-MyAccount-content .cvwl-invoice-link {
  box-sizing:border-box;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:35px;
  padding:8px 12px;
  border:1px solid #c9e5df;
  border-radius:5px;
  background:#eef8f6;
  color:#007267;
  font-size:11px;
  font-weight:850;
  line-height:1.25;
  text-align:center;
  text-decoration:none;
  white-space:normal;
}
.woocommerce-account .woocommerce-MyAccount-content .cvwl-invoice-link:hover,
.woocommerce-account .woocommerce-MyAccount-content .cvwl-invoice-link:focus-visible {
  border-color:#9bcfc5;
  background:#e1f3ef;
  color:#005c53;
}
.woocommerce-account .woocommerce-MyAccount-content .cvwl-invoice-link:focus-visible {
  outline:2px solid #007267;
  outline-offset:2px;
}
.woocommerce-account .woocommerce-MyAccount-content .cvwl-no-invoice {
  color:#829098;
  font-size:12px;
}
.woocommerce-account .woocommerce-MyAccount-content .cvwl-invoice-detail {
  margin:20px 0 24px;
}
/* Se o Porto adicionar um item de menu estatico, tambem deve desaparecer. */
.woocommerce-account .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--downloads {
  display:none!important;
}
