/* ============================================================
   THE ROARING BEAN — Event Scorecard Styles
   ============================================================ */

.sc-wrap{max-width:680px;margin:0 auto;padding:3rem 1.5rem 6rem;position:relative;z-index:1}

/* ── Card ── */
.sc-card{background:linear-gradient(145deg,#141209 0%,#0d0b07 100%);border:1px solid rgba(201,168,76,.12);border-radius:2px;padding:3rem 2.5rem;position:relative;box-shadow:0 20px 60px rgba(0,0,0,.5),0 1px 0 rgba(201,168,76,.06) inset}
.sc-card::before,.sc-card::after{content:"";position:absolute;width:24px;height:24px;border-color:rgba(201,168,76,.25);border-style:solid;pointer-events:none}
.sc-card::before{top:12px;left:12px;border-width:1px 0 0 1px}
.sc-card::after{bottom:12px;right:12px;border-width:0 1px 1px 0}

/* ── Progress bar ── */
.sc-progress{height:3px;background:rgba(201,168,76,.08);margin-bottom:2.5rem;border-radius:1px;overflow:hidden}
.sc-progress-fill{height:100%;background:linear-gradient(90deg,#8a6e2f,#c9a84c,#e8c96a);width:0;transition:width .5s cubic-bezier(.23,1,.32,1);border-radius:1px}

/* ── Step counter ── */
.sc-step-count{font-family:"Playfair Display SC",serif;font-size:.65rem;letter-spacing:.3em;color:rgba(201,168,76,.45);text-transform:uppercase;text-align:center;margin-bottom:1rem}

/* ── Diamond divider ── */
.sc-divider{display:flex;align-items:center;gap:1rem;margin:1.2rem 0 1.8rem;opacity:.3}
.sc-divider::before,.sc-divider::after{content:"";flex:1;height:1px}
.sc-divider::before{background:linear-gradient(to right,transparent,rgba(201,168,76,.5))}
.sc-divider::after{background:linear-gradient(to left,transparent,rgba(201,168,76,.5))}
.sc-divider-diamond{width:6px;height:6px;background:rgba(201,168,76,.4);transform:rotate(45deg);flex-shrink:0}

/* ── Intro screen ── */
.sc-intro{text-align:center}
.sc-intro-eyebrow{font-family:"Playfair Display SC",serif;font-size:.65rem;letter-spacing:.35em;color:var(--gold,#c9a84c);text-transform:uppercase;display:flex;align-items:center;justify-content:center;gap:.8rem;margin-bottom:1.5rem}
.sc-intro-eyebrow::before,.sc-intro-eyebrow::after{content:"";width:24px;height:1px;background:var(--gold-dim,#8a6e2f)}
.sc-intro h1{font-family:"Playfair Display",serif;font-size:clamp(1.6rem,4vw,2.4rem);font-weight:400;color:var(--cream,#f5edd6);line-height:1.2;letter-spacing:.03em;margin-bottom:1rem}
.sc-intro h1 em{font-family:"Cormorant Garamond",serif;font-style:italic;font-weight:300;color:var(--gold,#c9a84c);font-size:1.15em}
.sc-intro-sub{font-family:"Cormorant Garamond",serif;font-size:1.1rem;color:var(--cream-dim,#bdb08a);line-height:1.8;font-weight:300;max-width:48ch;margin:0 auto 1.5rem}
.sc-intro-scarcity{font-family:"Playfair Display SC",serif;font-size:.65rem;letter-spacing:.2em;color:rgba(201,168,76,.55);text-transform:uppercase;margin-bottom:2.5rem}
.sc-start-btn{display:inline-block;background:var(--gold,#c9a84c);color:var(--black,#080808);font-family:"Playfair Display SC",serif;font-size:.7rem;letter-spacing:.25em;text-transform:uppercase;padding:14px 36px;border:none;cursor:pointer;transition:background .3s,transform .15s;text-decoration:none}
.sc-start-btn:hover{background:var(--gold-light,#e8c96a);transform:translateY(-1px)}

/* ── Question screen ── */
.sc-question{display:none}
.sc-question.active{display:block}
.sc-question h2{font-family:"Playfair Display",serif;font-size:clamp(1.2rem,2.5vw,1.6rem);font-weight:400;color:var(--cream,#f5edd6);line-height:1.3;letter-spacing:.02em;text-align:center;margin-bottom:2rem}

/* ── Answer options ── */
.sc-options{display:flex;flex-direction:column;gap:.6rem}
.sc-option{display:flex;align-items:center;gap:1rem;padding:1rem 1.4rem;border:1px solid rgba(201,168,76,.1);background:rgba(201,168,76,.02);cursor:pointer;transition:border-color .3s,background .3s,transform .15s;border-radius:2px}
.sc-option:hover{border-color:rgba(201,168,76,.3);background:rgba(201,168,76,.05);transform:translateX(4px)}
.sc-option.selected{border-color:var(--gold,#c9a84c);background:rgba(201,168,76,.08)}
.sc-option-icon{font-size:1.2rem;width:2rem;text-align:center;flex-shrink:0}
.sc-option-text{font-family:"Cormorant Garamond",serif;font-size:1.05rem;color:var(--cream,#f5edd6);font-weight:300;line-height:1.4;flex:1}
.sc-option-radio{width:16px;height:16px;border:1px solid rgba(201,168,76,.3);border-radius:50%;flex-shrink:0;position:relative;transition:border-color .3s}
.sc-option.selected .sc-option-radio{border-color:var(--gold,#c9a84c)}
.sc-option.selected .sc-option-radio::after{content:"";position:absolute;top:3px;left:3px;width:8px;height:8px;background:var(--gold,#c9a84c);border-radius:50%}

/* ── Question validation error ── */
.sc-question-error{font-family:"Cormorant Garamond",serif;font-size:.95rem;color:#d44;text-align:center;margin-top:1rem;display:none}

/* ── Navigation buttons ── */
.sc-nav{display:flex;justify-content:space-between;align-items:center;margin-top:2rem}
.sc-back{font-family:"Playfair Display SC",serif;font-size:.65rem;letter-spacing:.2em;color:var(--cream-dim,#bdb08a);text-transform:uppercase;background:none;border:none;cursor:pointer;padding:8px 0;transition:color .3s;opacity:.6}
.sc-back:hover{color:var(--gold,#c9a84c);opacity:1}
.sc-back.hidden{visibility:hidden}
.sc-next{font-family:"Playfair Display SC",serif;font-size:.65rem;letter-spacing:.25em;text-transform:uppercase;padding:12px 28px;border:1px solid var(--gold,#c9a84c);color:var(--gold,#c9a84c);background:transparent;cursor:pointer;transition:background .3s,color .3s,opacity .3s;opacity:.3}
.sc-next.enabled{opacity:1}
.sc-next.enabled:hover{background:var(--gold,#c9a84c);color:var(--black,#080808)}

/* ── Results screen ── */
.sc-results{display:none;text-align:center}
.sc-results.active{display:block}
.sc-result-badge{font-family:"Playfair Display SC",serif;font-size:.65rem;letter-spacing:.35em;color:var(--gold,#c9a84c);text-transform:uppercase;margin-bottom:1.5rem}
.sc-result-tier{font-family:"Playfair Display",serif;font-size:clamp(1.4rem,3vw,2rem);font-weight:400;color:var(--cream,#f5edd6);letter-spacing:.04em;margin-bottom:.4rem}
.sc-result-subtitle{font-family:"Cormorant Garamond",serif;font-size:1rem;color:var(--gold,#c9a84c);font-style:italic;font-weight:300;margin-bottom:1.5rem}
.sc-result-score{display:inline-flex;align-items:center;gap:.5rem;font-family:"Playfair Display SC",serif;font-size:.65rem;letter-spacing:.2em;color:rgba(201,168,76,.5);text-transform:uppercase;margin-bottom:1.5rem}
.sc-result-score-num{font-size:1.4rem;color:var(--gold,#c9a84c);letter-spacing:0}
.sc-result-msg{font-family:"Cormorant Garamond",serif;font-size:1.05rem;color:var(--cream-dim,#bdb08a);line-height:1.85;font-weight:300;max-width:52ch;margin:0 auto 2.5rem;text-align:left}

/* ── Application form ── */
.sc-form-heading{font-family:"Playfair Display SC",serif;font-size:.65rem;letter-spacing:.3em;color:var(--gold,#c9a84c);text-transform:uppercase;text-align:center;margin-bottom:1.8rem}
.sc-form{display:flex;flex-direction:column;gap:1.2rem}
.sc-field{display:flex;flex-direction:column;gap:.4rem}
.sc-field label{font-family:"Playfair Display SC",serif;font-size:.65rem;letter-spacing:.2em;color:rgba(201,168,76,.55);text-transform:uppercase}
.sc-field input,.sc-field textarea{background:rgba(201,168,76,.04);border:1px solid rgba(201,168,76,.12);color:var(--cream,#f5edd6);font-family:"Cormorant Garamond",serif;font-size:1.05rem;padding:10px 14px;transition:border-color .3s;border-radius:2px}
.sc-field input:focus,.sc-field textarea:focus{outline:none;border-color:rgba(201,168,76,.4)}
.sc-field textarea{min-height:100px;resize:vertical}
.sc-field input::placeholder,.sc-field textarea::placeholder{color:rgba(189,176,138,.35)}
.sc-submit{display:block;width:100%;margin-top:.8rem;background:var(--gold,#c9a84c);color:var(--black,#080808);font-family:"Playfair Display SC",serif;font-size:.7rem;letter-spacing:.25em;text-transform:uppercase;padding:14px 28px;border:none;cursor:pointer;transition:background .3s,transform .15s}
.sc-submit:hover{background:var(--gold-light,#e8c96a);transform:translateY(-1px)}
.sc-submit:disabled{opacity:.5;cursor:not-allowed;transform:none}
.sc-form-error{font-family:"Cormorant Garamond",serif;font-size:.95rem;color:#d44;text-align:center;margin-top:.5rem;display:none}

/* ── Confirmation screen ── */
.sc-confirm{display:none;text-align:center}
.sc-confirm.active{display:block}
.sc-confirm-icon{font-size:2.5rem;margin-bottom:1.2rem}
.sc-confirm h2{font-family:"Playfair Display",serif;font-size:clamp(1.4rem,3vw,2rem);font-weight:400;color:var(--cream,#f5edd6);letter-spacing:.03em;margin-bottom:.6rem}
.sc-confirm-name{font-family:"Cormorant Garamond",serif;font-size:1.2rem;color:var(--gold,#c9a84c);font-style:italic;font-weight:300;margin-bottom:1.5rem}
.sc-confirm p{font-family:"Cormorant Garamond",serif;font-size:1.05rem;color:var(--cream-dim,#bdb08a);line-height:1.85;font-weight:300;max-width:48ch;margin:0 auto 2rem}
.sc-confirm-cta{display:inline-block;background:transparent;color:var(--gold,#c9a84c);font-family:"Playfair Display SC",serif;font-size:.65rem;letter-spacing:.25em;text-transform:uppercase;padding:12px 28px;border:1px solid var(--gold,#c9a84c);text-decoration:none;transition:background .3s,color .3s}
.sc-confirm-cta:hover{background:var(--gold,#c9a84c);color:var(--black,#080808)}

/* ── Shimmer animation on intro ── */
.sc-shimmer{position:absolute;inset:0;overflow:hidden;pointer-events:none;border-radius:2px}
.sc-shimmer::after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:conic-gradient(from 0deg,transparent 0deg,rgba(201,168,76,.04) 60deg,transparent 120deg);animation:sc-spin 8s linear infinite}
@keyframes sc-spin{to{transform:rotate(360deg)}}

/* ── Fade transitions ── */
.sc-fade-in{animation:scFadeIn .4s ease forwards}
.sc-fade-out{animation:scFadeOut .25s ease forwards}
@keyframes scFadeIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes scFadeOut{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}

/* ── Responsive ── */
@media(max-width:600px){.sc-wrap{padding:2rem 1rem 4rem}.sc-card{padding:2rem 1.4rem}.sc-option{padding:.85rem 1rem;gap:.75rem}.sc-nav{gap:.5rem}.sc-result-msg{text-align:center}}
