:root{
  --bg-space-0:#07040f;
  --bg-space-1:#0b0716;
  --bg-space-2:#120a22;
  --cream-0:#fbf4e5;
  --cream-1:#f1e7d3;
  --cream-2:#e9dec7;
  --gold-0:#fff1b8;   /* highlight */
  --gold-1:#f2d277;   /* warm gold */
  --gold-2:#d6b14a;   /* mid gold */
  --gold-3:#a47f24;   /* dark gold */
  --gold-4:#7a5b18;   /* bronze edge */
  --ink-0:#2a2016;    /* main text */
  --ink-1:#3b2c1d;    /* secondary */
  --ink-muted: rgba(42,32,22,.72);
  --silver-0: rgba(255,255,255,.86);
  --silver-1: rgba(255,255,255,.66);
  --border-gold: rgba(214,177,74,.66);
  --border-gold-soft: rgba(214,177,74,.35);
  --shadow-soft:
    0 0 0 1px rgba(214,177,74,.16),
    0 14px 55px rgba(0,0,0,.60);
  --shadow-strong:
    0 0 0 1px rgba(214,177,74,.26),
    0 0 24px rgba(214,177,74,.22),
    0 18px 70px rgba(0,0,0,.62);
  --radius-xl: 12px;
  --radius-lg: 8px;
  --radius-pill: 999px;
  --blur: 18px;
}

*{ box-sizing:border-box; }

html{
  margin:0;
  padding:0;
  min-height:100%;
  font-family:"Space Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif;
  color: var(--silver-0);
  overflow-y:auto;
  background: transparent;
  position:relative;
}

html::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-3;
  pointer-events:none;
  background:
    radial-gradient(1200px 700px at 50% -120px, rgba(122,91,24,.22), transparent 65%),
    radial-gradient(900px 600px at 20% 10%, rgba(214,177,74,.18), transparent 60%),
    radial-gradient(1600px 900px at 50% 55%, rgba(241,231,211,.85), transparent 70%),
    linear-gradient(
      180deg,
      #2a2016 0%,
      #3b2c1d 18%,
      #6a5436 38%,
      var(--cream-2) 62%,
      var(--cream-0) 78%,
      #ffffff 100%
    );
  background-repeat:no-repeat;
  background-size:cover;
}

@keyframes nebulaDrift{
  0%{ transform: translate3d(0,0,0) scale(1); }
  100%{ transform: translate3d(10px,-14px,0) scale(1.02); }
}

