

 
/*******************************************************
 * LOANS LIST – AUSGELIEHENE BÜCHER
 *******************************************************/

.gv-loan-list {
    display: flex;
    flex-direction: column;
    gap: 25px;
    margin-top: 20px;
}

.gv-loan-entry {
    display: flex;
    gap: 20px;
    padding: 15px;
    border: 1px solid #eeeeee;
    border-radius: 10px;
    background: #fafafa;
}

.gv-loan-img img {
    width: 120px;
    border-radius: 6px;
}

.gv-loan-info h3 {
    margin: 0 0 6px 0;
    font-size: 18px;
    font-weight: 600;
}

.gv-loan-info p {
    margin: 0 0 6px 0;
    font-size: 15px;
}

.gv-loan-return-btn {
    background: #dc3545;
    padding: 8px 16px;
    border-radius: 6px;
    color: #fff !important;
    display: inline-block;
    margin-top: 10px;
    font-weight: 600;
    text-decoration: none;
}

.gv-loan-return-btn:hover {
    background: #b02a37;
}


/*******************************************************
 * GENERAL RESET & CLEANUP
 *******************************************************/
/* Make the Guthaben form align with the normal Woo cart form */
.single-product .gv-redeem-cart {
    margin-bottom: 10px; /* distance between Guthaben and "In den Warenkorb" */
}

/* Style Guthaben button like normal add-to-cart, just greener */
.single-product .gv-redeem-btn {
    background-color: #6c8f70;   /* your green */
    border-radius: 30px;
    border: none;
}

