/* ============================================================
   PRANERGY ORB — PRACTICE CSS
   Matching exact visual: full-screen session with breathing guide
   ============================================================ */
.pranergy-practice{min-height:100vh;background:transparent;position:relative;}

/* Selection screen */
.pranergy-practice__selection{
  min-height:100vh;display:flex;flex-direction:column;align-items:center;
  padding:60px 20px 40px;gap:24px;
}
.pranergy-practice__title{font-size:28px;letter-spacing:4px;text-align:center;}
.pranergy-practice__sub{font-size:13px;font-family:var(--font-sans);color:var(--gray);letter-spacing:1px;}

/* Technique grid on practice page */
.pranergy-practice-grid{
  display:grid;grid-template-columns:repeat(2,1fr);gap:16px;
  width:100%;max-width:600px;
}
.pranergy-practice-card{
  background:rgba(10,11,30,0.85);border:1px solid var(--border);
  border-radius:16px;padding:20px 16px;cursor:pointer;transition:all .4s;
  display:flex;align-items:center;gap:16px;position:relative;overflow:hidden;
}
.pranergy-practice-card::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(circle at 20% 50%,var(--t-color,transparent) 0%,transparent 60%);
  opacity:0;transition:opacity .4s;
}
.pranergy-practice-card:hover{border-color:var(--t-color);transform:translateY(-2px);}
.pranergy-practice-card:hover::before{opacity:.1;}
.pranergy-practice-card__orb{
  width:56px;height:56px;border-radius:50%;flex-shrink:0;
  background:rgba(5,6,16,0.9);border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;
}
.pranergy-practice-card__orb svg{width:38px;height:38px;}
.pranergy-practice-card__info{display:flex;flex-direction:column;gap:3px;}
.pranergy-practice-card__name{font-size:14px;font-family:var(--font-sans);color:var(--t-color,var(--white));letter-spacing:1px;font-weight:600;}
.pranergy-practice-card__meaning{font-size:11px;color:var(--gray);font-family:var(--font-sans);}
.pranergy-practice-card__rounds{font-size:10px;color:var(--gray-dark);font-family:var(--font-sans);margin-top:2px;}

/* ─── ACTIVE SESSION SCREEN ─── */
.pranergy-session{
  min-height:100vh;display:flex;flex-direction:column;align-items:center;
  justify-content:space-between;padding:0 20px;position:relative;
}
.pranergy-session__top{
  display:flex;justify-content:space-between;align-items:center;
  width:100%;max-width:500px;padding:20px 0 10px;
}
.pranergy-session__back{
  width:40px;height:40px;border:1px solid var(--border);border-radius:8px;
  display:flex;align-items:center;justify-content:center;cursor:pointer;
  color:var(--gray);font-size:18px;transition:all .3s;background:transparent;
}
.pranergy-session__back:hover{color:var(--white);border-color:var(--white);}
.pranergy-session__icons{display:flex;gap:8px;}
.pranergy-session__icon-btn{
  width:40px;height:40px;border:1px solid var(--border);border-radius:8px;
  display:flex;align-items:center;justify-content:center;cursor:pointer;
  color:var(--gray);font-size:18px;background:transparent;transition:all .3s;
}
.pranergy-session__icon-btn:hover,.pranergy-session__icon-btn.active{color:var(--gold);border-color:var(--gold);}

.pranergy-session__middle{
  flex:1;display:flex;align-items:center;justify-content:center;
  position:relative;width:100%;
}
.pranergy-session__orb-wrap{
  position:relative;display:flex;align-items:center;justify-content:center;
}

/* Breathing circle animation (the outer ring that expands/contracts) */
.pranergy-breath-circle-ring{
  position:absolute;
  border-radius:50%;
  border:1.5px solid var(--orb-color,rgba(124,58,237,0.4));
  animation:breathCircleIdle 4s ease-in-out infinite;
  pointer-events:none;
}
.pranergy-breath-circle-ring--1{width:160%;height:160%;opacity:.4;}
.pranergy-breath-circle-ring--2{width:180%;height:180%;opacity:.25;}
@keyframes breathCircleIdle{0%,100%{transform:scale(1);opacity:.4;}50%{transform:scale(1.05);opacity:.6;}}
@keyframes breathCircleIn{0%{transform:scale(.8);opacity:.3;}100%{transform:scale(1.2);opacity:.7;}}
@keyframes breathCircleOut{0%{transform:scale(1.2);opacity:.7;}100%{transform:scale(.8);opacity:.2;}}

