/* Forcer la couleur des onglets .tab-link en #ecca74 */
.account-nav .tab-link {
  color: #ecca74 !important;
  border-color: #ecca74 !important;
}

.account-nav .tab-link.is-active {
  background: #ecca74 !important;
  color: #fff !important;
  border-color: transparent !important;
}
/* Forcer tous les textes roses du container account en #ecca74 */
.account-layout,
.account-layout h1,
.account-layout p,
.account-layout label,
.account-layout a,
.account-layout .register-step-indicator,
.account-layout .register-step,
.account-layout .forgot-link a,
.account-layout .social-icons a,
.account-layout .btn,
.account-layout .btn-secondary 
.account-nav .tab-link {

  color: #ecca74 !important;
  border-color: #ecca74 !important;
}

.account-layout .btn {
  background: #ecca74 !important;
  color: #fff !important;
}
:root {
    --bg: #ffefbe;
    --txt: #000000;
    --cover: #868686;
    --bg2: #fff2d2ab;
    --bckgrnd: linear-gradient(90deg, #ffefbc, #ecca74);
    --bglg: #ecca74;
}
 

@media (prefers-color-scheme: dark) {
     :root {
        --bg: #2a2a2a;
        --txt: #ffffff;
        --cover: #2c2c2c;
        --bg2: #1e1e1e;
        --bckgrnd: linear-gradient(90deg, #484848, #ad8e58);
        --bglg: #ad8e58;

    }
  }
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800;900&display=swap');

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: 'Poppins', sans-serif;
}

body {
  display: flex;
  flex-direction: column;
  margin: 0;
  justify-content: flex-start;
  align-items: stretch;
  min-height: 100svh;
  padding-top: 72px;
  padding-bottom: 0;
  background: var(--bckgrnd);
  color: var(--txt);
  scrollbar-gutter: stable;
}

#navbar-container {
  width: 100%;
}

/* Forcer les logos navbar (principal et artwork) en blanc sur account.html */
.navbar .logo img,
.navbar ul li a.withlogo img {
  filter: brightness(0) invert(1) !important;
}

.account-layout {
  width: 100%;
  margin: 0;
  display: block;
}

