/* AIRA Score page: builds on ../styles.css. Light and bright, same tokens. */
.sc-hero .wrap { display: block; padding-block: 3rem 2.5rem; }
.sc-hero h1 { max-width: 40rem; }
.qz { padding-block: 2rem 4rem; }
.qz section { padding-block: 0; }
.qz section + section { border-top: 0; }
.qz-card { background: var(--surface); border: 1px solid #D6E4F2; border-radius: 12px; padding: clamp(1.25rem, 3vw, 2.25rem); box-shadow: 0 24px 50px -30px rgba(0,41,65,0.25); max-width: 52rem; margin-inline: auto; display: grid; gap: 1.25rem; }
.qz-card h2 { font-size: var(--step-2); }
.qz-privacy { font-size: 0.8125rem; color: var(--ink-2); }

.qz-tracks { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.qz-track, .qz-opt { font: inherit; text-align: left; color: var(--ink); background: #F7FAFC; border: 1px solid #CFDAE5; border-radius: 10px; padding: 1rem 1.1rem; cursor: pointer; display: grid; gap: 0.3rem; transition: border-color .15s, background .15s, transform .15s; }
.qz-track b { font-size: 1.0625rem; }
.qz-track span { font-size: 0.875rem; color: var(--ink-2); }
.qz-track:hover, .qz-opt:hover { border-color: var(--blue); background: var(--blue-soft); }
.qz-opt[aria-checked="true"] { border-color: var(--blue); background: var(--blue-soft); box-shadow: inset 0 0 0 1px var(--blue); }
.qz-opt:active, .qz-track:active { transform: scale(0.99); }

.qz-progress { display: flex; justify-content: space-between; align-items: center; gap: 1rem; font-size: 0.8125rem; color: var(--ink-2); }
.qz-bar { height: 6px; background: var(--blue-soft); border-radius: 999px; overflow: hidden; }
.qz-bar i { display: block; height: 100%; width: 0; background: var(--blue); border-radius: 999px; transition: width .25s ease; }
.qz-opts { display: grid; gap: 0.6rem; }
.qz-opt { grid-template-columns: 1.6rem 1fr; align-items: center; gap: 0.6rem; }
.qz-opt .k { font-family: var(--f-mono); font-size: 0.75rem; color: var(--ink-2); border: 1px solid #CFDAE5; border-radius: 4px; text-align: center; line-height: 1.5rem; background: #fff; }
.qz-nav { display: flex; justify-content: space-between; }
#qz-q:focus { outline: none; }

.res-top { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 2rem; align-items: center; }
.res-score { text-align: center; padding: 1.25rem 1.5rem; border-radius: 12px; background: var(--glow); border: 1px solid #D6E4F2; }
.res-num { font-family: var(--f-display); font-weight: 600; font-size: 4.5rem; line-height: 1; margin: 0.4rem 0 0.6rem; font-variant-numeric: tabular-nums; }
.res-num small { font-size: 1.25rem; color: var(--ink-2); font-weight: 500; }
.res-sum { display: grid; gap: 0.75rem; }
.res-sum .lede { color: var(--ink); }
.res-bars .bar-row { grid-template-columns: 11rem minmax(0, 1fr) 2.5rem; }
.res-bars .bar-row span.lab { font-size: 0.875rem; }
.pill.b0 { background: #FDECEC; color: var(--bad); }
.pill.b1 { background: var(--amber-soft); color: var(--gold-text, #8A6400); }
.pill.b2 { background: var(--blue-soft); color: var(--blue); }
.pill.b3 { background: #E7F6EC; color: var(--good); }

.share { display: grid; gap: 0.75rem; padding-top: 1.25rem; border-top: 1px solid var(--line); }
.share canvas { width: 100%; max-width: 30rem; height: auto; border-radius: 8px; border: 1px solid var(--line); }
.share-btns { display: flex; flex-wrap: wrap; gap: 0.6rem; }

.gate { display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); gap: 1.5rem; padding: 1.25rem; border-radius: 12px; background: var(--glow); border: 1px solid #D6E4F2; }
.gate h3 { margin-bottom: 0.4rem; }
.gate form { display: grid; gap: 0.85rem; }
.gate p { font-size: 0.9375rem; color: var(--ink-2); }

.rep-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; flex-wrap: wrap; }
.rep-layers { display: grid; gap: 0.75rem; }
.rep-layer { border: 1px solid var(--line); border-radius: 10px; padding: 0.9rem 1rem; display: grid; gap: 0.35rem; break-inside: avoid; }
.rep-layer header { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; }
.rep-layer header b { font-size: 1.0625rem; }
.rep-layer p { font-size: 0.9375rem; color: var(--ink-2); }
.rep-plan { margin: 0; padding-left: 1.25rem; display: grid; gap: 0.4rem; }
.rep-cta { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1.5rem; align-items: center; padding: 1.25rem; border-radius: 12px; background: var(--glow); border: 1px solid #D6E4F2; }
.rep-cta p { color: var(--ink-2); font-size: 0.9375rem; margin-top: 0.3rem; }

@media (max-width: 720px) {
  .qz-tracks, .res-top, .gate, .rep-cta { grid-template-columns: minmax(0, 1fr); }
  .res-bars .bar-row { grid-template-columns: 7.5rem minmax(0, 1fr) 2.25rem; }
  .row2 { grid-template-columns: minmax(0, 1fr); }
}

@media print {
  .site-head, .sc-hero, footer, #qz-start, #qz-run, #qz-result, .no-print { display: none !important; }
  .qz { padding: 0; }
  .qz-card { box-shadow: none; border: 0; padding: 0; max-width: none; }
  body { font-size: 11pt; }
  * { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
}