/* Side panels */
.pranergy-session__side{
  position:absolute;top:50%;transform:translateY(-50%);
  display:flex;flex-direction:column;gap:12px;
  background:rgba(10,11,30,0.8);border:1px solid var(--border-gold);
  border-radius:12px;padding:14px 12px;min-width:110px;
}
.pranergy-session__side--left{left:0;}
.pranergy-session__side--right{right:0;}
.pranergy-session__side-stat{display:flex;flex-direction:column;gap:1px;}
.pranergy-session__side-label{font-size:9px;font-family:var(--font-sans);letter-spacing:1.5px;color:var(--gray);text-transform:uppercase;}
.pranergy-session__side-value{font-size:18px;color:var(--white);font-family:var(--font-sans);font-weight:600;}
.pranergy-session__side-sub{font-size:10px;color:var(--gray);font-family:var(--font-sans);}

/* Breathing guide panel */
.pranergy-session__guide{
  position:absolute;right:0;top:50%;transform:translateY(-50%);
  background:rgba(10,11,30,0.9);border:1px solid var(--border-gold);
  border-radius:12px;padding:16px 14px;min-width:130px;
  display:flex;flex-direction:column;gap:10px;
}
.pranergy-session__guide-title{
  font-size:10px;font-family:var(--font-sans);letter-spacing:2px;
  color:var(--gold);text-transform:uppercase;text-align:center;margin-bottom:4px;
}
.pranergy-guide-phase{display:flex;align-items:flex-start;gap:8px;padding:4px 0;}
.pranergy-guide-phase__icon{
  width:20px;height:20px;border-radius:50%;background:rgba(124,58,237,0.2);
  border:1px solid rgba(124,58,237,0.4);display:flex;align-items:center;
  justify-content:center;font-size:9px;flex-shrink:0;margin-top:1px;
}
.pranergy-guide-phase.active .pranergy-guide-phase__icon{background:var(--orb-color);border-color:var(--orb-color);}
.pranergy-guide-phase__info{display:flex;flex-direction:column;gap:1px;}
.pranergy-guide-phase__name{font-size:10px;font-family:var(--font-sans);color:var(--white);font-weight:600;letter-spacing:.5px;}
.pranergy-guide-phase__detail{font-size:9px;font-family:var(--font-sans);color:var(--gray);}

/* Nostril guide */
.pranergy-nostril-guide{
  display:flex;gap:16px;justify-content:center;margin-top:8px;
  padding-top:8px;border-top:1px solid var(--border);
}
.pranergy-nostril{display:flex;flex-direction:column;align-items:center;gap:3px;}
.pranergy-nostril__icon{width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,0.05);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:14px;}
.pranergy-nostril.active .pranergy-nostril__icon{border-color:var(--orb-color);background:rgba(124,58,237,0.2);}
.pranergy-nostril__label{font-size:9px;font-family:var(--font-sans);color:var(--gray);}

.pranergy-session__bottom{
  display:flex;flex-direction:column;align-items:center;gap:12px;
  width:100%;max-width:400px;padding:16px 0 24px;
}
.pranergy-session__technique-name{
  font-size:20px;letter-spacing:2px;text-align:center;
  color:var(--orb-color,var(--white));text-transform:uppercase;
}
.pranergy-session__instruction{
  font-size:18px;color:var(--gray);font-style:italic;
  text-align:center;min-height:52px;display:flex;align-items:center;
  justify-content:center;transition:opacity .5s;line-height:1.5;
}
.pranergy-session__tip{
  font-size:12px;color:rgba(148,163,184,0.5);font-family:var(--font-sans);
  text-align:center;max-width:340px;line-height:1.5;
}

