
/**
 * Certigate Platform UI 1.30.21
 * Static compiled CSS (utility-inspired) + semantic existing PHP.
 * No runtime Tailwind CDN. No React. No business logic duplication.
 */

body.cg-stitch-experience{
  --cp-bg:#f5f3ec;
  --cp-surface:#ffffff;
  --cp-surface-soft:#eef3f5;
  --cp-ink:#0b2c3b;
  --cp-text:#60737e;
  --cp-muted:#82939b;
  --cp-border:#d7e1e5;
  --cp-navy:#082b3b;
  --cp-navy-2:#061d29;
  --cp-gold:#c9a227;
  --cp-gold-soft:#e5c966;
  --cp-success:#277257;
  --cp-danger:#af4848;
  --cp-shadow:0 18px 55px rgba(8,43,59,.09);
  --cp-radius:18px;
  --cp-radius-sm:12px;
  --cp-serif:Fraunces,Georgia,"Times New Roman",serif;
  --cp-sans:"IBM Plex Sans",Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
html[data-theme="dark"] body.cg-stitch-experience{
  --cp-bg:#071e29;
  --cp-surface:#0e3242;
  --cp-surface-soft:#123b4c;
  --cp-ink:#f7fbfd;
  --cp-text:#cfdee5;
  --cp-muted:#a4b6c0;
  --cp-border:#2d5060;
  --cp-navy:#061d29;
  --cp-navy-2:#041720;
  --cp-shadow:0 20px 60px rgba(0,0,0,.28);
}

/* ============= Global candidate/public screens ============= */
body.cg-stitch-experience #screen-register,
body.cg-stitch-experience #screen-login,
body.cg-stitch-experience #screen-forgot,
body.cg-stitch-experience #screen-onboard-welcome,
body.cg-stitch-experience #screen-onboard-diag,
body.cg-stitch-experience #screen-onboard-result,
body.cg-stitch-experience #screen-onboard-cadrage,
body.cg-stitch-experience #screen-payment,
body.cg-stitch-experience #screen-parcours,
body.cg-stitch-experience #screen-certificate-verify,
body.cg-stitch-experience #screen-dash-learner{
  background:var(--cp-bg)!important;
  color:var(--cp-ink)!important;
}

/* Auth/application cards */
body.cg-stitch-experience .cg-candidate-screen,
body.cg-stitch-experience .cg-present-auth{
  min-height:calc(100vh - 1px)!important;
  display:grid!important;
  place-items:center!important;
  padding:48px 20px!important;
  background:
    radial-gradient(circle at 12% 8%,rgba(201,162,39,.09),transparent 27%),
    var(--cp-bg)!important;
}
body.cg-stitch-experience .cg-candidate-card,
body.cg-stitch-experience .cg-auth-panel{
  width:min(760px,100%)!important;
  border:1px solid var(--cp-border)!important;
  border-radius:24px!important;
  background:var(--cp-surface)!important;
  color:var(--cp-ink)!important;
  box-shadow:var(--cp-shadow)!important;
  padding:34px!important;
}
body.cg-stitch-experience .cg-candidate-application-card{width:min(860px,100%)!important}
body.cg-stitch-experience .cg-candidate-card h1,
body.cg-stitch-experience .cg-auth-panel h1{
  font-family:var(--cp-serif)!important;
  font-weight:400!important;
  color:var(--cp-ink)!important;
  letter-spacing:-.03em!important;
  font-size:clamp(36px,5vw,52px)!important;
}
body.cg-stitch-experience .cg-kicker,
body.cg-stitch-experience .cg-auth-kicker{
  color:var(--cp-gold)!important;
  text-transform:uppercase!important;
  letter-spacing:.15em!important;
  font-size:10px!important;
  font-weight:900!important;
}
body.cg-stitch-experience .subtitle,
body.cg-stitch-experience .cg-application-assurance{color:var(--cp-text)!important}
body.cg-stitch-experience .auth-logo,
body.cg-stitch-experience .cg-auth-logo{
  display:flex!important; align-items:center!important; justify-content:center!important;
  margin-bottom:14px!important;
}
body.cg-stitch-experience .auth-logo:after,
body.cg-stitch-experience .cg-auth-logo:after{
  content:"Certigate"; margin-left:10px; font-family:var(--cp-serif); font-size:24px; color:var(--cp-ink); font-weight:600;
}
body.cg-stitch-experience .auth-logo .cg-logo-official,
body.cg-stitch-experience .cg-auth-logo .cg-logo-official{
  width:44px!important;height:44px!important;
}

/* Forms */
body.cg-stitch-experience .form-group label,
body.cg-stitch-experience .cg-field>span,
body.cg-stitch-experience .cg-candidate-form label{
  color:var(--cp-ink)!important;
  font-weight:700!important;
}
body.cg-stitch-experience .form-input,
body.cg-stitch-experience .cg-field input,
body.cg-stitch-experience .cg-candidate-form input,
body.cg-stitch-experience .cg-candidate-form select,
body.cg-stitch-experience .cg-candidate-form textarea{
  background:var(--cp-bg)!important;
  color:var(--cp-ink)!important;
  border:1px solid var(--cp-border)!important;
  border-radius:11px!important;
  min-height:48px!important;
  box-shadow:none!important;
}
body.cg-stitch-experience .form-input:focus,
body.cg-stitch-experience .cg-field input:focus,
body.cg-stitch-experience .cg-candidate-form input:focus,
body.cg-stitch-experience .cg-candidate-form select:focus,
body.cg-stitch-experience .cg-candidate-form textarea:focus{
  border-color:var(--cp-gold)!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--cp-gold) 18%,transparent)!important;
}
body.cg-stitch-experience .cg-candidate-choice-grid{
  display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;
}
body.cg-stitch-experience .cg-candidate-choice{
  background:var(--cp-bg)!important;border:1px solid var(--cp-border)!important;border-radius:14px!important;
  padding:14px!important;transition:.2s ease!important;color:var(--cp-ink)!important;
}
body.cg-stitch-experience .cg-candidate-choice:has(input:checked){
  border-color:var(--cp-gold)!important;
  box-shadow:inset 0 0 0 1px var(--cp-gold)!important;
  background:color-mix(in srgb,var(--cp-gold) 8%,var(--cp-surface))!important;
}
body.cg-stitch-experience .cg-candidate-choice small{color:var(--cp-muted)!important}