.single-product .gv-redeem-btn:hover {
    background-color: #5b7a5f;
}
.gv-loan-list {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.gv-loan-item {
    display: flex;
    gap: 20px;
    padding: 15px;
    border: 1px solid #ddd;
    border-radius: 8px;
    align-items: flex-start;
    background: #fafafa;
}

.gv-loan-img img {
    width: 90px;
    height: auto;
    border-radius: 5px;
}

.gv-loan-info {
    flex: 1;
}

.gv-return-btn {
    background: #dc3545;
    color: white !important;
    padding: 10px 14px;
    border-radius: 6px;
    border: none;
    cursor: pointer;
}

.gv-return-btn:hover {
    background: #bb2d3b;
}
.gv-loan-info h3,
.gv-loan-info p,
.woocommerce-MyAccount-navigation li a {
    font-family: 'Merriweather', serif;
    color: #0F172A;
}

.woocommerce-MyAccount-navigation li.is-active a {
    font-weight: 700;
}
 
  /* === FORCE Guthaben to match Elementor header menu text === */
.elementor-shortcode .gv-header-balance{
  font-family: Merriweather, serif !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  color: #0F172A !important;

  line-height: 1 !important;
  height: 40px;                 /* 🔥 matches Elementor menu item */
  display: inline-flex;         /* 🔥 same layout model */
  align-items: center;          /* 🔥 vertical centering */
  padding: 0;                   /* remove text offset */
  margin: 0;
  vertical-align: middle;
  white-space: nowrap;
}

/* =========================
   Merkliste
========================= */

.gv-wishlist-grid{
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  gap: 24px;
  margin-top: 20px;
}

.gv-wishlist-item{
  text-align: center;
}

.gv-wishlist-item img{
  max-width: 140px;
  margin: 0 auto 10px;
  display: block;
}

.gv-wishlist-item h4{
  font-size: 16px;
  line-height: 1.3;
  margin: 0;
  color: #0F172A;
}
.gv-wishlist-btn:hover {
    background: #799E7E;
}

/* ===============================
   Meine Bücher – larger covers
   =============================== */

.gv-loan-item {
    display: flex;
    gap: 20px;
    align-items: flex-start;
}

/* === Meine Bücher: show full cover (no crop) === */
.gv-loan-img{
  width: 180px;          /* match your desired cover width */
  flex: 0 0 180px;
  overflow: visible !important;  /* in case something clips */
}

.gv-loan-img img{
  width: 100% !important;
  height: 260px !important;      /* pick a nice consistent height */
  object-fit: contain !important; /* ✅ shows the whole image */
  object-position: center;
  display: block;
  background: #fff;              /* optional: nicer padding look */
  border-radius: 6px;
}



/* ===============================
   Mitgliedschaft Plan
   =============================== */
.gv-membership-plans{
    display: grid;
    grid-template-columns: repeat(1, 3fr);
    gap: 24px;
    margin-top: 20px;
}

.gv-plan-card{
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    padding: 22px;
    text-align: center;
    background: #fff;
    transition: transform .2s ease, box-shadow .2s ease;
}

.gv-plan-card:hover{
    transform: translateY(-4px);
    box-shadow: 0 10px 30px rgba(0,0,0,.08);
}

.gv-plan-price{
    font-size: 26px;
    font-weight: 700;
    margin: 12px 0;
}

.gv-plan-btn{
    margin-top: 12px;
    background: #7fa184;
    color: #fff;
    border: 0;
    padding: 12px 18px;
    border-radius: 999px;
    cursor: pointer;
    font-weight: 600;
}	

.gv-active-membership{
    background:#f8fafc;
    padding:14px 18px;
    border-radius:12px;
    margin-bottom:20px;
    font-weight:600;
}
.gv-membership-btn {
    background: #111827;
    color: #fff;
    padding: 14px 22px;
	bottom:14px;
    font-weight: 600;
    border-radius: 8px;
    display: inline-block;
    text-align: center;
}

.gv-membership-btn:hover {
    background: #000;
}
/* Mobile */
@media (max-width: 768px){
    .gv-membership-plans{
        grid-template-columns: 1fr;
    }
}

/*Guthaben zeiger style*/

/* Guthaben Bubble – Elementor-sicher */
.woocommerce-account .gv-guthaben-bubble {
	font-family: Merriweather, serif;
	font-size: 16px;
    line-height: 1.3;
	display: inline-flex !important;
	align-items: center !important;
	gap: 10px !important;
	padding: 10px 18px !important;
	border-radius: 999px !important;
	font-weight: 600 !important;
	margin-bottom: 16px !important;
}

.woocommerce-account .gv-guthaben-bubble span {
  opacity: 0.8;
  font-size: 14px;
}

/* 🟢 Guthaben vorhanden */
.woocommerce-account .gv-guthaben-bubble.is-positive {
  background-color: #dcfce7 !important;
  color: #14532d !important;
}

/* 🔴 Kein Guthaben */
.woocommerce-account .gv-guthaben-bubble.is-zero {
  background-color: #fee2e2 !important;
  color: #7f1d1d !important;
}

/* ===============================
   ACTIVE PLAN STYLING
================================ */

.gv-plan-card.is-active {
    border: 2px solid #86efac;
    background: linear-gradient(180deg, #f0fdf4, #ffffff);
    box-shadow: 0 12px 30px rgba(22, 163, 74, 0.15);
}

/* DISABLED BUTTON */
.gv-plan-btn.is-disabled {
    background: #e5e7eb;
    color: #9ca3af;
    cursor: not-allowed;
}

.gv-plan-btn.is-disabled:hover {
    transform: none;
}

.gv-plan-card.is-active .gv-plan-btn {
    background: #86efac;
    color: #065f46;
    cursor: default;
}


/* Plan button as <a> */
a.gv-plan-btn {
    color: #ffffff !important;
}

/* Hover stays white */
a.gv-plan-btn:hover {
    color: #ffffff !important;
}

/* Disabled visual state */
a.gv-plan-btn.is-disabled {
    color: #ffffff !important;
    opacity: 0.6;
}

.gv-plan-card {
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    padding: 22px;
    text-align: center;
    background: #fff;

    display: flex;                /* 🔥 */
    flex-direction: column;       /* 🔥 */
    justify-content: space-between; /* 🔥 equal height feel */

    min-height: 260px;            /* 🔥 keeps cards equal */
    transition: transform .2s ease, box-shadow .2s ease;
}

.gv-plan-card .gv-plan-btn,
.gv-plan-card a.gv-plan-btn {
    margin-top: auto;        /* 🔥 pushes button to bottom */
}

/* Cancel / manage subscription button */
.gv-cancel-btn {
    background: #cd5c5c;
    color: #cd5c5c !important;
    border: 1px solid #cbd5e1;
	display: inline-block;
	padding: 12px 18px;
	margin-bottom: 3%;
	border-radius: 999px;
	font-weight: 600;
	text-decoration: none;
}	

.gv-cancel-btn:hover {
 
	opacity: 0.3;
}


/* ===============================
   Meine Bücher – Card typography + spacing
   =============================== */

/* Layout: more space between cover and text */
.gv-loan-item{
  gap: 32px !important;             /* more to the right */
  align-items: flex-start;
}

/* Also add a little extra padding on the text block */
.gv-loan-info{
  padding-left: 20px;               /* “text more to the right” */
}

/* Fonts + sizes */
.gv-loan-info strong{
  font-family: 'Merriweather', serif !important;
  font-size: 20px !important;
  line-height: 1.25;
  display: inline-block;
  margin-bottom: 6px;
}

.gv-loan-info small,
.gv-loan-info{
  font-family: 'Merriweather', serif !important;
  font-size: 16px !important;
  line-height: 1.55;
  color: #0F172A;
}

/* Make the order line slightly smaller (optional) */
.gv-loan-info small{
  font-size: 14px !important;
  opacity: 0.85;
}

/* ===============================
   Mobile: image on top, text underneath
   =============================== */
@media (max-width: 768px){
  .gv-loan-item{
    flex-direction: column !important;
    gap: 14px !important;
    align-items: stretch;
  }

  .gv-loan-img{
    width: 100%;
    display: flex;
    justify-content: center;
  }

  .gv-loan-img img{
    max-width: 220px;     /* adjust as you like */
    width: 100%;
    height: auto;
  }

  .gv-loan-info{
    padding-left: 0 !important;     /* no left padding when stacked */
    text-align: left;
  }

  .gv-return-form,
  .gv-return-btn{
    width: 100%;
  }

  .gv-return-btn{
    display: block;
    text-align: center;
  }
}

.gv-notice{
  padding: 12px 14px;
  border-radius: 10px;
  margin: 12px 0 18px 0;
  font-size: 14px;
  line-height: 1.4;
}
.gv-notice-success{
  border: 1px solid #b7ebc6;
  background: #f1fff4;
}
.gv-notice-error{
  border: 1px solid #ffb6b6;
  background: #fff2f2;
}
.gv-price-image {
  max-width: 547px;
  height: auto;
  image-rendering:auto;
  display: block;
  margin: 0 auto;
}