/* Изоляция стилей модуля */
.amiri-triangles-wrapper {
  isolation: isolate;
  position: relative;
}

.amiri-triangles-wrapper :root{
  --gold:#d4af37; --pink:#ff6bb5; --teal:#43d7c7; --sky:#66c8ff; --violet:#b574ff;
  --glass:rgba(20,20,28,.72); --soft:rgba(255,255,255,.10); --ink:#f7f7fb; --accent:#ffffff;
}
.amiri-triangles-wrapper *{box-sizing:border-box}
.amiri-triangles-wrapper html,.amiri-triangles-wrapper body{margin:0;padding:0;background:radial-gradient(1200px 900px at 50% -10%, #161628 0%, #0b0b16 60%, #000 100%); color:#fff;
  font-family: ui-serif, Georgia, "Times New Roman", Times, serif; -webkit-font-smoothing:antialiased;}
.amiri-triangles-wrapper .amiri-tri-header{padding:22px 16px 14px;border-bottom:1px solid var(--soft); position:sticky; top:0; backdrop-filter: blur(8px);
  background:linear-gradient(180deg, rgba(7,7,15,.8), rgba(7,7,15,.2)); z-index:9}
.amiri-triangles-wrapper .amiri-tri-header h1{margin:0;font-weight:600;font-size:22px; letter-spacing:.4px}
.amiri-tri-brand{display:flex;align-items:center;gap:10px}
.amiri-tri-seal{width:28px;height:28px;border-radius:50%;background:conic-gradient(from 45deg, var(--gold), #fff59e, var(--gold), #c28b00);
  box-shadow:0 0 22px rgba(212,175,55,.45) inset, 0 0 24px rgba(212,175,55,.25)}
.amiri-tri-grid{display:grid;gap:14px; grid-template-columns: 1fr; padding:16px; max-width:1280px;margin:0 auto}
@media(min-width:1100px){ .amiri-tri-grid{grid-template-columns: 420px 1fr} }
.amiri-tri-card{background:var(--glass); border:1px solid var(--soft); border-radius:14px; padding:14px; box-shadow: 0 0 0 1px rgba(255,255,255,.02) inset; animation: amiri-tri-fadeIn .4s ease-in}
.amiri-tri-card h2{margin:4px 0 10px; font-weight:600; font-size:18px}
.amiri-tri-label{display:block;font-size:13px;margin:10px 0 6px; opacity:.9}
.amiri-triangles-wrapper input, .amiri-triangles-wrapper select{width:100%; padding:10px 12px; border-radius:10px; border:1px solid var(--soft); background:rgba(255,255,255,.06); color:#fff; outline:none}
.amiri-tri-row{display:grid; grid-template-columns: 1fr 1fr; gap:10px}
.amiri-tri-actions{display:flex; gap:10px; flex-wrap:wrap; margin-top:10px}
.amiri-tri-btn{display:inline-block; padding:10px 14px; border-radius:10px; border:1px solid var(--gold); color:#111; background:linear-gradient(180deg, #ffe389, #d4af37);
  font-weight:700; cursor:pointer; text-decoration:none; box-shadow:0 2px 0 #9c7a16; transition: transform .06s ease}
.amiri-tri-btn:active{transform: translateY(1px)}
.amiri-tri-btn-ghost{border:1px solid var(--soft); color:#fff; background:transparent}
.amiri-tri-kpi{display:grid; grid-template-columns: repeat(5, 1fr); gap:10px}
.amiri-tri-kpi .amiri-tri-box{background:rgba(255,255,255,.06); border:1px solid var(--soft); border-radius:12px; padding:10px; text-align:center}
.amiri-tri-kpi .amiri-tri-label{font-size:12px; opacity:.75}
.amiri-tri-kpi .amiri-tri-val{font-size:20px; font-weight:700; cursor:pointer; text-shadow:0 0 10px rgba(255,215,0,.35)}
.amiri-tri-triangle-wrap{display:grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap:12px; margin-top:12px}
.amiri-tri-tri{position:relative; background:rgba(255,255,255,.04); border:1px solid var(--soft); border-radius:14px; padding:10px; text-align:center; overflow:hidden}
.amiri-tri-tri .amiri-tri-muted{opacity:.75}
.amiri-triangles-wrapper svg{max-width:100%; height:auto}
.amiri-tri-chips{display:flex; gap:8px; flex-wrap:wrap; justify-content:center; margin-top:6px}
.amiri-tri-chip{border:1px solid var(--soft); border-radius:999px; padding:4px 8px; font-size:12px; opacity:.9}
.amiri-tri-events{display:grid; grid-template-columns: repeat(auto-fit, minmax(220px,1fr)); gap:8px; margin-top:8px}
.amiri-tri-ev{background:rgba(255,255,255,.04); border:1px solid var(--soft); border-radius:12px; padding:10px}
.amiri-tri-interp .amiri-tri-pill{display:inline-block; font-size:12px; padding:4px 8px; border:1px solid var(--soft); border-radius:999px; margin-right:6px; opacity:.9}
.amiri-tri-interp .amiri-tri-big{font-size:42px; font-weight:800; line-height:1; margin:4px 0 10px; text-shadow: 0 0 18px rgba(212,175,55,.45)}
.amiri-tri-interp .amiri-tri-hint{opacity:.85; font-size:14px; margin:4px 0 8px}
.amiri-tri-interp .amiri-tri-text{font-size:15px; line-height:1.55}

.amiri-tri-starTitle{opacity:.8; margin-bottom:6px}
.amiri-tri-num{cursor:pointer; transition: transform .2s ease}
.amiri-tri-num:hover{transform:scale(1.05); text-shadow:0 0 16px rgba(212,175,55,.6)}
.amiri-tri-mission{filter: drop-shadow(0 0 12px rgba(212,175,55,.6))}
.amiri-tri-star-label{font-size:10px; opacity:.92; text-rendering:geometricPrecision;}
.amiri-tri-errdot{cursor:pointer}
@keyframes amiri-tri-pulse {0%{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.85}100%{transform:scale(1);opacity:1}}
@keyframes amiri-tri-rotate-aura {from{transform:rotate(0)}to{transform:rotate(360deg)}}
@keyframes amiri-tri-fadeIn {from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media (prefers-reduced-motion: reduce){
  .amiri-tri-num:hover{transform:none}
}

#starWrap{
  position:relative;
  background: radial-gradient(600px 360px at 50% 30%, rgba(86,70,180,.25), rgba(24,28,60,.4) 50%, rgba(9,12,28,.9) 100%);
  border:1px solid var(--soft);
  border-radius:14px;
  padding:10px;
  overflow:hidden;
}
/* activation banner text */
#amiri-activation-banner{
  position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
  pointer-events:none; opacity:0; transition: opacity .8s;
  background: radial-gradient(800px 400px at 50% 50%, rgba(255,215,0,.08), transparent 70%);
}
#amiri-activation-banner.on{ opacity:1; animation: amiri-banner-hold 2.5s ease-in-out forwards; }
#amiri-activation-banner .banner-text{
  font-family: 'Cinzel Decorative', ui-serif, Georgia, serif;
  font-size: 20px; letter-spacing:.04em; color:#f5d477;
  text-shadow: 0 0 12px rgba(255,215,0,.55), 0 2px 0 rgba(60,40,0,.5);
}
@keyframes amiri-banner-hold{ 0%{opacity:0} 15%{opacity:1} 85%{opacity:1} 100%{opacity:0} }
/* tooltip base */
#amiri-tip{ position:fixed; padding:6px 10px; background:rgba(0,0,0,.9); color:#fff; border-radius:8px; font-size:.8rem; pointer-events:none; z-index:9999; opacity:0; transition:opacity .2s }

/* v2.4 enhanced pill header */
.amiri-tri-interp .amiri-tri-pill, #interpretation .amiri-tri-pill {
  background: linear-gradient(90deg, rgba(212,175,55,.22), rgba(106,0,255,.22));
  border:1px solid rgba(212,175,55,.35);
  box-shadow: 0 0 8px rgba(212,175,55,.25), inset 0 0 12px rgba(106,0,255,.12);
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 10px;
}
.amiri-tri-pill .i { font-size: 14px; line-height: 1; }
.amiri-tri-pill .t { font-weight: 600; opacity: .95; }
.amiri-tri-pill .s, .amiri-tri-pill .p { opacity: .9; }

/* Стили для блока интерпретации */
.amiri-triangles-wrapper #interpretation {
  color: #fff !important;
  background: var(--glass);
  border: 1px solid var(--soft);
  border-radius: 14px;
  padding: 14px;
  box-shadow: 0 0 0 1px rgba(255,255,255,.02) inset;
}

.amiri-triangles-wrapper #interpretation h2 {
  margin: 4px 0 10px !important;
  font-weight: 600 !important;
  font-size: 18px !important;
  color: #fff !important;
}

