
.gtt-social {
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:12px;
}
.gtt-social a{
  padding:.35rem .7rem;
  border-radius:999px;
  border:1px solid rgba(0,0,0,0.10);
  background: rgba(255,255,255,0.35);
  text-decoration:none;
  font-weight:700;
}
.gtt-social a:hover{
  text-decoration:underline;
}
.gtt-faq details summary{
  cursor:pointer;
}
.gtt-faq-body{
  margin-top:.75rem;
}


/* Readings + Horoscopes UI */
.gtt-row{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.gtt-row-top{margin-bottom:10px;}
.gtt-card-title{margin:0 0 8px 0;}
.gtt-card-title a{text-decoration:none;}
.gtt-card-title a:hover{text-decoration:underline;}
.gtt-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px;}
.gtt-price{font-weight:900;color:var(--gtt-ember);}
.gtt-badge{display:inline-flex;align-items:center;gap:6px;padding:.25rem .6rem;border-radius:999px;font-weight:800;font-size:.82rem;border:1px solid rgba(0,0,0,0.10);background:rgba(255,255,255,0.45);}
.gtt-badge-free{background:rgba(246, 209, 119, 0.20);border-color:rgba(246, 209, 119, 0.35);color:var(--gtt-plum);}
.gtt-badge-sample{background:rgba(223, 143, 76, 0.16);border-color:rgba(223, 143, 76, 0.25);color:var(--gtt-plum);}
.gtt-badge-paid{background:rgba(160, 53, 47, 0.12);border-color:rgba(160, 53, 47, 0.20);color:var(--gtt-plum);}
.gtt-badge-horo{background:rgba(224, 208, 192, 0.45);border-color:rgba(74, 22, 37, 0.12);color:var(--gtt-plum);}

.gtt-player{margin: 10px 0 20px 0;}
.gtt-embed iframe{width:100%;max-width:100%;aspect-ratio:16/9;height:auto;border-radius:18px;}
.gtt-paywall{padding:18px;}
.gtt-paywall h3{margin-top:0;}

.gtt-sign-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-top:12px;}
.gtt-sign{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-radius:18px;border:1px solid rgba(0,0,0,0.06);background:rgba(255,255,255,0.55);text-decoration:none;box-shadow:0 10px 24px rgba(0,0,0,0.05);}
.gtt-sign:hover{text-decoration:underline;}
.gtt-sign-name{font-weight:900;color:var(--gtt-plum);}
.gtt-sign-sub{font-weight:800;color:rgba(31, 26, 28, 0.70);}

.gtt-tabs{display:flex;flex-direction:column;gap:10px;margin-bottom:14px;}
.gtt-tab-row{display:flex;gap:10px;flex-wrap:wrap;}
.gtt-tab{padding:.45rem .8rem;border-radius:999px;border:1px solid rgba(0,0,0,0.10);background:rgba(255,255,255,0.45);text-decoration:none;font-weight:800;color:var(--gtt-plum);}
.gtt-tab:hover{text-decoration:underline;}
.gtt-tab.is-active{background:rgba(246, 209, 119, 0.22);border-color:rgba(246, 209, 119, 0.35);}
.gtt-tab-sub.is-active{background:rgba(223, 143, 76, 0.16);border-color:rgba(223, 143, 76, 0.25);}
.gtt-horo-meta{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:10px;}
.gtt-horo-disclaimer{margin-top:12px;font-size:.92rem;}


/* Calm YouTube embed (lazy-load) */
.gtt-embed--lazy{position:relative;}
.gtt-video-cover{
  width:100%;
  border:0;
  padding:0;
  background:transparent;
  cursor:pointer;
  display:block;
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 10px 24px rgba(0,0,0,0.06);
}
.gtt-video-thumb{width:100%;height:auto;display:block;}
.gtt-video-play{
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  width:64px;
  height:64px;
  border-radius:999px;
  background:rgba(250,249,244,0.92);
  border:1px solid rgba(31,26,28,0.16);
  box-shadow:0 10px 22px rgba(0,0,0,0.08);
}
.gtt-video-play:before{
  content:'';
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-42%,-50%);
  width:0;height:0;
  border-top:10px solid transparent;
  border-bottom:10px solid transparent;
  border-left:16px solid rgba(31,26,28,0.70);
}

/* Calm reveal (Online Readings) */
.gtt-reveal{margin:10px 0 20px 0;}
.gtt-reveal-body[hidden]{display:none;}
.gtt-reveal.is-open .gtt-reveal-body{display:block;}
.gtt-online-gate .gtt-online-start{padding:18px;}


/* /* Sign calculator: improved responsiveness + buttons */
.gtt-signcalc .gtt-signcalc-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 12px 0;
}