html::after{
  -webkit-mask-image: linear-gradient(to bottom, #000 0%, #000 55%, transparent 100%);
  mask-image: linear-gradient(to bottom, #000 0%, #000 55%, transparent 100%);
}

@keyframes starsTwinkle{
  0%,100%{ opacity: .72; filter: blur(0px); }
  50%{ opacity: .95; filter: blur(.25px); }
}
html::-webkit-scrollbar,

html{ scrollbar-width:none; }

.app-shell{
  min-height:100vh;
  width:100%;
  max-width:1280px;
  padding:16px;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  gap:16px;
  position:relative;
  overflow-x:hidden;
  padding-top: 92px;
}


header{
  position: relative;
  top: 10px;
  left: 50%;
  transform: translateX(-50%);
  width: calc(min(1280px, 100%) - 32px);
  z-index: 50;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 14px;
  border-radius: var(--radius-xl);
  background:
    radial-gradient(560px 360px at 12% 12%, rgba(255,241,184,.38), transparent 62%),
    linear-gradient(180deg, var(--cream-0), var(--cream-1));
  border: 1px solid rgba(214,177,74,.72);
  box-shadow:
    0 0 0 1px rgba(214,177,74,.22),
    0 0 26px rgba(214,177,74,.18),
    0 22px 70px rgba(0,0,0,.30);
  backdrop-filter: blur(var(--blur));
}

header{
  position: relative !important;
  top: auto !important;
  left: auto !important;
  transform: none !important;
  width: auto !important;
  z-index: auto !important;
}

.site-footer{
  position: relative;
  z-index: 10;
  background:
    radial-gradient(560px 360px at 12% 12%, rgba(255,241,184,.30), transparent 62%),
    linear-gradient(180deg, var(--cream-0), var(--cream-1)) !important;
  border: 1px solid rgba(214,177,74,.60) !important;
  border-radius: 16px;
  box-shadow:
    0 0 0 1px rgba(214,177,74,.18),
    0 14px 45px rgba(0,0,0,.35);
  color: var(--ink-0) !important;
}

/* Containerul de linkuri */
.footer-links{
  display: flex !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  align-items: center !important;
}

/* Linkurile — forțăm culoare/contrast (și batem peste orice a{} global) */
.site-footer .footer-links a{
  color: var(--ink-0) !important;                 /* maro închis pe crem */
  background: rgba(255,255,255,.42) !important;   /* pill discret */
  border: 1px solid rgba(214,177,74,.55) !important;

  text-decoration: none !important;
  font-weight: 900 !important;
  opacity: 1 !important;

  padding: 6px 12px !important;
  border-radius: 999px !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.55),
    0 8px 18px rgba(0,0,0,.12);
}

.site-footer .footer-links a:hover{
  color: var(--ink-0) !important;
  background: rgba(255,241,184,.65) !important;
  border-color: rgba(214,177,74,.95) !important;
  box-shadow:
    0 0 0 1px rgba(214,177,74,.18),
    0 0 18px rgba(214,177,74,.16),
    0 10px 22px rgba(0,0,0,.14);
  transform: translateY(-1px);
}

.site-footer a,
.site-footer a:visited{
  color: var(--ink-0) !important;
}

.brand{ display:flex; align-items:center; gap:12px; }
.brand-link{ display:flex; align-items:center; gap:12px; text-decoration:none; color:inherit; }

.brand-logo{
  width:44px; height:44px;
  border-radius: 16px;
  background: conic-gradient(from 180deg, var(--gold-4), var(--gold-2), var(--gold-0), var(--gold-2), var(--gold-4));
  padding:2px;
  box-shadow:
    0 0 0 1px rgba(214,177,74,.22),
    0 0 22px rgba(214,177,74,.18),
    0 26px 55px rgba(0,0,0,.55);
}

.brand-logo-inner{
  width:100%;
  height:100%;
  border-radius:14px;
  background:
    radial-gradient(circle at 30% 25%,
      rgba(255,241,184,.85),
      rgba(214,177,74,.85) 45%,
      rgba(122,91,24,.95) 100%
    );

  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:900;
  font-size:1.05rem;
  color:#2a2016;
  text-shadow:
    0 1px 0 rgba(255,255,255,.55),
    0 -1px 0 rgba(0,0,0,.25);
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.35),
    inset 0 8px 14px rgba(255,255,255,.22);
}


.brand-text-title{
  font-size:1.18rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  display:flex;
  align-items:baseline;
  gap:0;
  color: #2a2016;
  text-shadow:
    0 1px 0 rgba(255,255,255,.65);
}

.brand-text-title .risk{
  color: #7a5b18;
}

/* .eu */
.brand-text-title .dotcom{
  font-size:.75rem;
  margin-left:2px;
  color: rgba(42,32,22,.55);
}

.brand-subtitle{
  font-size:.78rem;
  color: rgba(42,32,22,.70);
  letter-spacing:.02em;

  /* separare subtilă față de logo */
  text-shadow:
    0 1px 0 rgba(255,255,255,.55);
}


.top-nav{ display:flex; flex-wrap:wrap; gap:6px; font-size:.78rem; }
.top-nav a{
  padding:4px 10px;
  border-radius: var(--radius-pill);
  border: 1px solid rgba(214,177,74,.42);
  background: rgba(255,255,255,.34);
  color: rgba(42,32,22,.88);
  text-decoration:none;
  transition: transform .15s ease, background .15s ease, border-color .15s ease, box-shadow .15s ease;
}

.top-nav a:hover{
  transform: translateY(-1px);
  border-color: rgba(214,177,74,.78);
  background: rgba(255,241,184,.34);
  box-shadow: 0 0 18px rgba(214,177,74,.14);
}

.top-nav a.active{
  border-color: rgba(214,177,74,.90);
  background: linear-gradient(90deg, rgba(214,177,74,.18), rgba(255,241,184,.22));
  box-shadow: 0 0 18px rgba(214,177,74,.18);
  color: var(--ink-0);
}



/* Main grid */
main{
  flex:1;
  display:grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
  gap:16px;
  align-items:stretch;
}
@media (max-width: 900px){
  main{ grid-template-columns: minmax(0,1fr); }
}

