/* =====================================================
   PH ASTRO CORE – RADIX BUBBLE (match .online glass style)
===================================================== */

.ph-bubble.ph-radix-card {
  background-color: rgba(8, 10, 22, 0.55);
  background-image:
    radial-gradient(
      120% 140% at 20% 0%,
      rgba(122, 92, 255, 0.18) 0%,
      rgba(61, 220, 255, 0.08) 35%,
      rgba(0, 0, 0, 0) 70%
    );

  border: 1.6px solid rgba(255,255,255,0.10);
  border-radius: 26px;

  box-shadow:
    rgba(0, 0, 0, 0.35) 0px 18px 50px 0px,
    rgba(255, 255, 255, 0.05) 0px 0px 0px 1px inset,
    rgba(122, 92, 255, 0.10) 0px 0px 28px 0px,
    rgba(61, 220, 255, 0.08) 0px 0px 18px 0px;

  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);

  padding: 18px;
  margin-top: 16px;
}

/* Radix SVG centrování */
.ph-radix-canvas {
  display: flex;
  justify-content: center;
  align-items: center;
}

/* Mobilní optimalizace */
@media (max-width: 768px) {
  .ph-bubble.ph-radix-card {
    border-radius: 20px;
    padding: 14px;
    backdrop-filter: blur(12px);
  }
}
/* =========================================
   PH – GLOBAL GLASS BUBBLE (ALL PAGES)
========================================= */

.ph-bubble,
.ph-card,
.ph-panel,
.ph-side-card {
  background: rgba(8, 10, 22, 0.55);
  background-image:
    radial-gradient(
      120% 140% at 20% 0%,
      rgba(122, 92, 255, 0.18) 0%,
      rgba(61, 220, 255, 0.08) 35%,
      rgba(0, 0, 0, 0) 70%
    );

  border: 1.6px solid rgba(255,255,255,0.1);
  border-radius: 26px;

  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);

  box-shadow:
    rgba(0, 0, 0, 0.35) 0 18px 50px,
    rgba(255, 255, 255, 0.05) 0 0 0 1px inset,
    rgba(122, 92, 255, 0.1) 0 0 28px,
    rgba(61, 220, 255, 0.08) 0 0 18px;

  color: rgba(235,242,255,.92);
}
.ph-bubble--engine {
    margin-top: 24px;
}

.ph-dominance-section ul {
    list-style: none;
    padding-left: 0;
}

.ph-planet--strong {
    color: #ffd27d;
    font-weight: 600;
}

.ph-planet--weak {
    color: #888;
}

.ph-planet-scores {
    font-size: 0.9em;
    color: #aaa;
}
/* PH – interpretation layout (plugin-safe) */
#ph-interpretation {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
}

/* žádné privilegium pro první blok */
#ph-interpretation > .ph-bubble {
    grid-column: auto !important;
}
/* === PH ASTRO CORE LAYOUT FIX === */

.ph-layout{
  display:grid;
  grid-template-columns: 1fr minmax(360px, 640px) 1fr;
  justify-items:center;
  align-items:start;
}

.ph-chartShell{
  grid-column:2;
  width:100%;
  display:flex;
  justify-content:center;
}

#phChart,
#radix{
  margin:0 auto;
  display:flex;
  justify-content:center;
}
/* astro-core layout fix */

.ph-chartShell{
  grid-column: 2;
  display:flex;
  justify-content:center;
  width:100%;
}

#phChart{
  margin:auto;
}
/* =========================================================
   PH 0.2.11 – free shortcode width/layout guard
========================================================= */
.ph-free-horoscope,
.entry-content .ph-free-horoscope{
  box-sizing: border-box;
  width: min(780px, calc(100% - 28px));
  max-width: 100%;
  margin: 0 auto;
  padding: 0;
  overflow: visible;
}

.ph-free-horoscope *,
.ph-free-horoscope *::before,
.ph-free-horoscope *::after{
  box-sizing: border-box;
}

.ph-free-horoscope > .ph-free-card,
.ph-free-horoscope > .ph-bubble.ph-radix-card,
.ph-free-horoscope > .ph-interpretation-wrap{
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.ph-free-horoscope .ph-radix-canvas svg{
  display: block;
  width: min(100%, 680px);
  height: auto;
  margin: 0 auto;
}

.ph-free-horoscope .ph-interpretation-wrap{
  padding: 0;
  margin-top: 18px !important;
}

.ph-free-horoscope .ph-interpretation,
.ph-free-horoscope #ph-interpretation{
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
  width: 100%;
  max-width: 100%;
}

.ph-free-horoscope .ph-interpretation > .ph-bubble,
.ph-free-horoscope #ph-interpretation > .ph-bubble{
  width: auto !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 18px 20px;
}

.ph-free-horoscope .ph-bubble--status{
  grid-column: 1 / -1;
}

.ph-free-horoscope .ph-bubble-text{
  overflow-wrap: anywhere;
}

@media (max-width: 820px){
  .ph-free-horoscope,
  .entry-content .ph-free-horoscope{
    width: calc(100% - 20px);
  }

  .ph-free-horoscope .ph-interpretation,
  .ph-free-horoscope #ph-interpretation{
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
  }
}