/* Common 2-column grids used by the calculator */
.gtt-signcalc .gtt-signcalc-grid--two{
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

/* Tablet and down: keep it from overlapping */
@media (max-width: 1024px){
  .gtt-signcalc .gtt-signcalc-grid,
  .gtt-signcalc .gtt-signcalc-grid--two{
    grid-template-columns: 1fr;
  }
}

.gtt-signcalc .gtt-field label{
  display:block;
  margin-bottom: 6px;
  font-weight: 700;
}

.gtt-signcalc input,
.gtt-signcalc select{
  width: 100%;
  padding: .6rem .7rem;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,0.12);
  background: rgba(255,255,255,0.55);
  box-sizing: border-box;
}

/* Make the action row behave */
.gtt-signcalc .gtt-actions{
  display:flex;
  align-items:center;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 8px;
}

.gtt-signcalc .gtt-signcalc-inline{
  display:flex;
  align-items:center;
  gap: 10px;
  flex-wrap: wrap;
}

/* Ensure buttons look like buttons even if theme overrides wp-element-button */
.gtt-signcalc button.wp-element-button{
  appearance:none;
  border-radius: 999px;
  padding: .65rem 1rem;
  border: 1px solid rgba(160,53,47,.35);
  background: rgba(255,255,255,0.90);
  color: var(--gtt-plum);
  font-weight: 700;
  cursor:pointer;
}
.gtt-signcalc button.wp-element-button:hover{
  border-color: rgba(160,53,47,.65);
}

.gtt-signcalc .gtt-signcalc-results{ margin-top: 14px; }

.gtt-signcalc-out{
  border: 1px solid rgba(0,0,0,0.10);
  border-radius: 16px;
  padding: 14px;
  background: rgba(255,255,255,0.35);
}
.gtt-signcalc-row{ padding: 6px 0; }
.gtt-signcalc-notes{ margin-top: 10px; }
.gtt-signcalc-notes summary{ cursor:pointer; font-weight: 800; }
.gtt-signcalc-cusp{ margin-top: 10px; }


/* Zodiac art (symbols + fairies) */
.gtt-zsvg{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color: var(--gtt-plum);
}
.gtt-zsvg-symbols{color: var(--gtt-gold, #F6D177);}
.gtt-zsvg-fairies{color: var(--gtt-plum);}
.gtt-zsvg svg{
  display:block;
  width: 1em !important;
  height: 1em !important;
  max-width: none !important;
  max-height: none !important;
}
.gtt-sign-left{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}
.gtt-sign-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  margin-right:10px;
  color: var(--gtt-gold, #F6D177);
  font-size:20px;
  line-height:1;
  flex:0 0 auto;
  opacity:0.9;
}
.gtt-sign-icon svg{
  width:28px !important;
  height:28px !important;
  opacity:0.9;
}
.gtt-sign-name{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.gtt-horo-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin: 4px 0 10px 0;
}
.gtt-horo-title{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}
.gtt-horo-symbol svg{
  width:44px !important;
  height:44px !important;
  opacity:0.92;
}
.gtt-horo-symbol-sm svg{
  width:22px !important;
  height:22px !important;
  opacity:0.9;
}
.gtt-horo-sign{
  margin:0;
  font-weight: 950;
  color: var(--gtt-plum);
}
.gtt-horo-sub{
  margin:2px 0 0 0;
}
.gtt-horo-fairy-wrap{
  flex:0 0 auto;
  width: 220px;
  max-width: 32vw;
  opacity:0.85;
}
.gtt-horo-fairy svg{
  width:100%;
  height:auto;
}
@media (max-width: 760px){
  .gtt-horo-head{
    flex-direction:column;
    align-items:flex-start;
  }
  .gtt-horo-fairy-wrap{
    width: 100%;
    max-width: 360px;
    opacity:0.78;
  }
}

/* === v1.6.2: Horoscope hub layout hard reset (Home + page) === */
.gtt-sign-grid{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  margin-top:12px;
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box;
  align-self:stretch;
  justify-self:stretch;
  columns: initial !important;
  column-count: initial !important;
  column-gap: initial !important;
}
.gtt-sign{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  padding:12px 16px !important;
  border-radius:999px !important;
  border:1px solid rgba(0,0,0,0.06) !important;
  background:rgba(255,255,255,0.55) !important;
  text-decoration:none !important;
  box-shadow:0 10px 24px rgba(0,0,0,0.05) !important;
  width:auto !important;
  min-width:165px;
  max-width:100% !important;
  box-sizing:border-box;
  position:static !important;
  float:none !important;
  transform:none !important;
}
@media (max-width: 760px){
  .gtt-sign{
    flex:1 1 calc(50% - 10px);
    min-width: 0;
  }
}
@media (max-width: 420px){
  .gtt-sign{ flex-basis:100%; }
}
