/*
Theme Name: my donaki
Theme URI: https://my.donaki.com/donaki-theme/
Description: my donaki theme is for the website my.donaki.com
Author: Scorpius XI team
Author URI: https://scorpiusxi.com/
Template: hello-elementor
Version: 1.1.2
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
*/

/* ============================================================
   TOKENS / BASE
   ============================================================ */

:root{
  --primary-color:#6b6b6b;/*#944dbb;*/
  --primary-color-accent:#353535;
  --primary-hover-color:#000;
  --secondary-color:grey; /*#32c4ba;*/
  --secondary-hover-color:darkgrey;
  
  --coloredbg-color:#944dbb45;
  
  --dak-background-grey:#d4d4d4;
  
  --icon-color: #6b6b6b;
  --icon-color-active:#944dbb;
  --primary-font:"Fredoka";
  --secondary-font:"Lexend";
  --donaki-color:#944dbb;
  --card-radius:20px;
  --btn-radius:50px;

  --shadow:0 4px 20px rgba(148,77,187,.12);
  --shadow-hover:0 8px 32px rgba(148,77,187,.22);
  --transition:.25s cubic-bezier(.4,0,.2,1);

  --button-hover-bg-color:#ebebeb;

  --menu1-height:72px;
  --menu2-height:64px;
  --friends-height:70px;
  --header-offset:206px;
}

/* ============================================================
   TEMPORARY HIDE BARCODE FROM NON BETA TESTERS
   ============================================================ */

body:not(.show-barcode) #barcode-icon {
    display: none !important;
}

/* ============================================================
   GENERAL LAYOUT
   ============================================================ */
/* ============================================================
   BASE
   ============================================================ */

html {
  color: var(--primary-color);
  font-family: var(--primary-font);
  margin: 0 auto;
}

html,
body {
  margin: 0;
  padding: 0;
  width: 100%;
  min-height: 100%;
}

body {
  margin: 0 auto;
  /*background: linear-gradient(to bottom, #fff 206px, #944dbb 380px, #944dbb 100%);*/
}

header {
  margin: 0;
}

main{
  min-height: 300px;
  padding: 10px 0;
  color: var(--primary-color);
  width: unset !important;
  margin: 172px 10px;
}

@media (min-width:767px) {
  body {
/*    background: linear-gradient(to bottom, #fff 228px, #944dbb 402px, #944dbb 100%);*/
  }

  main {
    margin: 218px 10px;
  }
}

a {
  color: inherit;
  text-decoration: none !important;
}

a:hover {
  text-decoration: none !important;
}

a,
button,
img {
  -webkit-tap-highlight-color: transparent;
}

/*h1 { margin: 0; }*/

h1.entry-title { display: none !important; }

article { margin: 0 !important; }

.site-title a { color: var(--primary-color); }

.entry-title{
  max-width: none !important;
  padding: 0;
}

.elementor-section,
.elementor-container,
.e-con,
.elementor-widget-wrap,
.elementor-element-populated {
  background: transparent;
}

.elementor-message.elementor-message-danger {
  color: #fff !important;
  background:#d42b2b !important;
  padding:12px;
  border-radius: 30px;
}

.elementor-heading-title {
  margin-left:15px !important;
}

.elementor-icon a:hover {
  background-color: white !important;
}

.cover-bg-overlay {
  background-color: var(--coloredbg-color);
}

/* ============================================================
   DONAKI - DEFAULT
   ============================================================ */
/* ============================================================
   DEFAULT MESSAGE BOX - GRID STYLE 1 Column
   ============================================================ */

.donaki-default-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}

.donaki-default-card {
  background: #fff;
  border-radius: 20px;
  padding: 10px;
  box-shadow: 0 8px 24px rgba(0,0,0,0.06);
}

.donaki-default-grid-auto {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(189px, 189px));
  gap: 10px;
  justify-content: center;
}

.donaki-default-card-auto {
  width: 145px;
  background: #fff;
  border-radius: 20px;
  padding: 22px;
  box-shadow: 0 8px 24px rgba(0,0,0,0.06);
}

.donaki-default-card-image-wrap {
  text-align:center;
}

.donaki-default-card-image {
  height: 150px;
  width: auto;
  border-radius: 50%;
}

.donaki-default-card-body {
  height:70px;
  padding:4px;
  text-align:center;
}

.donaki-default-card-body-title {
  font-size: 19px;
  font-weight: 700;
}

.donaki-default-card-body-title a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-width: 0;
}

.donaki-default-card-body-text {
  margin: 6px auto;
  font-size: 13px;
  line-height: 1.3;
  text-align: center;
  opacity: 0.85;
}

.donaki-default-card-footer {
  padding: 9px 4px 4px 4px;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap: 5px;
}

.donaki-default-card-actions {
  display:flex;
  gap:5px;
  align-items:center;
  justify-content:center;
}

.donaki-default-title {
  font-size: 22px;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 12px;
}

.donaki-default-text {
  font-size: 15px;
  line-height: 1.6;
}

.donaki-default-button {
  background-color: var(--primary-color);
  border: none;
  border-radius:30px;
  color:#fff;
  padding: 10px 15px;
  margin-left: auto;
  margin-right: auto;
  width: fit-content;
}

.donaki-default-button:hover {
  background-color: var(--button-hover-bg-color);
  border: 1px solid var(--primary-color);
  color:var(--primary-color);
}

.donaki-default-button-inverted {
  background-color: #fff;
  border: 1px solid var(--primary-color);
  border-radius:30px;
  color:var(--primary-color);
  padding: 10px 15px;
  margin-left: auto;
  margin-right: auto;
  width:fit-content;
}

.donaki-default-button-inverted:hover {
  background-color: var(--button-hover-bg-color);
}

.donaki-default-spacer10 {
  margin:10px 0;
}

.donaki-default-spacer30 {
  margin:30px 0;
}

.donaki-default-spacer2footer {
  margin: 0 0 300px 0;
}

.donaki-default-form-field{
  border: 1px solid var(--primary-color);
  border-radius: 30px;
  width:100%;
  padding: 4px 10px;
  box-sizing: border-box;
  font-size: 16px;
}

.donaki-default-message-success {
  background: #88fb84;
  padding: 10px;
  border: 1px solid var(--primary-color);
  color: var(--primary-color);
  border-radius: 10px;
  margin-bottom: 10px;
  text-align: center;
}

.donaki-default-message-error {
  background: #ff6f6f;
  padding: 10px;
  border: 1px solid var(--primary-color);
  color: #fff;
  border-radius: 10px;
  margin-bottom: 10px;
  text-align: center;
}

.donaki-default-small-txt {
  font-size: 12px;
  display: flex;
  align-items: center;
}

/* ============================================================
   TERMS AND CONDITIONS - COOKIES
   ============================================================ */

#terms-and-conditions,
#cookies-policy {
  margin: 10px;
  padding: 115px 10px 10px 10px;
  background: #ffffff;
}


/* ============================================================
   FIRST-STEPS - DIFFERENCES
   ============================================================ */

body.donaki-first-steps,
body.donaki-step-1,
body.donaki-step-2,
body.donaki-step-3,
body.donaki-step-4,
body.donaki-step-5 {
/*  background: linear-gradient(to bottom, #fff 90px, #944dbb 350px, #944dbb 100%);*/
}

@media (min-width:767px) {
  body.donaki-first-steps,
  body.donaki-step-1,
  body.donaki-step-2,
  body.donaki-step-3,
  body.donaki-step-4,
  body.donaki-step-5 {
/*    background: linear-gradient(to bottom, #fff 115px, #944dbb 402px, #944dbb 100%);*/
  }
}

body.donaki-first-steps main,
body.donaki-step-1 main,
body.donaki-step-2 main,
body.donaki-step-3 main,
body.donaki-step-4 main,
body.donaki-step-5 main {
  margin: 140px 10px 0 10px;
}

body.donaki-first-steps #friends_menu_images_container,
body.donaki-step-2 #friends_menu_images_container {
  display:none;
}

.notice-wrap { pointer-events: none; }

.donaki-step-text img {
    height: 22px;
    width: 22px;
    transform: rotate(-25deg);
    align-items: center;
    vertical-align: middle;
}

/* ============================================================
   DONAKI LOGIN PAGE
   ============================================================ */

body.donaki-login-template {
  margin: 0 auto;
/*  background: linear-gradient(to bottom, #fff 0px, #944dbb 200px, #944dbb 100%);*/
}

body.donaki-login-template main{
  min-height: 550px;
  color: var(--primary-color);
  width: unset !important;
  margin: 20px 10px;
}

.donaki-login-grid {
  display: grid;
}

.donaki-login-card {
  background: #fff;
  border-radius: 20px;
  padding: 22px;
  box-shadow: 0 8px 24px rgb(0 0 0 / .06);
  justify-self: center;
  max-width: 320px;
}

body.donaki-step-4 #friends-icon a {
    color: var(--icon-color-active) !important;
    opacity:unset!important;
    height:26px!important;
    font-size:26px!important;
}

/* ============================================================
   SEARCH - DIFFERENCES
   ============================================================ */

.friendship-button.pending_friend.generic-button,
.friendship-button.is_friend.generic-button {
  background-color: #fff;
  border: 1px solid var(--primary-color);
  border-radius: 30px;
  color: var(--primary-color) !important;
  padding: 5px 10px;
}

.friendship-button.not_friends.generic-button,
.friendship-button.awaiting_response_friend.generic-button {
  background-color: var(--primary-color);
  border: 1px solid var(--primary-color);
  border-radius: 30px;
  color: #fff;
  padding: 5px 10px;
}

.friendship-button.not_friends.generic-button a,
.friendship-button.awaiting_response_friend.generic-button a {
    color: #fff!important;
    background: unset!important;
    border: none!important;
}

.donaki-member-xprofile-row {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.donaki-member-name-text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
}

.donaki-member-badge * {
  flex-shrink: 0;
}

.donaki-member-badge {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
}

.donaki-shop-name {
  font-weight: 700;
  display: block;
}

.donaki-shop-category {
  font-size: 13px;
  opacity: 0.7;
  margin-top: 3px;
}

/* ============================================================
   ACTIVITY - DIFFERENCES
   ============================================================ */

body:has(.activity-greeting) {
/*  background: linear-gradient(to bottom,
    #fff 250px,
    #bfbfbf 345px,
    #bfbfbf calc(100% - 150px),
    #944dbb 100%
  );*/
  margin: 0 auto;
}

body:not(.logged-in).activity header[data-elementor-type="header"] {
  display: none !important;
}

.activity-meta a {
  color: var(--primary-color);
}

#buddypress form#whats-new-form textarea {
    height: 6.1em!important;
}
#buddypress .acomment-reply {
  display: none !important;
}

#buddypress a.delete.acomment-delete.confirm.bp-secondary-action {
  display: flex;
  margin: 0 auto;
  padding: 3px 5px;
  border: 1px solid var(--primary-color);
  border-radius: 30px;
  width: fit-content;
}

body.donaki-header-unlogged .donaki-activity-unlogged-header-wrapper {
	max-width: 300px;
	margin: 10px auto;
	text-align: center;
}