.amiri-triangles-wrapper #interpretation h3 {
  margin: 10px 0 8px !important;
  font-weight: 600 !important;
  font-size: 20px !important;
  color: #fff !important;
}

.amiri-triangles-wrapper #interpretation p {
  margin: 8px 0 !important;
  color: #fff !important;
  line-height: 1.55 !important;
  font-size: 15px !important;
}

.amiri-triangles-wrapper #interpretation em {
  color: #fff !important;
  font-style: italic;
  opacity: 0.9;
}

.amiri-triangles-wrapper #interpretation strong {
  color: #fff !important;
  font-weight: 600 !important;
}

.amiri-triangles-wrapper #interpretation .amiri-tri-text {
  color: #fff !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
}

.amiri-triangles-wrapper #interpretation .amiri-tri-text p {
  margin: 8px 0 !important;
  color: #fff !important;
  line-height: 1.55 !important;
  font-size: 15px !important;
}

.amiri-triangles-wrapper #interpretation .amiri-tri-text h3 {
  color: #fff !important;
  margin: 10px 0 8px !important;
  font-weight: 600 !important;
  font-size: 20px !important;
}

.amiri-triangles-wrapper #interpretation .amiri-tri-text strong {
  color: #fff !important;
  font-weight: 600 !important;
}