/* =========================================================
   PH Astro-Core – členský profil / centrální radix data
========================================================= */
.ph-member-astro-profile{
  width:min(1080px, calc(100% - 28px));
  margin:28px auto;
  color:rgba(235,242,255,.92);
}
.ph-member-astro-card{
  position:relative;
  border-radius:22px;
  padding:22px;
  margin:0 0 18px;
  background:rgba(10,14,28,.48);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 18px 60px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  overflow:hidden;
}
.ph-member-astro-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg, rgba(255,255,255,.08), transparent 45%), radial-gradient(700px 180px at 16% 0%, rgba(122,92,255,.16), transparent 60%);
  opacity:.8;
}
.ph-member-astro-card > *{
  position:relative;
  z-index:1;
}
.ph-member-astro-kicker{
  margin:0 0 6px!important;
  color:#62f0e8!important;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:12px;
}
.ph-member-astro-profile h2,
.ph-member-astro-profile h3{
  color:rgba(255,255,255,.96);
  margin:.1rem 0 .65rem;
  line-height:1.18;
}
.ph-member-astro-profile p{
  color:rgba(235,242,255,.78);
  line-height:1.62;
}
.ph-member-astro-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:14px;
  margin:0 0 18px;
}
.ph-member-astro-point{
  margin:0;
  min-height:168px;
}
.ph-member-astro-symbol{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:rgba(98,240,232,.08);
  border:1px solid rgba(98,240,232,.18);
  color:#62f0e8;
  font-size:22px;
  font-weight:850;
  margin-bottom:12px;
}
.ph-member-astro-point strong{
  font-size:18px;
  color:rgba(255,255,255,.94);
}
.ph-member-astro-point small{
  color:rgba(235,242,255,.64);
  font-weight:750;
}
.ph-member-astro-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}
.ph-member-astro-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:0;
  cursor:pointer;
  text-decoration:none!important;
  border-radius:999px;
  padding:11px 17px;
  font-weight:850;
  color:#061020!important;
  background:linear-gradient(135deg, rgba(123,92,255,1), rgba(61,220,255,1));
  box-shadow:0 14px 40px rgba(0,0,0,.28), 0 0 0 1px rgba(255,255,255,.08) inset;
}
.ph-member-astro-button:hover{
  filter:brightness(1.06);
  transform:translateY(-1px);
}
.ph-member-astro-data{
  display:grid;
  gap:7px;
  margin-top:12px;
  color:rgba(235,242,255,.86);
}
.ph-member-astro-raw{
  white-space:pre-wrap;
  overflow:auto;
  max-height:520px;
  border-radius:18px;
  padding:18px;
  background:rgba(0,0,0,.32);
  border:1px solid rgba(255,255,255,.10);
  color:rgba(235,242,255,.82);
}
@media (max-width:900px){
  .ph-member-astro-grid{ grid-template-columns:repeat(2, minmax(0,1fr)); }
}
@media (max-width:560px){
  .ph-member-astro-profile{ width:calc(100% - 20px); }
  .ph-member-astro-grid{ grid-template-columns:1fr; }
}

/* =========================================================
   PH Astro-Core – členské výkladové texty z DB
========================================================= */
.ph-member-astro-card--texts-head{
  margin-top:18px;
}
.ph-member-astro-text-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:16px;
  margin:0 0 18px;
}
.ph-member-astro-text-card{
  margin:0;
  min-height:220px;
}
.ph-member-astro-text-card--intro{
  grid-column:1 / -1;
}
.ph-member-astro-text{
  color:rgba(235,242,255,.82);
  line-height:1.68;
}
.ph-member-astro-text p{
  margin:.65rem 0;
}
.ph-member-astro-text p:first-child{
  margin-top:0;
}
.ph-member-astro-key{
  display:block;
  margin-top:14px;
  color:rgba(98,240,232,.48);
  overflow-wrap:anywhere;
}
@media (max-width:900px){
  .ph-member-astro-text-grid{ grid-template-columns:1fr; }
  .ph-member-astro-text-card--intro{ grid-column:auto; }
}

/* =========================================================
   PH Astro-Core – členský radix + vyrovnanější textový grid
========================================================= */
.ph-member-radix-card{
  margin:0 0 22px;
  padding:24px;
}
.ph-member-radix-head{
  max-width:760px;
  margin:0 auto 12px;
  text-align:center;
}
.ph-member-radix-canvas{
  min-height:420px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.ph-member-radix-canvas svg{
  width:min(100%, 760px);
  max-width:760px!important;
  height:auto;
  display:block;
  margin:0 auto;
}
.ph-member-radix-error{
  color:rgba(235,242,255,.74);
  text-align:center;
}

/* První výkladový blok už nesmí zabírat celou šířku.
   Na desktopu tak stránka nepůsobí dole prázdně a „nedokončeně“. */
.ph-member-astro-text-card--intro{
  grid-column:auto!important;
}
.ph-member-astro-text-grid{
  align-items:start;
}

@media (max-width:900px){
  .ph-member-radix-canvas{ min-height:340px; }
}
@media (max-width:560px){
  .ph-member-radix-card{ padding:16px; }
  .ph-member-radix-canvas{ min-height:280px; }
}