/* Buttons */
body.cg-stitch-experience .btn,
body.cg-stitch-experience .cgcs-btn{
  min-height:46px!important;border-radius:10px!important;font-weight:800!important;
}
body.cg-stitch-experience .btn-gold,
body.cg-stitch-experience .cgcs-btn.primary{
  background:var(--cp-gold)!important;border-color:var(--cp-gold)!important;color:#181b0b!important;
}
body.cg-stitch-experience .btn-gold:hover,
body.cg-stitch-experience .cgcs-btn.primary:hover{
  filter:brightness(1.04)!important;transform:translateY(-1px)!important;
}

/* Onboarding / diagnostic flow */
body.cg-stitch-experience .cg-onboard-flow{
  max-width:1080px!important;margin:0 auto!important;padding:48px 22px 80px!important;
}
body.cg-stitch-experience .cg-flow-steps{
  max-width:860px!important;margin:0 auto 28px!important;
}
body.cg-stitch-experience .cg-flow-step{
  color:var(--cp-muted)!important;
}
body.cg-stitch-experience .cg-flow-step>span{
  background:var(--cp-surface)!important;border:1px solid var(--cp-border)!important;color:var(--cp-ink)!important;
}
body.cg-stitch-experience .cg-flow-step.is-active>span,
body.cg-stitch-experience .cg-flow-step.is-done>span{
  background:var(--cp-gold)!important;border-color:var(--cp-gold)!important;color:#111!important;
}
body.cg-stitch-experience .cg-flow-rail{background:var(--cp-border)!important}
body.cg-stitch-experience .cg-flow-rail.is-done{background:var(--cp-gold)!important}
body.cg-stitch-experience .cg-onboard-flow article,
body.cg-stitch-experience .cg-onboard-flow section:not(.cg-flow-steps){
  border-color:var(--cp-border)!important;
}
body.cg-stitch-experience .cg-onboard-flow h1,
body.cg-stitch-experience .cg-onboard-flow h2,
body.cg-stitch-experience .cg-onboard-flow h3{
  color:var(--cp-ink)!important;
  font-family:var(--cp-serif)!important;
}
body.cg-stitch-experience .cg-onboard-flow p,
body.cg-stitch-experience .cg-onboard-flow small{color:var(--cp-text)!important}

/* Candidate Studio shared surfaces */
body.cg-stitch-experience .cgcs-shell,
body.cg-stitch-experience .cgcs-main,
body.cg-stitch-experience .cgcs-content{
  background:var(--cp-bg)!important;color:var(--cp-ink)!important;
}
body.cg-stitch-experience .cgcs-card,
body.cg-stitch-experience .cgcs-panel,
body.cg-stitch-experience .cgcs-kpi,
body.cg-stitch-experience .cgcs-stage{
  background:var(--cp-surface)!important;
  color:var(--cp-ink)!important;
  border:1px solid var(--cp-border)!important;
  border-radius:16px!important;
  box-shadow:none!important;
}
body.cg-stitch-experience .cgcs-card h1,
body.cg-stitch-experience .cgcs-card h2,
body.cg-stitch-experience .cgcs-card h3,
body.cg-stitch-experience .cgcs-panel h1,
body.cg-stitch-experience .cgcs-panel h2,
body.cg-stitch-experience .cgcs-panel h3{
  color:var(--cp-ink)!important;
  font-family:var(--cp-serif)!important;
}
body.cg-stitch-experience .cgcs-card p,
body.cg-stitch-experience .cgcs-card small,
body.cg-stitch-experience .cgcs-kpi small,
body.cg-stitch-experience .cgcs-panel p{color:var(--cp-text)!important}
body.cg-stitch-experience .cgcs-card-kicker{color:var(--cp-gold)!important}
body.cg-stitch-experience .cgcs-status{
  border-color:var(--cp-border)!important;background:var(--cp-bg)!important;color:var(--cp-text)!important;
}
body.cg-stitch-experience .cgcs-bar{background:var(--cp-border)!important}
body.cg-stitch-experience .cgcs-bar i{background:linear-gradient(90deg,var(--cp-gold),var(--cp-gold-soft))!important}

/* Payment / path / certificate generic blocks */
body.cg-stitch-experience #screen-payment .card,
body.cg-stitch-experience #screen-payment .panel,
body.cg-stitch-experience #screen-parcours .card,
body.cg-stitch-experience #screen-parcours .panel,
body.cg-stitch-experience #screen-certificate-verify .card,
body.cg-stitch-experience #screen-certificate-verify .panel{
  background:var(--cp-surface)!important;border:1px solid var(--cp-border)!important;color:var(--cp-ink)!important;border-radius:16px!important;
}
body.cg-stitch-experience #screen-payment h1,
body.cg-stitch-experience #screen-parcours h1,
body.cg-stitch-experience #screen-certificate-verify h1{
  color:var(--cp-ink)!important;font-family:var(--cp-serif)!important;letter-spacing:-.025em!important;
}
body.cg-stitch-experience #screen-payment p,
body.cg-stitch-experience #screen-parcours p,
body.cg-stitch-experience #screen-certificate-verify p{color:var(--cp-text)!important}

