.prs { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; font-size: 13px; color: #374151; }

/* Editorial score block — paper-toned, brand palette */
.prs-score { padding: 22px 16px 18px; background: #fff; border-bottom: 1px solid #E7EAF0; }
.prs-eyebrow { display: flex; align-items: center; gap: 10px; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 10px; letter-spacing: 0.18em; text-transform: uppercase; color: #5B6475; margin: 0 0 16px 0; }
.prs-eyebrow::before { content: ''; width: 18px; height: 2px; background: #B64206; flex-shrink: 0; }
.prs-headline { display: flex; align-items: baseline; gap: 6px; margin: 0; }
.prs-headline-num { font-family: ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif; font-size: 56px; font-weight: 700; line-height: 0.95; letter-spacing: -0.03em; color: #0B0F1A; }
.prs-headline-suffix { font-size: 17px; font-weight: 400; color: #5B6475; letter-spacing: -0.01em; }
.prs-status { display: flex; align-items: center; gap: 9px; margin: 14px 0 0 0; font-family: 'Instrument Serif', 'Iowan Old Style', Georgia, serif; font-style: italic; font-size: 19px; color: #0B0F1A; line-height: 1.1; }
.prs-status-dot { width: 7px; height: 7px; border-radius: 50%; flex-shrink: 0; }
.prs-status-hint { font-family: ui-sans-serif, system-ui, sans-serif; font-style: normal; font-size: 11px; color: #5B6475; margin: 5px 0 0 16px; line-height: 1.4; }
.prs-divider { height: 1px; background: #E7EAF0; margin: 18px 0 14px 0; }

/* Stats row — hairline divided */
.prs-stats { display: flex; align-items: stretch; }
.prs-stat { flex: 1; text-align: center; padding: 0 4px; border-right: 1px solid #E7EAF0; }
.prs-stat:last-child { border-right: none; }
.prs-stat-name { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 9px; letter-spacing: 0.16em; text-transform: uppercase; color: #5B6475; margin-bottom: 4px; }
.prs-stat-val { font-family: ui-sans-serif, system-ui, sans-serif; font-size: 18px; font-weight: 700; color: #0B0F1A; letter-spacing: -0.02em; line-height: 1.1; }
.prs-stat-suffix { font-size: 12px; font-weight: 400; color: #5B6475; letter-spacing: 0; margin-left: 1px; }
.prs-stat-val.warn { color: #B64206; }
.prs-stat-val.bad { color: #B91C1C; }

/* Section — editorial */
.prs-sec { padding: 18px 16px; border-bottom: 1px solid #E7EAF0; }
.prs-sec:last-child { border-bottom: none; }
.prs-title { display: flex; align-items: center; gap: 10px; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 10px; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase; color: #5B6475; margin: 0 0 14px 0; }
.prs-title::before { content: ''; width: 14px; height: 2px; background: #B64206; flex-shrink: 0; }

/* Form controls */
.prs-input { width: 100%; padding: 9px 10px; border: 1px solid #E7EAF0; border-radius: 4px; font-size: 13px; box-sizing: border-box; margin-bottom: 10px; background: #fff; transition: border-color 0.15s ease; }
.prs-input:focus { outline: none; border-color: #B64206; }
.prs-btn { width: 100%; padding: 11px 14px; background: #FF6A00; color: #fff; border: none; border-radius: 4px; font-size: 13px; font-weight: 600; cursor: pointer; display: flex; align-items: center; justify-content: center; gap: 8px; letter-spacing: 0.005em; transition: background 0.15s ease; }
.prs-btn:hover:not(:disabled) { background: #E85E00; }
.prs-btn:disabled { opacity: 0.45; cursor: not-allowed; }

/* Editorial score row — replaces gradient pill cards */
.prs-kw-summary, .prs-read { display: flex; align-items: baseline; gap: 12px; padding: 6px 0 12px 0; border-bottom: 1px solid #E7EAF0; margin-top: 0; background: transparent; border-radius: 0; }
.prs-kw-summary + .prs-kw-summary { padding-top: 12px; }
.prs-kw-score, .prs-read-badge { width: auto; height: auto; border-radius: 0; background: none !important; color: #0B0F1A; font-family: ui-sans-serif, system-ui, sans-serif; font-size: 36px; font-weight: 700; line-height: 0.95; letter-spacing: -0.025em; flex-shrink: 0; }
.prs-kw-score.warn, .prs-read-badge.warn { color: #B64206; }
.prs-kw-score.bad, .prs-read-badge.bad { color: #B91C1C; }
.prs-kw-copy, .prs-read-info { flex: 1; min-width: 0; }
.prs-kw-copy strong, .prs-read-level { display: block; font-family: 'Instrument Serif', 'Iowan Old Style', Georgia, serif; font-style: normal; font-weight: 400; font-size: 16px; color: #0B0F1A; line-height: 1.2; }
.prs-kw-copy span, .prs-read-grade { display: block; font-size: 11px; color: #5B6475; margin-top: 4px; line-height: 1.45; }

/* Checks — hairline-divided rows */
.prs-checks { margin-top: 10px; display: flex; flex-direction: column; gap: 0; border-top: 1px solid #E7EAF0; }
.prs-check { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 9px 0; border-bottom: 1px solid #E7EAF0; border-radius: 0; background: transparent; border-top: none; border-left: none; border-right: none; }
.prs-check:last-child { border-bottom: none; }
.prs-check-main { display: flex; align-items: center; gap: 10px; min-width: 0; }
.prs-check-icon { width: 14px; text-align: center; font-weight: 700; flex-shrink: 0; font-size: 12px; line-height: 1; }
.prs-check-icon.pass { color: #16A34A; }
.prs-check-icon.fail { color: #B91C1C; }
.prs-check-icon.na { color: #94A3B8; }
.prs-check-label { font-size: 12px; color: #0B0F1A; line-height: 1.35; }
.prs-check-meta { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 10px; color: #5B6475; white-space: nowrap; flex-shrink: 0; letter-spacing: 0.04em; }

/* Issues — hairline-divided list */
.prs-issues { margin-top: 4px; }
.prs-issue { display: flex; align-items: flex-start; gap: 9px; padding: 8px 0; font-size: 12px; color: #0B0F1A; border-bottom: 1px solid #E7EAF0; line-height: 1.45; }
.prs-issue:last-child { border-bottom: none; }
.prs-dot { width: 5px; height: 5px; border-radius: 50%; background: #B64206; margin-top: 7px; flex-shrink: 0; }

.prs-loading { display: flex; justify-content: center; padding: 16px; }
.prs-empty { padding: 12px 0; text-align: left; color: #5B6475; font-size: 12px; line-height: 1.45; }
.prs-note { margin-top: 8px; padding: 10px 12px; text-align: left; color: #0B0F1A; font-size: 12px; line-height: 1.5; background: #FAF7F1; border-left: 2px solid #B64206; border-radius: 0; }
.prs-score-note { margin-top: 14px; padding: 10px 12px; border-radius: 0; background: #FAF7F1; border-left: 2px solid #B64206; color: #0B0F1A; font-size: 11px; line-height: 1.45; }

/* Secondary keywords — compact list */
.prs-secondary { margin-top: 14px; display: flex; flex-direction: column; gap: 0; border-top: 1px solid #E7EAF0; }
.prs-secondary-label { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 9px; font-weight: 600; color: #5B6475; text-transform: uppercase; letter-spacing: 0.16em; padding: 12px 0 8px 0; }
.prs-secondary-row { display: flex; align-items: baseline; gap: 10px; padding: 8px 0; border-bottom: 1px solid #E7EAF0; }
.prs-secondary-row:last-child { border-bottom: none; }
.prs-secondary-num { font-family: ui-sans-serif, system-ui, sans-serif; font-size: 18px; font-weight: 700; color: #0B0F1A; letter-spacing: -0.02em; flex-shrink: 0; min-width: 26px; line-height: 1; }
.prs-secondary-num.warn { color: #B64206; }
.prs-secondary-num.bad { color: #B91C1C; }
.prs-secondary-name { flex: 1; font-size: 12px; color: #0B0F1A; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-style: italic; font-family: 'Instrument Serif', Georgia, serif; }
.prs-secondary-meta { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 10px; color: #5B6475; white-space: nowrap; letter-spacing: 0.04em; }