body:has(.donaki-activity-unlogged-header) main { margin: 0; }

.donaki-activity-unlogged-header img {
    width: 88px;
    height: auto;
}

.donaki-activity-unlogged-header {
    margin-top: 20px;
}

.donaki-activity-unlogged-header h1{
  font-size: 22px;   /* ou 20px / 18px */
  line-height: 1.2;
  margin: 0 0 6px 0;
  font-weight: 700;
}

#buddypress #activity-stream > li.activity-item .activity-comments {
  margin-top: 10px;
  grid-column: 1 / -1;
  margin: 10px 10px;
}

#buddypress #activity-stream > li.activity-item .activity-meta{
  margin-top:10px;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content: center;
}

.dk-like-button { 
    border:none!important;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	text-decoration: none;
    border: none;
    border-radius: 30px;
    background: #fff;
    color: #944dbb;
    cursor: pointer;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.10);
    transition: transform 0.16s ease, box-shadow 0.16s ease, background 0.16s ease, color 0.16s ease;

}

.dk-like-button .is-liked {
    background: #fff;
    color: #944dbb;
}




.activity-meta .dk-like-button .dk-like-icon {
	display: inline-block;
	width: 18px;
	height: 18px;
	opacity: .55;
	transition: .2s ease;
	background-color: currentColor;
	-webkit-mask: url('../images/svg/like-icon.svg') no-repeat center / contain;
	mask: url('../images/svg/like-icon.svg') no-repeat center / contain;
}

.activity-meta .dk-like-button.is-liked {
	
}

.activity-meta .dk-like-button.is-liked .dk-like-icon {
	opacity: 1;
	color: #944dbb;
}


/* ============================================================
   ACTIVITY - Message en haut d'activity
   ============================================================ */

.donaki-activity-banner {
  display: inline-block;
/*  background: linear-gradient(135deg, #944dbb, #7d3fa1);*/
  color: var(--primary-color);
  padding: 18px 22px;
  border-radius: 18px;
  margin: 0 auto 18px auto;
  text-align: center;
  box-shadow: 0 10px 26px rgba(148, 77, 187, 0.22);
}

#buddypress .donaki-activity-banner {
  display: block;
  width: fit-content;
  margin-left: auto;
  margin-right: auto;
}

.donaki-activity-banner-text {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5;
  margin-bottom: 14px;
}

.donaki-activity-banner-btn {
  display: inline-block;
  background: #fff;
  color: #944dbb;
  padding: 10px 18px;
  border-radius: 999px;
  text-decoration: none;
  font-weight: 700;
  transition: transform 0.18s ease, opacity 0.18s ease;
}

.donaki-activity-banner-btn:hover {
  transform: translateY(-1px);
  opacity: 0.92;
}

/* ============================================================
   SEND MESSAGE TO ADMIN
   ============================================================ */

.donaki-contact-admin-page {
  max-width: 760px;
  margin: 32px auto;
  padding: 0 16px;
}

.donaki-contact-admin-card {
  background: #fff;
  border: 1px solid rgba(148, 77, 187, 0.14);
  border-radius: 22px;
  padding: 24px;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.06);
}

.donaki-contact-admin-title {
  margin: 0 0 12px;
  font-size: 28px;
  line-height: 1.2;
}

.donaki-contact-admin-intro {
  margin-bottom: 18px;
  line-height: 1.6;
}

.donaki-contact-admin-form {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.donaki-contact-admin-label {
  font-weight: 600;
}

.donaki-contact-admin-textarea {
  width: 100%;
  min-height: 180px;
  border: 1px solid #d9d9e3;
  border-radius: 16px;
  padding: 14px;
  font: inherit;
  resize: vertical;
  box-sizing: border-box;
}

.donaki-contact-admin-textarea:focus {
  outline: none;
  border-color: #944dbb;
  box-shadow: 0 0 0 3px rgba(148, 77, 187, 0.12);
}

.donaki-contact-admin-btn {
  align-self: flex-start;
  border: 0;
  background: #944dbb;
  color: #fff;
  padding: 12px 18px;
  border-radius: 999px;
  font-weight: 700;
  cursor: pointer;
}

.donaki-contact-admin-success,
.donaki-contact-admin-error {
  border-radius: 14px;
  padding: 14px 16px;
  margin-bottom: 16px;
  line-height: 1.5;
}

.donaki-contact-admin-success {
  background: #eefaf1;
  color: #1c6b34;
  border: 1px solid #bfe5c8;
}

.donaki-contact-admin-error {
  background: #fff3f3;
  color: #a12626;
  border: 1px solid #efc1c1;
}

/* ============================================================
   MY FRIENDS - DIFFERENCES - PAGE BUDDYPRESS
   ============================================================ */



/* ============================================================
   SHOPPING - DIFFERENCES
   ============================================================ */

body:has(#shopping-page) {
/*  background: linear-gradient(to bottom,
    #fff 100px,
    #B8B8F1 345px,
    #B8B8F1 calc(100% - 150px),
    #944dbb 100%
  );*/
}

body:has(#shopping-page) footer > .elementor-section {
/*  background:
    linear-gradient(180deg, #B8B8F1 0%, #944dbb 140px) top / 100% 140px no-repeat,
    #944dbb !important;*/
}

main:has(#shopping-page) {
  margin: 0 auto;
}

#shopping-page {
  margin: 140px 0;
}

.add-shop-here {
  margin: auto;
  text-align:center;
  border: 2px solid var(--primary-color);
  padding: 10px;
  border-radius: 30px;
  width: fit-content;
  font-size: 24px;
}

#amazon-page {
  margin: 140px 10px 0 10px;
  min-height: 450px;
}

/* ============================================================
   WISHLIST - DIFFERENCES
   ============================================================ */

body:has(.friend-profile) {
/*  background: linear-gradient(to bottom,
    #fff 163px,
    #32c4ba 345px,
    #32c4ba calc(100% - 150px),
    #944dbb 100%
  );*/
  margin: 0 auto;
}

@media (min-width:767px) {
  body:has(.friend-profile) {
/*    background: linear-gradient(to bottom,
      #fff 228px,
      #32c4ba 402px,
      #32c4ba calc(100% - 150px),
      #944dbb 100%
    );*/
  }

  main:has(.friend-profile) {
    margin: 218px 10px;
  }
}

/* ============================================================
   MESSAGES - DIFFERENCES See message.css in plugin
   ============================================================ */

/* ============================================================
   SHARE BUTTON
   ============================================================ */

.donaki-share-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: none;
  border-radius: 30px;
  background: #fff;
  color: #944dbb;
  cursor: pointer;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.10);
  transition: transform 0.16s ease, box-shadow 0.16s ease, background 0.16s ease, color 0.16s ease;
}

.donaki-share-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.14);
}

.donaki-share-btn:active {
  transform: scale(0.97);
}

.donaki-share-btn:focus-visible {
  outline: 2px solid #944dbb;
  outline-offset: 2px;
}

.donaki-share-btn__icon {
}

.donaki-share-btn__icon svg {
  width: 20px;
  height: 20px;
  display: block;
}

.donaki-share-btn__label {
  font-size: 16px;
  font-weight: 600;
  font-family: var(--primary-font);
}

.donaki-share-btn[data-icon-only="0"] {
  padding: 10px 14px;
  border-radius: 999px;
}

.donaki-share-btn__feedback {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  white-space: nowrap;
  padding: 8px 10px;
  border-radius: 10px;
  background: #1f1f1f;
  color: #fff;
  font-size: 12px;
  line-height: 1;
  opacity: 0;
  transform: translateY(-4px);
  pointer-events: none;
  transition: opacity 0.18s ease, transform 0.18s ease;
  z-index: 50;
}

.donaki-share-btn__feedback.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.donaki-share-btn__feedback.is-error {
  background: #b42318;
}

.activity-meta {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.activity-meta .donaki-share-btn {
  width: 28px;
  height: 28px;
  min-width: 28px;
  padding: 0;
  margin: 0;
  border-radius: 999px;
  vertical-align: middle;
}

.activity-meta .button,
.activity-meta a.button,
.activity-meta .bp-secondary-action,
.activity-meta .bp-primary-action {
  margin: 0;
}

.donaki-share-wrap--friends {
    justify-content: flex-end;
    display: flex;
    
}

.donaki-share-btn--invite-friends {
  width: fit-content;
}

/* ============================================================
   LOGOUT - DIFFERENCES
   ============================================================ */

body:has(#donaki-logout-section){
  background: linear-gradient(to bottom,
    #fff 165px,
    #ff3c5a 345px,
    #ff3c5a calc(100% - 150px),
    #944dbb 100%
  );
}

@media (min-width:767px) {
  body:has(#donaki-logout-section) {
    background: linear-gradient(to bottom,
      #fff 228px,
      #ff3c5a 402px,
      #ff3c5a calc(100% - 150px),
      #944dbb 100%
    );
  }
}

#donaki-logout-section {
  margin: 250px auto;
  width:75%;
}

body:has(#donaki-logout-section) footer > .elementor-section {
  background:
    linear-gradient(180deg, #ff3c5a 0%, #944dbb 140px) top / 100% 140px no-repeat,
    #944dbb !important;
}

#logout-button-no-column { width:50%; }
#logout-button-yes-column { width:50%; }

#logout-confirm-txt {
  width: 50%;
  text-align: center;
}

.donaki-btn-red {
  display: inline-block;
  background: red;
  color: #fff;
  padding: 6px 20px;
  margin-top:4px;
  text-decoration: none;
  font-weight: 400;
  border-radius: 30px;
  opacity: .4;
}

.donaki-btn-green {
  background: green;
  color: #fff;
}

.donaki-btn-wrapper {
  display: inline-block;
}

.donaki-btn-span {
  color: #fff;
}

.donaki-title-card {
  background: #fff;
  border-radius: 20px;
  padding: 8px 16px;
  box-shadow: 0 8px 24px rgb(0 0 0 / .06);
  text-align: center;
  width: fit-content;
  justify-self: center;
}

.donaki-search-avatar img {
  width:100px;
  height:100px;
  border-radius:50%;
  object-fit:cover;
  border:2px solid var(--coloredbg-color);
}

.donaki-search-shop-link img {
  width:100px;
  height:100px;
  border-radius:10px;
  object-fit:cover;
  border:2px solid var(--coloredbg-color);
}

/*====================================*/

html:has(.donaki-search-results){
/*  background: linear-gradient(to bottom,
    #fff 200px,
    #B8B8F1 345px,
    #B8B8F1 calc(100% - 150px),
    #944dbb 100%
  );*/
  margin: 0 auto;
}

html:has(.donaki-search-results) footer > .elementor-section {
/*  background:
    linear-gradient(180deg, #B8B8F1 0%, #944dbb 140px) top / 100% 140px no-repeat,
    #944dbb !important;*/
}

html:has(.donaki-search-error){
/*  background: linear-gradient(to bottom,
    #fff 200px,
    #ff3c5a 345px,
    #ff3c5a calc(100% - 150px),
    #944dbb 100%
  );*/
  margin: 0 auto;
}