/* Dark-mode form readability */
html[data-theme="dark"] body.cg-stitch-experience .form-input,
html[data-theme="dark"] body.cg-stitch-experience .cg-field input,
html[data-theme="dark"] body.cg-stitch-experience .cg-candidate-form input,
html[data-theme="dark"] body.cg-stitch-experience .cg-candidate-form select,
html[data-theme="dark"] body.cg-stitch-experience .cg-candidate-form textarea{
  background:#0a2836!important;color:#fff!important;border-color:#315363!important;
}
html[data-theme="dark"] body.cg-stitch-experience .cg-candidate-choice{
  background:#0a2836!important;border-color:#315363!important;
}
html[data-theme="dark"] body.cg-stitch-experience .cg-candidate-choice small{color:#b8c9d1!important}

/* Responsive: mobile is recomposed, not squeezed */
@media(max-width:760px){
  body.cg-stitch-experience .cg-candidate-screen,
  body.cg-stitch-experience .cg-present-auth{padding:18px 12px 34px!important;place-items:start center!important}
  body.cg-stitch-experience .cg-candidate-card,
  body.cg-stitch-experience .cg-auth-panel{
    width:100%!important;padding:22px 16px!important;border-radius:18px!important;margin-top:12px!important;
  }
  body.cg-stitch-experience .cg-candidate-application-card{width:100%!important}
  body.cg-stitch-experience .cg-candidate-choice-grid{grid-template-columns:1fr!important}
  body.cg-stitch-experience .form-row{grid-template-columns:1fr!important}
  body.cg-stitch-experience .cg-onboard-flow{padding:24px 14px 70px!important}
  body.cg-stitch-experience .cg-flow-steps{
    display:flex!important;overflow-x:auto!important;gap:8px!important;padding-bottom:4px!important;scrollbar-width:none!important;
  }
  body.cg-stitch-experience .cg-flow-rail{display:none!important}
  body.cg-stitch-experience .cg-flow-step{min-width:max-content!important}
  body.cg-stitch-experience .cgcs-dashboard-command,
  body.cg-stitch-experience .cgcs-dashboard-grid,
  body.cg-stitch-experience .cgcs-kpis,
  body.cg-stitch-experience .cgcs-stage-grid{
    grid-template-columns:1fr!important;
  }
  body.cg-stitch-experience .cgcs-card,
  body.cg-stitch-experience .cgcs-panel,
  body.cg-stitch-experience .cgcs-kpi,
  body.cg-stitch-experience .cgcs-stage{
    border-radius:14px!important;
  }
}
@media(prefers-reduced-motion:reduce){
  body.cg-stitch-experience *{transition:none!important;animation:none!important;scroll-behavior:auto!important}
}


/* ==========================================================
   1.30.21 — Stitch maquette integration
   ========================================================== */

/* Application: true two-column experience, not a centered legacy card */
body.cg-stitch-experience #screen-register .cg-application-shell{
  min-height:100vh!important;
  display:grid!important;
  grid-template-columns:minmax(280px,360px) minmax(0,1fr)!important;
  background:var(--cp-bg)!important;
}
body.cg-stitch-experience #screen-register .cg-application-rail{
  position:sticky!important;
  top:0!important;
  height:100vh!important;
  padding:48px 36px!important;
  background:linear-gradient(155deg,var(--cp-navy-2),#0b3445)!important;
  color:#fff!important;
  overflow:hidden!important;
}
body.cg-stitch-experience #screen-register .cg-application-rail:after{
  content:""!important;position:absolute!important;width:260px!important;height:260px!important;border-radius:50%!important;
  right:-120px!important;bottom:-100px!important;background:rgba(201,162,39,.10)!important;
}
body.cg-stitch-experience #screen-register .cg-application-brand,
body.cg-stitch-experience #screen-login .cg-login-brand{
  display:flex!important;align-items:center!important;gap:10px!important;font-family:var(--cp-serif)!important;font-weight:700!important;font-size:24px!important;color:#fff!important;
}
body.cg-stitch-experience #screen-register .cg-application-brand .cg-logo-official,
body.cg-stitch-experience #screen-login .cg-login-brand .cg-logo-official{
  width:42px!important;height:42px!important;
}
body.cg-stitch-experience #screen-register .cg-application-eyebrow{
  margin-top:48px!important;color:var(--cp-gold-soft)!important;font-size:10px!important;letter-spacing:.15em!important;text-transform:uppercase!important;font-weight:900!important;
}
body.cg-stitch-experience #screen-register .cg-application-rail h1{
  margin:12px 0 14px!important;font-family:var(--cp-serif)!important;font-size:34px!important;line-height:1.08!important;font-weight:400!important;color:#fff!important;
}
body.cg-stitch-experience #screen-register .cg-application-rail>p:not(.cg-application-eyebrow){color:#c7d6dc!important;line-height:1.65!important}
body.cg-stitch-experience #screen-register .cg-application-steps{
  list-style:none!important;margin:36px 0 0!important;padding:0!important;display:grid!important;gap:0!important;position:relative!important;
}
body.cg-stitch-experience #screen-register .cg-application-steps:before{
  content:""!important;position:absolute!important;left:16px!important;top:18px!important;bottom:18px!important;width:1px!important;background:#315160!important;
}
body.cg-stitch-experience #screen-register .cg-application-steps li{
  display:grid!important;grid-template-columns:34px 1fr!important;gap:13px!important;align-items:start!important;position:relative!important;padding:0 0 24px!important;color:#9fb1ba!important;
}
body.cg-stitch-experience #screen-register .cg-application-steps li b{
  width:34px!important;height:34px!important;border-radius:50%!important;display:grid!important;place-items:center!important;
  background:#123849!important;border:1px solid #3a5967!important;color:#aabcc4!important;z-index:1!important;font-size:12px!important;
  transition:.22s ease!important;
}
body.cg-stitch-experience #screen-register .cg-application-steps li.is-active b,
body.cg-stitch-experience #screen-register .cg-application-steps li.is-done b{
  background:var(--cp-gold)!important;border-color:var(--cp-gold)!important;color:#171b0c!important;
}
body.cg-stitch-experience #screen-register .cg-application-steps small{display:block!important;font-size:9px!important;letter-spacing:.13em!important;color:#718994!important;margin-bottom:2px!important}
body.cg-stitch-experience #screen-register .cg-application-steps strong{display:block!important;color:#dce8ed!important;font-size:14px!important}
body.cg-stitch-experience #screen-register .cg-application-steps li.is-active strong{color:#fff!important}
body.cg-stitch-experience #screen-register .cg-application-rail-note{
  margin-top:18px!important;padding:14px!important;border:1px solid #335261!important;border-radius:13px!important;background:rgba(255,255,255,.04)!important;
  display:flex!important;gap:10px!important;color:#b9c9d0!important;font-size:12px!important;line-height:1.5!important;
}
body.cg-stitch-experience #screen-register .cg-application-rail-note i{color:var(--cp-gold-soft)!important;margin-top:2px!important}

