.css-spinner-shortcode-wrap{
  --css-spinner-bg1:#ffffff;
  --css-spinner-bg2:#eef4fb;
  --css-spinner-card:#ffffff;
  --css-spinner-text:#111827;
  --css-spinner-muted:#475569;
  --css-spinner-border:#d8e1ec;
  --css-spinner-shadow:0 18px 42px rgba(15,23,42,.12);
  max-width:1200px;
  margin:0 auto;
  padding:20px;
  display:grid;
  grid-template-columns:420px 1fr;
  gap:24px;
  color:var(--css-spinner-text);
}

.css-spinner-panel,
.css-spinner-wheel-card{
  background:var(--css-spinner-card);
  border-radius:24px;
  padding:22px;
  box-shadow:var(--css-spinner-shadow);
}

.css-spinner-title{
  margin:0 0 8px;
  font-size:30px;
  line-height:1.15;
}

.css-spinner-help{
  margin:0 0 14px;
  color:var(--css-spinner-muted);
  line-height:1.45;
}

.css-spinner-options{
  width:100%;
  min-height:140px;
  padding:14px;
  border-radius:16px;
  border:1px solid var(--css-spinner-border);
  resize:vertical;
  font-size:14px;
  box-sizing:border-box;
}

.css-spinner-buttons{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:14px;
}

.css-spinner-buttons button{
  border:none;
  border-radius:14px;
  padding:12px 18px;
  background:#111827;
  color:#fff;
  font-weight:700;
  cursor:pointer;
}

.css-spinner-result-box{
  margin-top:16px;
  padding:16px;
  border-radius:16px;
  background:#f8fafc;
  border:1px solid var(--css-spinner-border);
}

.css-spinner-result-label{
  font-size:13px;
  color:var(--css-spinner-muted);
  margin-bottom:4px;
}

.css-spinner-result{
  font-size:28px;
  font-weight:800;
  line-height:1.15;
}

.css-spinner-wheel-card{
  min-height:var(--css-spinner-height, 560px);
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  overflow:hidden;
  background:linear-gradient(180deg,var(--css-spinner-bg1),var(--css-spinner-bg2));
}

.css-spinner-wheel-wrap{
  position:relative;
  width:min(84vw, 520px);
  height:min(84vw, 520px);
  min-width:280px;
  min-height:280px;
  max-width:520px;
  max-height:520px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.css-spinner-pointer{
  position:absolute;
  top:-8px;
  left:50%;
  transform:translateX(-50%);
  width:0;
  height:0;
  border-left:22px solid transparent;
  border-right:22px solid transparent;
  border-top:40px solid #111827;
  z-index:20;
  filter:drop-shadow(0 8px 10px rgba(0,0,0,.2));
}

.css-spinner-wheel{
  width:100%;
  height:100%;
  user-select:none;
  overflow:visible;
  filter:drop-shadow(0 20px 28px rgba(15,23,42,.16));
}

.css-spinner-wheel-rotor{
  transition:transform 4.2s cubic-bezier(.17,.67,.18,1);
  transform-origin:180px 180px;
}

@media (max-width: 920px){
  .css-spinner-shortcode-wrap{
    grid-template-columns:1fr;
  }

  .css-spinner-wheel-card{
    min-height:480px;
  }

  .css-spinner-title{
    font-size:26px;
  }
}