html:has(.donaki-search-error) footer > .elementor-section {
/*  background:
    linear-gradient(180deg, #ff3c5a 0%, #944dbb 140px) top / 100% 140px no-repeat,
    #944dbb !important;*/
}

html:has(.activity-greeting) footer > .elementor-section {
/*  background:
    linear-gradient(180deg, #bfbfbf 0%, #944dbb 140px) top / 100% 140px no-repeat,
    #944dbb !important;*/
}

html:has(.friend-profile) footer > .elementor-section {
/*  background:
    linear-gradient(180deg, #32c4ba 0%, #944dbb 140px) top / 100% 140px no-repeat,
    #944dbb !important;*/
}

body:has(#all-ranks) {
/*  background: linear-gradient(
    to bottom,
    #fff 250px,
    #B8B8F1 345px,
    #B8B8F1 calc(100% - 150px),
    #944dbb 100%
  );*/
  margin: 200px auto;
}

html:has(#all-ranks) footer > .elementor-section {
/*  background:
    linear-gradient(180deg, #B8B8F1 0%, #944dbb 140px) top / 100% 140px no-repeat,
    #944dbb !important;*/
}

body:has(#amazon-page) {
/*  background: linear-gradient(to bottom,
    #fff 200px,
    #ff9900 345px,
    #ff9900 calc(100% - 150px),
    #944dbb 100%
  );*/
  margin: 0 auto;
}

body:has(#amazon-page) footer > .elementor-section {
/*  background:
    linear-gradient(180deg, #ff9900 0%, #944dbb 140px) top / 100% 140px no-repeat,
    #944dbb !important;*/
}



/* ============================================================
   DONAKI HEADER
   ============================================================ */

.menu-icons:not(#profile-menu-icon):not(#search-icon):not(#barcode-icon) a {
  transform: rotate(336deg);
  font-size:24px;
  height:24px;
  opacity:0.7;
}

.menu-icons#search-icon svg {
    height:24px;
    
}


.menu-icons#search-icon a {
border: 2px solid black;
  border-radius: 50%;
  font-size: 24px;
  height: 35px;
  width: 35px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  opacity:0.8;
}

body.activity #activity-icon a,
body.friends #friends-icon a,
body.shopping #shopping-icon a,
body.notifications #notifications-icon a,
body.chat #chat-icon a
    {
      color: var(--icon-color-active)!important;
      font-size:26px!important;
      opacity:unset!important;
    }

#profile-menu-icon img {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  margin-right:3px;
}

#search-menu-icon a {
  font-size: 20px;
}

@media (min-width: 767px) {
  #profile-menu-icon img {
    width: 50px;
    height: 50px;
  }

.menu-icons:not(#profile-menu-icon):not(#search-menu-icon) a {
    font-size:30px;
  }

  #search-menu-icon a {
    font-size: 25px;
  }
}

#barcode-menu-icon {
  display:none;
}

/* ============================================================
   DONAKI HEADER MOVE
   ============================================================ */

/* espace sous header fixe */
body {
 /* padding-top: var(--header-offset) !important;*/
}

/* ============================================================
   HEADER
   ============================================================ */

header.elementor-location-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  max-width: none;
  z-index: 9999;
  box-sizing: border-box;
  overflow: visible !important;
  transform: translateY(0);
  transition: transform 0.38s ease;
  will-change: transform;
}

body.donaki-header-compact header.elementor-location-header {
  transform: translateY(calc(-1 * var(--menu1-height)));
}

/* ============================================================
   STRUCTURE INTERNE
   ============================================================ */

#menu-1st-row,
#menu-2nd-row,
#friends_menu_images_container {
  width: 100%;
  background: #fff !important;
  opacity: 0.9;
  border: 0 !important;
  box-shadow: none !important;
  margin: 0 !important;
  position: relative;
  z-index: 1;
}

#menu-2nd-row,
#friends_menu_images_container {
  margin-top: 0 !important;
}

#menu-1st-row > .elementor-background-overlay,
#menu-2nd-row > .elementor-background-overlay,
#friends_menu_images_container > .elementor-background-overlay {
  display: none !important;
}

/* ============================================================
   CONTENU CENTRÉ (max 800px)
   ============================================================ */

#menu-1st-row > .elementor-container,
#menu-2nd-row > .elementor-container,
#friends_menu_images_container > .elementor-container {
  width: 100% !important;
  max-width: 800px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* ============================================================
   FRIENDS SCROLL
   ============================================================ */

#friends_menu_images_container {
  display: block !important;
  visibility: visible !important;
  width: 100%;
  margin: 0 auto;
  position: relative;
  transition: opacity 0.38s ease;
}

.friends-scroll {
  position: relative;
  overflow-x: auto;
  overflow-y: hidden;
  white-space: nowrap;
  padding: 4px 0 6px 20px;
  -webkit-overflow-scrolling: touch;
}

.friends-scroll::-webkit-scrollbar {
  display: none;
}

.friends-scroll::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 8px;
  pointer-events: none;
/*  background: linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,0.9));*/
  z-index: 2;
}

.friends-scroll > *:first-child {
  margin-left: -10px;
}

body.donaki-header-compact #menu-1st-row,
body.donaki-header-compact #friends_menu_images_container {
  opacity: 0;
  pointer-events: none;
}

#friends_menu_images {
  text-align: right;
}

.friend-search-box {
  width: 190px;
  height: 40px;
  margin-bottom: 5px;
  border-color: var(--primary-color);
  background: #fff;
}

.friend-search-button {
  height: 40px;
  color: white !important;
  background-color: var(--primary-color) !important;
  border-color: var(--primary-color);
}

.friend-search-button:hover {
  color: var(--secondary-color) !important;
}

.friend-avatar img {
  width: 60px;
  border-radius: 50% !important;
}

/* ============================================================
   SÉCURITÉ CONTENU
   ============================================================ */

body > div[data-elementor-type="wp-page"],
body > main,
body > .site-main {
  position: relative;
  z-index: 1;
}

/* ============================================================
   DONAKI FOOTER
   ============================================================ */

.dak-footer-unlogged{
  background:var(--primary-color);
  padding:40px 20px;
  display:flex;
  justify-content:center;
}

.dak-footer-card{
  width:100%;
  max-width:360px;
}

.dak-footer-grid{
  display:grid;
  grid-template-columns:auto 1fr;
  grid-template-rows:auto auto;
  column-gap:20px;
  row-gap:8px;
  align-items:center;
}

.dak-footer-logo {
  grid-row: 1 / span 2;
  background: #B8B8F1;
  padding: 7px;
  border: none;
  border-radius: 20px;
}

.dak-footer-lang{
  grid-column:2;
  grid-row:1;
  justify-self:end;
}

.dak-footer-link{
  text-align:center;
  font-size:10px;
  color: #fff;
}

.dak-footer-copy{
  text-align:center;
  margin-top:15px;
  font-size:12px;
  color: var(--secondary-color);
}

.dak-footer-logo img{
  height:50px;
}

.dak-footer-link a{
  text-decoration:none;
  color: #fff;
}

.dak-footer-links a:hover{
  text-decoration:underline;
}

/* ============================================================
   GLOBAL — Remove Elementor padding & boxed width
   ============================================================ */

.elementor-section.elementor-section-boxed > .elementor-container{
  max-width: none !important;
}

main article{
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.elementor-column-gap-default > .elementor-column > .elementor-element-populated,
.elementor-widget-wrap,
.elementor-element-populated{
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.e-con{
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* ============================================================
   BUDDYPRESS
   ============================================================ */
/* ============================================================
   BuddyPress Activity — X/Twitter-like feed
   ============================================================ */

#buddypress .avatar { border-radius: 50%; }

#buddypress .activity {
  margin-top: -30px;
  padding-top: 30px;
}

#buddypress #activity-stream.activity-list{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin-top: 10px;
  padding:0;
  max-width:720px;
  margin-left:auto;
  margin-right:auto;
}

#buddypress #activity-stream > li.activity-item{
  list-style:none;
  background:#fff;
  border-radius:var(--card-radius);
  box-shadow:var(--shadow);
  border:1px solid var(--primary-color);
  overflow:hidden;
  transition:transform var(--transition), box-shadow var(--transition), border-color var(--transition);
  display:grid;
  grid-template-columns: 54px 1fr;
  column-gap:12px;
}

#buddypress #activity-stream > li.activity-item:hover{
  box-shadow:var(--shadow-hover);
  border-color:var(--coloredbg-color);
}

#buddypress #activity-stream > li.activity-item .activity-avatar{
  float:none !important;
  width:auto !important;
  margin: 0 3px !important;
}

#buddypress #activity-stream > li.activity-item .activity-avatar img.avatar{
  width:52px !important;
  height:52px !important;
  border-radius:50% !important;
  object-fit:cover;
  border:2px solid var(--coloredbg-color);
  margin-left:0;
}

#buddypress #activity-stream > li.activity-item .activity-content{
  margin:0 !important;
  padding:0 !important;
  min-width:0;
}

#buddypress #activity-stream > li.activity-item .activity-header{
  margin:0;
}

#buddypress #activity-stream > li.activity-item .activity-header p{
  margin:0;
  font-size:.92rem;
  line-height:1.25;
  color:#666;
}

#buddypress #activity-stream > li.activity-item .activity-header a{
  color:var(--primary-color);
  font-weight:800;
  text-decoration:none;
}

#buddypress #activity-stream > li.activity-item .activity-header a:hover{
  color:var(--primary-hover-color);
}

#buddypress #activity-stream > li.activity-item .time-since{
  font-size:.78rem;
  font-weight:600;
  color:#aaa;
}

#buddypress #activity-stream > li.activity-item .activity-inner{
  color: var(--primary-color);
  font-size:1rem;
  line-height:1.4;
}

#buddypress #activity-stream > li.activity-item .activity-inner p{
  margin:6px 0 0 0;
}

#buddypress #activity-stream > li.activity-item .activity-inner img{
  max-width:100%;
  height:auto;
  width:auto;
  border-radius:16px;
  margin-top:8px;
}

#buddypress #activity-stream > li.activity-item .activity-inner a {
  color: var(--primary-color);
}

#buddypress #activity-stream .bp-member-activity-preview{
  background:#fff;
  border-radius:16px;
  padding:10px;
  margin-top:8px;
}

#buddypress #activity-stream .bp-member-activity-preview .profile-photo{
  border-radius:16px;
  max-width:100%;
}

#buddypress #activity-stream > li.activity-item .activity-meta a:hover{
  background:var(--coloredbg-color);
  border-color:var(--primary-color);
  transform:translateY(-1px);
}

#buddypress #activity-stream > li.activity-item form.ac-form{
  background:var(--coloredbg-color);
  border-radius:16px;
  padding:10px;
  display:none !important;
  grid-template-columns: 44px 1fr;
  gap:10px;
}

#buddypress #activity-stream > li.activity-item form.ac-form.donaki-open {
  display: grid !important;
}

#buddypress #activity-stream > li.activity-item .ac-reply-avatar img.avatar{
  width:40px !important;
  height:40px !important;
  border-radius:50% !important;
}