body.cg-stitch-experience #screen-register .cg-application-main{
  min-width:0!important;padding:40px clamp(24px,6vw,84px) 72px!important;display:flex!important;flex-direction:column!important;
}
body.cg-stitch-experience #screen-register .cg-application-top{
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;margin-bottom:26px!important;
}
body.cg-stitch-experience #screen-register .cg-application-top a{color:var(--cp-ink)!important;font-weight:700!important}
body.cg-stitch-experience #screen-register .cg-application-form{
  width:min(820px,100%)!important;margin:auto!important;background:var(--cp-surface)!important;border:1px solid var(--cp-border)!important;
  border-radius:22px!important;box-shadow:var(--cp-shadow)!important;padding:clamp(24px,4vw,42px)!important;overflow:hidden!important;
}
body.cg-stitch-experience #screen-register .cg-wizard-panel{display:block!important}
body.cg-stitch-experience #screen-register .cg-wizard-panel[hidden]{display:none!important}
body.cg-stitch-experience #screen-register .cg-wizard-heading{
  display:grid!important;grid-template-columns:52px 1fr!important;gap:18px!important;align-items:start!important;border-bottom:1px solid var(--cp-border)!important;padding-bottom:22px!important;margin-bottom:26px!important;
}
body.cg-stitch-experience #screen-register .cg-wizard-heading>span{
  width:46px!important;height:46px!important;border-radius:14px!important;background:var(--cp-navy)!important;color:var(--cp-gold-soft)!important;
  display:grid!important;place-items:center!important;font-family:var(--cp-serif)!important;font-size:19px!important;
}
body.cg-stitch-experience #screen-register .cg-wizard-heading h2{
  margin:0!important;color:var(--cp-ink)!important;font-family:var(--cp-serif)!important;font-weight:400!important;font-size:32px!important;line-height:1.08!important;
}
body.cg-stitch-experience #screen-register .cg-wizard-heading p{margin:7px 0 0!important;color:var(--cp-text)!important}
body.cg-stitch-experience #screen-register .form-row{display:grid!important;grid-template-columns:1fr 1fr!important;gap:16px!important}
body.cg-stitch-experience #screen-register .form-group{margin-bottom:18px!important}
body.cg-stitch-experience #screen-register .form-input{width:100%!important}
body.cg-stitch-experience #screen-register .cg-wizard-actions{
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;border-top:1px solid var(--cp-border)!important;padding-top:22px!important;margin-top:24px!important;
}
body.cg-stitch-experience #screen-register .cg-program-preview-grid{
  display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:10px!important;margin-top:18px!important;
}
body.cg-stitch-experience #screen-register .cg-program-preview-grid>div{
  display:flex!important;align-items:center!important;gap:9px!important;padding:14px!important;border-radius:13px!important;background:var(--cp-bg)!important;border:1px solid var(--cp-border)!important;color:var(--cp-ink)!important;font-size:12px!important;
}
body.cg-stitch-experience #screen-register .cg-program-preview-grid i{color:var(--cp-gold)!important}
body.cg-stitch-experience #screen-register .cg-application-summary{
  display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;margin-bottom:20px!important;
}
body.cg-stitch-experience #screen-register .cg-application-summary>div{
  display:grid!important;grid-template-columns:38px 1fr!important;column-gap:10px!important;padding:16px!important;border:1px solid var(--cp-border)!important;border-radius:14px!important;background:var(--cp-bg)!important;
}
body.cg-stitch-experience #screen-register .cg-application-summary i{grid-row:1/3!important;color:var(--cp-gold)!important;font-size:20px!important}
body.cg-stitch-experience #screen-register .cg-application-summary strong{color:var(--cp-ink)!important}
body.cg-stitch-experience #screen-register .cg-application-summary span{color:var(--cp-muted)!important;font-size:12px!important}
body.cg-stitch-experience #screen-register .cg-candidate-message{
  margin-top:16px!important;padding:13px 14px!important;border-radius:11px!important;
}

/* Login: split layout from Stitch, while keeping current behavior */
body.cg-stitch-experience #screen-login .cg-login-split{
  min-height:100vh!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(460px,.9fr)!important;background:var(--cp-bg)!important;
}
body.cg-stitch-experience #screen-login .cg-login-visual{
  position:relative!important;overflow:hidden!important;min-height:100vh!important;background:var(--cp-navy-2)!important;
}
body.cg-stitch-experience #screen-login .cg-login-visual picture,
body.cg-stitch-experience #screen-login .cg-login-visual img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important}
body.cg-stitch-experience #screen-login .cg-login-visual img{object-fit:cover!important;object-position:center!important}
body.cg-stitch-experience #screen-login .cg-login-visual-overlay{
  position:absolute!important;inset:0!important;background:linear-gradient(180deg,rgba(4,20,29,.18),rgba(4,20,29,.88))!important;
}
body.cg-stitch-experience #screen-login .cg-login-visual-copy{
  position:absolute!important;z-index:2!important;left:clamp(28px,6vw,76px)!important;right:clamp(28px,6vw,76px)!important;bottom:clamp(38px,8vh,86px)!important;color:#fff!important;
}
body.cg-stitch-experience #screen-login .cg-login-visual-copy .cg-kicker{color:var(--cp-gold-soft)!important}
body.cg-stitch-experience #screen-login .cg-login-visual-copy h1{
  max-width:640px!important;margin:12px 0 15px!important;font-family:var(--cp-serif)!important;font-size:clamp(42px,5vw,66px)!important;line-height:1.02!important;font-weight:400!important;color:#fff!important;letter-spacing:-.035em!important;
}
body.cg-stitch-experience #screen-login .cg-login-visual-copy>p:last-child{max-width:620px!important;color:#d3e0e5!important;font-size:16px!important;line-height:1.65!important}
body.cg-stitch-experience #screen-login .cg-login-form-wrap{
  display:grid!important;place-items:center!important;padding:48px clamp(24px,5vw,72px)!important;background:var(--cp-bg)!important;
}
body.cg-stitch-experience #screen-login .cg-auth-panel{
  width:min(520px,100%)!important;padding:0!important;border:0!important;box-shadow:none!important;background:transparent!important;
}
body.cg-stitch-experience #screen-login .cg-auth-logo{
  justify-content:flex-start!important;margin-bottom:26px!important;
}
body.cg-stitch-experience #screen-login .cg-auth-logo>span{font-family:var(--cp-serif)!important;font-size:24px!important;font-weight:700!important;color:var(--cp-ink)!important;margin-left:10px!important}
body.cg-stitch-experience #screen-login .cg-auth-logo:after{display:none!important}
body.cg-stitch-experience #screen-login .cg-auth-panel h1{font-size:46px!important}
body.cg-stitch-experience #screen-login .cg-google-btn{
  width:100%!important;min-height:48px!important;border-radius:11px!important;margin-top:22px!important;background:var(--cp-surface)!important;border:1px solid var(--cp-border)!important;color:var(--cp-ink)!important;
}
body.cg-stitch-experience #screen-login .cg-auth-bottom{margin-top:18px!important;text-align:center!important;color:var(--cp-text)!important}
body.cg-stitch-experience #screen-login .cg-auth-bottom a{color:var(--cp-gold)!important;font-weight:800!important}

