/* ═══ assessment.css — OWNER: Agent B (v4). Page styles for /assessment/.
   Consumes tokens.css vars + scenes.css classes (.wa-scene, .glass-live,
   .wa-gate, .btn-gold/.btn-ghost, .eyebrow). All page selectors prefixed .as-.
   Motion: transform/opacity only, ≤600ms; reduced-motion neutralised globally
   by tokens.css. ═══ */

/* hidden attribute must beat the .wa-scene flex display */
.wa-scene[hidden]{display:none!important;}
#as-card[hidden],#as-locked[hidden]{display:none!important;}

/* ── Intro scene ── */
.as-intro-panel{max-width:680px;margin:0 auto;padding:var(--s-6) var(--s-5);text-align:center;}
.as-intro-panel .eyebrow{justify-content:center;}
.as-intro-panel .eyebrow::after{content:'';display:block;width:32px;height:1px;background:var(--gold);}
.as-title{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2.2rem,4.5vw,3.4rem);
  font-weight:400;line-height:1.1;letter-spacing:-0.5px;
  color:var(--white);margin-bottom:1.25rem;
}
.as-title em{font-style:italic;color:var(--gold);font-weight:400;}
.as-lede{font-size:var(--fs-md);color:var(--muted);line-height:1.7;max-width:520px;margin:0 auto 2rem;}
.as-intro-actions{margin-bottom:1.25rem;}
.as-intro-note{font-size:var(--fs-xs);color:var(--muted);letter-spacing:0.04em;}

/* ── Quiz scene ── */
.as-narrow{max-width:820px;}
.as-noscript{
  background:rgba(var(--glass-strong-rgb),0.96);border:1px solid var(--border);
  padding:var(--s-3);margin-bottom:var(--s-3);color:var(--text);font-size:var(--fs-base);
}
.as-noscript a{color:var(--gold);}

.as-progress-wrap{display:flex;align-items:center;gap:1.5rem;margin-bottom:1.5rem;}
.as-progress-text{
  font-size:0.7rem;color:var(--muted);letter-spacing:0.22em;
  text-transform:uppercase;white-space:nowrap;font-weight:500;
}
.as-progress-bar{flex:1;height:2px;background:var(--border-subtle);}
.as-progress-fill{
  height:100%;width:0%;background:var(--gold);
  box-shadow:0 0 8px rgba(var(--accent-rgb),0.5);
  transition:width var(--dur-max) var(--ease-soft);
}

.as-card{padding:var(--s-5) var(--s-5) var(--s-4);}
.as-qhead{display:flex;align-items:center;gap:0.75rem;margin-bottom:1rem;}
.as-qnum{
  display:flex;align-items:center;gap:0.75rem;flex:1;
  font-size:0.68rem;color:var(--gold);letter-spacing:0.22em;
  text-transform:uppercase;font-weight:600;
}
.as-qnum::after{
  content:'';flex:1;height:1px;
  background:linear-gradient(90deg,var(--gold),transparent);opacity:0.5;
}
.as-back{
  background:none;border:1px solid var(--border-subtle);cursor:pointer;
  color:var(--muted);font-family:'DM Sans',sans-serif;font-size:0.66rem;
  font-weight:600;letter-spacing:0.14em;text-transform:uppercase;
  padding:7px 14px;transition:color var(--dur-micro),border-color var(--dur-micro);
}
.as-back:hover,.as-back:focus-visible{color:var(--gold);border-color:var(--gold);}
.as-qtext{
  font-family:'Cormorant Garamond',serif;font-size:1.75rem;color:var(--white);
  margin-bottom:2rem;line-height:1.25;font-weight:400;letter-spacing:-0.3px;
}
.as-options{display:flex;flex-direction:column;gap:0.65rem;}
.as-option{
  display:flex;align-items:center;gap:1rem;width:100%;text-align:left;
  background:rgba(var(--white-rgb),0.02);border:1px solid var(--border-subtle);
  padding:1.05rem 1.4rem;cursor:pointer;line-height:1.4;
  font-family:'DM Sans',sans-serif;font-size:1rem;color:var(--text);
  transition:border-color var(--dur-fast) ease,background var(--dur-fast) ease,
             color var(--dur-fast) ease,transform var(--dur-fast) ease;
}
.as-marker{
  width:18px;height:18px;border:1.5px solid var(--border);border-radius:50%;
  flex-shrink:0;position:relative;transition:border-color var(--dur-fast) ease;
}
.as-option:hover,.as-option:focus-visible{
  border-color:var(--gold);background:rgba(var(--accent-rgb),0.06);
  color:var(--white);transform:translateX(4px);
}
.as-option:hover .as-marker,.as-option:focus-visible .as-marker{border-color:var(--gold);}
.as-option:hover .as-marker::after,.as-option:focus-visible .as-marker::after{
  content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
  width:8px;height:8px;background:var(--gold);border-radius:50%;
}

/* fade-in on question swap (opacity/transform only, ≤600ms) */
@keyframes as-fade-in{from{opacity:0;transform:translateY(12px);}to{opacity:1;transform:translateY(0);}}
.as-fade-in{animation:as-fade-in 0.4s var(--ease-out) both;}

/* Locked (post-quiz, pre-email) state */
.as-locked{text-align:left;}
.as-locked-copy{font-size:var(--fs-base);color:var(--muted);line-height:1.7;max-width:52ch;margin-bottom:1.75rem;}
.as-locked-actions{display:flex;align-items:center;gap:var(--s-3);flex-wrap:wrap;}