/* Cards base */
.card,
.results-card,
.info-card{
  border-radius: var(--radius-xl);
  border: 1px solid var(--border-gold);
  box-shadow: var(--shadow-strong);
  overflow:hidden;
  position:relative;
  backdrop-filter: blur(var(--blur));
}

/* Cream panels */
.card,
.info-card{
  padding:16px 18px 18px;
  background:
    radial-gradient(560px 360px at 12% 12%, rgba(255,241,184,.38), transparent 62%),
    linear-gradient(180deg, var(--cream-0), var(--cream-1));
  color: var(--ink-0);
}

/* Results panel: cream + “sun” accent */
.results-card{
  padding:16px 18px 18px;
  background:
    radial-gradient(520px 420px at 85% 15%, rgba(214,177,74,.24), transparent 62%),
    linear-gradient(180deg, var(--cream-0), var(--cream-2));
  border-color: rgba(214,177,74,.72);
  color: var(--ink-0);
}

/* Smaller corner radials, no rainbow */
.card::before,
.results-card::before,
.info-card::before{
  content:"";
  position:absolute;
  inset:-40%;
  pointer-events:none;
  opacity:.55;
  background:
    radial-gradient(circle at 14% 18%, rgba(214,177,74,.18), transparent 55%),
    radial-gradient(circle at 88% 12%, rgba(255,255,255,.10), transparent 58%),
    radial-gradient(circle at 30% 92%, rgba(214,177,74,.12), transparent 60%);
  mix-blend-mode: multiply;
}

/* Hover glow */
.card:hover,
.results-card:hover,
.info-card:hover{
  border-color: rgba(214,177,74,.85);
  box-shadow:
    0 0 0 1px rgba(214,177,74,.28),
    0 0 26px rgba(214,177,74,.26),
    0 22px 80px rgba(0,0,0,.58);
}

/* Header inside cards */
.card-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
  position:relative;
  z-index:1;
}

.card-title{
  font-size:1.15rem;
  font-weight:900;
  display:flex;
  align-items:center;
  gap:8px;
  margin:0;
  color: var(--ink-0);
}
.card-subtitle{
  font-size:.82rem;
  color: var(--ink-muted);
}
.iconline{ margin-right:6px; opacity:.95; }

.chip{
  font-size:.7rem;
  text-transform:uppercase;
  letter-spacing:.08em;
  padding:3px 8px;
  border-radius: var(--radius-pill);
  border:1px solid rgba(214,177,74,.42);
  color: rgba(42,32,22,.78);
  background: rgba(214,177,74,.14);
}

.card-meta{
  font-size:.74rem;
  color: var(--ink-muted);
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:4px;
}

.pill-soft{
  padding:3px 10px;
  border-radius: var(--radius-pill);
  border:1px solid rgba(214,177,74,.38);
  background: rgba(255,255,255,.30);
  display:inline-flex;
  align-items:center;
  gap:6px;
  color: rgba(42,32,22,.78);
}
.pill-soft .dot{
  width:7px; height:7px;
  border-radius:999px;
  background: var(--gold-2);
  box-shadow: 0 0 16px rgba(214,177,74,.55);
}

/* Form grid */
form{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 12px;
  position:relative;
  z-index:1;
}
@media (max-width: 720px){
  form{ grid-template-columns: minmax(0,1fr); }
}

.field{ display:flex; flex-direction:column; gap:4px; font-size:.8rem; }
.field-units{ grid-column: 1 / -1; }

.field-label-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}

label{ font-size:.8rem; color: rgba(42,32,22,.92); }
.field-helper{ font-size:.7rem; color: rgba(42,32,22,.62); }

/* Inputs on cream */
.input, select{
  width:100%;
  border-radius: var(--radius-lg);
  padding: 10px 12px;
  border:1px solid rgba(214,177,74,.38);
  background: rgba(255,255,255,.52);
  color: var(--ink-0);
  font-size:.85rem;
  outline:none;
  transition: border-color .15s ease, transform .15s ease, box-shadow .15s ease;
}
.input::placeholder{ color: rgba(42,32,22,.45); }
.input:focus, select:focus{
  border-color: rgba(214,177,74,.78);
  box-shadow: 0 0 0 4px rgba(214,177,74,.16);
  transform: translateY(-1px);
}