/* Page transitions from prototype direction: subtle, not flashy */
body.cg-stitch-experience .screen{
  animation:cgPageIn .34s cubic-bezier(.2,.7,.2,1) both;
}
@keyframes cgPageIn{
  from{opacity:.01;transform:translateY(7px)}
  to{opacity:1;transform:none}
}
body.cg-stitch-experience #screen-register .cg-wizard-panel.is-active{
  animation:cgWizardIn .28s cubic-bezier(.2,.7,.2,1) both;
}
@keyframes cgWizardIn{
  from{opacity:.01;transform:translateX(10px)}
  to{opacity:1;transform:none}
}

/* Mobile application: top compact stepper */
@media(max-width:900px){
  body.cg-stitch-experience #screen-register .cg-application-shell{grid-template-columns:1fr!important}
  body.cg-stitch-experience #screen-register .cg-application-rail{
    position:relative!important;height:auto!important;padding:22px 16px!important;
  }
  body.cg-stitch-experience #screen-register .cg-application-rail h1,
  body.cg-stitch-experience #screen-register .cg-application-rail>p:not(.cg-application-eyebrow),
  body.cg-stitch-experience #screen-register .cg-application-rail-note{display:none!important}
  body.cg-stitch-experience #screen-register .cg-application-eyebrow{margin-top:18px!important}
  body.cg-stitch-experience #screen-register .cg-application-steps{
    grid-template-columns:repeat(4,1fr)!important;gap:8px!important;margin-top:18px!important;
  }
  body.cg-stitch-experience #screen-register .cg-application-steps:before{display:none!important}
  body.cg-stitch-experience #screen-register .cg-application-steps li{
    grid-template-columns:1fr!important;text-align:center!important;gap:5px!important;padding:0!important;justify-items:center!important;
  }
  body.cg-stitch-experience #screen-register .cg-application-steps li b{width:32px!important;height:32px!important}
  body.cg-stitch-experience #screen-register .cg-application-steps li span strong{display:none!important}
  body.cg-stitch-experience #screen-register .cg-application-steps li span small{font-size:8px!important}
  body.cg-stitch-experience #screen-register .cg-application-main{padding:20px 12px 46px!important}
  body.cg-stitch-experience #screen-register .cg-application-top{margin-bottom:14px!important}
  body.cg-stitch-experience #screen-register .cg-application-form{padding:20px 16px!important;border-radius:18px!important}
  body.cg-stitch-experience #screen-register .cg-wizard-heading{grid-template-columns:42px 1fr!important;gap:12px!important}
  body.cg-stitch-experience #screen-register .cg-wizard-heading>span{width:40px!important;height:40px!important}
  body.cg-stitch-experience #screen-register .cg-wizard-heading h2{font-size:27px!important}
  body.cg-stitch-experience #screen-register .form-row,
  body.cg-stitch-experience #screen-register .cg-program-preview-grid,
  body.cg-stitch-experience #screen-register .cg-application-summary{grid-template-columns:1fr!important}
  body.cg-stitch-experience #screen-register .cg-wizard-actions .btn{flex:1!important}
}
@media(max-width:820px){
  body.cg-stitch-experience #screen-login .cg-login-split{grid-template-columns:1fr!important}
  body.cg-stitch-experience #screen-login .cg-login-visual{display:none!important}
  body.cg-stitch-experience #screen-login .cg-login-form-wrap{min-height:100vh!important;padding:28px 18px!important}
  body.cg-stitch-experience #screen-login .cg-auth-panel h1{font-size:38px!important}
}

/* Dark application rail remains stable; light form keeps contrast */
html[data-theme="dark"] body.cg-stitch-experience #screen-register .cg-application-main,
html[data-theme="dark"] body.cg-stitch-experience #screen-login .cg-login-form-wrap{background:var(--cp-bg)!important}
html[data-theme="dark"] body.cg-stitch-experience #screen-register .cg-application-form{background:var(--cp-surface)!important}


/* ==========================================================
   1.30.21 — Candidate Journey Finish
   Align onboarding + diagnostic with the Auth design system.
   ========================================================== */

body.cg-stitch-experience{
  --cgj-paper:#fcf9f1;
  --cgj-paper-soft:#f6f3eb;
  --cgj-surface:#fff;
  --cgj-ink:#102a38;
  --cgj-text:#667985;
  --cgj-border:#dce4e7;
  --cgj-navy:#001722;
  --cgj-navy2:#082c3c;
  --cgj-gold:#c5a946;
  --cgj-gold-bright:#ecc246;
  --cgj-shadow:0 20px 60px rgba(0,23,34,.09);
}
html[data-theme="dark"] body.cg-stitch-experience{
  --cgj-paper:#071c27;
  --cgj-paper-soft:#0a2532;
  --cgj-surface:#0d2937;
  --cgj-ink:#f4f7f8;
  --cgj-text:#a9bac2;
  --cgj-border:#2a4b5a;
  --cgj-shadow:0 20px 60px rgba(0,0,0,.28);
}