#buddypress #activity-stream > li.activity-item form.ac-form textarea{
  width:100%;
  min-height:70px;
  border:2px solid rgba(148,77,187,.15);
  border-radius:14px;
  padding:10px;
  font-family:var(--primary-font);
  resize:vertical;
}

#buddypress #activity-stream > li.activity-item form.ac-form input[type="submit"]{
  height:36px;
  border-radius:var(--btn-radius);
  background:var(--primary-color);
  color:#fff;
  border:0;
  font-weight:800;
  padding:0 18px;
}

#buddypress #activity-stream > li.activity-item form.ac-form input[type="submit"]:hover{
  background:var(--secondary-color);
}

#buddypress #activity-stream > li.activity-item .clear{
  display:none !important;
}

#buddypress div.item-list-tabs ul li.last select{
  max-width: 185px;
  font-size: 10px;
  padding: 3px;
}

/* Profile */

#header-cover-image{ display:none !important; }
#item-nav { padding:5px 0; }

#activity-personal-li,
#public-personal-li,
#notifications-personal-li,
#messages-personal-li,
#groups-personal-li,
#invitations-personal-li,
.feed{
  display:none;
}

.pag-count { color: #fff; }
#buddypress div.pagination { 
    padding: 0!important;
    
}

/* ============================================================
   BuddyPress Profile (item-body) → NEW ERA cards
   ============================================================ */

#buddypress #item-body .profile{
  border-radius: 16px;
  margin-top: 15px;
  display:block;
  gap:10px;
  background: #fff !important;
  padding: 10px;
}

#buddypress #item-body .profile .bp-widget{
  background:#fff !important;
  border-radius:var(--card-radius);
  box-shadow:var(--shadow);
  overflow:hidden;
  border:2px solid transparent;
  transition:transform var(--transition), box-shadow var(--transition), border-color var(--transition);
  padding:10px;
}

#buddypress #item-body .profile .bp-widget:hover{
  transform:translateY(-2px);
  box-shadow:var(--shadow-hover);
  border-color:var(--coloredbg-color);
}

#buddypress #item-body .profile .bp-widget h2,
#buddypress #item-body .profile .bp-widget h3,
#buddypress #item-body .profile .bp-widget h4{
  margin:0 0 8px 0;
  color:var(--primary-color);
  font-weight:700;
}

#buddypress #item-body .profile table.profile-fields{
  width:100%;
  border-collapse:collapse;
}

#buddypress #item-body .profile table.profile-fields td.label{
  width:42%;
  font-size:.78rem;
  font-weight:600;
  color:#888;
  text-transform:uppercase;
  letter-spacing:.04em;
}

#buddypress #item-body .profile table.profile-fields td.data{
  width:58%;
  color:var(--primary-color);
  font-weight:600;
}

#buddypress #item-body .profile table.profile-fields td.data a{
  color:var(--primary-color);
  text-decoration:none;
}

#buddypress #item-body .profile table.profile-fields td.data a:hover{
  color:var(--primary-hover-color);
}

#buddypress #item-body .profile table.profile-fields tr.alt{
  background:transparent !important;
}

@media (max-width:620px){
  #buddypress #item-body .profile{
    grid-template-columns: 1fr;
  }
}

#item-header-content #item-buttons{
  grid-column: 3;
  grid-row: 1;
  display: flex;
  flex-direction: column-reverse;
  gap: 8px;
  align-items: flex-end;
  justify-content: center;
}

#item-header-content .friendship-button.is_friend.remove{
  display: block;
  margin-top: 15px;
}

#item-header-content .activity-button.mention,
#item-header-content .send-message{
  display:block;
}

#buddypress ul.item-list li div.item-title{ width:100% !important; }

#buddypress ul.item-list li div.action {
  position: relative !important;
  right: auto !important;
  align-self: center;
}

#buddypress div.item-list-tabs#object-nav a{ 
    color: var(--primary-color);
    }

#buddypress div.item-list-tabs ul li.current a,
#buddypress div.item-list-tabs ul li.selected a{
  background-color: var(--secondary-color) !important;
  color: white !important;
  border-radius: 50px;
  font-weight: 700;
}

#buddypress div.item-list-tabs#subnav {
  font-size:12px !important;
  margin:0 !important;
  color: var(--primary-color);
}

#buddypress div.item-list-tabs#subnav a { color: var(--primary-color); }

#buddypress div.item-list-tabs#subnav ul li.last{
  display: none;
  width:100% !important;
  font-size:12px !important;
  padding: 10px 0 0 4px;
}

#buddypress div.item-list-tabs#subnav ul li.last label{
  padding: 3px 3px 0 0;
  position: relative;
}

#buddypress ul.item-list { border:none !important; }
#buddypress .members.friends ul.item-list li { border:none; }

#buddypress .item-list {
  display:grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 10px;
}

#buddypress .item-list li {
  background:#fff;
  border-radius:var(--card-radius);
  box-shadow:var(--shadow);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  border:2px solid transparent;
  transition:transform var(--transition), box-shadow var(--transition), border-color var(--transition);
}

@media (max-width:620px){
  #buddypress .item-list {
    gap:6px;
    grid-template-columns: 1fr 1fr 1fr;
  }
}

@media (max-width:480px){
  #buddypress .item-list {
    gap:6px;
    grid-template-columns: 1fr 1fr;
  }
}

.donaki-profile-actions {
    margin-top: 16px;
}

.donaki-profile-actions .generic-button {
    display: inline-block;
    margin-right: 10px;
}

/* ============================================================
   BuddyPress members list → Card details (NEW ERA)
   ============================================================ */

#buddypress .item-list li:hover{
  transform:translateY(-2px);
  box-shadow:var(--shadow-hover);
  border-color:var(--coloredbg-color);
}

#buddypress .item-list li > .item-avatar,
#buddypress .item-list li > .action{
  padding:10px;
}

#buddypress .item-list li .item-avatar{
  display:flex;
  justify-content:center;
  align-items:center;
  padding-top:0;
  padding-bottom:10px;
}

#buddypress .item-list li .item-avatar img{
  width:100px;
  height:100px;
  border-radius:50% !important;
  object-fit:cover;
  border:2px solid var(--coloredbg-color);
}

#buddypress .item-list li .item{
  flex:1;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  padding-top:4px;
}

#buddypress .item-list li .item-title a{
  color:var(--primary-color);
  font-weight:700;
  text-decoration:none;
  line-height:1.2;
  display:inline-block;
}

#buddypress .item-list li .item-title a:hover{
  color:var(--primary-hover-color);
}

#buddypress .item-list li .item-title .update{
  display:block;
  margin-top:6px;
  font-size:.78rem;
  font-weight:300;
  color:#777;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}

#buddypress .item-list li .item-meta{
  margin:0;
  position:relative;
  top: 0;
}

#buddypress .item-list li .item-meta .activity{
  position: relative;
  font-size:.72rem;
  color:#aaa;
  background: transparent;
  margin-top:8px;
}

#buddypress .item-list li .action{
  display:flex;
  justify-content:center;
  padding-top:6px;
  padding-bottom:12px;
}

#buddypress .item-list li .generic-button a,
#buddypress .item-list li .friendship-button a{
  display:inline-flex;
  align-items:center;
  border:0 !important;
  border-radius: 30px;
  color: var(--primary-color);
  font-weight: 400;
  text-decoration:none;
  transition:background var(--transition), transform var(--transition), box-shadow var(--transition);
}

#buddypress .item-list li .generic-button a:hover,
#buddypress .item-list li .friendship-button a:hover{
  border-radius: 30px;
}

#buddypress .item-list li .clear{
  display:none;
}

@media (max-width:480px){
  #buddypress .item-list li .item-avatar img{
    width:100px;
    height:100px;
  }
}

/* ============================================================
   BuddyPress Settings > Data export page (content only)
   ============================================================ */

#buddypress #item-body > h2,
#buddypress #item-body > p,
#buddypress #item-body > ul,
#buddypress #item-body > form#bp-data-export{
  max-width:700px;
  margin-left:auto;
  margin-right:auto;
  border-radius: var(--card-radius);
}

#buddypress #item-body > h2,
#buddypress #item-body > p {
  background:#fff;
  border-radius:var(--card-radius);
  box-shadow:var(--shadow);
  padding: 0 20px;
  border:2px solid transparent;
  transition:var(--transition);
  max-width:700px;
  color:var(--primary-color);
  margin-top:18px;
  font-size:16px;
}

#buddypress #item-body form#bp-data-export{
  background:#fff;
  border-radius:var(--card-radius);
  box-shadow:var(--shadow);
  padding:16px;
  margin-top:12px;
  border:2px solid transparent;
  text-align:center;
}

#buddypress #item-body form#bp-data-export button[type="submit"]{
  height:40px;
  border-radius:var(--btn-radius);
  background:var(--primary-color);
  color:#fff;
  border:0;
  font-weight:700;
  padding:0 18px;
  cursor:pointer;
  transition:background var(--transition), transform var(--transition), box-shadow var(--transition);
}

#buddypress #item-body form#bp-data-export button[type="submit"]:hover{
  background:var(--secondary-color);
  transform:translateY(-1px);
  box-shadow:0 4px 14px rgba(50,196,186,.35);
}

#buddypress #item-body > p a{
  color:var(--primary-color);
  font-weight:700;
  text-decoration:none;
}

#buddypress #item-body > p a:hover{
  color:var(--secondary-color);
}

#buddypress .standard-form label{ font-weight:400 !important; }

#buddypress #notifications-bulk-management,
#buddypress .standard-form #blog-details-section {
  clear: left;
  padding: 10px;
  background: white;
  border-radius: 16px;
}

#notifications-bulk-management.donaki-notifications-form {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* =======================================
   Donaki Notifications
======================================= */

.donaki-notifications-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* card */
.donaki-notification-card {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 16px;
    border: 1px solid #e8e8ee;
    border-radius: 16px;
    background: #fff;
    transition: all .15s ease;
}

.donaki-notification-card:hover {
    background: #fafafe;
    border-color: #ddd;
}

/* avatar */
.donaki-notification-avatar {
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
}

.donaki-notification-avatar a {
    display: block;
    line-height: 0;
}

.donaki-notification-avatar img,
.donaki-notification-avatar .avatar {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    display: block;
}

.donaki-notification-avatar-fallback {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #ececf3;
}

/* content */
.donaki-notification-main {
    flex: 1 1 auto;
    min-width: 0;
}

.donaki-notification-text {
    font-size: 15px;
    line-height: 1.4;
}

.donaki-notification-text a {
    text-decoration: none;
    font-weight: 500;
}

/* meta */
.donaki-notification-meta {
    margin-top: 4px;
    font-size: 12px;
    color: #777;
}

/* actions */
.donaki-notification-actions {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
}

/* delete button */
.donaki-notification-delete {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 10px;
    text-decoration: none;
    font-size: 16px;
    color: #888;
    transition: all .2s ease;
}

.donaki-notification-delete:hover {
    background: #f3f3f7;
    color: #d63638;
}

/* mobile */
@media (max-width: 767px) {
    .donaki-notification-card {
        align-items: flex-start;
    }

    .donaki-notification-actions {
        margin-top: 8px;
    }
}