.input.adv-select{
  background: rgba(255,255,255,.62);
  border-color: rgba(214,177,74,.55);
}

/* Segmented */
.segmented{
  display:inline-flex;
  padding:2px;
  border-radius: var(--radius-pill);
  background: rgba(0,0,0,.04);
  border:1px solid rgba(214,177,74,.35);
  gap:4px;
  flex-wrap:wrap;
}
.segmented button{
  border-radius: var(--radius-pill);
  border:none;
  padding:6px 10px;
  background: transparent;
  color: rgba(42,32,22,.68);
  font-size:.75rem;
  cursor:pointer;
  transition: transform .15s ease, background .15s ease, box-shadow .15s ease;
}
.segmented button.active{
  background: linear-gradient(90deg, rgba(214,177,74,.28), rgba(255,241,184,.28));
  color: var(--ink-0);
  box-shadow: 0 0 18px rgba(214,177,74,.18);
  transform: translateY(-1px);
}

/* DOB grid */
.dob-grid{
  display:grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 10px;
}
@media (max-width: 720px){
  .dob-grid{ grid-template-columns: 1fr; }
}
.dob-label{
  font-size:.72rem;
  color: rgba(42,32,22,.78);
  margin: 0 0 6px;
  display:flex;
  align-items:center;
  gap: 8px;
}
.dob-label span{
  opacity:.9;
  filter: drop-shadow(0 0 10px rgba(214,177,74,.18));
}

.form-footer{
  grid-column: 1 / -1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:4px;
  flex-wrap:wrap;
}

/* Buttons */
.submit-btn{
  border-radius: var(--radius-pill);
  border:none;
  padding: 10px 18px;
  font-size:.85rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  cursor:pointer;
  background: linear-gradient(135deg, var(--gold-2), var(--gold-0));
  color: #1f160b;
  box-shadow: 0 10px 26px rgba(214,177,74,.22);
  transition: transform .18s ease, filter .18s ease, box-shadow .18s ease;
}
.submit-btn:hover{
  transform: translateY(-2px) scale(1.01);
  filter: brightness(1.03);
  box-shadow:
    0 0 0 1px rgba(214,177,74,.26),
    0 0 22px rgba(214,177,74,.26),
    0 14px 40px rgba(0,0,0,.35);
}
.submit-btn:active{ transform: translateY(0) scale(.99); }

.submit-btn-secondary{
  background: rgba(255,255,255,.40);
  color: rgba(42,32,22,.92);
  border:1px solid rgba(214,177,74,.38);
  box-shadow:none;
}
.submit-btn-secondary:hover{
  border-color: rgba(214,177,74,.70);
  box-shadow: 0 0 18px rgba(214,177,74,.14);
}

.disclaimer{
  font-size:.72rem;
  color: rgba(42,32,22,.68);
  max-width: 420px;
}
.disclaimer strong{ color: rgba(42,32,22,.92); }

.share-feedback{
  margin-top:8px;
  font-size:.78rem;
  color: rgba(42,32,22,.85);
}

.input-error-message{
  margin:0;
  min-height:14px;
  font-size:.72rem;
  color: rgba(171,35,35,.88);
}

/* Results */
.results-inner{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  gap:10px;
  height:100%;
}

.results-title{
  font-size:.9rem;
  font-weight:900;
  display:flex;
  align-items:center;
  gap:8px;
  color: var(--ink-0);
}

.results-badge{
  font-size:.7rem;
  padding:3px 10px;
  border-radius: var(--radius-pill);
  border:1px solid rgba(214,177,74,.42);
  background: rgba(255,255,255,.28);
  color: rgba(42,32,22,.78);
}

.risk-score-row{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
}

/* “Sun” circle + pulsing halo + gold ring */
.risk-score-circle{
  width: 160px;
  height: 160px;
  border-radius: 999px;
  margin: 6px auto 10px;
  position: relative;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;

  background: radial-gradient(circle at 50% 35%, rgba(255,241,184,.22), rgba(0,0,0,.06));
  box-shadow:
    0 0 0 1px rgba(214,177,74,.22),
    0 0 30px rgba(214,177,74,.18);
}