/* Onboarding: same institutional card language as Auth. */
body.cg-stitch-experience #screen-onboard-welcome{
  min-height:100svh!important;
  background:
    radial-gradient(circle at 78% 18%,rgba(197,169,70,.06),transparent 28%),
    var(--cgj-paper)!important;
}
body.cg-stitch-experience #screen-onboard-welcome .cg-candidate-screen{
  min-height:100svh!important;
  display:grid!important;
  place-items:center!important;
  padding:72px 18px!important;
  background:transparent!important;
}
body.cg-stitch-experience #screen-onboard-welcome .cg-onboarding-card{
  position:relative!important;
  width:min(760px,100%)!important;
  max-width:760px!important;
  margin:0!important;
  padding:48px 46px 40px!important;
  border:1px solid var(--cgj-border)!important;
  border-radius:16px!important;
  background:var(--cgj-surface)!important;
  color:var(--cgj-ink)!important;
  box-shadow:var(--cgj-shadow)!important;
  text-align:center!important;
}
body.cg-stitch-experience #screen-onboard-welcome .cg-onboarding-card::before{
  content:""!important;
  position:absolute!important;
  top:-1px!important;left:-1px!important;right:-1px!important;height:4px!important;
  border-radius:16px 16px 0 0!important;
  background:linear-gradient(90deg,var(--cgj-navy),var(--cgj-gold),var(--cgj-gold-bright))!important;
}
body.cg-stitch-experience #screen-onboard-welcome .cg-onboarding-icon{
  width:48px!important;height:48px!important;
  margin:0 auto 18px!important;
  border-radius:50%!important;
  display:grid!important;place-items:center!important;
  background:rgba(197,169,70,.10)!important;
  color:var(--cgj-gold)!important;
  font-size:20px!important;
}
body.cg-stitch-experience #screen-onboard-welcome h1{
  margin:0!important;
  color:var(--cgj-ink)!important;
  font-family:var(--cp-serif)!important;
  font-size:clamp(38px,5vw,54px)!important;
  line-height:1.07!important;
  font-weight:400!important;
}
body.cg-stitch-experience #screen-onboard-welcome .subtitle{
  max-width:620px!important;
  margin:14px auto 28px!important;
  color:var(--cgj-text)!important;
  font-size:15px!important;
  line-height:1.6!important;
}
body.cg-stitch-experience #screen-onboard-welcome .cg-candidate-steps{
  margin:22px 0!important;
  padding:20px 22px!important;
  border:1px solid var(--cgj-border)!important;
  border-radius:12px!important;
  background:var(--cgj-paper-soft)!important;
  text-align:left!important;
}
body.cg-stitch-experience #screen-onboard-welcome .cg-candidate-steps h4{
  color:var(--cgj-ink)!important;
  margin:0 0 14px!important;
}
body.cg-stitch-experience #screen-onboard-welcome .cg-candidate-steps ul{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:11px 20px!important;
}
body.cg-stitch-experience #screen-onboard-welcome .cg-candidate-steps li{
  color:var(--cgj-text)!important;
  font-size:13px!important;
}
body.cg-stitch-experience #screen-onboard-welcome .cg-candidate-steps li i{
  color:var(--cgj-gold)!important;
}
body.cg-stitch-experience #screen-onboard-welcome .cg-candidate-submit{
  width:auto!important;
  min-width:260px!important;
  margin:4px auto 0!important;
  padding:0 28px!important;
  min-height:52px!important;
  border-radius:8px!important;
}