/* ============================================================
   BuddyPress SETTINGS → NEW ERA
   ============================================================ */

body.buddypress #buddypress #item-body form.standard-form{
  background:#fff;
  border-radius:var(--card-radius);
  box-shadow:var(--shadow);
  padding:20px;
  border:2px solid transparent;
  transition:var(--transition);
  max-width:700px;
  margin-top: 10px;
}

#buddypress #item-body form.standard-form:hover{
  box-shadow:var(--shadow-hover);
  border-color:var(--coloredbg-color);
}

#buddypress #item-body form.standard-form label{
  display:block;
  margin-top:14px;
  font-weight:600;
  color:var(--primary-color);
}

#buddypress #item-body form.standard-form input[type="text"],
#buddypress #item-body form.standard-form input[type="email"],
#buddypress #item-body form.standard-form input[type="password"]{
  box-sizing:border-box;
  padding:10px 14px;
  width: 100%;
  border:2px solid var(--coloredbg-color);
  border-radius:50px;
  margin-top:10px;
  font-family:var(--primary-font);
  transition:border var(--transition), box-shadow var(--transition);
}

#buddypress #item-body form.standard-form input:focus{
  outline:none;
  border-color:var(--primary-color);
  box-shadow:0 0 0 3px rgba(148,77,187,.15);
}

#buddypress #item-body form.standard-form a{
  font-size:.8rem;
  color:var(--primary-color);
  text-decoration:none;
}

#buddypress #item-body form.standard-form a:hover{
  color:var(--secondary-color);
}

#buddypress #item-body form.standard-form .submit{
  margin-top:20px;
  text-align:center;
}

#buddypress #item-body form.standard-form input[type="submit"] {
  height: 40px;
  border-radius: var(--btn-radius);
  background: var(--primary-color);
  color: #fff;
  border: 0;
  font-weight: 700;
  padding: 0 24px;
  cursor: pointer;
  transition: background var(--transition), transform var(--transition), box-shadow var(--transition);
  margin: 0;
}

#buddypress #item-body form.standard-form input[type="submit"]:hover{
  background:var(--secondary-color);
  transform:translateY(-1px);
  box-shadow:0 4px 14px rgba(50,196,186,.35);
}

#buddypress div#message.updated {
  clear: both;
  display: block;
  position: relative;
  top: 100px;
  place-self: center;
}

#buddypress table.profile-settings{
  width:100%;
  table-layout:fixed;
}

#buddypress table.profile-settings th,
#buddypress table.profile-settings td{
  vertical-align:middle;
}

#buddypress table.profile-settings th.title.field-group-name,
#buddypress table.profile-settings td.field-name{
  width:45%;
  white-space:normal;
}

#buddypress table.profile-settings th.title:not(.field-group-name),
#buddypress table.profile-settings td.field-visibility{
  width:55%;
}

#buddypress table.profile-settings td.field-visibility select.bp-xprofile-visibility{
  width:100%;
  max-width:100%;
}

#buddypress table.profile-settings tr.alt td {
  color:var(--primary-color) !important;
}

/* ============================================================
   PRODUCTS TABLE (OLD)
   ============================================================ */

.product-table{
  width: 100%;
  max-width: 100%;
  table-layout: fixed;
  color: var(--primary-color) !important;
}

.product-name{ color: var(--primary-color) !important; }

.icons_col{ width:200px; }
.img_col{ width:120px; }
.price_col{ width:200px; }

@media only screen and (max-width: 460px){
  .product-table{
    width: 100%;
    max-width: 100%;
  }

  .product-table td{
    display: block;
    text-align:center;
    width: 100%;
    border: 1px solid var(--coloredbg-color) !important;
  }

  .product-table td:before{
    content: attr(data-label);
    float: left;
    font-weight: bold;
    text-transform: uppercase;
  }
}

.icons{
  display: flex;
  justify-content: center;
}

/* ==========================================================
   LOGIN PAGE
   ========================================================== */

.donaki-auth-wrap {
  min-height: 70vh;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 40px 20px;
}

.donaki-auth-card {
  background: #fff;
  max-width: 420px;
  width: 100%;
  padding: 35px;
  border-radius: 14px;
  box-shadow: 0 8px 25px rgba(0,0,0,0.08);
  text-align: center;
}

/* ----------------------------------------------------------
   BRAND
   ---------------------------------------------------------- */

.donaki-auth-logo-link img {
  width: 70px;
  height: auto;
}

.donaki-auth-title {
  margin: 10px 0 5px;
  font-size: 24px;
  text-align: center;
}

.donaki-auth-title a {
  text-decoration: none;
  color: var(--primary-color);
}

.donaki-auth-small-centered {
  font-size: 12px;
  margin-bottom: 25px;
  text-align: center;
}

/* ----------------------------------------------------------
   MESSAGE
   ---------------------------------------------------------- */

.donaki-auth-text {
  text-align: center;
}

.donaki-auth-message {
  padding: 12px 15px;
  border-radius: 8px;
  margin-bottom: 20px;
  font-size: 14px;
}

.donaki-auth-message-error {
  border: 1px solid var(--primary-color);
}

/* ----------------------------------------------------------
   FORM
   ---------------------------------------------------------- */

.donaki-auth-form {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.donaki-auth-field input {
  width: 100%;
  padding: 12px 14px;
  border-radius: 8px;
  border: 1px solid #ddd;
  font-size: 14px;
}

.donaki-auth-field input:focus {
  outline: none;
  border-color: var(--primary-color);
}

/* ----------------------------------------------------------
   SUBMIT
   ---------------------------------------------------------- */

.donaki-auth-submit {
  margin-top: 5px;
}

.donaki-auth-submit .donaki-button {
  width: 100%;
}

.donaki-auth-button-line {
  text-align: center;
}

/* ----------------------------------------------------------
   LINKS
   ---------------------------------------------------------- */

.donaki-auth-links {
  margin-top: 15px;
  font-size: 14px;
}

.donaki-auth-links a {
  color: var(--primary-color);
  text-decoration: none;
}

.donaki-auth-links a:hover {
  text-decoration: underline;
}

.donaki-auth-register {
  margin-top: 8px;
}

.donaki-auth-logo {
  width: 110px;
  height: auto;
  display: block;
  margin: 0 auto;
}

/* ----------------------------------------------------------
   LANGUAGE
   ---------------------------------------------------------- */

.donaki-auth-lang {
  margin-top: 25px;
}

.donaki-auth-lang select {
  padding: 8px 10px;
  border-radius: 8px;
  border: 1px solid #ddd;
  
}

/* ============================================================
   REGISTRATION CUSTOM DONAKI - Shortcodes
   ============================================================ */

.donaki-register-card {
  max-width: 420px;
  margin: 15px auto;
  padding: 30px;
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 8px 30px rgba(0,0,0,0.08);
}

.donaki-register-card input[type="text"],
.donaki-register-card input[type="email"],
.donaki-register-card input[type="password"] {
  width: 100%;
  padding: 10px 14px;
  margin-bottom: 12px;
  border: 1px solid #ddd;
  border-radius: 8px;
  font-size: 14px;
  box-sizing: border-box;
}

.donaki-register-card label {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 10px 0 16px;
  font-size: 14px;
}

.donaki-register-card button {
  border: none;
  border-radius: 30px;
  background: var(--primary-color);
  color: #fff;
  font-weight: 600;
  cursor: pointer;
  display: block;
  margin: 0 auto;
  width: auto;
}

.donaki-register-error {
  background:#ffe5e5;
  color:#a30000;
  padding:10px;
  border-radius:8px;
  margin-bottom:12px;
}

.donaki-register-success {
  background:#e8f7e8;
  color:#1c7a1c;
  padding:10px;
  border-radius:8px;
  margin-bottom:12px;
}

/* ============================================================
   LOGOUT page
   ============================================================ */



/* ============================================================
   ACTIVATION page
   ============================================================ */

.activation-next{
  background: var(--primary-color);
  border-radius: 30px;
  color:#fff;
  display:inline-flex;
  justify-content:center;
  align-items:center;
  padding:8px 16px;
  text-decoration:none;
  transition:all .3s ease;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  margin-top: 3px;
}

.activation-next:hover {
  background: var(--secondary-color);
  color: #fff;
}

/* ============================================================
   FIRST STEPS page
   ============================================================ */

body[class*="donaki-step-"]:not(.donaki-step-6) #friends_menu_images_container {
  display: none !important;
}

body.donaki-step-2 #search-menu-icon,
body.donaki-step-2 #home-menu-icon,
body.donaki-step-2 #friends-menu-icon,
body.donaki-step-2 #shopping-menu-icon,
body.donaki-step-2 #notif-menu-icon,
body.donaki-step-2 #chat-menu-icon {
  opacity: 0.15 !important;
  filter: grayscale(1) !important;
  pointer-events: none !important;
}

body.donaki-step-2 #profile-menu-icon {
  display: block !important;
}

body.donaki-step-2 #item-header,
body.donaki-step-2 #item-nav,
body.donaki-step-2 .item-subnav,
body.donaki-step-2 #subnav,
body.donaki-step-2 #item-body .profile #avatar-upload-form {
  display: none !important;
}

body.donaki-step-2 #item-body .profile > h2,
body.donaki-step-2 #item-body .profile > p:first-of-type {
  transition: opacity 5s ease;
}

body.donaki-step-2 .donaki-first-steps-next-wrap {
  margin-top: 16px;
  text-align: center;
}

body.donaki-step-3 #search-menu-icon,
body.donaki-step-3 #home-menu-icon,
body.donaki-step-3 #friends-menu-icon,
body.donaki-step-3 #notif-menu-icon,
body.donaki-step-3 #chat-menu-icon {
  opacity: 0.15 !important;
  filter: grayscale(1) !important;
  pointer-events: none !important;
}

body.donaki-step-3 #shopping-menu-icon {
  display: block !important;
  pointer-events: auto !important;
}

body.donaki-step-4 #home-menu-icon,
body.donaki-step-4 #friends-menu-icon,
body.donaki-step-4 #notif-menu-icon,
body.donaki-step-4 #chat-menu-icon {
  opacity: 0.15 !important;
  filter: grayscale(1) !important;
  pointer-events: none !important;
}

body.donaki-step-4 #search-menu-icon {
  display: block !important;
  pointer-events: auto !important;
}

body.donaki-step-5 #notif-menu-icon,
body.donaki-step-5 #chat-menu-icon {
  opacity: 0.15 !important;
  filter: grayscale(1) !important;
  pointer-events: none !important;
}

body.donaki-step-5 #home-menu-icon {
  display: block !important;
  pointer-events: auto !important;
}

.donaki-first-steps-grid {
  display: grid;
  width: 100%;
  justify-items: center;
}

.donaki-step-card {
  max-width: 420px;
  background: #fff;
  border-radius: 20px;
  padding: 22px;
  box-shadow: 0 8px 24px rgb(0 0 0 / 0.06);
}

.donaki-step-title {
  font-size: 22px;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 12px;
}

.donaki-step-text {
  font-size: 15px;
  line-height: 1.6;
}

.donaki-step-text a {
  font-weight: 600;
  text-decoration: none;
}

.donaki-step-text a:hover {
  text-decoration: underline;
}

