/* HKCash Roulette Betting Simulator v1.0.0 — shortcode scoped */
.hkcash-rbs,
.hkcash-rbs *{box-sizing:border-box}

.hkcash-rbs{
  --rbs-purple-950:#170728;
  --rbs-purple-800:#3a175f;
  --rbs-purple-700:#54258b;
  --rbs-purple-500:#8b5cf6;
  --rbs-purple-100:#f0ebff;
  --rbs-lilac:#f8f5ff;
  --rbs-ink:#21182e;
  --rbs-muted:#70667f;
  --rbs-line:#e6def2;
  --rbs-felt:#07573f;
  --rbs-felt-2:#0b684d;
  --rbs-gold:#f0c75e;
  --rbs-white:#fff;
  display:grid;
  gap:18px;
  width:100%;
}

.hkcash-rbs__how,
.hkcash-rbs__settings,
.hkcash-rbs__felt{
  width:100%;
  max-width:100%;
  border-radius:20px;
}

.hkcash-rbs__how{
  padding:18px 22px;
  background:linear-gradient(135deg,#fff,#f2ecff);
  border:1px solid #d9cdf1;
}
.hkcash-rbs__how>span{
  display:block;
  color:var(--rbs-purple-700);
  font-weight:800;
  font-size:13px;
  margin-bottom:10px;
}
.hkcash-rbs__steps{
  display:flex;
  gap:12px;
  align-items:center;
  flex-wrap:wrap;
}
.hkcash-rbs__steps strong{font-size:15px}
.hkcash-rbs__steps b{color:var(--rbs-purple-500)}

.hkcash-rbs__settings{
  background:#fff;
  border:1px solid var(--rbs-line);
  padding:26px 24px;
  box-shadow:0 10px 30px rgba(42,19,73,.05);
}
.hkcash-rbs__head>span,
.hkcash-rbs__felt-head span{
  font-size:13px;
  font-weight:800;
  color:var(--rbs-purple-700);
}
.hkcash-rbs__head h3{
  font-size:30px;
  margin:6px 0 8px;
  color:var(--rbs-ink);
}
.hkcash-rbs__head p{
  color:var(--rbs-muted);
  line-height:1.7;
  margin:0 0 22px;
}
.hkcash-rbs__grid{
  display:grid;
  gap:14px;
  margin-bottom:14px;
}
.hkcash-rbs__grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.hkcash-rbs__grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.hkcash-rbs label>span{
  display:block;
  font-size:13px;
  font-weight:800;
  margin-bottom:8px;
}
.hkcash-rbs select,
.hkcash-rbs input{
  width:100%;
  min-width:0;
  min-height:48px;
  border:1px solid #d7caee;
  border-radius:12px;
  background:#fff;
  padding:0 14px;
  font-size:15px;
  color:var(--rbs-ink);
}
.hkcash-rbs select:focus,
.hkcash-rbs input:focus{
  outline:none;
  border-color:var(--rbs-purple-700);
  box-shadow:0 0 0 3px rgba(84,37,139,.12);
}
.hkcash-rbs__strategy-note{
  min-height:46px;
  border-radius:12px;
  background:#f7f2ff;
  border:1px solid #e0d5f3;
  padding:12px 14px;
  line-height:1.55;
  color:#59496b;
  font-size:14px;
  margin:4px 0 16px;
}
.hkcash-rbs__error{
  margin:-4px 0 14px;
  padding:12px 14px;
  border:1px solid #e7b6b6;
  border-radius:12px;
  background:#fff4f4;
  color:#7b2525;
  line-height:1.55;
  font-size:14px;
}
.hkcash-rbs__run{
  border:0;
  border-radius:12px;
  background:var(--rbs-purple-700);
  color:#fff;
  min-height:50px;
  padding:0 24px;
  font-size:16px;
  font-weight:800;
  cursor:pointer;
}
.hkcash-rbs__run:hover{filter:brightness(1.08)}

.hkcash-rbs__felt{
  background:linear-gradient(145deg,var(--rbs-felt),var(--rbs-felt-2));
  padding:26px 24px;
  color:#fff;
  border:1px solid #b99f50;
  overflow:hidden;
}
.hkcash-rbs__felt-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:20px;
}
.hkcash-rbs__felt-head span{color:#ffe08b}
.hkcash-rbs__felt-head h3{
  margin:6px 0 0;
  font-size:30px;
  color:#fff;
}
.hkcash-rbs__wheel-dots{
  display:flex;
  gap:7px;
}
.hkcash-rbs__wheel-dots i{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:50%;
  background:#172f28;
  border:1px solid rgba(255,255,255,.22);
  font-style:normal;
  font-weight:800;
  font-size:12px;
}
.hkcash-rbs__wheel-dots i.zero{
  background:#0a8a61;
  border-color:#ffd768;
}
.hkcash-rbs__theory{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:20px 0 12px;
}
.hkcash-rbs__theory>div,
.hkcash-rbs__stats article{
  min-width:0;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.17);
  border-radius:14px;
  padding:14px;
}
.hkcash-rbs__theory span,
.hkcash-rbs__stats span{
  display:block;
  font-size:12px;
  opacity:.88;
  margin-bottom:7px;
}
.hkcash-rbs__theory strong,
.hkcash-rbs__stats strong{
  display:block;
  font-size:22px;
  overflow-wrap:anywhere;
}
.hkcash-rbs__stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.hkcash-rbs__chart-card{
  margin-top:14px;
  background:#fff;
  color:var(--rbs-ink);
  border-radius:16px;
  padding:16px;
}
.hkcash-rbs__chart-title{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  margin-bottom:8px;
}
.hkcash-rbs__chart-title span{font-weight:800}
.hkcash-rbs__chart-title small{color:var(--rbs-muted)}
.hkcash-rbs canvas{
  display:block;
  width:100%;
  max-width:100%;
  height:260px;
  border-radius:10px;
}
.hkcash-rbs__stop-reason{
  margin-top:14px;
  border:1px dashed rgba(255,255,255,.30);
  border-radius:12px;
  padding:12px 14px;
  line-height:1.55;
}
.hkcash-rbs__warning{
  margin-top:12px;
  background:#fff;
  color:#3b204f;
  border-radius:12px;
  padding:14px;
  line-height:1.65;
}

@media(max-width:900px){
  .hkcash-rbs__grid--3,
  .hkcash-rbs__grid--4,
  .hkcash-rbs__stats{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){
  .hkcash-rbs__settings,
  .hkcash-rbs__felt{padding:20px 14px}
  .hkcash-rbs__grid--3,
  .hkcash-rbs__grid--4,
  .hkcash-rbs__stats,
  .hkcash-rbs__theory{grid-template-columns:1fr}
  .hkcash-rbs__felt-head{display:block}
  .hkcash-rbs__wheel-dots{margin-top:14px}
  .hkcash-rbs__head h3,
  .hkcash-rbs__felt-head h3{font-size:25px}
  .hkcash-rbs__steps{display:grid;grid-template-columns:1fr}
  .hkcash-rbs__steps b{display:none}
  .hkcash-rbs__chart-title{display:block}
  .hkcash-rbs__chart-title small{display:block;margin-top:5px}
}