.risk-score-circle::after{
  content:"";
  position:absolute;
  inset:-26%;
  border-radius: 999px;
  background:
    radial-gradient(circle at 50% 50%,
      rgba(214,177,74,.22),
      rgba(214,177,74,.10) 35%,
      transparent 70%);
  filter: blur(6px);
  opacity:.9;
  animation: sunPulse 2.6s ease-in-out infinite;
}

@keyframes sunPulse{
  0%,100%{ transform: scale(0.98); opacity:.70; }
  50%{ transform: scale(1.04); opacity:1; }
}

.risk-score-circle::before{
  content:"";
  position:absolute;
  inset: 0;
  border-radius: 999px;
  padding: 3px;

  background: conic-gradient(
    from 0deg,
    var(--gold-4),
    var(--gold-2),
    var(--gold-0),
    var(--gold-2),
    var(--gold-4)
  );

  -webkit-mask: radial-gradient(circle, transparent 66%, #000 67%);
  mask: radial-gradient(circle, transparent 66%, #000 67%);

  opacity: .95;
  animation: ringSpin 12s linear infinite;
  filter: drop-shadow(0 0 12px rgba(214,177,74,.35));
}

.risk-score-circle.is-loading::before{
  animation-duration: 1.25s;
  filter: drop-shadow(0 0 16px rgba(214,177,74,.55)) brightness(1.06);
}

@keyframes ringSpin{
  to { transform: rotate(360deg); }
}

.risk-score-circle-inner{
  width: 78%;
  height: 78%;
  border-radius: 999px;
  background: rgba(255,255,255,.55);
  border: 1px solid rgba(214,177,74,.35);
  backdrop-filter: none;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction: column;
  gap: 8px;
  position: relative;
  z-index: 1;
}


.risk-score-value-big{
  font-size: 3.15rem;
  font-weight: 900;
  line-height: 1;
  color: var(--ink-0);
  text-shadow: 0 1px 0 rgba(255,255,255,.45);
}

.risk-score-label{
  font-size:.78rem;
  padding: 3px 12px;
  border-radius: var(--radius-pill);
  border: 1px solid rgba(214,177,74,.35);
  background: rgba(255,255,255,.30);
  text-align:center;
  min-width: 70%;
  color: rgba(42,32,22,.78);
}

.risk-text{
  margin-top: 10px;
  font-size:.82rem;
  color: rgba(42,32,22,.88);
  border-radius: 14px;
  border: 1px solid rgba(214,177,74,.34);
  background: rgba(255,255,255,.34);
  padding: 10px 12px;
}

/* Insights */
.insights-grid{
  margin-top: 8px;
  display:grid;
  grid-template-columns: minmax(0,1fr);
  gap: 8px;
  font-size:.78rem;
}

.insight-item{
  border-radius: var(--radius-lg);
  padding: 10px 11px;
  background: rgba(255,255,255,.34);
  border: 1px solid rgba(214,177,74,.34);
  display:flex;
  align-items:flex-start;
  gap: 10px;
}

.insight-bullet{
  width: 10px;
  height: 10px;
  border-radius: 999px;
  margin-top: 5px;
  background: var(--gold-2);
  box-shadow: 0 0 18px rgba(214,177,74,.55);
}

.insight-title{
  font-weight: 900;
  margin-bottom: 3px;
  color: rgba(42,32,22,.92);
}
.insight-body{
  color: rgba(42,32,22,.74);
  font-size:.76rem;
  line-height:1.45;
}

/* Data quality line */
.data-quality{
  margin-top:auto;
  font-size:.72rem;
  color: rgba(42,32,22,.72);
  display:flex;
  align-items:center;
  gap: 8px;
  opacity:.95;
}
.data-quality .indicator{
  width: 8px; height: 8px;
  border-radius: 999px;
  background: var(--gold-2);
  box-shadow: 0 0 16px rgba(214,177,74,.55);
}

/* Info cards */
.info-card{
  margin-top: 8px;
  padding: 16px 18px;
}

.info-header{
  position:relative;
  z-index:1;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}

.page-kicker{
  font-size:.7rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color: rgba(42,32,22,.62);
  margin-bottom:4px;
}

.info-title{
  margin:0 0 4px;
  font-size:1.0rem;
  font-weight:900;
  color: rgba(42,32,22,.92);
}

.info-subtitle{
  margin:0;
  font-size:.78rem;
  color: rgba(42,32,22,.70);
  max-width: 560px;
}

.info-toggle{
  border-radius: var(--radius-pill);
  border: 1px solid rgba(214,177,74,.38);
  background: rgba(255,255,255,.34);
  color: rgba(42,32,22,.86);
  font-size:.75rem;
  display:inline-flex;
  align-items:center;
  gap: 6px;
  padding: 6px 10px;
  cursor:pointer;
  transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease;
}
.info-toggle:hover{
  transform: translateY(-1px);
  border-color: rgba(214,177,74,.70);
  box-shadow: 0 0 18px rgba(214,177,74,.14);
}
.info-toggle-icon{ transition: transform .26s ease; transform-origin:center; }
.info-toggle[aria-expanded="true"] .info-toggle-icon{ transform: rotate(-180deg); }

.info-body{
  position:relative;
  z-index:1;
  max-height:0;
  overflow:hidden;
  transition:max-height .26s ease-out;
}
.info-body.expanded{ max-height: 1400px; }

.info-body-inner{
  padding-top: 8px;
  font-size:.8rem;
  color: rgba(42,32,22,.88);
}
.info-body-inner h3{
  margin: 10px 0 4px;
  font-size:.88rem;
  color: rgba(42,32,22,.92);
}
.info-body-inner p{
  margin: 4px 0 6px;
  color: rgba(42,32,22,.72);
}
.info-disclaimer{
  margin-top: 8px;
  font-size:.75rem;
  color: rgba(42,32,22,.66);
  border-top:1px solid rgba(214,177,74,.26);
  padding-top:6px;
}

/* Zodiac result chip (right panel) */
.zodiac-result{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(214,177,74,.34);
  background: rgba(255,255,255,.30);
}

.zodiac-chip{
  display:flex;
  align-items:center;
  gap:10px;
  padding: 6px 10px;
  border-radius: 999px;
  border: 1px solid rgba(214,177,74,.32);
  background: rgba(255,255,255,.34);
}

.zodiac-icon{
  width: 34px;
  height: 34px;
  border-radius: 14px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size: 1.15rem;
  background: rgba(255,255,255,.30);
  border: 1px solid rgba(214,177,74,.28);
  box-shadow: 0 0 18px rgba(214,177,74,.14);
  color: rgba(42,32,22,.88);
}

.zodiac-name{
  font-weight: 900;
  letter-spacing: .2px;
  color: rgba(42,32,22,.92);
}

.zodiac-range{
  font-size: .76rem;
  color: rgba(42,32,22,.70);
  text-align:right;
}

/* Zodiac grid */
.zodiac-grid{
  display:grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 6px;
}
@media (max-width: 720px){
  .zodiac-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

.zodiac-card{
  border-radius: 18px;
  border: 1px solid rgba(214,177,74,.34);
  background: rgba(255,255,255,.34);
  padding: 12px 12px 10px;
  display:flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 110px;
  position: relative;
  overflow:hidden;
  transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease, background .15s ease;
}

.zodiac-card::before{
  content:"";
  position:absolute;
  inset:-55%;
  background:
    radial-gradient(circle at 20% 25%, rgba(214,177,74,.16), transparent 58%),
    radial-gradient(circle at 90% 10%, rgba(255,255,255,.10), transparent 60%);
  opacity:.8;
  pointer-events:none;
  mix-blend-mode: multiply;
}

.zodiac-card:hover{
  transform: translateY(-2px);
  border-color: rgba(214,177,74,.74);
  box-shadow: 0 0 22px rgba(214,177,74,.16);
  background: rgba(255,255,255,.44);
}

.zodiac-icon-svg{
  width: 44px;
  height: 44px;
  display:block;
  filter: drop-shadow(0 0 14px rgba(214,177,74,.14));
  position:relative;
  z-index:1;
}

/* If SVG paths are injected with inline stroke colors, this helps unify */
.zodiac-icon-svg path{
  stroke: rgba(42,32,22,.78) !important;
}

.zodiac-name-small{
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
  font-size: .74rem;
  color: rgba(42,32,22,.86);
  position:relative;
  z-index:1;
}

.zodiac-mini{
  font-size: .74rem;
  color: rgba(42,32,22,.70);
  text-align:center;
  line-height: 1.25;
  min-height: 32px;
  position:relative;
  z-index:1;
}
.zodiac-mini strong{ color: rgba(42,32,22,.88); }

/* Links */
a{
  color: rgba(214,177,74,.95);
  font-weight:900;
  text-decoration:none;
}
a:hover{ color: rgba(42,32,22,.90); }

/* Footer (outside panels -> keep it light) */
footer{
  margin-top: 4px;
  padding: 8px 10px;
  font-size:.72rem;
  color: rgba(255,255,255,.70);
  display:flex;
  justify-content:space-between;
  gap: 8px;
  flex-wrap:wrap;
}
footer a{
  color: rgba(214,177,74,.90);
}
footer a:hover{
  color: rgba(255,255,255,.92);
}

/* Loader container */
.circle-loader{
  display:none;
  align-items:center;
  justify-content:center;
  flex-direction: column;
  gap: 8px;
  position: absolute;
  inset: 0;
  z-index: 2;
}
.risk-score-circle.is-loading .circle-loader{
  display:flex;
}
.risk-score-circle.is-loading #primaryNumber{
  opacity: 0;
  transform: scale(.98);
}

/* Loader text */
.loader-text{
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: rgba(42,32,22,.78);
}

/* Hourglass SVG wrapper */
.hourglass-wrap{
  width: 44px;
  height: 44px;
  display:flex;
  align-items:center;
  justify-content:center;
  filter: drop-shadow(0 0 16px rgba(214,177,74,.18));
}

.hourglass-svg{
  width: 44px;
  height: 44px;
}

.hg-frame{
  fill: rgba(42,32,22,.10);
  stroke: rgba(214,177,74,.48);
  stroke-width: 1;
}

.hg-glass{
  fill: rgba(255,255,255,.20);
  stroke: rgba(214,177,74,.44);
  stroke-width: 1;
}

.sand{
  fill: rgba(214,177,74,.90);
}

.sand-top{
  transform-origin: 32px 16px;
  animation: sandTopDrain 4.25s linear infinite;
}

.sand-bot{
  transform-origin: 32px 52px;
  animation: sandBotFill 4.25s linear infinite;
}

.sand-stream{
  opacity: .9;
  animation: sandStreamPulse 1.22s ease-in-out infinite;
}

.hg-sparkle circle{
  fill: rgba(214,177,74,.55);
  opacity: .0;
  animation: sparkleBlink 1.25s ease-in-out infinite;
}
.hg-sparkle circle:nth-child(2){ animation-delay: .18s; }
.hg-sparkle circle:nth-child(3){ animation-delay: .42s; }
.hg-sparkle circle:nth-child(4){ animation-delay: .66s; }

@keyframes sandTopDrain{
  0%   { transform: translateY(0) scaleY(1); opacity: 1; }
  80%  { transform: translateY(10px) scaleY(.15); opacity: .9; }
  100% { transform: translateY(10px) scaleY(.05); opacity: .0; }
}

@keyframes sandBotFill{
  0%   { transform: translateY(8px) scaleY(.05); opacity: .0; }
  20%  { opacity: 1; }
  100% { transform: translateY(0) scaleY(1); opacity: 1; }
}

@keyframes sandStreamPulse{
  0%,100%{ opacity:.55; }
  50%{ opacity:1; }
}

@keyframes sparkleBlink{
  0%{ opacity: 0; transform: scale(.9); }
  25%{ opacity: .85; transform: scale(1); }
  60%{ opacity: .0; transform: scale(.9); }
  100%{ opacity: 0; transform: scale(.9); }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  html::before{ animation: none; }
  html::after{ animation: none; }
  .risk-score-circle::before{ animation: none; }
  .risk-score-circle::after{ animation: none; }
  .sand-top, .sand-bot, .sand-stream, .hg-sparkle circle{ animation: none; }
}
/* Footer links: keep contrast (no black-on-dark) */
.site-footer .footer-links a{
  color: rgba(42,32,22,.92) !important;              /* ink */
  background: rgba(255,255,255,.70) !important;      /* light pill */
  border: 1px solid rgba(214,177,74,.55) !important;
}

.site-footer .footer-links a:visited{
  color: rgba(42,32,22,.92) !important;
}

.site-footer .footer-links a:hover,
.site-footer .footer-links a:active,
.site-footer .footer-links a:focus{
  color: rgba(42,32,22,.92) !important;              /* keep ink, NOT black */
  background: rgba(255,241,184,.78) !important;      /* warm cream */
  border-color: rgba(214,177,74,.95) !important;
  outline: none;
}
/* MASTER NUMBER VISUALS */
.risk-score-circle.is-master::after{
  content:"";
  position:absolute;
  inset: 12%;
  border-radius: 50%;
  pointer-events:none;

  background:
    conic-gradient(
      rgba(126,69,255,.35) 0deg 4deg,
      transparent 4deg 10deg,
      rgba(126,69,255,.35) 10deg 14deg,
      transparent 14deg 20deg,
      rgba(126,69,255,.35) 20deg 24deg,
      transparent 24deg 30deg,
      rgba(126,69,255,.35) 30deg 34deg,
      transparent 34deg 40deg,
      rgba(126,69,255,.35) 40deg 44deg,
      transparent 44deg 50deg,
      rgba(126,69,255,.35) 50deg 54deg,
      transparent 54deg 60deg,
      rgba(126,69,255,.35) 60deg 64deg,
      transparent 64deg 70deg,
      rgba(126,69,255,.35) 70deg 74deg,
      transparent 74deg 80deg,
      rgba(126,69,255,.35) 80deg 84deg,
      transparent 84deg 90deg,
      rgba(126,69,255,.35) 90deg 94deg,
      transparent 94deg 100deg,
      rgba(126,69,255,.35) 100deg 104deg,
      transparent 104deg 110deg,
      rgba(126,69,255,.35) 110deg 114deg,
      transparent 114deg 120deg,
      rgba(126,69,255,.35) 120deg 124deg,
      transparent 124deg 130deg,
      rgba(126,69,255,.35) 130deg 134deg,
      transparent 134deg 140deg,
      rgba(126,69,255,.35) 140deg 144deg,
      transparent 144deg 150deg,
      rgba(126,69,255,.35) 150deg 154deg,
      transparent 154deg 160deg,
      rgba(126,69,255,.35) 160deg 164deg,
      transparent 164deg 170deg,
      rgba(126,69,255,.35) 170deg 174deg,
      transparent 174deg 180deg,
      rgba(126,69,255,.35) 180deg 184deg,
      transparent 184deg 190deg,
      rgba(126,69,255,.35) 190deg 194deg,
      transparent 194deg 200deg,
      rgba(126,69,255,.35) 200deg 204deg,
      transparent 204deg 210deg,
      rgba(126,69,255,.35) 210deg 214deg,
      transparent 214deg 220deg,
      rgba(126,69,255,.35) 220deg 224deg,
      transparent 224deg 230deg,
      rgba(126,69,255,.35) 230deg 234deg,
      transparent 234deg 240deg,
      rgba(126,69,255,.35) 240deg 244deg,
      transparent 244deg 250deg,
      rgba(126,69,255,.35) 250deg 254deg,
      transparent 254deg 260deg,
      rgba(126,69,255,.35) 260deg 264deg,
      transparent 264deg 270deg,
      rgba(126,69,255,.35) 270deg 274deg,
      transparent 274deg 280deg,
      rgba(126,69,255,.35) 280deg 284deg,
      transparent 284deg 290deg,
      rgba(126,69,255,.35) 290deg 294deg,
      transparent 294deg 300deg,
      rgba(126,69,255,.35) 300deg 304deg,
      transparent 304deg 310deg,
      rgba(126,69,255,.35) 310deg 314deg,
      transparent 314deg 320deg,
      rgba(126,69,255,.35) 320deg 324deg,
      transparent 324deg 330deg,
      rgba(126,69,255,.35) 330deg 334deg,
      transparent 334deg 340deg,
      rgba(126,69,255,.35) 340deg 344deg,
      transparent 344deg 350deg,
      rgba(126,69,255,.35) 350deg 354deg,
      transparent 354deg 360deg
    );

  opacity:.75;
  filter: blur(.3px);
}

/* cifra – auriu închis, solid, fără efect */
.risk-score-value-big.is-master{
  color: #7a5b18;
  background: none;
  -webkit-text-fill-color: initial;
  text-shadow: none;
  font-weight: 900;
}

/* fundal interior crem mai deschis */
.risk-score-circle.is-master .risk-score-circle-inner{
  background: rgba(255,255,255,.68);
  border-color: rgba(214,177,74,.55);
}