.donaki-step-action {
  margin-top: 14px;
}

.donaki-first-steps-name-form .donaki-field {
  margin-bottom: 10px;
}

.donaki-inline-avatar-box {
  margin-top: 12px;
}

.donaki-avatar-panel {
  display: none;
  margin-top: 0;
}

.donaki-avatar-panel.is-open {
  display: block;
}

.donaki-avatar-frame {
  width: 100%;
  height: 900px;
  border: 0;
  border-radius: 18px;
  background: #fff;
}

.donaki-menu-muted {
  opacity: 0.2;
  filter: grayscale(1);
  pointer-events: none;
}

.donaki-menu-active {
  opacity: 1;
  pointer-events: auto;
}

.donaki-menu-disabled {
  pointer-events: none;
}

html.donaki-avatar-iframe,
body.donaki-avatar-iframe,
main.donaki-avatar-iframe {
  background: transparent !important;
}

body.donaki-avatar-iframe header,
body.donaki-avatar-iframe footer,
body.donaki-avatar-iframe #site-header,
body.donaki-avatar-iframe #site-footer {
  display: none !important;
}

.donaki-avatar-next {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  margin-top: 12px !important;
}

.donaki-avatar-next .donaki-button,
.donaki-avatar-next .donaki-button-inverted,
.donaki-avatar-next button {
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body.donaki-avatar-iframe #item-header,
body.donaki-avatar-iframe #item-nav,
body.donaki-avatar-iframe #subnav{
  display:none !important;
}

body.donaki-avatar-iframe #buddypress{
  max-width:700px;
  margin:0 auto;
}

body.donaki-avatar-iframe .profile h2{
  display:none;
}

.donaki-avatar-panel.is-open ~ .donaki-step-title,
.donaki-avatar-panel.is-open ~ .donaki-step-text{
  display:none;
}

.donaki-loader {
  padding: 12px 0;
}

body.donaki-avatar-iframe #avatar-upload-form > p {
  display:none;
}

/* ============================================================
   MY LIST
   ============================================================ */

.view-button{ padding: 0 20px 0 0 !important; }

#delete-button{
  border: none !important;
  font-size: unset !important;
  padding: 0 !important;
}

.mylist-product-image{
  display:inherit !important;
  max-height:120px !important;
  width: 120px !important;
}

.donaki-password-wrapper{ position: relative; }
.donaki-password-wrapper input{ padding-right: 44px; }

.donaki-toggle-password{
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: 0;
  cursor: pointer;
  font-size: 18px;
  opacity: 0.7;
}

.donaki-toggle-password:hover{ opacity: 1; }

/* ============================================================
   HEADER / FOOTER
   ============================================================ */

.d-main-search-modal .dialog-message.dialog-lightbox-message {
  width: calc(100vw - 46px);
}

@media (min-width: 768px) {
  #elementor-search-form-3f02630 {
    height: 60px;
  }
}

#notif-menu-icon .elementor-icon,
#chat-menu-icon .elementor-icon,
#friends-menu-icon .elementor-icon{
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.count_bubble_red{
  position: absolute;
  top: -6px;
  right: -8px;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 999px;
  background: red;
  color: #fff;
  font-size: 11px;
  line-height: 1;
  display: none;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  z-index: 999;
  transform: rotate(24deg);
}

#notifications-tag,
#messages-tag,
#friends-tag{
  display: none !important;
}

select[name="donaki_lang"]{
  background-color: white;
  color: var(--primary-color);
  font-family: var(--primary-font);
  font-size: 12px;
  border-color: var(--primary-color);
  border-radius: 16px;
  padding: 3px;
  cursor: pointer;
}

select[name="donaki_lang"] option{
  background-color: white;
  color: var(--primary-color);
  font-family: var(--primary-font);
  font-size: 12px;
  border-color: var(--primary-color);
  border-radius: 10px;
}

select[name="donaki_lang"] option:hover{
  background-color: var(--primary-color);
  color: white;
}



.footer-img { background:#B8B8F1 !important; padding: 5px; }
#footer-right-img { border-radius: 0 16px 16px 0 !important; }
#footer-left-img { border-radius: 16px 0 0 16px !important; }

/* ============================================================
   FOOTER FRIENDS (dfooter)
   ============================================================ */

.dfooter .item{ display: none !important; }

.dfooter .item-avatar img{ width:50px !important; }

.dfooter li{
  float: left !important;
  display: flex !important;
  flex-basis: 20% !important;
  border: none !important;
  width: 20% !important;
}

.dfooter ul.item-list{ border:none !important; }
.dfooter ul.members-meta{ display: none !important; }
.dfooter .action a{ display: none !important; }

.dfooter .friendship-button .pending_friend .requested{ display:none; }

/* ============================================================
   PARTNER LOGOS
   ============================================================ */

.partner-logo img{
  max-width: 100%;
  border-radius: 10px !important;
  border:none !important;
  background: #fff;
}

/* ============================================================
   MYLIST → NEW ERA CARDS (identique wishlist friend)
   ============================================================ */

.mylist-title {
  font-size: 25px;
  padding: 15px 10px 0 10px;
  background: linear-gradient(to bottom, #fff 0%, var(--primary-color) 100%);
  align-content: center;
  color: #fff;
  text-align:center;
}

.mylist-container .btn-icon-trash{
  border-radius:50%;
  border:2px solid red;
  background:#fff;
  display:grid;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  position:relative;
  width:38px;
  height:38px;
}

.mylist-container .btn-icon-trash svg{
  fill:red;
}

.mylist-container .product-table{
  display:block;
  border:0;
}

.mylist-container .product-table tbody{
  display:grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap:10px;
}

.mylist-container .product-table tr{
  display:flex;
  flex-direction:column;
  background:#fff;
  border-radius:var(--card-radius);
  box-shadow:var(--shadow);
  overflow:hidden;
  transition:var(--transition);
}

.mylist-container .product-table tr:hover{
  transform:translateY(-2px);
  box-shadow:var(--shadow-hover);
}

.mylist-container .product-table td{
  display:block;
  border:none !important;
  padding:8px 10px;
}

.mylist-container .img_col{
  padding:0 !important;
}

.mylist-container .mylist-product-image{
  width:100%;
  height:auto;
  object-fit:cover;
}

.mylist-container .product-name{
  font-weight:600;
  color:var(--primary-color);
  margin:0;
}

.mylist-container .product-price{
  font-size:16px;
  font-weight:700;
  margin-bottom:4px;
}

.mylist-container .product-qty{
  font-size:12px;
  color:#888;
  margin:0;
}

.mylist-container .icons{
  display:flex;
  gap:5px;
  align-items:center;
  justify-content:center;
}

.mylist-container .d-trash{
  fill:red;
}

@media (max-width:620px){
  .mylist-container .product-table tbody{
    grid-template-columns: 1fr 1fr 1fr;
  }
}

@media (max-width:480px){
  .mylist-container .product-table tbody{
    grid-template-columns: 1fr 1fr;
  }
}

/* ============================================================
   NEW ERA — FRIENDS WISHLIST CARDS
   ============================================================ */

#item-meta{ display:none; }
#buddypress div#item-header div#item-meta { display: none !important; }
.item-meta{ position:relative; top:-68px; }
.item-title .update{ display:none; }

.products-container{
  max-width: 900px;
  margin: 0 auto;
}

.product-grid{
  display:grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 10px;
}

.product-card{
  background:#fff !important;
  border-radius:var(--card-radius);
  box-shadow:var(--shadow);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  border:2px solid transparent;
  transition:transform var(--transition), box-shadow var(--transition), border-color var(--transition);
  position: relative;
}

.product-card:hover{
  transform:translateY(-2px);
  box-shadow:var(--shadow-hover);
  border-color:var(--coloredbg-color);
}

.card-image-wrap{
  position:relative;
  aspect-ratio:1/1;
  overflow:hidden;
  background: #fff;
}

.card-image-wrap a{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:100%;
}

.card-image-wrap img{
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}

.product-card:hover .card-image-wrap img{
  transform:scale(1.04);
}

.price-badge{
  position:absolute;
  bottom:6px;
  left:6px;
  background:var(--primary-color) !important;
  color:#fff;
  font-size:.9rem;
  font-weight:600;
  padding:3px 10px;
  border-radius:50px;
  box-shadow:0 2px 8px rgba(148,77,187,.3);
}

.card-body{
  padding-top: 4px;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap: 4px;
  height:50px;
}

.card-footer{
  padding: 9px 4px 4px 4px;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap: 5px;
}

.card-form{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap: 5px;
}

.product-name{
  font-weight:600;
  color:var(--primary-color);
  text-decoration:none;
  line-height:1.25;
  font-size:.95rem;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  height:34px;
}

.product-name:hover{ color:var(--primary-hover-color); }

.product-description{
  font-size:.74rem;
  font-weight:300;
  color:#888;
  line-height:1.3;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.qty-row{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
}

.qty-label{
  font-size:.7rem;
  font-weight:500;
  color:#aaa;
  letter-spacing:.05em;
  text-transform:uppercase;
  flex-shrink:0;
}

.qty-control{
  display:flex;
  align-items:center;
  background:var(--coloredbg-color);
  border-radius:50px;
}

.qty-btn{
  width:26px;
  height:26px;
  border:0;
  background:none;
  cursor:pointer;
  font-size:1rem;
  color:var(--primary-color);
  font-weight:600;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50px;
}

.qty-btn:hover{ background:rgba(148,77,187,.15); }

.qty-input{
  width:28px;
  text-align:center;
  border:0;
  outline:0;
  background:transparent;
  font-size:.9rem;
  font-weight:600;
  color:var(--primary-color);
}

.qty-input::-webkit-inner-spin-button,
.qty-input::-webkit-outer-spin-button{ -webkit-appearance:none; }

.qty-input{ -moz-appearance:textfield; }

.card-actions{
  display:flex;
  gap:5px;
  align-items:center;
  justify-content:center;
}

.btn-icon{
  width:38px;
  height:38px;
  border-radius:50%;
  border:2px solid var(--primary-color);
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  fill:var(--primary-color);
  text-decoration:none;
  transition:background var(--transition), border-color var(--transition), transform var(--transition);
  position:relative;
}

.btn-icon:hover{
  background:var(--coloredbg-color);
  border-color:var(--primary-color);
  transform:scale(1.06);
}

.btn-icon svg{ width:16px; height:16px; }

.btn-icon::after{
  content: attr(data-tip);
  position:absolute;
  bottom: calc(100% + 6px);
  left:50%;
  transform:translateX(-50%);
  background:var(--primary-color);
  color:#fff;
  font-size:.65rem;
  white-space:nowrap;
  padding:3px 7px;
  border-radius:6px;
  pointer-events:none;
  opacity:0;
  transition:opacity .2s;
  z-index:10;
}

.btn-icon:hover::after{ opacity:1; }

.add-to-list-row{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:3px;
}

.donaki-add2list-logo-img{
  width:30px;
  height:30px;
  object-fit:contain;
  flex-shrink:0;
  display:block;
}

.btn-add{
  height:34px !important;
  border-radius:var(--btn-radius) !important;
  background:var(--donaki-color) !important;
  color:#fff !important;
  border:0 !important;
  font-size:.85rem !important;
  font-weight:600 !important;
  cursor:pointer !important;
  padding:0 14px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  white-space:nowrap !important;
  transition:background var(--transition), transform var(--transition), box-shadow var(--transition) !important;
}

.btn-add:hover{
  background:var(--secondary-color) !important;
  transform:translateY(-1px) !important;
  box-shadow:0 4px 14px rgba(50,196,186,.35) !important;
}

@media (max-width:620px){
  .product-grid{
    gap:6px;
    grid-template-columns: 1fr 1fr 1fr;
  }
}

@media (max-width:480px){
  .product-grid{
    gap:6px;
    grid-template-columns: 1fr 1fr;
  }

  .product-name{ font-size:.82rem; }
  .product-description{ font-size:10px; }
  .btn-add{ font-size:.75rem; padding:0 8px; }
  .price-badge{ font-size:.78rem; padding:3px 8px; }
}

.qty-remaining{
  display:flex;
  align-items:baseline;
  justify-content:center;
  gap:6px;
  text-align:center;
}

.qty-remaining .qty-label{
  font-size:.7rem;
  font-weight:500;
  color:#aaa;
  letter-spacing:.05em;
  text-transform:uppercase;
}

.qty-remaining .qty-value{
  font-size:.95rem;
  font-weight:700;
  color:var(--primary-color);
}

.btn-icon.is-disabled{
  opacity:.35;
  cursor:not-allowed;
  pointer-events:none;
}

.btn-logo-submit{
  border:0;
  padding:0;
  background:transparent;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
}

.mylist-icons{
  width:16px;
  height:16px;
}

/* =========================
   SEARCH RESULTS — FIXED CARDS
   ========================= */

#donaki-search,
.donaki-search-results-page {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}

/* =========================
   GRID (cartes fixes centrées)
   ========================= */

.donaki-search-cards-grid {
  display: grid;
  gap: 20px;
  justify-content: center;
  grid-template-columns: repeat(auto-fit, 220px);
}

/* =========================
   CARD
   ========================= */

.donaki-search-card {
  width: 220px;
  min-width: 220px;
  max-width: 220px;
  background: #fff;
  border-radius: 20px;
  box-shadow: 0 8px 24px rgba(0,0,0,0.06);
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 20px 14px;
  box-sizing: border-box;
}

/* =========================
   LINK
   ========================= */

.donaki-search-card-link {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  text-decoration: none !important;
}

/* =========================
   IMAGE / MEDIA
   ========================= */

.donaki-search-card-media {
  width: 100%;
  height: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 10px;
}

.donaki-search-avatar img {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid var(--coloredbg-color);
}

.donaki-shop-logo {
  width: 80px;
  height: 80px;
  border-radius: 12px;
  object-fit: contain;
  border: 2px solid var(--coloredbg-color);
  background: #fff;
  padding: 6px;
  box-sizing: border-box;
}

/* =========================
   TEXT
   ========================= */

.donaki-search-card-body {
  width: 100%;
}

/* =========================
   ACTIONS
   ========================= */

#donaki-search .donaki-search-member-action a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 6px 12px;
  border-radius: 999px;
  background: var(--primary-color);
  color: #fff !important;
  font-size: 13px;
  text-decoration: none;
}

#buddypress ul.item-list li div.action .button.accept {
  background: var(--primary-color);
  border:none;
  border-radius:30px;
  color: #fff;
}

#buddypress ul.item-list li div.action .button.reject {
  background: #fff;
  border: 1px solid var(--primary-color);
  border-radius:30px;
  color: var(--primary-color);
}