/* Breath ratio display */
.pranergy-session__ratio{
  display:flex;align-items:center;gap:8px;
  background:rgba(10,11,30,0.7);border:1px solid var(--border-gold);
  border-radius:8px;padding:8px 16px;
}
.pranergy-session__ratio-label{font-size:10px;font-family:var(--font-sans);color:var(--gray);margin-right:4px;}
.pranergy-session__ratio-value{font-size:13px;font-family:var(--font-sans);color:var(--white);letter-spacing:1px;}
.pranergy-session__ratio-btn{font-size:10px;font-family:var(--font-sans);color:rgba(212,168,67,0.7);cursor:pointer;margin-left:8px;}

/* Controls */
.pranergy-session__controls{display:flex;gap:12px;align-items:center;}
.pranergy-session__pause{
  width:52px;height:52px;border-radius:50%;
  background:rgba(10,11,30,0.8);border:2px solid var(--gold);
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;color:var(--gold);font-size:18px;transition:all .3s;
}
.pranergy-session__pause:hover{background:rgba(212,168,67,0.15);}

/* Breathing rhythm indicator */
.pranergy-rhythm{
  display:flex;align-items:center;gap:4px;padding:4px 0;
}
.pranergy-rhythm__bar{
  width:4px;border-radius:2px;background:var(--orb-color,rgba(124,58,237,0.5));
  transition:height .3s ease;
}
.pranergy-rhythm__bar:nth-child(odd){height:12px;}
.pranergy-rhythm__bar:nth-child(even){height:20px;}
.pranergy-rhythm.playing .pranergy-rhythm__bar{animation:rhythmPulse .8s ease-in-out infinite;}
.pranergy-rhythm.playing .pranergy-rhythm__bar:nth-child(2){animation-delay:.1s;}
.pranergy-rhythm.playing .pranergy-rhythm__bar:nth-child(3){animation-delay:.2s;}
.pranergy-rhythm.playing .pranergy-rhythm__bar:nth-child(4){animation-delay:.3s;}
.pranergy-rhythm.playing .pranergy-rhythm__bar:nth-child(5){animation-delay:.4s;}
@keyframes rhythmPulse{0%,100%{height:8px;}50%{height:24px;}}
.pranergy-rhythm__label{font-size:10px;color:var(--gray);font-family:var(--font-sans);letter-spacing:1px;text-transform:uppercase;margin-left:6px;}

/* Energy state badge */
.pranergy-energy-state{
  display:flex;flex-direction:column;align-items:center;gap:2px;
  padding:8px 14px;background:rgba(10,11,30,0.8);border:1px solid var(--border-gold);border-radius:8px;
}
.pranergy-energy-state__label{font-size:9px;letter-spacing:2px;color:var(--gray);font-family:var(--font-sans);text-transform:uppercase;}
.pranergy-energy-state__value{font-size:12px;font-family:var(--font-sans);color:var(--gold);}

/* Session complete */
.pranergy-session__complete{
  min-height:90vh;display:flex;flex-direction:column;align-items:center;
  justify-content:center;gap:24px;padding:40px 20px;
}
.pranergy-session__complete-title{font-size:28px;text-align:center;}
.pranergy-session__complete-sub{font-size:16px;color:var(--gray);font-style:italic;text-align:center;}
.pranergy-session__complete-stats{
  display:flex;gap:24px;padding:20px 32px;
  background:rgba(10,11,30,0.8);border:1px solid var(--border-gold);border-radius:14px;
}
.pranergy-session__complete-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;justify-content:center;}

/* Contraindication */
.pranergy-contraindication{
  max-width:420px;background:rgba(10,11,30,0.95);border:1px solid rgba(239,68,68,.3);
  border-radius:12px;padding:24px;text-align:center;
  position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);
  z-index:1000;box-shadow:0 20px 60px rgba(0,0,0,.8);
}
.pranergy-contraindication__icon{font-size:32px;margin-bottom:12px;}
.pranergy-contraindication__title{font-size:16px;color:#FCA5A5;margin-bottom:8px;}
.pranergy-contraindication__text{font-size:13px;color:var(--gray);font-family:var(--font-sans);line-height:1.6;margin-bottom:20px;}
.pranergy-contraindication__overlay{position:fixed;inset:0;background:rgba(0,0,0,.7);z-index:999;}