/* Diagnostic: remove giant dead-space and align the layout. */
body.cg-stitch-experience #screen-onboard-diag{
  min-height:100svh!important;
  background:var(--cgj-paper)!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-onboard-flow{
  width:min(1120px,calc(100% - 36px))!important;
  margin:0 auto!important;
  padding:54px 0 70px!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-flow-steps{
  max-width:720px!important;
  margin:0 auto 34px!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-flow-hero{
  max-width:760px!important;
  margin:0 auto 34px!important;
  text-align:center!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-flow-kicker{
  color:var(--cgj-gold)!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-flow-hero h1{
  margin:6px 0 10px!important;
  color:var(--cgj-ink)!important;
  font-family:var(--cp-serif)!important;
  font-size:clamp(42px,5vw,58px)!important;
  line-height:1.06!important;
  font-weight:400!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-flow-hero>p:last-child{
  color:var(--cgj-text)!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-layout{
  display:grid!important;
  grid-template-columns:minmax(260px,.7fr) minmax(0,1.6fr)!important;
  gap:18px!important;
  align-items:stretch!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-flow-panel{
  border:1px solid var(--cgj-border)!important;
  border-radius:14px!important;
  background:var(--cgj-surface)!important;
  color:var(--cgj-ink)!important;
  box-shadow:none!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-context{
  padding:26px!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-context h2,
body.cg-stitch-experience #screen-onboard-diag .cg-diag-question h2{
  color:var(--cgj-ink)!important;
  font-family:var(--cp-serif)!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-context p,
body.cg-stitch-experience #screen-onboard-diag .cg-flow-muted,
body.cg-stitch-experience #screen-onboard-diag .cg-flow-checks li{
  color:var(--cgj-text)!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-flow-checks li::before{
  background:var(--cgj-gold)!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-question{
  min-height:360px!important;
  padding:28px!important;
  display:flex!important;
  flex-direction:column!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-meta{
  border-bottom:1px solid var(--cgj-border)!important;
  padding-bottom:16px!important;
  margin-bottom:22px!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-flow-actions{
  margin-top:auto!important;
  padding-top:24px!important;
}

/* Runtime blocked/login state from diagnostic JS. */
body.cg-stitch-experience #screen-onboard-diag .cg-diag-candidate-state{
  display:grid!important;
  grid-template-columns:minmax(0,420px)!important;
  gap:12px!important;
  margin:12px 0 18px!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-state-card{
  min-height:auto!important;
  padding:18px!important;
  border:1px solid color-mix(in srgb,var(--cgj-gold) 55%,var(--cgj-border))!important;
  border-radius:12px!important;
  background:color-mix(in srgb,var(--cgj-gold) 5%,var(--cgj-surface))!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-state-card>span{
  width:32px!important;height:32px!important;
  border-radius:50%!important;
  display:grid!important;place-items:center!important;
  background:rgba(197,169,70,.12)!important;
  color:var(--cgj-gold)!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-state-card strong{
  color:var(--cgj-ink)!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-state-card p{
  color:var(--cgj-text)!important;
}

/* Mobile journey */
@media(max-width:820px){
  body.cg-stitch-experience #screen-onboard-welcome .cg-candidate-screen{
    padding:54px 12px 28px!important;
  }
  body.cg-stitch-experience #screen-onboard-welcome .cg-onboarding-card{
    padding:32px 20px 26px!important;
  }
  body.cg-stitch-experience #screen-onboard-welcome .cg-candidate-steps ul{
    grid-template-columns:1fr!important;
  }
  body.cg-stitch-experience #screen-onboard-welcome .cg-candidate-submit{
    width:100%!important;
    min-width:0!important;
  }

  body.cg-stitch-experience #screen-onboard-diag .cg-onboard-flow{
    width:min(100% - 24px,720px)!important;
    padding:36px 0 40px!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-flow-steps{
    overflow-x:auto!important;
    justify-content:flex-start!important;
    padding-bottom:6px!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-diag-layout{
    grid-template-columns:1fr!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-diag-context{
    order:2!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-diag-question{
    order:1!important;
    min-height:300px!important;
  }
}


/* ==========================================================
   1.30.21 — Diagnostic Question Polish
   Presentation-only refinement of the live diagnostic.
   No scoring, question-bank, API, answer persistence or flow logic changes.
   ========================================================== */

/* Tighten the overall diagnostic composition on laptops/desktops. */
body.cg-stitch-experience #screen-onboard-diag .cg-onboard-flow{
  width:min(1140px,calc(100% - 32px))!important;
  padding-top:42px!important;
  padding-bottom:56px!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-flow-steps{
  margin-bottom:26px!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-flow-hero{
  margin-bottom:26px!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-flow-hero h1{
  font-size:clamp(40px,4.6vw,54px)!important;
}

/* Left context panel: smaller, calmer, content-height. */
body.cg-stitch-experience #screen-onboard-diag .cg-diag-layout{
  grid-template-columns:minmax(240px,.62fr) minmax(0,1.75fr)!important;
  gap:16px!important;
  align-items:start!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-context{
  padding:22px!important;
  min-height:0!important;
  height:auto!important;
  align-self:start!important;
  position:sticky!important;
  top:18px!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-context.is-compact{
  padding-bottom:18px!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-context h2{
  font-size:22px!important;
  margin-bottom:8px!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-context p{
  font-size:13px!important;
  line-height:1.5!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-flow-checks{
  margin-top:18px!important;
  gap:9px!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-flow-checks li{
  font-size:12px!important;
  line-height:1.4!important;
}

/* Main question card: reduce vertical waste and improve hierarchy. */
body.cg-stitch-experience #screen-onboard-diag .cg-diag-question{
  min-height:0!important;
  padding:24px 28px 26px!important;
  border-radius:15px!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-meta{
  padding-bottom:12px!important;
  margin-bottom:18px!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-meta [data-cg-diag-domain]{
  max-width:68%!important;
  line-height:1.35!important;
}
body.cg-stitch-experience #screen-onboard-diag [data-cg-diag-title]{
  margin:0 0 10px!important;
  font-size:clamp(20px,2vw,26px)!important;
  line-height:1.28!important;
  letter-spacing:-.012em!important;
}
body.cg-stitch-experience #screen-onboard-diag [data-cg-diag-help]{
  margin:0 0 18px!important;
  max-width:900px!important;
  color:var(--cgj-text)!important;
  font-size:14px!important;
  line-height:1.5!important;
}

/* Progress area: one compact row. */
body.cg-stitch-experience #screen-onboard-diag .cg-diag-progress-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  margin:0 0 9px!important;
  font-size:12px!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-progress-head span{
  color:#a78000!important;
  font-weight:850!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-progress-head strong{
  color:var(--cgj-text)!important;
  font-weight:750!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-progressbar{
  height:8px!important;
  margin-bottom:18px!important;
  border-radius:999px!important;
  overflow:hidden!important;
  background:color-mix(in srgb,var(--cgj-border) 65%,transparent)!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-progressbar>span{
  border-radius:inherit!important;
  background:linear-gradient(90deg,var(--cgj-gold),var(--cgj-gold-bright))!important;
}

/* Answer options: compact, premium, obvious selected state. */
body.cg-stitch-experience #screen-onboard-diag [data-cg-diag-options]{
  display:grid!important;
  gap:10px!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-option{
  width:100%!important;
  min-height:0!important;
  height:auto!important;
  margin:0!important;
  padding:15px 16px!important;
  display:grid!important;
  grid-template-columns:36px minmax(0,1fr)!important;
  align-items:start!important;
  gap:13px!important;
  text-align:left!important;
  border:1px solid var(--cgj-border)!important;
  border-radius:12px!important;
  background:var(--cgj-paper-soft)!important;
  color:var(--cgj-ink)!important;
  box-shadow:none!important;
  transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease,transform .16s ease!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-option:not(:disabled):hover{
  transform:translateY(-1px)!important;
  border-color:color-mix(in srgb,var(--cgj-gold) 60%,var(--cgj-border))!important;
  background:color-mix(in srgb,var(--cgj-gold) 3%,var(--cgj-surface))!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-option>span{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid color-mix(in srgb,var(--cgj-gold) 58%,var(--cgj-border))!important;
  border-radius:50%!important;
  background:var(--cgj-surface)!important;
  color:#a78000!important;
  font-size:12px!important;
  font-weight:850!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-option>strong{
  padding-top:4px!important;
  color:var(--cgj-ink)!important;
  font-size:15px!important;
  line-height:1.42!important;
  font-weight:680!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-option.is-selected,
body.cg-stitch-experience #screen-onboard-diag .cg-diag-option[aria-pressed="true"]{
  border-color:var(--cgj-gold)!important;
  background:color-mix(in srgb,var(--cgj-gold) 7%,var(--cgj-surface))!important;
  box-shadow:0 0 0 2px rgba(197,169,70,.12)!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-option.is-selected>span,
body.cg-stitch-experience #screen-onboard-diag .cg-diag-option[aria-pressed="true"]>span{
  border-color:var(--cgj-gold)!important;
  background:var(--cgj-gold)!important;
  color:#182000!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-option:focus-visible{
  outline:3px solid rgba(236,194,70,.20)!important;
  outline-offset:2px!important;
}

/* Action footer: compact but always clear. */
body.cg-stitch-experience #screen-onboard-diag .cg-flow-actions{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:12px 18px!important;
  margin-top:18px!important;
  padding-top:18px!important;
  border-top:1px solid var(--cgj-border)!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-rule-status{
  color:var(--cgj-text)!important;
  font-size:12px!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-save-state{
  grid-column:1 / 2!important;
  color:var(--cgj-text)!important;
  font-size:12px!important;
}
body.cg-stitch-experience #screen-onboard-diag [data-cg-diag-next]{
  grid-column:2!important;
  grid-row:1 / span 2!important;
  min-width:180px!important;
  min-height:46px!important;
  border-radius:9px!important;
  align-self:center!important;
}
body.cg-stitch-experience #screen-onboard-diag [data-cg-diag-next]:disabled{
  opacity:.54!important;
  cursor:not-allowed!important;
  box-shadow:none!important;
}

/* Save/transition states remain subtle. */
body.cg-stitch-experience #screen-onboard-diag .cg-diag-question.is-saving-answer{
  border-color:color-mix(in srgb,var(--cgj-gold) 68%,var(--cgj-border))!important;
}
body.cg-stitch-experience #screen-onboard-diag .cg-diag-question.is-answer-saved{
  box-shadow:0 0 0 1px rgba(42,145,94,.10),0 14px 38px rgba(42,145,94,.045)!important;
}

/* Dark mode: answers remain high-contrast without becoming heavy blocks. */
html[data-theme="dark"] body.cg-stitch-experience #screen-onboard-diag .cg-diag-option{
  background:#0a2532!important;
  border-color:#31505e!important;
}
html[data-theme="dark"] body.cg-stitch-experience #screen-onboard-diag .cg-diag-option:not(:disabled):hover{
  background:#0c2c3a!important;
  border-color:#7f7132!important;
}
html[data-theme="dark"] body.cg-stitch-experience #screen-onboard-diag .cg-diag-option>span{
  background:#0d2937!important;
  color:#d8b83d!important;
}
html[data-theme="dark"] body.cg-stitch-experience #screen-onboard-diag .cg-diag-option.is-selected,
html[data-theme="dark"] body.cg-stitch-experience #screen-onboard-diag .cg-diag-option[aria-pressed="true"]{
  background:color-mix(in srgb,var(--cgj-gold) 8%,#0a2532)!important;
  border-color:var(--cgj-gold)!important;
}

/* Mobile: question first, context second; compact options and no sticky side panel. */
@media(max-width:820px){
  body.cg-stitch-experience #screen-onboard-diag .cg-onboard-flow{
    width:min(100% - 20px,720px)!important;
    padding-top:28px!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-flow-hero{
    margin-bottom:20px!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-flow-hero h1{
    font-size:38px!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-diag-layout{
    gap:12px!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-diag-context{
    position:static!important;
    order:2!important;
    padding:18px!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-diag-question{
    order:1!important;
    padding:20px 16px 20px!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-diag-meta{
    display:grid!important;
    gap:5px!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-diag-meta [data-cg-diag-domain]{
    max-width:none!important;
  }
  body.cg-stitch-experience #screen-onboard-diag [data-cg-diag-title]{
    font-size:21px!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-diag-progress-head{
    display:grid!important;
    gap:4px!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-diag-option{
    grid-template-columns:32px minmax(0,1fr)!important;
    gap:11px!important;
    padding:13px!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-diag-option>span{
    width:30px!important;
    height:30px!important;
    min-width:30px!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-diag-option>strong{
    padding-top:2px!important;
    font-size:14px!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-flow-actions{
    grid-template-columns:1fr!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-diag-save-state,
  body.cg-stitch-experience #screen-onboard-diag [data-cg-diag-next]{
    grid-column:1!important;
    grid-row:auto!important;
  }
  body.cg-stitch-experience #screen-onboard-diag [data-cg-diag-next]{
    width:100%!important;
    min-width:0!important;
  }
}
@media(max-width:480px){
  body.cg-stitch-experience #screen-onboard-diag .cg-flow-steps{
    margin-bottom:18px!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-flow-hero h1{
    font-size:34px!important;
  }
  body.cg-stitch-experience #screen-onboard-diag [data-cg-diag-help]{
    font-size:13px!important;
  }
}


/* ==========================================================
   1.30.22 — Diagnostic Mobile Layout Guard
   Mobile-only cascade correction. Desktop remains unchanged.
   No diagnostic JS, scoring, API, question bank or persistence changes.
   ========================================================== */
@media(max-width:820px){
  body.cg-stitch-experience #screen-onboard-diag .cg-diag-layout{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    gap:14px!important;
    width:100%!important;
    min-width:0!important;
    align-items:start!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-diag-question{
    order:1!important;
    grid-column:1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-diag-context{
    order:2!important;
    grid-column:1!important;
    position:static!important;
    top:auto!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-diag-meta{
    grid-template-columns:1fr!important;
    width:100%!important;
    min-width:0!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-diag-meta strong,
  body.cg-stitch-experience #screen-onboard-diag [data-cg-diag-title],
  body.cg-stitch-experience #screen-onboard-diag [data-cg-diag-help],
  body.cg-stitch-experience #screen-onboard-diag .cg-diag-option>strong{
    max-width:100%!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-diag-watermark{
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
}

@media(max-width:560px){
  body.cg-stitch-experience #screen-onboard-diag .cg-onboard-flow{
    width:calc(100% - 16px)!important;
    max-width:none!important;
    padding-top:20px!important;
    padding-bottom:34px!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-diag-question{
    padding:18px 14px 18px!important;
    border-radius:14px!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-diag-context{
    padding:16px!important;
    border-radius:14px!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-diag-context h2{
    font-size:20px!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-diag-context p{
    margin-bottom:12px!important;
    font-size:12.5px!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-flow-checks{
    margin-top:12px!important;
    gap:7px!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-flow-checks li{
    font-size:12px!important;
  }
  body.cg-stitch-experience #screen-onboard-diag [data-cg-diag-title]{
    font-size:20px!important;
    line-height:1.3!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-diag-option{
    grid-template-columns:30px minmax(0,1fr)!important;
    gap:10px!important;
    padding:12px!important;
  }
  body.cg-stitch-experience #screen-onboard-diag .cg-diag-option>strong{
    font-size:13.5px!important;
    line-height:1.42!important;
  }
}


/* ==========================================================
   1.30.24 — Mobile payment width refinement
   - uses more left/right space on phone
   - keeps desktop unchanged
   ========================================================== */
@media(max-width:640px){
  body.cg-stitch-experience #screen-payment .cg-commerce-shell{
    width:auto!important;
    max-width:none!important;
    margin-left:-4px!important;
    margin-right:-4px!important;
  }
  body.cg-stitch-experience #screen-payment .cg-commerce-grid{
    gap:14px!important;
  }
  body.cg-stitch-experience #screen-payment .cg-commerce-card{
    padding:18px 14px!important;
    border-radius:18px!important;
  }
  body.cg-stitch-experience #screen-payment .cg-commerce-card h2{
    font-size:1.95rem!important;
    line-height:1.08!important;
  }
  body.cg-stitch-experience #screen-payment .cg-commerce-rails{
    gap:10px!important;
    margin:16px 0!important;
  }
  body.cg-stitch-experience #screen-payment .cg-commerce-rail{
    width:100%!important;
    padding:14px 12px!important;
    border-radius:14px!important;
    box-sizing:border-box!important;
  }
  body.cg-stitch-experience #screen-payment .cg-commerce-rail-main{
    gap:12px!important;
    min-width:0!important;
  }
  body.cg-stitch-experience #screen-payment .cg-commerce-rail-main span{
    min-width:0!important;
  }
  body.cg-stitch-experience #screen-payment .cg-commerce-rail-main strong,
  body.cg-stitch-experience #screen-payment .cg-commerce-total strong{
    line-height:1.2!important;
  }
  body.cg-stitch-experience #screen-payment .cg-commerce-price,
  body.cg-stitch-experience #screen-payment .cg-commerce-total{
    margin-left:0!important;
    margin-right:0!important;
  }
  body.cg-stitch-experience #screen-payment .cg-commerce-submit{
    width:100%!important;
    min-height:50px!important;
  }
}