/* =========================
   EMPTY / ERROR
   ========================= */

.donaki-search-empty,
.donaki-search-error {
  text-align: center;
  padding: 15px;
}

/* =========================
   RESPONSIVE
   ========================= */

@media (max-width: 767px) {
  .donaki-search-cards-grid {
    grid-template-columns: repeat(auto-fit, 170px);
    gap: 14px;
  }

  .donaki-search-card {
    width: 170px;
    min-width: 170px;
    max-width: 170px;
    padding: 16px 10px;
  }

  .donaki-search-avatar img,
  .donaki-shop-logo {
    width: 70px;
    height: 70px;
  }
}

@media (max-width: 380px) {
  .donaki-search-cards-grid {
    grid-template-columns: 170px;
  }
}

/* =========================
   Shops
   ========================= */

#donaki .donaki-shop-logo {
  width: 48px;
  height: 48px;
  min-width: 48px;
  flex: 0 0 48px;
  object-fit: contain;
  border-radius: 10px;
  background: #fff;
  border: 1px solid var(--primary-color);
  padding: 4px;
}

#donaki .donaki-shop-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  line-height: 1.2;
}

#donaki .donaki-shop-name {
  display: block;
  font-weight: 700;
  font-size: 1rem;
  color: #222;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#donaki .donaki-shop-category {
  display: block;
  margin-top: 3px;
  font-size: 0.88rem;
  color: #777;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* ============================================================
   AMAZON CARDS (legacy HTML) -> align with NEW ERA
   ============================================================ */

.product-card .product-image{
  position: relative;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background: var(--coloredbg-color);
}

.product-card .product-image a{
  display:block;
  width:100%;
  height:100%;
}

.product-card .product-image img{
  width:100%;
  height:100%;
  object-fit: cover;
  transition: transform .4s ease;
  display:block;
}

.product-card:hover .product-image img{
  transform: scale(1.04);
}

.product-card .product-details{
  padding: 4px;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap: 4px;
}

.product-card .product-title{
  margin: 0;
  font-weight:600;
  line-height:1.25;
  font-size:.95rem;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.product-card .product-title a:hover{
  color: var(--primary-hover-color);
}

.product-card .product-price{
  background: var(--primary-color);
  color:#fff;
  font-size:.9rem;
  font-weight:600;
  padding:3px 10px;
  border-radius: 50px;
  box-shadow: 0 2px 8px rgba(148,77,187,.3);
  display:inline-flex;
  align-items:baseline;
  justify-content:center;
  gap: 2px;
}

.product-card .product-price-whole{ font-weight:700; font-size:1rem; }
.product-card .product-price-decimal{ display:none; }
.product-card .product-price-fraction{ font-size:.78rem; position:relative; top:-6px; }
.product-card .product-price-symbol{ font-size:.9rem; }

.product-card .product-rating{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:2px;
  margin: 0;
}

.product-card #submit-button{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  gap: 6px;
  padding: 6px 4px 2px 4px;
}

.product-card input#pq{
  width: 60px;
  height: 34px;
  margin: 0;
  border-radius: 50px;
  border: 2px solid var(--coloredbg-color);
  text-align:center;
  color: var(--primary-color);
  font-weight:600;
  outline:none;
}

.product-card input#pq:focus{
  border-color: var(--primary-color);
}

.product-card input#add-to-list-logo{
  height:34px;
  width:34px;
  padding: 0;
  border-radius: 50%;
  border: 2px solid var(--coloredbg-color);
  background-color: var(--primary-color);
  -webkit-mask-size: 18px 18px;
  mask-size: 18px 18px;
  -webkit-mask-position:center;
  mask-position:center;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  cursor:pointer;
  transition: background var(--transition), transform var(--transition), border-color var(--transition);
}

.product-card input#add-to-list-logo:hover{
  background-color: var(--primary-hover-color);
  transform: scale(1.06);
  border-color: var(--primary-color);
}

.product-card input#add-to-list-button{
  height:34px !important;
  border-radius: var(--btn-radius) !important;
  background: var(--primary-color) !important;
  color:#fff !important;
  border:0 !important;
  font-size:.85rem !important;
  font-weight:600 !important;
  cursor:pointer !important;
  padding:0 14px !important;
  transition: background var(--transition), transform var(--transition), box-shadow var(--transition) !important;
}

.product-card input#add-to-list-button:hover{
  background: var(--secondary-color) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 14px rgba(50,196,186,.35) !important;
}

.product-card .buy-button{
  padding: 0 4px 8px 4px;
  display:flex;
  justify-content:center;
}

.product-card .buy-button a{ text-decoration:none; }

.product-card .buy-button button{
  height:34px;
  border-radius: var(--btn-radius);
  background: #fff;
  color: var(--primary-color);
  border: 2px solid var(--coloredbg-color);
  font-weight:600;
  padding: 0 14px;
  cursor:pointer;
  transition: background var(--transition), border-color var(--transition), transform var(--transition);
}

.product-card .buy-button button:hover{
  background: var(--coloredbg-color);
  border-color: var(--primary-color);
  transform: translateY(-1px);
}

@media (max-width:480px){
  .product-card .product-title{ font-size:.82rem; }
  .product-card input#add-to-list-button{ font-size:.75rem; padding:0 8px !important; }
  .product-card .product-price{ font-size:.82rem; }
}

/* ============================================================
   DIALOG (Add2list success)
   ============================================================ */

.ui-dialog{
  border: 1px solid #ccc;
  border-radius: 17px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.5);
  font-family: Arial, sans-serif;
  font-size: 14px;
  padding: 20px;
  background-color:white;
  z-index:1000;
}

.ui-dialog .ui-dialog-titlebar{ display: none; }
.ui-dialog .ui-dialog-content{ padding: 0; }

#ui-id-1{ min-height: 15px; }

.ui-dialog .ui-dialog-buttonpane{ text-align: center; }

.ui-dialog .ui-button{
  background-color: #5455a4;
  border: none;
  border-radius: 30px;
  color: #fff;
  cursor: pointer;
  font-size: 14px;
  margin: 0 10px;
  padding: 10px 20px;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transition: background-color 0.3s ease;
}

