:root {
  --wiyp-primary: #093266;
  --wiyp-secondary: #00a8d5;
  --wiyp-tertiary: #39b4a8;
  --wiyp-contrast: #f6861f;
  --wiyp-ink: #172033;
  --wiyp-muted: #617084;
  --wiyp-border: #d9e3ec;
  --wiyp-surface: #ffffff;
  --wiyp-surface-alt: #f4f8fb;
  --wiyp-success: #237a57;
  --wiyp-warning: #9a5b06;
  --wiyp-error: #b42318;
  --wiyp-radius: 8px;
  --wiyp-shadow: 0 10px 30px rgba(9, 50, 102, 0.1);
  --wiyp-account-image: url("../images/wiyp-account-theme.jpg");
}

.wiyp-dashboard,
.woocommerce-account .woocommerce,
.woocommerce-account .site-main {
  color: var(--wiyp-ink);
}

.wiyp-dashboard__intro,
.woocommerce-account .woocommerce-MyAccount-content > p:first-child {
  background: linear-gradient(90deg, rgba(9, 50, 102, 0.94), rgba(0, 168, 213, 0.78)), var(--wiyp-account-image) center right/auto 100% no-repeat;
  border-radius: var(--wiyp-radius);
  color: #ffffff;
  margin-bottom: 1.5rem;
  padding: clamp(1.25rem, 3vw, 2.25rem);
}
.wiyp-dashboard__intro a,
.woocommerce-account .woocommerce-MyAccount-content > p:first-child a {
  color: #ffffff;
  font-weight: 700;
  text-decoration-thickness: 0.1em;
  text-underline-offset: 0.18em;
}

.wiyp-dashboard__grid,
.woocommerce-account .wiyp-card-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr));
  margin: 1.5rem 0;
}

.wiyp-card,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address,
.woocommerce-account .woocommerce-MyAccount-content .order,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-order-details,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-customer-details {
  background: var(--wiyp-surface);
  border: 1px solid var(--wiyp-border);
  border-radius: var(--wiyp-radius);
  box-shadow: var(--wiyp-shadow);
  padding: 1.25rem;
}

.wiyp-card__title,
.woocommerce-account .woocommerce-Address-title h3,
.woocommerce-account .woocommerce-order-details__title,
.woocommerce-account .woocommerce-column__title {
  color: var(--wiyp-primary);
  font-size: 1.15rem;
  line-height: 1.3;
  margin: 0 0 0.75rem;
}

.wiyp-card__meta {
  color: var(--wiyp-muted);
  font-size: 0.95rem;
  margin: 0;
}