.account-nav {
  position: sticky;
  top: 58px;
  z-index: 30;
  width: fit-content;
  max-width: calc(100% - 28px);
  margin: 12px auto 0;
  background: color-mix(in oklab, var(--bg2) 88%, transparent);
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 999px;
  padding: 8px;
  display: flex;
  flex-direction: row;
  overflow-x: auto;
  gap: 8px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.account-nav .tab-link {
  text-decoration: none;
  color: var(--txt);
  font-weight: 600;
  font-size: 0.95rem;
  padding: 10px 16px;
  border-radius: 999px;
  border: 1px solid rgba(0, 0, 0, 0.12);
  background: color-mix(in oklab, var(--bg2) 90%, transparent);
  cursor: pointer;
  white-space: nowrap;
}

.account-nav .tab-link:hover {
  background: rgba(116, 148, 236, 0.16);
}

.account-nav .tab-link.is-active {
  background: var(--bglg);
  border-color: transparent;
  color: #fff;
}

.account-wrap {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.account-header,
.card-section {
  width: 100%;
  max-width: none;
  margin: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 30px clamp(18px, 4vw, 46px);
  box-shadow: none;
}

.account-header {
  display: none;
}

.account-wrap[data-active-tab="profil"] .account-header {
  display: block;
  border-bottom: 0;
}

.tab-section {
  display: none;
  min-height: calc(100svh - 124px);
  border-top: 0;
}

.tab-section.is-active {
  display: block;
}

.account-header h1 {
  font-size: 1.7rem;
  margin-bottom: 4px;
}

.note {
  font-size: 0.95rem;
  opacity: 0.86;
}

.update-required {
  margin-top: 8px;
  color: #b45309;
  font-weight: 600;
}

.badge-row {
  margin-top: 12px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.badge {
  display: none;
  color: #fff;
  padding: 4px 10px;
  border-radius: 20px;
  font-size: 12px;
}

.badge a {
  color: inherit;
  text-decoration: none;
}

.badge-admin { background: #111827; }
.badge-vip { background: #7c3aed; }
.badge-artist { background: #0f766e; }
.badge-test { background: #92400e; }

.card-section h2 {
  margin-bottom: 10px;
  font-size: 1.1rem;
}

.card-section {
  position: relative;
}

.card-section.is-loading {
  pointer-events: none;
}

.loading-overlay {
  position: absolute;
  inset: 12px;
  border-radius: 16px;
  padding: 12px;
  display: none;
  z-index: 2;
  background: color-mix(in oklab, var(--bg2) 84%, transparent);
  border: 1px dashed rgba(116, 148, 236, 0.35);
  backdrop-filter: blur(1px);
}

.card-section.is-loading .loading-overlay {
  display: grid;
  align-content: start;
  gap: 10px;
}

.loading-overlay .bar {
  display: block;
  height: 12px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(116, 148, 236, 0.14) 0%, rgba(116, 148, 236, 0.36) 40%, rgba(116, 148, 236, 0.14) 100%);
  background-size: 240% 100%;
  animation: sectionShimmer 1.2s linear infinite;
}

.loading-overlay .w-35 { width: 35%; }
.loading-overlay .w-36 { width: 36%; }
.loading-overlay .w-38 { width: 38%; }
.loading-overlay .w-40 { width: 40%; }
.loading-overlay .w-42 { width: 42%; }
.loading-overlay .w-45 { width: 45%; }
.loading-overlay .w-60 { width: 60%; }
.loading-overlay .w-65 { width: 65%; }
.loading-overlay .w-68 { width: 68%; }
.loading-overlay .w-70 { width: 70%; }
.loading-overlay .w-72 { width: 72%; }
.loading-overlay .w-82 { width: 82%; }
.loading-overlay .w-84 { width: 84%; }
.loading-overlay .w-88 { width: 88%; }
.loading-overlay .w-90 { width: 90%; }

@keyframes sectionShimmer {
  from { background-position: 100% 0; }
  to { background-position: -100% 0; }
}

.sub-title {
  margin: 14px 0 6px;
}

.avatar-area {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}

.avatar-img {
  width: 92px;
  height: 92px;
  border-radius: 50%;
  object-fit: cover;
  background: rgba(0, 0, 0, 0.08);
  border: 2px solid rgba(0, 0, 0, 0.08);
}

.grid-2 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 10px;
}

.grid-2 .full {
  grid-column: 1 / -1;
}

.input-box {
  position: relative;
  margin: 0;
}

.input-box input {
  width: 100%;
  padding: 13px 50px 13px 20px;
  background: #fff2d5;
  border-radius: 14px;
  border: none;
  outline: none;
  font-size: 15px;
  color: #111;
  font-weight: 500;
}

.input-box input::placeholder {
  color: #888;
  font-weight: 400;
}

.input-box i {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 18px;
  color: #888;
}

.btn {
  width: 100%;
  height: 46px;
  background: var(--bglg);
  border-radius: 50px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  border: none;
  cursor: pointer;
  font-size: 15px;
  color: #fff;
  margin-bottom: 15px;
  font-weight: 600;
  margin-top: 12px;
}

.mini-row {
  display: flex;
  gap: 10px;
  width: 100%;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  margin-top: 6px;
}

.mini-btn {
  padding: 10px 14px;
  border-radius: 999px;
  cursor: pointer;
  border: 1px solid rgba(0, 0, 0, 0.15);
  background: transparent;
  color: inherit;
  font-weight: 600;
  margin-top: 4px;
}

.danger {
  background: transparent;
  color: #b91c1c;
  border: 1px solid rgba(220, 38, 38, 0.45);
}

.email-pref-block {
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 16px;
  padding: 12px;
  background: color-mix(in oklab, var(--bg2) 93%, transparent);
}

.email-pref-row {
  display: flex;
  align-items: center;
  gap: 10px;
  font-weight: 600;
}

.email-pref-row input[type="checkbox"] {
  width: 18px;
  height: 18px;
}

.email-subprefs {
  margin-top: 10px;
  margin-left: 28px;
  display: grid;
  gap: 10px;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transform: translateY(-6px);
  transition: max-height 260ms ease, opacity 220ms ease, transform 220ms ease;
}

.email-subprefs.is-open {
  max-height: 130px;
  opacity: 1;
  transform: translateY(0);
}

@media (prefers-color-scheme: dark) {
  .account-nav,
  .account-header,
  .card-section {
    border-color: rgba(255, 255, 255, 0.12);
  }

  .avatar-img {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(255, 255, 255, 0.1);
  }

  .mini-btn {
    border-color: rgba(255, 255, 255, 0.18);
  }

  .email-pref-block {
    border-color: rgba(255, 255, 255, 0.16);
  }

  .account-nav .tab-link {
    border-color: rgba(255, 255, 255, 0.2);
    background: color-mix(in oklab, var(--bg2) 70%, transparent);
    color: var(--txt);
  }

  .input-box input {
    background: #eeeeee;
    color: #000000;
  }
}

@media screen and (max-width: 900px) {
  .account-nav {
    top: 56px;
    width: calc(100% - 14px);
    max-width: none;
  }

  .account-nav .tab-link {
    white-space: nowrap;
  }
}

@media screen and (max-width: 650px) {
  body {
    padding-top: 64px;
  }

  .account-layout {
    width: 100%;
  }

  .grid-2 {
    grid-template-columns: 1fr;
  }

  .account-header,
  .card-section {
    padding: 22px 14px;
  }
}
