.ztool-scorecard-page .answer-lead { max-width: 72ch; margin-bottom: var(--sp-8); font-size: 1.15rem; }
.ztool-scorecard-builder, .ztool-scorecard-custom { padding: clamp(18px, 3vw, 36px); border: 1px solid var(--line); background: var(--mist-1); margin-bottom: var(--sp-4); }
.ztool-scorecard-page p { overflow-wrap: anywhere; }
.ztool-scorecard-builder > p, .ztool-scorecard-custom p { margin-block: var(--sp-3); }
.ztool-scorecard-grid, .ztool-scorecard-method { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-4); }
.ztool-scorecard-grid > * { min-width: 0; }
.ztool-scorecard-page label { display: block; color: var(--ink); font-weight: 500; margin-bottom: .5rem; }
.ztool-scorecard-page input:not([type="checkbox"]), .ztool-scorecard-page select, .ztool-scorecard-page textarea { display: block; width: 100%; min-width: 0; min-height: 48px; padding: .75rem; font-size: 1rem; }
.ztool-scorecard-page textarea { resize: vertical; }
.ztool-scorecard-page fieldset { min-width: 0; border: 1px solid var(--line); padding: var(--sp-3); margin-top: var(--sp-4); }
.ztool-scorecard-page legend { padding-inline: .5rem; color: var(--ink); }
.ztool-scorecard-library { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-2); margin-top: var(--sp-3); }
.ztool-scorecard-check { display: flex; align-items: center; gap: .75rem; min-width: 0; }
.ztool-scorecard-check input { flex-shrink: 0; width: 24px; height: 24px; min-height: 24px; accent-color: var(--amber-ink); }
.ztool-scorecard-check label { margin: 0; min-height: 44px; padding-block: .65rem; overflow-wrap: anywhere; }
.ztool-scorecard-error { color: var(--amber-ink); font-weight: 500; margin-block: var(--sp-3); }
.ztool-scorecard-page [aria-invalid="true"] { border-color: var(--amber-ink); }
.ztool-scorecard-custom summary, .ztool-scorecard-faq summary { cursor: pointer; min-height: 44px; color: var(--ink); font-weight: 500; padding-block: .5rem; }
.ztool-scorecard-custom form > div { margin-block: var(--sp-3); }
.ztool-scorecard-sheet { border: 1px solid var(--line); padding: clamp(18px, 3vw, 40px); margin-top: var(--sp-8); background: var(--mist-0); }
.ztool-scorecard-kicker { display: block; margin-bottom: var(--sp-3); font: 500 var(--fs-mono)/1.5 var(--mono); color: var(--amber-ink); text-transform: uppercase; letter-spacing: .1em; }
.ztool-scorecard-sheet-header h2 { overflow-wrap: anywhere; }
.ztool-scorecard-sheet-header p { margin-top: var(--sp-3); }
.ztool-scorecard-total { border-block: 1px solid var(--line); padding-block: var(--sp-3); margin-block: var(--sp-4); font-size: 1.1rem; color: var(--ink); }
.ztool-scorecard-competency { padding-block: var(--sp-4); border-bottom: 1px solid var(--line); }
.ztool-scorecard-competency h3 { margin-bottom: var(--sp-3); overflow-wrap: anywhere; }
.ztool-scorecard-questions { list-style: decimal; padding-left: 1.4rem; display: grid; gap: .75rem; }
.ztool-scorecard-questions li, .ztool-scorecard-anchors li { overflow-wrap: anywhere; }
.ztool-scorecard-anchors { list-style: none; margin-block: var(--sp-3); display: grid; gap: .5rem; font-size: var(--fs-small); }
.ztool-scorecard-controls { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-3); }
.ztool-scorecard-controls > * { min-width: 0; }
.ztool-scorecard-evidence-field { grid-column: 1 / -1; }
.ztool-scorecard-sheet-footer { margin-top: var(--sp-4); font-size: var(--fs-small); }
.ztool-scorecard-actions { display: flex; flex-wrap: wrap; gap: var(--sp-2); margin-block: var(--sp-4); }
.ztool-scorecard-actions button:disabled { opacity: .5; cursor: default; }
.ztool-scorecard-copy-fallback { margin-top: var(--sp-3); }
.ztool-scorecard-copy-fallback textarea { font: .875rem/1.6 var(--mono); }
.ztool-scorecard-method h3 { margin-bottom: var(--sp-2); }
.ztool-scorecard-faq { max-width: 80ch; }
.ztool-scorecard-faq details { border-bottom: 1px solid var(--line); padding-block: var(--sp-2); }
.ztool-scorecard-faq p { padding-block: var(--sp-2); }
.ztool-scorecard-page [hidden], .ztool-scorecard-print-value { display: none; }
.ztool-scorecard-page :focus-visible { outline: 2px solid var(--amber); outline-offset: 4px; }
@media (max-width: 640px) {
  .ztool-scorecard-grid, .ztool-scorecard-library, .ztool-scorecard-method, .ztool-scorecard-controls { grid-template-columns: minmax(0, 1fr); }
  .ztool-scorecard-actions button { width: 100%; }
}
@media print {
  .ztool-scorecard-print-scope > :not(#main-content) { display: none !important; }
  .ztool-scorecard-print-scope #main-content { display: block; padding: 0; margin: 0; }
  .ztool-scorecard-print-scope #main-content > :not(.ztool-scorecard-page) { display: none !important; }
  .ztool-scorecard-page > :not(.ztool-scorecard-workspace) { display: none !important; }
  .ztool-scorecard-page .ztool-scorecard-workspace { display: block; padding: 0 !important; margin: 0; }
  .ztool-scorecard-workspace > .container { display: block; padding: 0 !important; max-width: none !important; }
  .ztool-scorecard-workspace > .container > :not(.ztool-scorecard-sheet) { display: none !important; }
  .ztool-scorecard-sheet { display: block; margin: 0; padding: 0; border: 0; color: var(--ink); background: var(--mist-0); }
  .ztool-scorecard-sheet h2 { font-size: 24pt; }
  .ztool-scorecard-sheet h3 { font-size: 15pt; }
  .ztool-scorecard-sheet p, .ztool-scorecard-sheet li { font-size: 10pt; }
  .ztool-scorecard-sheet .ztool-scorecard-controls, .ztool-scorecard-sheet .ztool-scorecard-error { display: none; }
  .ztool-scorecard-print-value { display: block; margin-top: 10pt; }
  .ztool-scorecard-print-notes { white-space: pre-wrap; overflow-wrap: anywhere; }
  .ztool-scorecard-competency { break-inside: avoid; padding-block: 12pt; }
  .ztool-scorecard-anchors { gap: 3pt; margin-block: 8pt; }
  .ztool-scorecard-sheet-header { break-after: avoid; }
  .ztool-scorecard-print-scope { background: var(--mist-0); }
}