.amiri-triangles-wrapper #interpretation .amiri-tri-sphere-intro {
  color: #fff !important;
  margin: 0.4rem 0 0.6rem !important;
  line-height: 1.45 !important;
  opacity: 0.95 !important;
}

/* v2.6 sphere-intro: realistic psychological intro under title */
.amiri-tri-sphere-intro{
  margin:.4rem 0 .6rem;
  line-height:1.45;
  opacity:.95;
}

/* v2.8 short Energy/Finance hint */
.amiri-tri-energy-hint{
  margin:.25rem 0 .5rem;
  padding:.35rem .5rem;
  border-left:2px solid rgba(212,175,55,.6);
  background: linear-gradient(90deg, rgba(212,175,55,.08), rgba(106,0,255,.06));
  font-size:.95rem;
  line-height:1.4;
  opacity:.95;
}


/* --- AMIRI energy blocks --- */
.amiri-energy{
  margin-top:1rem;
  padding:.8rem 1rem;
  border-left:2px solid rgba(255,215,0,.4);
  border-radius:12px;
  background:radial-gradient(circle at left, rgba(90,60,255,.07), rgba(0,0,0,0) 70%);
  font-size:.95rem;
  line-height:1.45;
}
.amiri-energy h4{margin:0 0 .4rem;font-weight:600;color:#ffd700;}
.amiri-energy--love h4{color:#ff9fd6;}
.amiri-energy--spiritual h4{color:#a5a9ff;}
.amiri-energy--health h4{color:#7af1e0;}
.amiri-energy--personality h4{color:#f0d78c;}