.ui-dialog .ui-button:hover{ background-color: #3c3d80; }
.ui-dialog .ui-button:focus{ outline: none; }

.d-star_o,
.d-eye,
.d-cart_arrow_down{ fill:var(--primary-color); }

.d-trash{ fill:red; }

/* ============================================================
   MYCRED
   ============================================================ */

.mycred-rank-list{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px;
}

.rank-card{
  box-shadow:0 4px 8px rgba(0,0,0,.2);
  padding:16px 5px;
  text-align:center;
  background-color:var(--coloredbg-color);
  width:150px;
  border-radius:17px;
  border:1px solid var(--primary-color);
  margin:0;
  flex:0 0 150px;
}

.rank-title{
  padding-bottom:5px;
}

.rank-logo img{
  height:100px;
  width:100px;
  border:1px solid var(--primary-color) !important;
  border-radius:50% !important;
}

.rank-range{
  padding-top:5px;
}

/* ============================================================
   ADD2LIST IMPOSSIBLE ERROR PAGE
   ============================================================ */

.donaki-add2list-error-page{
    min-height:100vh;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:24px;
    box-sizing:border-box;
    background:#f7f7fb;
}

.donaki-add2list-error-card{
    width:100%;
    max-width:520px;
    padding:32px 24px;
    border-radius:18px;
    background:#fff;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    text-align:center;
    box-sizing:border-box;
}

.donaki-add2list-error-title{
    margin:0 0 12px;
    font-size:26px;
    line-height:1.2;
    font-weight:700;
    color:#222;
}

.donaki-add2list-error-text{
    margin:0 0 12px;
    font-size:16px;
    line-height:1.5;
    color:#555;
}

.donaki-add2list-error-actions{
    display:flex;
    flex-direction:column;
    gap:12px;
    margin-top:24px;
}

.donaki-add2list-error-btn{
    display:inline-block;
    padding:14px 18px;
    border-radius:12px;
    text-decoration:none;
    font-weight:600;
    box-sizing:border-box;
}

.donaki-add2list-error-btn-primary{
    background:#944dbb;
    color:#fff;
}

.donaki-add2list-error-btn-secondary{
    background:#f1f1f6;
    color:#222;
}
/* ============================================================
   ADD2LIST POP-UP
   ============================================================ */

.donaki-add2list-popup {
  position: fixed;
  left: 50%;
  bottom: 24px;
  transform: translateX(-50%) translateY(20px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  z-index: 99999;
  transition: opacity 0.22s ease, transform 0.22s ease, visibility 0.22s ease;
}

.donaki-add2list-popup.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}

.donaki-add2list-popup-box {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 220px;
  max-width: 90vw;
  padding: 12px 16px;
  border-radius: 16px;
  background: var(--dak-background-grey);
  color: var(--primary-color);
  box-shadow: 0 12px 30px rgba(0,0,0,0.18);
  border: 1px solid var(--primary-color);
}

.donaki-add2list-popup.is-error .donaki-add2list-popup-box {
  background: #c62828;
  color: #fff;
}

.donaki-add2list-popup-logo-wrap {
  flex: 0 0 auto;
}

.donaki-add2list-popup-logo {
  width: 34px;
  height: 34px;
  object-fit: contain;
  display: block;
}

.donaki-add2list-popup-message {
  font-size: 14px;
  line-height: 1.35;
  font-weight: 600;
}

.js-donaki-add2list button.is-loading {
  opacity: 0.7;
  pointer-events: none;
}

#donaki-add2list-popup {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* ============================================================
   DONAKI — Notifications myCRED (Popup Toast Style)
   ============================================================ */

.notice-item{
  background: #944dbb !important;
  color: #fff !important;
  padding: 15px 22px !important;
  border-radius: 12px !important;
  font-size: 15px !important;
  font-weight: 600;
  display: flex;
  align-items: center;
  box-shadow: 0 6px 18px rgba(0,0,0,0.18);
  opacity: 0;
}

/* ============================================================
   Amazon — differentiation + fixes
   ============================================================ */

.global-amazon { background:#ffce12; }
.amazon-partner-logo { padding:15px; text-align:center; }
.amazon-logo { display:inline-block; width:150px; }



.products-container.amazon-results .product-name{
  line-height: 1.25;
  height: auto;
  max-height: calc(1.25em * 2);
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.amazon-rating-row{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
}

.amazon-rating-number{
  font-weight:700;
  font-size:.85rem;
  color: var(--primary-color);
}

.amazon-rating-stars{
  display:inline-flex;
  align-items:center;
  gap:2px;
}

.amazon-star-clip{
  display:inline-block;
  overflow:hidden;
  vertical-align:middle;
}

.amazon-card-body {
  height:70px;
  padding:4px;
  text-align:center;
}

.btn-icon.donaki-logo-mask{
  background: var(--primary-color);
  border: 2px solid var(--coloredbg-color);
  width:38px;
  height:38px;
  border-radius:50%;
  -webkit-mask-image: url(/assets/images/svg/logoOnlyShortPinNoFill.svg);
  mask-image: url(/assets/images/svg/logoOnlyShortPinNoFill.svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: 18px 18px;
  mask-size: 18px 18px;
}

.btn-icon.donaki-logo-mask:hover{
  background: var(--primary-hover-color);
}

.qty-row-amazon .qty-control{
  gap: 6px;
  padding: 2px;
}

.qty-row-amazon .qty-btn{
  width:26px;
  height:26px;
  border:0;
  background: rgba(148,77,187,.12);
  color: var(--primary-color);
  border-radius:50px;
  cursor:pointer;
  font-weight:800;
  display:flex;
  align-items:center;
  justify-content:center;
}

.qty-row-amazon .qty-btn:hover{
  background: rgba(148,77,187,.20);
}

/* ============================================================
   AMAZON SEARCH (FORM BUTTONS)
   ============================================================ */

.amazon-search-form { 
    padding:4px;
    display:flex;
    height: 40px;
    align-items: center;
}

.amazon-search-block {
  padding: 4px;
  gap: 4px;
  display:flex;
  font-size: 14px;
  color: white;
  align-items: center;
  display: flex;
}

#field-keywords.donaki-field {
    width:200px;
}

.donaki-button,
.donaki-button input[type="submit"],
.donaki-button button[type="submit"],
body .donaki-button,
body .donaki-button button,
body .donaki-button input[type="submit"],
body .donaki-button input[type="button"] {
  background-color: var(--primary-color);
  border: none;
  border-radius:30px;
  color:#fff !important;
  padding: 10px 15px;
}

.amazon-go-button {
  background-color: transparent;
  border: none;
  border-radius:50%;
  color:#fff !important;
  padding: 10px 10px;
}

.search-icon-button{
  width:30px;
  height:30px;
  border-radius:50%;
  border:2px solid var(--primary-color);
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  fill:var(--primary-color);
  text-decoration:none;
  transition:background var(--transition), border-color var(--transition), transform var(--transition);
  position:relative;
}

.donaki-button-inverted,
.donaki-button-inverted input[type="submit"],
.donaki-button-inverted button[type="submit"],
body .donaki-button-inverted,
body .donaki-button-inverted button,
body .donaki-button-inverted input[type="submit"],
body .donaki-button-inverted input[type="button"] {
  background-color: #fff;
  border: solid 1px var(--primary-color);
  border-radius:30px;
  color: var(--primary-color);
  padding: 10px 15px;
}

.donaki-button-grey,
.donaki-button-grey input[type="submit"],
.donaki-button-grey button[type="submit"] {
  background-color: var(--dak-background-grey);
  border: solid 1px var(--primary-color);
  border-radius:30px;
  color: var(--primary-color);
  padding: 10px 15px;
  cursor: pointer;
}

.amazon-load-more {
  margin: 10px auto;
  display: flex;
  justify-content: center;  
}

.product-card div#submit-button{
  display: flex;
  justify-items: center;
}

div#submit-button{
  display: grid;
  justify-items: center;
}

input#pq{
  width: 60px;
  vertical-align: middle;
  height: 37px;
  margin-right: 12px;
}

div#submit-button input#add-to-list-button{
  background-color: var(--primary-color);
  color:#fff;
  border:0;
  border-radius: 100px;
  vertical-align:middle;
  margin-left: 10px;
  padding: 0px 10px 0px 10px;
  height: 34px;
}

div#submit-button input#add-to-list-logo{
  background-color: var(--primary-color);
  -webkit-mask-image: url(/assets/images/svg/logoOnlyShortPinNoFill.svg);
  mask-image: url(/assets/images/svg/logoOnlyShortPinNoFill.svg);
  background-image: none !important;
  -webkit-mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  height:46px;
  padding: 20px;
}

input.add-to-list-logo:hover,
input.add-to-list-button:hover{
  background-color: var(--primary-hover-color);
}

/* ============================================================
   COMPATIBILITY LAYER (Safari iOS PWA / Firefox)
   ============================================================ */

@supports not (-webkit-line-clamp: 2) {
  .product-name,
  .product-description,
  #buddypress .item-list li .item-title .update,
  .product-card .product-title,
  .products-container.amazon-results .product-name{
    display:block;
    overflow:hidden;
    max-height: calc(1.25em * 2);
  }
}

@supports not (aspect-ratio: 1 / 1) {
  .card-image-wrap{
    position:relative;
    height: auto;
  }

  .card-image-wrap::before{
    content:"";
    display:block;
    padding-top:100%;
  }

  .card-image-wrap > a,
  .card-image-wrap > img{
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
  }

  .product-card .product-image{
    position:relative;
  }

  .product-card .product-image::before{
    content:"";
    display:block;
    padding-top:100%;
  }

  .product-card .product-image a,
  .product-card .product-image img{
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
  }
}

@supports not (gap: 10px) {
  #buddypress #activity-stream.activity-list > * + * { margin-top:12px; }

  #buddypress #activity-stream > li.activity-item .activity-meta > * { margin-right:10px; margin-bottom:10px; }
  #buddypress #activity-stream > li.activity-item .activity-meta { margin-right:-10px; margin-bottom:-10px; }

  #buddypress #activity-stream > li.activity-item form.ac-form > * { margin-right:10px; margin-bottom:10px; }
  #buddypress #activity-stream > li.activity-item form.ac-form { margin-right:-10px; margin-bottom:-10px; }

  .mylist-container .icons > * { margin-right:5px; }
  .mylist-container .icons > *:last-child { margin-right:0; }

  .product-grid > * { margin-right:10px; margin-bottom:10px; }
  .product-grid { margin-right:-10px; margin-bottom:-10px; }

  .card-actions > * { margin-right:5px; }
  .card-actions > *:last-child { margin-right:0; }

  .qty-row > * { margin-right:5px; }
  .qty-row > *:last-child { margin-right:0; }

  .add-to-list-row > * { margin-right:3px; }
  .add-to-list-row > *:last-child { margin-right:0; }

  .amazon-rating-row > * { margin-right:6px; }
  .amazon-rating-row > *:last-child { margin-right:0; }

  .amazon-rating-stars > * { margin-right:2px; }
  .amazon-rating-stars > *:last-child { margin-right:0; }
}

.friends-scroll,
.horizontal-scroll{
  -webkit-overflow-scrolling: touch;
}

.elementor-widget-wrap,
#buddypress #activity-stream > li.activity-item .activity-content,
#buddypress .item-list li .item{
  min-width:0;
}

#item-header-content,
div#buddypress #item-header-content{
  min-width: 0;
}

/* ============================================================
   DONAKI HEADER — iOS compatible, badge sans position:absolute
   ============================================================ */

.donaki-member-header{
  display:flex;
  align-items:center;
  gap:16px;
  padding: 0 10px;
}

.donaki-avatar{
  position:relative;
  width:80px;
  height:80px;
  flex-shrink:0;
}

.donaki-avatar img.avatar{
  width:80px !important;
  height:80px !important;
  border-radius:50% !important;
  object-fit:cover;
}

#donaki .donaki-rank-badge{
  position:absolute;
  top:-8px;
  right:-10px;
}

#donaki .donaki-rank-badge img{
  width:28px;
  height:28px;
  border-radius:50%;
  border:2px solid #944dbb;
  box-shadow:0 0 0 2px #fff;
}

.donaki-header-info{
  display:flex;
  flex-direction:column;
}

.donaki-display-name{
  font-size:26px;
  font-weight:700;
}

.donaki-activity{
  font-size:.85rem;
  opacity:.85;
}

.donaki-acomment-toggle {
  background: none;
  border: 0;
  padding: 0;
  margin: 0;
  cursor: pointer;
}

