/* Vorici Calculator — scoped styles (safe to embed in any WP theme) */
.vorici-calc-wrap{
  --vc-bg:#0a0910;
  --vc-bg-2:#0f0d16;
  --vc-panel:#15121c;
  --vc-panel-2:#1c1826;
  --vc-line:#2c2534;
  --vc-gold:#c9a86a;
  --vc-gold-dim:#7c6a45;
  --vc-red:#e2453b;
  --vc-red-dim:#5c2420;
  --vc-green:#3fcf6e;
  --vc-green-dim:#1f4a2c;
  --vc-blue:#4a93ff;
  --vc-blue-dim:#213c66;
  --vc-white-s:#eae6dc;
  --vc-white-dim:#4a4750;
  --vc-text:#e9e4d8;
  --vc-text-dim:#9c9488;
  --vc-text-faint:#6a6459;
  --vc-danger:#e2453b;
  --vc-ok:#3fcf6e;
  --vc-radius:10px;

  all:initial;
  * { box-sizing:border-box; }
  display:block;
  font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  color:var(--vc-text);
  background:
    radial-gradient(ellipse 900px 500px at 20% -10%, #1a1424 0%, transparent 60%),
    radial-gradient(ellipse 700px 500px at 100% 10%, #14202a 0%, transparent 55%),
    var(--vc-bg);
  border-radius:16px;
  padding:28px 20px 36px;
  max-width:980px;
  margin:0 auto;
  -webkit-font-smoothing:antialiased;
  line-height:1.4;
}
.vorici-calc-wrap *{box-sizing:border-box;}
.vorici-calc-wrap .vc-wrap{max-width:980px; margin:0 auto;}

/* ---------- Header ---------- */
.vorici-calc-wrap header{
  display:flex; align-items:center; justify-content:space-between;
  gap:20px; margin-bottom:28px; flex-wrap:wrap;
  border-bottom:1px solid var(--vc-line); padding-bottom:20px;
}
.vorici-calc-wrap .vc-brand{display:flex; align-items:center; gap:14px;}
.vorici-calc-wrap .vc-brand-mark{
  width:40px; height:40px; border-radius:50%;
  border:2px solid var(--vc-gold-dim);
  display:flex; align-items:center; justify-content:center;
  position:relative; flex-shrink:0;
}
.vorici-calc-wrap .vc-brand-mark::before{
  content:""; width:16px; height:16px; border-radius:50%;
  background:conic-gradient(var(--vc-red) 0 33%, var(--vc-green) 33% 66%, var(--vc-blue) 66% 100%);
  box-shadow:0 0 10px rgba(201,168,106,0.35);
}
.vorici-calc-wrap h2.vc-title{
  font-family:'Cinzel', Georgia, serif; font-weight:700; font-size:24px;
  letter-spacing:0.06em; color:var(--vc-gold); text-transform:uppercase; margin:0;
}
.vorici-calc-wrap .vc-tagline{color:var(--vc-text-faint); font-size:12.5px; margin-top:2px;}
.vorici-calc-wrap .vc-badge{
  font-family:'JetBrains Mono', monospace; font-size:11px; color:var(--vc-text-dim);
  border:1px solid var(--vc-line); padding:6px 10px; border-radius:20px; white-space:nowrap;
}

/* ---------- Layout ---------- */
.vorici-calc-wrap .vc-grid{display:grid; grid-template-columns:1fr 1fr; gap:20px;}
@media (max-width:760px){ .vorici-calc-wrap .vc-grid{grid-template-columns:1fr;} }

.vorici-calc-wrap .vc-panel{
  background:linear-gradient(180deg, var(--vc-panel), var(--vc-panel-2));
  border:1px solid var(--vc-line); border-radius:var(--vc-radius); padding:22px;
}

.vorici-calc-wrap .vc-section-title{
  font-family:'Cinzel', Georgia, serif; font-size:13px; letter-spacing:0.12em;
  text-transform:uppercase; color:var(--vc-gold); margin-bottom:16px;
  display:flex; align-items:center; gap:8px;
}
.vorici-calc-wrap .vc-section-title .vc-n{ font-family:'JetBrains Mono', monospace; color:var(--vc-gold-dim); font-size:11px; }

/* ---------- Total sockets ---------- */
.vorici-calc-wrap .vc-socket-count-row{display:flex; gap:8px; flex-wrap:wrap; margin-bottom:22px;}
.vorici-calc-wrap .vc-count-btn{
  width:42px; height:42px; border-radius:8px; border:1px solid var(--vc-line);
  background:var(--vc-bg-2); color:var(--vc-text-dim); font-family:'JetBrains Mono', monospace;
  font-size:15px; cursor:pointer; transition:all .15s ease;
}
.vorici-calc-wrap .vc-count-btn:hover{border-color:var(--vc-gold-dim); color:var(--vc-text);}
.vorici-calc-wrap .vc-count-btn.active{
  background:var(--vc-gold); color:#1a1408; border-color:var(--vc-gold); font-weight:700;
  box-shadow:0 0 14px rgba(201,168,106,0.35);
}

/* ---------- Requirement inputs ---------- */
.vorici-calc-wrap .vc-req-row{display:flex; flex-direction:column; gap:14px; margin-bottom:6px;}
.vorici-calc-wrap .vc-req-field{display:flex; align-items:center; gap:12px;}
.vorici-calc-wrap .vc-req-swatch{width:26px; height:26px; border-radius:50%; flex-shrink:0; border:1px solid rgba(255,255,255,0.15);}
.vorici-calc-wrap .vc-swatch-str{background:radial-gradient(circle at 35% 30%, #ff8a80, var(--vc-red));}
.vorici-calc-wrap .vc-swatch-dex{background:radial-gradient(circle at 35% 30%, #94ffb0, var(--vc-green));}
.vorici-calc-wrap .vc-swatch-int{background:radial-gradient(circle at 35% 30%, #9dc4ff, var(--vc-blue));}
.vorici-calc-wrap .vc-req-label{font-size:13px; color:var(--vc-text-dim); width:96px; flex-shrink:0;}
.vorici-calc-wrap .vc-req-label b{color:var(--vc-text); font-weight:600; display:block; font-size:13px;}
.vorici-calc-wrap .vc-req-label span{font-size:11px; color:var(--vc-text-faint);}
.vorici-calc-wrap input[type=number]{
  flex:1; background:var(--vc-bg-2); border:1px solid var(--vc-line); color:var(--vc-text);
  font-family:'JetBrains Mono', monospace; font-size:14px; padding:9px 10px; border-radius:7px;
  outline:none; width:100%; min-width:0; appearance:auto;
}
.vorici-calc-wrap input[type=number]:focus{border-color:var(--vc-gold-dim);}

.vorici-calc-wrap .vc-weight-bar-track{height:5px; border-radius:3px; background:var(--vc-bg-2); margin-top:6px; overflow:hidden;}
.vorici-calc-wrap .vc-weight-bar-fill{height:100%; border-radius:3px; transition:width .3s ease;}

/* ---------- Desired colors ---------- */
.vorici-calc-wrap .vc-desired-list{display:flex; flex-direction:column; gap:12px;}
.vorici-calc-wrap .vc-desired-row{
  display:flex; align-items:center; justify-content:space-between; padding:10px 12px;
  background:var(--vc-bg-2); border:1px solid var(--vc-line); border-radius:8px;
}
.vorici-calc-wrap .vc-desired-left{display:flex; align-items:center; gap:10px;}
.vorici-calc-wrap .vc-dot{width:16px; height:16px; border-radius:50%; flex-shrink:0;}
.vorici-calc-wrap .vc-dot-r{background:var(--vc-red); box-shadow:0 0 8px rgba(226,69,59,0.5);}
.vorici-calc-wrap .vc-dot-g{background:var(--vc-green); box-shadow:0 0 8px rgba(63,207,110,0.5);}
.vorici-calc-wrap .vc-dot-b{background:var(--vc-blue); box-shadow:0 0 8px rgba(74,147,255,0.5);}
.vorici-calc-wrap .vc-dot-w{background:var(--vc-white-s); box-shadow:0 0 8px rgba(234,230,220,0.4);}
.vorici-calc-wrap .vc-desired-left span{font-size:13.5px; color:var(--vc-text);}
.vorici-calc-wrap .vc-stepper{display:flex; align-items:center; gap:10px;}
.vorici-calc-wrap .vc-step-btn{
  width:26px; height:26px; border-radius:6px; border:1px solid var(--vc-line);
  background:var(--vc-panel); color:var(--vc-text-dim); cursor:pointer; font-size:14px; line-height:1;
}
.vorici-calc-wrap .vc-step-btn:hover{border-color:var(--vc-gold-dim); color:var(--vc-text);}
.vorici-calc-wrap .vc-step-val{font-family:'JetBrains Mono', monospace; font-size:15px; font-weight:700; color:var(--vc-text); width:18px; text-align:center;}

.vorici-calc-wrap .vc-desired-total{
  margin-top:14px; display:flex; justify-content:space-between; align-items:center;
  font-size:12.5px; color:var(--vc-text-faint); padding-top:12px; border-top:1px dashed var(--vc-line);
}
.vorici-calc-wrap .vc-desired-total b{color:var(--vc-text); font-family:'JetBrains Mono', monospace;}
.vorici-calc-wrap .vc-desired-total.err b{color:var(--vc-danger);}
.vorici-calc-wrap .vc-desired-total.ok b{color:var(--vc-ok);}

/* ---------- Socket chain visual ---------- */
.vorici-calc-wrap .vc-chain-wrap{display:flex; align-items:center; justify-content:center; padding:28px 6px 20px; min-height:120px;}
.vorici-calc-wrap .vc-chain{display:flex; align-items:center;}
.vorici-calc-wrap .vc-socket{
  width:46px; height:46px; border-radius:50%; display:flex; align-items:center; justify-content:center;
  position:relative; border:2px solid; font-family:'JetBrains Mono', monospace; font-size:10.5px; font-weight:700; flex-shrink:0;
}
.vorici-calc-wrap .vc-link-line{width:22px; height:3px; background:var(--vc-gold-dim); opacity:0.5;}

.vorici-calc-wrap .vc-calc-btn{
  width:100%; margin-top:20px; padding:14px; border-radius:8px; border:1px solid var(--vc-gold);
  background:linear-gradient(180deg, #d9b877, var(--vc-gold)); color:#1a1408;
  font-family:'Cinzel', Georgia, serif; font-weight:700; font-size:14px; letter-spacing:0.1em;
  text-transform:uppercase; cursor:pointer; transition:filter .15s ease, transform .1s ease;
}
.vorici-calc-wrap .vc-calc-btn:hover{filter:brightness(1.08);}
.vorici-calc-wrap .vc-calc-btn:active{transform:translateY(1px);}
.vorici-calc-wrap .vc-calc-btn:disabled{
  opacity:0.4; cursor:not-allowed; filter:none; border-color:var(--vc-line);
  background:var(--vc-panel-2); color:var(--vc-text-faint);
}

.vorici-calc-wrap .vc-inline-note{font-size:11.5px; color:var(--vc-text-faint); margin-top:10px; line-height:1.5;}

/* ---------- Results ---------- */
.vorici-calc-wrap .vc-results{margin-top:22px; display:none;}
.vorici-calc-wrap .vc-results-grid{display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:16px;}
@media (max-width:520px){ .vorici-calc-wrap .vc-results-grid{grid-template-columns:1fr;} }
.vorici-calc-wrap .vc-stat-card{
  background:linear-gradient(135deg, #2f6fed, #4a86f7);
  border:1px solid #3f7bf0; border-radius:8px; padding:16px 16px;
  box-shadow:0 6px 18px rgba(47,111,237,0.28);
}
.vorici-calc-wrap .vc-stat-card.vc-hero{
  grid-column:1 / -1;
  background:linear-gradient(135deg, #2a63e0, #4d8bff);
  border-color:#4a86f7;
  display:flex; align-items:baseline; justify-content:space-between; flex-wrap:wrap; gap:8px;
}
.vorici-calc-wrap .vc-stat-label{font-size:11px; letter-spacing:0.08em; text-transform:uppercase; color:rgba(255,255,255,0.75); margin-bottom:6px;}
.vorici-calc-wrap .vc-stat-value{font-family:'JetBrains Mono', monospace; font-size:26px; font-weight:700; color:#ffffff;}
.vorici-calc-wrap .vc-stat-value.vc-small{font-size:20px;}
.vorici-calc-wrap .vc-stat-sub{font-size:11.5px; color:rgba(255,255,255,0.7); margin-top:4px;}

.vorici-calc-wrap .vc-prob-bars{margin-top:6px;}
.vorici-calc-wrap .vc-prob-row{display:flex; align-items:center; gap:10px; margin-bottom:9px;}
.vorici-calc-wrap .vc-prob-row .vc-lbl{width:20px; font-size:12px; font-family:'JetBrains Mono', monospace; color:rgba(255,255,255,0.85); flex-shrink:0;}
.vorici-calc-wrap .vc-prob-row .vc-track{flex:1; height:8px; background:rgba(0,0,0,0.22); border-radius:4px; overflow:hidden;}
.vorici-calc-wrap .vc-prob-row .vc-fill{height:100%; border-radius:4px; background:#ffffff;}
.vorici-calc-wrap .vc-prob-row .vc-pct{width:48px; text-align:right; font-family:'JetBrains Mono', monospace; font-size:12px; color:rgba(255,255,255,0.85); flex-shrink:0;}

.vorici-calc-wrap .vc-disclaimer{
  margin-top:24px; font-size:11.5px; color:var(--vc-text-faint); line-height:1.6;
  border-top:1px solid var(--vc-line); padding-top:16px;
}
.vorici-calc-wrap .vc-disclaimer b{color:var(--vc-text-dim);}