/* ── Results scene ── */
.as-results-grid{
  display:grid;grid-template-columns:1.5fr 1fr;gap:var(--s-3);
  align-items:stretch;margin-bottom:var(--s-3);
}
.as-band{
  padding:var(--s-5);outline:none;
  background:
    radial-gradient(ellipse 420px 300px at 50% 20%, rgba(var(--accent-rgb),0.14), transparent 70%),
    var(--glass-bg);
}
.as-band-eyebrow{
  color:var(--gold);font-size:0.72rem;letter-spacing:0.22em;
  text-transform:uppercase;font-weight:600;margin-bottom:1rem;
}
.as-tier{
  font-family:'Cormorant Garamond',serif;font-size:clamp(1.9rem,3.2vw,2.6rem);
  color:var(--white);font-weight:400;letter-spacing:-0.3px;line-height:1.15;
}
.as-tier em{color:var(--gold);font-style:italic;}
.as-band-divider{
  width:48px;height:1px;background:var(--gold);margin:1.15rem 0;opacity:0.8;
  box-shadow:0 0 8px rgba(var(--accent-rgb),0.5);
}
.as-tier-desc{color:rgba(var(--white-rgb),0.78);font-size:1rem;line-height:1.7;font-weight:300;max-width:56ch;}

.as-disclaimer{
  padding:var(--s-3) var(--s-3);
  background:rgba(var(--glass-strong-rgb),0.72);
  border:1px solid var(--border-subtle);
  border-left:3px solid var(--gold);
  font-size:0.78rem;color:var(--muted);line-height:1.75;
}
.as-disclaimer strong{color:var(--white);font-weight:600;}

.as-breakdown{padding:var(--s-4);margin-bottom:var(--s-4);}
.as-breakdown-header{margin-bottom:1.25rem;padding-bottom:1.1rem;border-bottom:1px solid var(--border-subtle);}
.as-breakdown-eyebrow{
  font-size:0.7rem;letter-spacing:0.22em;color:var(--gold);
  text-transform:uppercase;font-weight:600;margin-bottom:0.45rem;
}
.as-breakdown h3{
  font-family:'Cormorant Garamond',serif;color:var(--white);
  font-size:1.55rem;font-weight:400;letter-spacing:-0.3px;margin:0;
}
.as-breakdown-item{
  padding:0.9rem 0;border-bottom:1px solid var(--border-subtle);
  display:flex;justify-content:space-between;gap:1.5rem;align-items:flex-start;
}
.as-breakdown-item:last-child{border-bottom:none;padding-bottom:0;}
.as-breakdown-q{font-size:0.92rem;color:var(--text);flex:1;line-height:1.55;}
.as-status{
  font-size:0.62rem;font-weight:700;letter-spacing:0.2em;text-transform:uppercase;
  padding:0.35rem 0.75rem;white-space:nowrap;border:1px solid;
}
.as-status-clear{color:var(--ok);border-color:rgba(var(--ok-rgb),0.6);background:rgba(var(--ok-rgb),0.08);}
.as-status-partial{color:var(--gold);border-color:rgba(var(--accent-rgb),0.6);background:rgba(var(--accent-rgb),0.08);}
.as-status-gap{color:var(--warn);border-color:rgba(var(--warn-rgb),0.55);background:rgba(var(--warn-rgb),0.08);}

.as-cta{text-align:center;padding:0 1rem;}
.as-cta-eyebrow{
  color:var(--gold);font-size:0.72rem;letter-spacing:0.22em;
  text-transform:uppercase;margin-bottom:1rem;font-weight:600;
}
.as-cta-text{font-size:1.02rem;color:var(--text);margin:0 auto 1.75rem;max-width:540px;line-height:1.65;}
.as-cta-actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;}
.as-retake{
  display:inline-block;margin:0;color:var(--muted);
  font-family:'DM Sans',sans-serif;font-size:0.7rem;letter-spacing:0.22em;
  text-transform:uppercase;background:none;border:none;cursor:pointer;
  font-weight:500;transition:color var(--dur-micro) ease;padding:10px 0;
}
.as-cta .as-retake{display:block;margin:2.25rem auto 0;}
.as-retake:hover,.as-retake:focus-visible{color:var(--gold);}

/* ── Gate error state ── */
.as-gate-error{
  font-size:0.8rem;color:var(--warn);line-height:1.6;
  border-left:3px solid var(--warn);background:rgba(var(--warn-rgb),0.08);
  padding:0.75rem 1rem;margin-bottom:var(--s-2);
}
.as-gate-error a{color:var(--gold);}
.wa-gate-submit[disabled]{opacity:0.6;cursor:wait;transform:none;}

/* ── Responsive ── */
@media (max-width:900px){
  .as-results-grid{grid-template-columns:1fr;}
  .as-band{padding:var(--s-4) var(--s-3);}
}
@media (max-width:720px){
  .as-intro-panel{padding:var(--s-4) var(--s-3);}
  .as-lede{font-size:0.95rem;}
  .as-card{padding:var(--s-4) var(--s-3);}
  .as-qtext{font-size:1.35rem;margin-bottom:1.4rem;}
  .as-option{font-size:1rem;padding:0.95rem 1.1rem;}
  .as-progress-wrap{gap:1rem;}
  .as-breakdown{padding:var(--s-3);}
  .as-breakdown h3{font-size:1.3rem;}
  .as-breakdown-item{flex-direction:column;gap:0.5rem;}
  .as-cta-actions{flex-direction:column;align-items:stretch;}
}