.wiyp-card__stat {
  color: var(--wiyp-primary);
  display: block;
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: 800;
  line-height: 1;
  margin-bottom: 0.4rem;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
  background: var(--wiyp-primary);
  border-radius: var(--wiyp-radius);
  margin-bottom: 1.5rem;
  overflow: hidden;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.woocommerce-account .woocommerce-MyAccount-navigation li {
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
  margin: 0;
}
.woocommerce-account .woocommerce-MyAccount-navigation li:last-child {
  border-bottom: 0;
}
.woocommerce-account .woocommerce-MyAccount-navigation a {
  color: #ffffff;
  display: block;
  font-weight: 700;
  padding: 0.9rem 1rem;
}
.woocommerce-account .woocommerce-MyAccount-navigation a:focus, .woocommerce-account .woocommerce-MyAccount-navigation a:hover {
  background: var(--wiyp-secondary);
  color: var(--wiyp-primary);
  outline: 0;
}
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a {
  background: var(--wiyp-secondary);
  color: var(--wiyp-primary);
  outline: 0;
}

.woocommerce-account .woocommerce-MyAccount-content {
  min-width: 0;
}

.woocommerce-account table.shop_table,
.woocommerce-account table.account-orders-table {
  border: 1px solid var(--wiyp-border);
  border-radius: var(--wiyp-radius);
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
}
.woocommerce-account table.shop_table th,
.woocommerce-account table.shop_table td,
.woocommerce-account table.account-orders-table th,
.woocommerce-account table.account-orders-table td {
  border-bottom: 1px solid var(--wiyp-border);
  padding: 0.9rem;
  vertical-align: middle;
}
.woocommerce-account table.shop_table thead th,
.woocommerce-account table.account-orders-table thead th {
  background: var(--wiyp-surface-alt);
  color: var(--wiyp-primary);
  font-weight: 800;
}
.woocommerce-account table.shop_table tr:last-child td,
.woocommerce-account table.account-orders-table tr:last-child td {
  border-bottom: 0;
}

.woocommerce-account fieldset,
.wiyp-form {
  background: var(--wiyp-surface);
  border: 1px solid var(--wiyp-border);
  border-radius: var(--wiyp-radius);
  margin: 1.25rem 0;
  padding: 1.25rem;
}

.woocommerce-account legend,
.wiyp-form__legend {
  color: var(--wiyp-primary);
  font-weight: 800;
  padding: 0 0.35rem;
}

.woocommerce-account label,
.wiyp-form label {
  color: var(--wiyp-primary);
  font-weight: 700;
}

.woocommerce-account input[type=text],
.woocommerce-account input[type=email],
.woocommerce-account input[type=tel],
.woocommerce-account input[type=password],
.woocommerce-account input[type=number],
.woocommerce-account input[type=url],
.woocommerce-account select,
.woocommerce-account textarea,
.wiyp-form input,
.wiyp-form select,
.wiyp-form textarea {
  background: #ffffff;
  border: 1px solid var(--wiyp-border);
  border-radius: 6px;
  box-shadow: none;
  color: var(--wiyp-ink);
  min-height: 2.75rem;
  padding: 0.7rem 0.8rem;
  width: 100%;
}

.woocommerce-account input:focus,
.woocommerce-account select:focus,
.woocommerce-account textarea:focus,
.wiyp-form input:focus,
.wiyp-form select:focus,
.wiyp-form textarea:focus {
  border-color: var(--wiyp-secondary);
  box-shadow: 0 0 0 3px rgba(0, 168, 213, 0.2);
  outline: 0;
}

.woocommerce-account .form-row {
  margin-bottom: 1rem;
}

.woocommerce-account .button,
.woocommerce-account button.button,
.woocommerce-account input.button,
.woocommerce-account a.button,
.wiyp-button {
  align-items: center;
  background: var(--wiyp-primary);
  border: 1px solid var(--wiyp-primary);
  border-radius: 6px;
  color: #ffffff;
  cursor: pointer;
  display: inline-flex;
  font-weight: 800;
  justify-content: center;
  line-height: 1.2;
  min-height: 2.75rem;
  padding: 0.75rem 1rem;
  text-decoration: none;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
}
.woocommerce-account .button:focus, .woocommerce-account .button:hover,
.woocommerce-account button.button:focus,
.woocommerce-account button.button:hover,
.woocommerce-account input.button:focus,
.woocommerce-account input.button:hover,
.woocommerce-account a.button:focus,
.woocommerce-account a.button:hover,
.wiyp-button:focus,
.wiyp-button:hover {
  background: var(--wiyp-secondary);
  border-color: var(--wiyp-secondary);
  color: var(--wiyp-primary);
  outline: 0;
  transform: translateY(-1px);
}

.wiyp-button--secondary,
.woocommerce-account .woocommerce-Button--previous,
.woocommerce-account .woocommerce-Button--next {
  background: var(--wiyp-tertiary);
  border-color: var(--wiyp-tertiary);
  color: var(--wiyp-primary);
}

.wiyp-button--accent,
.woocommerce-account .order-again .button {
  background: var(--wiyp-contrast);
  border-color: var(--wiyp-contrast);
  color: #ffffff;
}

.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-error,
.wiyp-notice {
  border: 0;
  border-left: 5px solid var(--wiyp-secondary);
  border-radius: var(--wiyp-radius);
  box-shadow: var(--wiyp-shadow);
  color: var(--wiyp-ink);
  margin-bottom: 1rem;
  padding: 1rem 1.25rem;
}

.woocommerce-account .woocommerce-message,
.wiyp-notice--success {
  background: #eef9f4;
  border-left-color: var(--wiyp-success);
}

.woocommerce-account .woocommerce-info,
.wiyp-notice--info {
  background: #eef9fd;
  border-left-color: var(--wiyp-secondary);
}

.woocommerce-account .woocommerce-error,
.wiyp-notice--error {
  background: #fff1ef;
  border-left-color: var(--wiyp-error);
}

.wiyp-notice--warning {
  background: #fff7e8;
  border-left-color: var(--wiyp-contrast);
}

@media (min-width: 768px) {
  .woocommerce-account .woocommerce {
    align-items: start;
    display: grid;
    gap: 2rem;
    grid-template-columns: minmax(13rem, 0.3fr) minmax(0, 1fr);
  }
  .woocommerce-account .woocommerce-notices-wrapper,
  .woocommerce-account .woocommerce-message,
  .woocommerce-account .woocommerce-info,
  .woocommerce-account .woocommerce-error {
    grid-column: 1/-1;
  }
  .woocommerce-account .woocommerce-MyAccount-navigation,
  .woocommerce-account .woocommerce-MyAccount-content {
    float: none;
    width: auto;
  }
}
@media (max-width: 767px) {
  .wiyp-dashboard__intro,
  .woocommerce-account .woocommerce-MyAccount-content > p:first-child {
    background: linear-gradient(180deg, rgba(9, 50, 102, 0.96), rgba(0, 168, 213, 0.84)), var(--wiyp-account-image) center bottom/cover no-repeat;
    padding: 1.1rem;
  }
  .woocommerce-account .woocommerce-MyAccount-navigation a {
    padding: 0.8rem 0.9rem;
  }
  .woocommerce-account table.shop_table,
  .woocommerce-account table.account-orders-table {
    display: block;
    overflow-x: auto;
    white-space: nowrap;
  }
  .woocommerce-account fieldset,
  .wiyp-form,
  .wiyp-card,
  .woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address,
  .woocommerce-account .woocommerce-MyAccount-content .order,
  .woocommerce-account .woocommerce-MyAccount-content .woocommerce-order-details,
  .woocommerce-account .woocommerce-MyAccount-content .woocommerce-customer-details {
    padding: 1rem;
  }
  .woocommerce-account .button,
  .woocommerce-account button.button,
  .woocommerce-account input.button,
  .woocommerce-account a.button,
  .wiyp-button {
    width: 100%;
  }
}
