:root {
  --page: #fbfbfd;
  --surface: #ffffff;
  --ink: #18191d;
  --muted: #696b76;
  --line: #e5e5ec;
  --violet: #6955c7;
  --violet-soft: #f5f2ff;
  --blue: #4c78cf;
  --blue-soft: #f4f8ff;
  --orange: #f29124;
  --orange-soft: #fff9f1;
  --green: #34a94f;
  --green-soft: #f1fbf3;
  --red: #ee554b;
  --red-soft: #fff7f6;
  --shadow: 0 8px 28px rgba(46, 42, 72, .045);
  --ds-space-1: 4px;
  --ds-space-2: 8px;
  --ds-space-3: 12px;
  --ds-space-4: 16px;
  --ds-space-5: 24px;
  --ds-space-6: 32px;
  --ds-space-7: 48px;
  --ds-space-8: 64px;
  --ds-radius-card: 14px;
  --ds-radius-control: 10px;
  --ds-radius-hero: 18px;
  --ds-radius-pill: 999px;
  --ds-card-border: 1px solid var(--line);
  --ds-card-shadow: 0 8px 24px rgba(31, 35, 48, .055);
}

*, *::before, *::after { box-sizing: border-box; }
[hidden] { display: none !important; }
html { min-width: 320px; background: var(--page); }
body {
  margin: 0;
  min-width: 320px;
  min-height: 100vh;
  color: var(--ink);
  background: radial-gradient(circle at 83% 19%, rgba(107, 83, 199, .035), transparent 27rem), linear-gradient(#fff, var(--page) 34rem);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  -webkit-font-smoothing: antialiased;
}
button, input { font: inherit; }
button { color: inherit; }
:focus-visible { outline: 3px solid rgba(105, 85, 199, .22); outline-offset: 3px; }
.visually-hidden { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }
.skip-link { position: fixed; z-index: 20; top: 10px; left: 10px; padding: 10px 14px; color: #fff; border-radius: 9px; background: var(--violet); transform: translateY(-150%); }
.skip-link:focus { transform: translateY(0); }

.check-header { display: flex; align-items: center; justify-content: space-between; width: min(1190px, calc(100% - 48px)); min-height: 66px; margin: 0 auto; border-bottom: 1px solid #ececf1; }
.check-header > nav a { padding: 6px 9px; color: var(--violet); border: 1px solid #ded8f1; border-radius: 999px; font-size: 11px; font-weight: 800; text-decoration: none; }
.brand { display: inline-flex; align-items: center; gap: 9px; color: inherit; text-decoration: none; font-weight: 780; letter-spacing: -.025em; }
.brand > span { display: grid; place-items: center; width: 30px; height: 30px; color: #fff; border-radius: 9px; background: linear-gradient(145deg, #7967d5, #5845b0); font-family: Georgia, serif; }
.privacy-note { display: flex; align-items: center; gap: 9px; color: var(--muted); font-size: 12px; }
.privacy-note i { width: 7px; height: 7px; border-radius: 50%; background: #53b86c; box-shadow: 0 0 0 4px rgba(83, 184, 108, .12); }
.header-actions { display: flex; margin-left: auto; align-items: center; gap: 12px; }
.header-actions nav a { display: grid; min-width: 34px; min-height: 34px; padding: 0 9px; place-items: center; color: var(--violet); border: 1px solid #ded8f1; border-radius: 999px; font-size: 11px; font-weight: 800; text-decoration: none; }
.header-divider { width: 1px; height: 24px; background: #e7e5ef; }
.profile-stub { display: inline-flex; min-height: 38px; padding: 0 12px 0 7px; align-items: center; gap: 8px; color: #565968; border: 1px solid #e3e1eb; border-radius: 999px; background: rgba(255,255,255,.74); font-size: 12px; font-weight: 720; }
.profile-stub > svg { width: 27px; height: 27px; padding: 5px; color: #6754c2; border-radius: 50%; background: var(--violet-soft); fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; }

.check-shell { width: min(1190px, calc(100% - 48px)); margin: 0 auto; padding: 32px 0 38px; }
.check-intro { max-width: 900px; margin: 0 auto 30px; text-align: center; }
.intro-eyebrow, .seo-kicker { margin: 0 0 8px; color: var(--violet); font-size: 10px; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.check-intro h1 { max-width: 780px; margin: 0 auto; font-size: clamp(30px, 4.2vw, 48px); line-height: 1.06; letter-spacing: -.045em; }
.check-intro > p:not(.intro-eyebrow) { max-width: 760px; margin: 15px auto 0; color: var(--muted); font-size: 15px; line-height: 1.6; }
.seo-anchor-nav { display: flex; margin-top: 20px; flex-wrap: wrap; justify-content: center; gap: 8px; }
.seo-anchor-nav a { padding: 8px 11px; color: #50408f; border: 1px solid #ded8f1; border-radius: 999px; background: rgba(255,255,255,.78); font-size: 11px; font-weight: 760; text-decoration: none; }
.seo-anchor-nav a:hover { border-color: #bdb3e4; background: var(--violet-soft); }
.workspace { display: grid; grid-template-columns: 300px minmax(0, 1fr); align-items: start; gap: 32px; }
.media-column { display: grid; gap: 14px; min-width: 0; }
.drop-zone, .preview-card, .privacy-card, .score-card, .overview-card, .report-list, .report-empty, .report-loading, .report-error { border: 1px solid var(--line); border-radius: 17px; background: rgba(255, 255, 255, .92); box-shadow: var(--shadow); }
.drop-zone { position: relative; display: flex; min-height: 218px; padding: 27px 22px 22px; flex-direction: column; align-items: center; justify-content: center; overflow: hidden; color: var(--violet); border: 1px dashed #c9c2ee; text-align: center; cursor: pointer; transition: border-color .18s ease, background .18s ease, transform .18s ease; }
.drop-zone.is-dragging { border-color: var(--violet); background: var(--violet-soft); transform: translateY(-2px); }
.drop-zone input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.drop-icon { width: 48px; height: 48px; margin-bottom: 10px; color: var(--violet); }
.drop-zone strong { color: var(--ink); font-size: 16px; font-weight: 780; }
.drop-zone p { margin: 7px 0 13px; color: var(--muted); font-size: 13px; line-height: 1.45; }
.drop-zone button { padding: 0; color: inherit; border: 0; background: none; cursor: pointer; }
.drop-zone small { color: #777985; font-size: 11px; line-height: 1.4; }
.paste-shortcut {
  display: inline-flex;
  min-height: 34px;
  margin: 0 0 11px;
  padding: 5px 7px 5px 10px;
  align-items: center;
  gap: 8px;
  color: #656777;
  border: 1px solid #e1deef;
  border-radius: 10px;
  background: rgba(250, 249, 255, .94);
  box-shadow: 0 5px 15px rgba(64, 48, 128, .06);
  font-size: 10px;
  font-weight: 720;
  line-height: 1;
}
.shortcut-keys { display: inline-flex; align-items: center; gap: 3px; }
.shortcut-keys b { color: #9995aa; font-size: 8px; font-weight: 760; }
.shortcut-keys kbd {
  display: grid;
  min-width: 22px;
  height: 21px;
  padding: 0 5px;
  place-items: center;
  color: #5948ad;
  border: 1px solid #d9d4ec;
  border-bottom-width: 2px;
  border-radius: 6px;
  background: linear-gradient(#fff, #f3f0ff);
  font: 760 9px/1 ui-sans-serif, system-ui, sans-serif;
}
.result-paste-shortcut {
  display: flex;
  min-height: 34px;
  padding: 5px 8px 5px 10px;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  color: #6150aa;
  border: 1px solid #e1ddf2;
  border-radius: 9px;
  background: #faf9ff;
  font-size: 9px;
  font-weight: 750;
}
.result-paste-shortcut .shortcut-keys { flex: none; }
.result-paste-shortcut kbd { height: 19px; min-width: 20px; font-size: 8px; }

.preview-card { position: relative; overflow: hidden; }
.preview-card.is-dragging::after {
  position: absolute;
  z-index: 20;
  inset: var(--ds-space-2);
  display: grid;
  padding: var(--ds-space-4);
  place-items: center;
  color: #5542ad;
  border: 2px dashed #7562ce;
  border-radius: var(--ds-radius-control);
  background: rgba(247, 245, 255, .96);
  box-shadow: 0 10px 30px rgba(75, 56, 157, .12);
  font-size: 13px;
  font-weight: 780;
  line-height: 1.35;
  text-align: center;
  content: attr(data-drop-label);
  pointer-events: none;
}
.preview-frame { display: grid; min-height: 236px; max-height: 390px; padding: 14px 14px 0; place-items: center; background: #fff; }
.preview-stage { position: relative; display: inline-block; max-width: 100%; max-height: 376px; line-height: 0; }
.preview-stage.is-preview-loading { display: grid; width: min(100%, 376px); height: min(62vw, 300px); place-items: center; }
.preview-loading { display: grid; justify-items: center; gap: 12px; color: var(--muted); font-size: 12px; font-weight: 700; line-height: 1.35; text-align: center; }
.preview-loading::before { width: 26px; height: 26px; border: 3px solid #ddd9ef; border-top-color: var(--violet); border-radius: 50%; animation: preview-spin .75s linear infinite; content: ""; }
@keyframes preview-spin { to { transform: rotate(360deg); } }
.preview-frame img { display: block; max-width: 100%; max-height: 376px; object-fit: contain; border-radius: 10px; }
.preview-frame .manipulation-mask { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; max-height: none; pointer-events: none; }
.ai-heatmap { position: absolute; inset: 0; display: grid; grid-template-columns: repeat(10, 1fr); grid-template-rows: repeat(10, 1fr); overflow: hidden; border: 1px solid rgba(255,255,255,.6); border-radius: 10px; pointer-events: none; }
.heatmap-cell { border: .5px solid rgba(255,255,255,.30); background: transparent; }
.heatmap-cell[data-votes="1"] { background: rgba(220, 51, 42, .22); }
.heatmap-cell[data-votes="2"] { background: rgba(220, 43, 34, .46); }
.heatmap-cell[data-votes="3"] { background: rgba(203, 26, 20, .72); }
.file-line { display: grid; gap: 12px; padding: 15px 18px 18px; }
.file-summary { min-width: 0; }
.file-summary > div { min-width: 0; display: grid; gap: 5px; }
.file-line strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 14px; }
.file-line span { color: var(--muted); font-size: 12px; }
.file-line .result-drop-hint {
  overflow: hidden;
  color: #5f4db2;
  font-size: 9px;
  font-weight: 720;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.file-line .result-drop-hint > span { color: inherit; font-size: 11px; }
.file-line button { border: 0; cursor: pointer; font: inherit; }
.file-line .replace-button { display: flex; min-height: 45px; align-items: center; justify-content: center; gap: 8px; color: #34313f; border-radius: 11px; background: var(--violet-soft); font-size: 13px; font-weight: 760; }
.file-line .replace-button > .replace-icon { color: var(--violet); font-size: 18px; font-weight: 800; }
.file-line .replace-copy {
  display: block;
  color: inherit;
  font-size: inherit;
  line-height: 1;
  text-align: left;
}
.file-line .replace-button:hover { color: var(--violet); background: #eeebfc; }
.file-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; padding-top: 11px; border-top: 1px solid #ededf2; }
.file-actions .action-group-label { grid-column: 1 / -1; margin-bottom: 1px; color: #888995; font-size: 9px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.file-line .analysis-button { min-height: 38px; padding: 7px 8px; color: #4d5366; border: 1px solid #dfe2ec; border-radius: 9px; background: #fafbff; font-size: 10px; font-weight: 780; line-height: 1.2; transition: transform .16s ease, border-color .16s ease, background .16s ease; }
.file-line .analysis-button:hover { color: var(--violet); border-color: #bbb2e3; background: var(--violet-soft); transform: translateY(-1px); }
.file-line .analysis-button:disabled { cursor: not-allowed; opacity: .5; transform: none; }
.file-line .analysis-button[aria-busy="true"] { cursor: wait; opacity: .62; }
.file-line .analysis-button.is-detective { grid-column: 1 / -1; display: flex; align-items: baseline; justify-content: center; gap: 6px; min-height: 42px; color: #fff; border-color: #6552bf; background: linear-gradient(135deg, #7663d0, #5946b2); font-size: 11px; }
.file-line .analysis-button.is-detective small { color: rgba(255,255,255,.72); font-size: 9px; }
.file-line .analysis-button.is-physical { color: #8b621e; border-color: #efd7ad; background: #fffaf1; }
.file-line .analysis-button.is-crops { color: #6550a4; border-color: #dcd5f0; background: #faf8ff; }
.heatmap-notice { display: grid; gap: 4px; padding: 13px 18px; color: #7b3430; border-top: 1px solid #f0d0cc; background: var(--red-soft); }
.heatmap-notice strong { font-size: 12px; }
.heatmap-notice span { color: #8c5651; font-size: 10px; line-height: 1.45; }

.privacy-card { display: grid; grid-template-columns: auto 1fr; gap: 12px; padding: 20px 18px; }
.privacy-card-icon { display: grid; width: 30px; height: 30px; place-items: center; color: var(--violet); border-radius: 9px; background: var(--violet-soft); font-size: 18px; }
.privacy-card strong { font-size: 13px; }
.privacy-card p { margin: 8px 0 0; color: var(--muted); font-size: 11px; line-height: 1.45; }

.report-panel { min-width: 0; min-height: 530px; }
body[data-check-mode="empty"] .report-panel { min-height: 0; }
body[data-check-mode="empty"] .report-empty { min-height: 280px; }
.report-head { display: flex; align-items: end; justify-content: space-between; gap: 20px; padding: 21px 24px; border: 1px solid var(--line); border-radius: 17px 17px 0 0; background: #fff; }
.report-head .eyebrow { margin: 0 0 5px; color: var(--violet); font-size: 10px; font-weight: 850; letter-spacing: .14em; text-transform: uppercase; }
.report-head h2 { margin: 0; font-size: 23px; line-height: 1.15; letter-spacing: -.025em; }
.report-total { flex: none; padding: 6px 9px; color: var(--violet); border-radius: 999px; background: var(--violet-soft); font-size: 10px; font-weight: 800; }
.report-panel[data-mode="report"] .report-head, .report-panel[data-mode="updating"] .report-head { display: none; }
.report-empty, .report-loading, .report-error { display: grid; min-height: 390px; padding: 42px; justify-items: center; align-content: center; text-align: center; }
.report-empty, .report-loading, .report-error { border-top: 0; border-radius: 0 0 17px 17px; }
.report-empty > span { color: #b7b3ca; font-size: 50px; }
.report-empty p, .report-loading p, .report-error p { max-width: 430px; margin: 12px 0 0; color: var(--muted); font-size: 13px; line-height: 1.55; }
.spinner { width: 30px; height: 30px; margin-bottom: 18px; border: 2px solid #ddd9ee; border-top-color: var(--violet); border-radius: 50%; animation: spin .75s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }
.report-error strong { color: #b93f37; }

.score-card { --score-accent: #62687a; padding: 35px 35px 27px; overflow: hidden; border-color: rgba(98, 104, 122, .34); background: linear-gradient(135deg, rgba(255,255,255,.98), rgba(247,248,252,.94)); }
.score-card[data-verdict^="verified_ai_"] { --score-accent: #4268a8; border-color: rgba(66, 104, 168, .42); background: linear-gradient(135deg, #fff, #f3f7fd); }
.score-card[data-verdict="unverified_ai_claim"],
.score-card[data-verdict$="marker_detected"] { --score-accent: #a76a16; border-color: rgba(167, 106, 22, .42); background: linear-gradient(135deg, #fff, #fff9ef); }
.score-card[data-verdict="provenance_notice"] { --score-accent: #607394; border-color: rgba(96, 115, 148, .38); background: linear-gradient(135deg, #fff, #f6f8fc); }
.score-card[data-verdict="provenance_invalid"] { --score-accent: #b5573e; border-color: rgba(181, 87, 62, .46); background: linear-gradient(135deg, #fff, #fff5f2); }
.score-card[data-verdict="likely_ai_generated"] { --score-accent: #6e579d; border-color: rgba(110, 87, 157, .42); background: linear-gradient(135deg, #fff, #f8f5fd); }
.score-card[data-verdict="weak_ai_signals"] { --score-accent: #8a704a; border-color: rgba(138, 112, 74, .38); background: linear-gradient(135deg, #fff, #fcf8f0); }
.score-card[data-verdict="no_clear_signals"] { --score-accent: #5e7186; border-color: rgba(94, 113, 134, .36); background: linear-gradient(135deg, #fff, #f6f8fa); }
.score-card[data-verdict="insufficient_evidence"] { --score-accent: #737783; border-color: rgba(115, 119, 131, .34); background: linear-gradient(135deg, #fff, #f7f7f8); }
.score-card[data-verdict="uncertain"] { --score-accent: #8a704a; border-color: rgba(138, 112, 74, .36); background: linear-gradient(135deg, #fff, #faf8f4); }
.score-result { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 24px; }
.score-target { position: relative; width: 82px; height: 82px; border: 2px solid color-mix(in srgb, var(--score-accent) 22%, transparent); border-radius: 50%; }
.score-target::before, .score-target::after, .score-target i::before, .score-target i::after { position: absolute; content: ""; }
.score-target::before { inset: 19px; border: 3px solid var(--score-accent); border-radius: 50%; }
.score-target::after { inset: 32px; border-radius: 50%; background: var(--score-accent); box-shadow: 0 0 0 6px color-mix(in srgb, var(--score-accent) 15%, transparent); }
.score-target i::before { top: 10px; bottom: 10px; left: 50%; width: 7px; border-top: 3px solid var(--score-accent); border-bottom: 3px solid var(--score-accent); transform: translateX(-50%); }
.score-target i::after { top: 50%; right: 10px; left: 10px; height: 7px; border-right: 3px solid var(--score-accent); border-left: 3px solid var(--score-accent); transform: translateY(-50%); }
.score-copy { display: grid; gap: 5px; }
.score-copy > span { color: #3f4047; font-size: 13px; font-weight: 720; }
.score-copy > strong { max-width: 520px; font-size: clamp(27px, 3vw, 40px); line-height: 1.04; letter-spacing: -.038em; }
.score-copy > small { max-width: 680px; color: #6b6e79; font-size: 13px; font-weight: 620; line-height: 1.4; }
.score-copy > em { max-width: 680px; color: #555966; font-size: 14px; font-style: normal; font-weight: 650; line-height: 1.45; }
.score-summary { display: grid; gap: 12px; margin-top: 24px; }
.score-summary > div { display: grid; gap: 3px; }
.score-summary > div > span { color: #343742; font-size: 11px; font-weight: 820; letter-spacing: .045em; text-transform: uppercase; }
.score-summary p { margin: 0; color: #636570; font-size: 13px; line-height: 1.55; }
.score-summary details { padding-top: 10px; border-top: 1px solid rgba(98, 104, 122, .15); }
.score-summary summary { width: max-content; color: var(--score-accent); cursor: pointer; font-size: 12px; font-weight: 800; }
.score-summary details p { margin-top: 8px; max-width: 720px; }

.evidence-relationship { display: grid; gap: 7px; margin-top: 0; padding: 24px 26px; color: #555966; border: 1px solid #d9dce7; border-left: 6px solid #8a704a; border-radius: 14px; background: #faf9f6; box-shadow: 0 10px 28px rgba(35, 38, 49, .06); }
.evidence-relationship > span { color: currentColor; font-size: 10px; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.evidence-relationship strong { color: #272a33; font-size: clamp(25px, 3vw, 38px); line-height: 1.08; letter-spacing: -.035em; }
.evidence-relationship p { max-width: 780px; margin: 2px 0 0; color: #626673; font-size: 13px; line-height: 1.5; }
.evidence-relationship[data-conclusion^="verified_ai_"],
.evidence-relationship[data-conclusion="likely_ai_generated"] { color: #b23d38; border-color: #efc7c3; border-left-color: #d84b43; background: linear-gradient(135deg, #fff9f8, #fff0ee); }
.evidence-relationship[data-conclusion="unverified_ai_claim"],
.evidence-relationship[data-conclusion$="marker_detected"] { color: #9b641d; border-color: #ebd3ad; border-left-color: #d08a2d; background: linear-gradient(135deg, #fffdf8, #fff6e8); }
.evidence-relationship[data-conclusion="weak_ai_signals"] { color: #806329; border-color: #e5d6b8; border-left-color: #b88a34; background: linear-gradient(135deg, #fffdf8, #faf4e8); }
.evidence-relationship[data-conclusion="no_clear_ai_signals"] { color: #357044; border-color: #c8e1cf; border-left-color: #45a05b; background: linear-gradient(135deg, #fbfffc, #edf9f0); }
.evidence-relationship[data-conclusion="insufficient_evidence"] { color: #666b78; border-color: #d8dae1; border-left-color: #858b99; background: linear-gradient(135deg, #fff, #f5f6f8); }

.overview-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-top: 18px; }
.overview-card { display: flex; min-height: 315px; padding: 22px 20px 18px; flex-direction: column; }
.overview-card.is-origin { border-color: #f0d8b7; background: linear-gradient(145deg, #fff, var(--orange-soft)); }
.overview-card.is-ai { border-color: #cfdbf3; background: linear-gradient(145deg, #fff, var(--blue-soft)); }
.overview-card.is-content { border-color: #ded8f0; background: linear-gradient(145deg, #fff, #faf8ff); }
.overview-title { display: flex; min-height: 54px; align-items: flex-start; gap: 12px; }
.overview-title h3 { margin: 0; font-size: 15px; line-height: 1.35; }
.overview-icon { display: grid; width: 31px; height: 31px; flex: none; place-items: center; color: currentColor; border: 2px solid currentColor; border-radius: 9px; font-weight: 900; }
.is-origin .overview-icon, .is-origin .overview-value { color: var(--orange); }
.is-ai .overview-icon, .is-ai .overview-value { color: var(--blue); }
.is-content .overview-icon { color: var(--violet); }
.is-content .overview-value { color: var(--green); text-transform: lowercase; }
.is-content[data-content-state="unsafe"] .overview-value { color: var(--red); }
.is-content[data-content-state="unknown"] .overview-value { color: var(--muted); }
.overview-value { margin-top: 10px; font-size: 35px; line-height: 1; letter-spacing: -.04em; }
.overview-card > b { margin-top: 7px; font-size: 13px; }
.overview-card > p { margin: 19px 0 17px; color: var(--muted); font-size: 12px; line-height: 1.5; }
.overview-card > button { min-height: 40px; margin-top: auto; color: currentColor; border: 1px solid currentColor; border-radius: 9px; background: rgba(255,255,255,.48); cursor: pointer; font-size: 12px; font-weight: 780; }
.is-origin > button { color: var(--orange); }
.is-ai > button { color: var(--blue); }
.is-content > button { color: var(--violet); }
.overview-card > button:hover { background: #fff; }
.overview-card[data-evidence-state="invalid_declaration"] { border-color: #edc7bd; background: linear-gradient(145deg, #fff, #fff4f1); }
.overview-card[data-evidence-state="invalid_declaration"] .overview-value { color: var(--red); }
.overview-card[data-evidence-state="unavailable"] { opacity: .72; }

.secondary-checks { margin-top: 16px; overflow: hidden; border: 1px solid var(--line); border-radius: 14px; background: #fff; }
.secondary-checks > summary { display: flex; min-height: 52px; padding: 0 18px; align-items: center; justify-content: space-between; gap: 16px; color: #454752; cursor: pointer; font-size: 12px; font-weight: 820; list-style: none; }
.secondary-checks > summary::-webkit-details-marker { display: none; }
.secondary-checks > summary span { color: var(--muted); font-size: 10px; font-weight: 650; }
.secondary-checks > .overview-card { min-height: 230px; border: 0; border-top: 1px solid var(--line); border-radius: 0; box-shadow: none; }

.report-list { margin-top: 26px; overflow: hidden; }
.report-list-head { display: flex; min-height: 68px; padding: 0 20px; align-items: center; justify-content: space-between; gap: 18px; border-bottom: 1px solid var(--line); }
.report-list-head h3 { margin: 0; font-size: 14px; }
.report-list-head button { padding: 8px 0; color: var(--violet); border: 0; background: none; cursor: pointer; font-size: 12px; }
.report-list-head button span { margin-left: 6px; font-size: 16px; }
.report-blocks { display: grid; }
.report-list:not(.is-expanded) .report-block:nth-child(n+4) { display: none; }
.report-block { background: #fff; border-bottom: 1px solid #ececf1; }
.report-block:last-child { border-bottom: 0; }
.report-block summary { display: grid; grid-template-columns: auto minmax(0, 1fr) auto auto; min-height: 50px; padding: 9px 20px; align-items: center; gap: 12px; cursor: pointer; list-style: none; }
.report-block summary::-webkit-details-marker { display: none; }
.block-state { width: 9px; height: 9px; border-radius: 50%; background: #b9bbc5; }
.report-block.is-found .block-state { background: var(--green); box-shadow: 0 0 0 4px rgba(52,169,79,.10); }
.report-block.is-invalid .block-state { background: var(--red); box-shadow: 0 0 0 4px rgba(238,85,75,.10); }
.report-block.is-screening-detector.is-found .block-state { background: var(--red); box-shadow: 0 0 0 4px rgba(238,85,75,.10); }
.report-block.is-content-detector.is-found .block-state { background: var(--violet); box-shadow: 0 0 0 4px rgba(105,85,199,.10); }
.report-block.is-unavailable { opacity: .62; }
.block-copy { min-width: 0; display: grid; }
.block-copy strong { overflow: hidden; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.block-copy code { display: none; }
.block-count { color: var(--muted); font-size: 11px; text-align: right; }
.block-chevron { color: #9798a2; font-size: 16px; transition: transform .15s ease; }
.report-block[open] .block-chevron { transform: rotate(45deg); }
.block-body { padding: 2px 20px 17px 41px; }
.empty-value { margin: 0; color: var(--muted); font-size: 12px; }
.detector-warning { margin: 12px 0 0; padding: 10px 12px; color: #715a35; border-radius: 9px; background: #fff7e8; font-size: 11px; line-height: 1.5; }
.detector-source { display: inline-block; margin-top: 12px; color: var(--violet); font-size: 11px; font-weight: 750; text-underline-offset: 3px; }
.field-list { display: grid; gap: 1px; margin: 0; }
.field-row { display: grid; grid-template-columns: minmax(120px, .7fr) minmax(0, 1.3fr); gap: 16px; padding: 9px 0; border-top: 1px solid #efeff3; }
.field-row dt { color: var(--muted); font-size: 11px; }
.field-row dd { margin: 0; overflow-wrap: anywhere; font-size: 11px; font-weight: 650; }
.field-row code { display: block; margin-top: 2px; color: #9a9ba5; font-size: 9px; font-weight: 500; }
.payload { margin-top: 12px; }
.payload summary { display: block; min-height: auto; padding: 10px 0 0; border-top: 1px solid #efeff3; color: var(--violet); font-size: 11px; font-weight: 750; }
.payload pre { max-height: 360px; margin: 10px 0 0; padding: 12px; overflow: auto; border-radius: 9px; color: #e4e1f4; background: #262331; font: 10px/1.55 ui-monospace, SFMono-Regular, Menlo, monospace; white-space: pre-wrap; overflow-wrap: anywhere; }

.result-disclaimer { display: none; }
.seo-guide { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-top: 42px; scroll-margin-top: 18px; }
.seo-guide article { padding: 26px; border: 1px solid var(--line); border-radius: 17px; background: rgba(255,255,255,.82); box-shadow: var(--shadow); scroll-margin-top: 18px; }
.seo-guide article:target { border-color: #b9afe3; box-shadow: 0 0 0 4px rgba(105,85,199,.08), var(--shadow); }
.seo-guide h2 { margin: 0; font-size: 20px; line-height: 1.2; letter-spacing: -.025em; }
.seo-guide article > p:not(.seo-kicker) { margin: 14px 0 0; color: var(--muted); font-size: 13px; line-height: 1.65; }
.seo-guide article > p strong { color: #3b3c43; }
.seo-guide article > a { display: inline-block; margin-top: 18px; color: var(--violet); font-size: 12px; font-weight: 800; text-underline-offset: 4px; }
.check-footer { display: flex; margin-top: 26px; padding: 21px 2px 0; align-items: center; justify-content: space-between; gap: 24px; border-top: 1px solid var(--line); color: var(--muted); font-size: 11px; }
.check-footer p { margin: 0; }
.check-footer nav { display: flex; gap: 16px; }
.check-footer a { color: inherit; text-underline-offset: 3px; }

@media (max-width: 980px) {
  .check-header, .check-shell { width: min(100% - 32px, 760px); }
  .workspace { grid-template-columns: 1fr; }
  .media-column { grid-template-columns: 280px minmax(0, 1fr); align-items: start; }
  .preview-card { grid-column: 2; grid-row: 1 / span 2; }
  .privacy-card { grid-column: 1; }
  .report-panel { margin-top: 12px; }
}
@media (min-width: 561px) and (max-width: 980px) {
  body[data-check-mode="empty"] .workspace { gap: 18px; }
  body[data-check-mode="empty"] .media-column { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body[data-check-mode="empty"] .drop-zone { grid-column: 1; grid-row: 1; }
  body[data-check-mode="empty"] .privacy-card {
    grid-column: 2;
    grid-row: 1;
    align-content: center;
  }
  body[data-check-mode="empty"] .report-panel { min-height: 0; margin-top: 0; }
  body[data-check-mode="empty"] .report-empty { min-height: 260px; }
}
@media (max-width: 700px) {
  .seo-guide { grid-template-columns: 1fr; }
  .overview-grid { grid-template-columns: 1fr; gap: 12px; }
  .overview-card { min-height: 230px; }
  .score-result { grid-template-columns: auto minmax(0, 1fr); gap: 16px; }
}
@media (max-width: 560px) {
  body[data-check-mode="loading"] .check-header,
  body[data-check-mode="report"] .check-header,
  body[data-check-mode="updating"] .check-header { min-height: 56px; }

  .check-header { width: calc(100% - 28px); min-height: 62px; }
  .privacy-note { font-size: 0; }
  .check-shell { width: calc(100% - 24px); padding: 16px 0 30px; }
  .check-intro { margin-bottom: 16px; text-align: left; }
  .check-intro h1 { font-size: clamp(26px, 7.3vw, 29px); }
  .check-intro > p:not(.intro-eyebrow) { margin-top: 11px; font-size: 12px; line-height: 1.48; }
  .check-intro .intro-detail, .seo-anchor-nav { display: none; }
  .workspace { gap: 14px; }
  .media-column { grid-template-columns: 1fr; }
  .preview-card { grid-column: 1; grid-row: auto; }
  .privacy-card { grid-column: 1; }
  .drop-zone { min-height: 180px; padding: 20px 18px 17px; }
  .drop-icon { width: 40px; height: 40px; margin-bottom: 7px; }
  .drop-zone p { margin: 5px 0 9px; }
  .privacy-card { gap: 10px; padding: 14px 16px; }
  .privacy-card p { margin-top: 4px; }
  .score-card { padding: 24px 19px 22px; border-radius: 15px; }
  .evidence-relationship { padding: 20px 18px; }
  .evidence-relationship strong { font-size: 25px; }
  .score-target { width: 58px; height: 58px; }
  .score-target::before { inset: 13px; }
  .score-target::after { inset: 22px; }
  .score-target i::before { top: 7px; bottom: 7px; }
  .score-target i::after { right: 7px; left: 7px; }
  .score-copy > strong { font-size: 26px; }
  .score-copy > small { font-size: 11px; }
  .score-copy > em { font-size: 12px; }
  .score-summary { margin-top: 22px; }
  .report-list-head { align-items: flex-start; padding: 17px; flex-direction: column; gap: 2px; }
  .report-list-head button { padding-bottom: 0; }
  .report-block summary { grid-template-columns: auto minmax(0, 1fr) auto; padding-inline: 16px; }
  .block-count { display: none; }
  .block-body { padding-left: 16px; }
  .field-row { grid-template-columns: 1fr; gap: 3px; }
  .seo-guide { margin-top: 30px; }
  .seo-guide article { padding: 21px 18px; }
  .check-footer { align-items: flex-start; flex-direction: column; gap: 12px; }

  body[data-check-mode="loading"],
  body[data-check-mode="report"],
  body[data-check-mode="updating"] {
    background: #f6f7f9;
  }
  body[data-check-mode="loading"] .check-header,
  body[data-check-mode="report"] .check-header,
  body[data-check-mode="updating"] .check-header {
    position: relative;
    width: 100%;
    min-height: 66px;
    padding: 0 18px;
    justify-content: center;
    border-bottom-color: #e7e8ec;
    background: rgba(255, 255, 255, .96);
  }
  body[data-check-mode="loading"] .brand,
  body[data-check-mode="report"] .brand,
  body[data-check-mode="updating"] .brand {
    font-size: 17px;
  }
  body[data-check-mode="loading"] .brand > span,
  body[data-check-mode="report"] .brand > span,
  body[data-check-mode="updating"] .brand > span {
    width: 28px;
    height: 28px;
    border-radius: 8px;
  }
  body[data-check-mode="loading"] .privacy-note,
  body[data-check-mode="report"] .privacy-note,
  body[data-check-mode="updating"] .privacy-note {
    position: absolute;
    right: 21px;
  }
  body[data-check-mode="loading"] .check-shell,
  body[data-check-mode="report"] .check-shell,
  body[data-check-mode="updating"] .check-shell {
    width: 100%;
    padding: 18px 16px 28px;
  }
  body[data-check-mode="loading"] .check-intro,
  body[data-check-mode="report"] .check-intro,
  body[data-check-mode="updating"] .check-intro,
  body[data-check-mode="loading"] .drop-zone,
  body[data-check-mode="report"] .drop-zone,
  body[data-check-mode="updating"] .drop-zone,
  body[data-check-mode="loading"] .privacy-card,
  body[data-check-mode="report"] .privacy-card,
  body[data-check-mode="updating"] .privacy-card {
    display: none;
  }
  body[data-check-mode="loading"] .workspace,
  body[data-check-mode="report"] .workspace,
  body[data-check-mode="updating"] .workspace {
    gap: 16px;
  }
  body[data-check-mode="loading"] .media-column,
  body[data-check-mode="report"] .media-column,
  body[data-check-mode="updating"] .media-column {
    display: block;
  }
  body[data-check-mode="loading"] .preview-card,
  body[data-check-mode="report"] .preview-card,
  body[data-check-mode="updating"] .preview-card {
    display: grid;
    grid-template-columns: 112px minmax(0, 1fr);
    border: 0;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(31, 35, 48, .07);
  }
  body[data-check-mode="loading"] .preview-frame,
  body[data-check-mode="report"] .preview-frame,
  body[data-check-mode="updating"] .preview-frame {
    display: block;
    width: 112px;
    min-height: 154px;
    max-height: none;
    padding: 0;
    overflow: hidden;
    border-radius: 14px 0 0 14px;
    background: #eef0f4;
  }
  body[data-check-mode="loading"] .preview-stage,
  body[data-check-mode="report"] .preview-stage,
  body[data-check-mode="updating"] .preview-stage {
    display: block;
    width: 100%;
    height: 154px;
    max-width: none;
    max-height: none;
  }
  body[data-check-mode="loading"] .preview-frame img,
  body[data-check-mode="report"] .preview-frame img,
  body[data-check-mode="updating"] .preview-frame img {
    width: 100%;
    height: 100%;
    max-width: none;
    max-height: none;
    border-radius: 0;
    object-fit: cover;
  }
  body[data-check-mode="loading"] .file-line,
  body[data-check-mode="report"] .file-line,
  body[data-check-mode="updating"] .file-line {
    align-content: center;
    gap: 10px;
    min-width: 0;
    padding: 14px;
  }
  body[data-check-mode="loading"] .file-summary > div,
  body[data-check-mode="report"] .file-summary > div,
  body[data-check-mode="updating"] .file-summary > div {
    gap: 4px;
  }
  body[data-check-mode="loading"] .file-line strong,
  body[data-check-mode="report"] .file-line strong,
  body[data-check-mode="updating"] .file-line strong {
    font-size: 13px;
  }
  body[data-check-mode="loading"] .file-line span,
  body[data-check-mode="report"] .file-line span,
  body[data-check-mode="updating"] .file-line span {
    font-size: 10px;
    line-height: 1.35;
  }
  body[data-check-mode="loading"] .file-line .replace-button,
  body[data-check-mode="report"] .file-line .replace-button,
  body[data-check-mode="updating"] .file-line .replace-button {
    min-height: 39px;
    border: 1px solid #e3e0f3;
    background: #f7f5ff;
    font-size: 11px;
  }
  body[data-check-mode="loading"] .file-actions,
  body[data-check-mode="report"] .file-actions,
  body[data-check-mode="updating"] .file-actions,
  body[data-check-mode="loading"] .heatmap-notice,
  body[data-check-mode="report"] .heatmap-notice,
  body[data-check-mode="updating"] .heatmap-notice {
    grid-column: 1 / -1;
  }
  body[data-check-mode="loading"] .report-panel,
  body[data-check-mode="report"] .report-panel,
  body[data-check-mode="updating"] .report-panel {
    min-height: 0;
    margin-top: 0;
  }
  body[data-check-mode="loading"] .report-head {
    border-radius: 14px 14px 0 0;
  }
  body[data-check-mode="loading"] .report-loading {
    min-height: 260px;
    border-radius: 0 0 14px 14px;
  }
  body[data-check-mode="report"] .score-card,
  body[data-check-mode="updating"] .score-card {
    padding: 22px 18px 19px;
    border-radius: 15px;
    box-shadow: 0 8px 24px rgba(31, 35, 48, .06);
  }
  body[data-check-mode="report"] .score-result,
  body[data-check-mode="updating"] .score-result {
    gap: 14px;
  }
  body[data-check-mode="report"] .score-target,
  body[data-check-mode="updating"] .score-target {
    width: 56px;
    height: 56px;
  }
  body[data-check-mode="report"] .score-target::before,
  body[data-check-mode="updating"] .score-target::before { inset: 12px; }
  body[data-check-mode="report"] .score-target::after,
  body[data-check-mode="updating"] .score-target::after { inset: 21px; }
  body[data-check-mode="report"] .score-target i::before,
  body[data-check-mode="updating"] .score-target i::before { top: 6px; bottom: 6px; }
  body[data-check-mode="report"] .score-target i::after,
  body[data-check-mode="updating"] .score-target i::after { right: 6px; left: 6px; }
  body[data-check-mode="report"] .score-copy,
  body[data-check-mode="updating"] .score-copy { gap: 3px; }
  body[data-check-mode="report"] .score-copy > span,
  body[data-check-mode="updating"] .score-copy > span { font-size: 11px; }
  body[data-check-mode="report"] .score-copy > strong,
  body[data-check-mode="updating"] .score-copy > strong {
    font-size: clamp(22px, 7vw, 29px);
  }
  body[data-check-mode="report"] .score-copy > em,
  body[data-check-mode="updating"] .score-copy > em { font-size: 11px; }
  body[data-check-mode="report"] .score-summary,
  body[data-check-mode="updating"] .score-summary { margin-top: 17px; }
  body[data-check-mode="report"] .score-summary p,
  body[data-check-mode="updating"] .score-summary p {
    font-size: 11px;
    line-height: 1.5;
  }
  body[data-check-mode="report"] .score-summary p + p,
  body[data-check-mode="updating"] .score-summary p + p { margin-top: 5px; }
  body[data-check-mode="report"] .overview-grid,
  body[data-check-mode="updating"] .overview-grid {
    gap: 9px;
    margin-top: 16px;
  }
  body[data-check-mode="report"] .overview-card,
  body[data-check-mode="updating"] .overview-card {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    min-height: 78px;
    padding: 14px 52px 13px 14px;
    align-content: center;
    border-color: #e5e6eb;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 6px 20px rgba(31, 35, 48, .05);
  }
  body[data-check-mode="report"] .overview-title,
  body[data-check-mode="updating"] .overview-title {
    grid-column: 1;
    min-height: 0;
    align-items: center;
    gap: 12px;
  }
  body[data-check-mode="report"] .overview-title h3,
  body[data-check-mode="updating"] .overview-title h3 {
    font-size: 13px;
    line-height: 1.25;
  }
  body[data-check-mode="report"] .overview-title h3 br,
  body[data-check-mode="updating"] .overview-title h3 br { display: none; }
  body[data-check-mode="report"] .overview-icon,
  body[data-check-mode="updating"] .overview-icon {
    width: 35px;
    height: 35px;
    border: 0;
    border-radius: 10px;
    background: currentColor;
    font-size: 0;
  }
  body[data-check-mode="report"] .overview-icon::after,
  body[data-check-mode="updating"] .overview-icon::after {
    color: #fff;
    font-size: 17px;
    content: "◇";
  }
  body[data-check-mode="report"] .is-ai .overview-icon::after,
  body[data-check-mode="updating"] .is-ai .overview-icon::after { content: "⌾"; }
  body[data-check-mode="report"] .is-content .overview-icon::after,
  body[data-check-mode="updating"] .is-content .overview-icon::after { content: "✓"; }
  body[data-check-mode="report"] .overview-value,
  body[data-check-mode="updating"] .overview-value {
    grid-column: 1;
    margin: -9px 0 0 47px;
    color: var(--muted);
    font-size: 10px;
    letter-spacing: 0;
  }
  body[data-check-mode="report"] .overview-card > b,
  body[data-check-mode="updating"] .overview-card > b {
    grid-column: 1;
    margin: 2px 0 0 47px;
    overflow: hidden;
    color: var(--muted);
    font-size: 10px;
    font-weight: 600;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  body[data-check-mode="report"] .overview-card > p,
  body[data-check-mode="updating"] .overview-card > p { display: none; }
  body[data-check-mode="report"] .overview-card > button,
  body[data-check-mode="updating"] .overview-card > button {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    padding: 0 17px 0 0;
    border: 0;
    background: transparent;
    font-size: 0;
    text-align: right;
  }
  body[data-check-mode="report"] .overview-card > button::after,
  body[data-check-mode="updating"] .overview-card > button::after {
    color: #8a8d97;
    font-size: 24px;
    font-weight: 400;
    content: "›";
  }
  body[data-check-mode="report"] .overview-card > button:focus-visible,
  body[data-check-mode="updating"] .overview-card > button:focus-visible {
    border-radius: 14px;
    outline-offset: 0;
  }
  body[data-check-mode="report"] .report-list,
  body[data-check-mode="updating"] .report-list {
    margin-top: 16px;
    border-color: #e5e6eb;
    border-radius: 14px;
    box-shadow: 0 6px 20px rgba(31, 35, 48, .05);
  }
  body[data-check-mode="report"] .report-list-head,
  body[data-check-mode="updating"] .report-list-head {
    min-height: 58px;
    padding: 0;
    border-bottom: 0;
  }
  body[data-check-mode="report"] .report-list-head h3,
  body[data-check-mode="updating"] .report-list-head h3 { display: none; }
  body[data-check-mode="report"] .report-list-head button,
  body[data-check-mode="updating"] .report-list-head button {
    display: flex;
    width: 100%;
    min-height: 58px;
    padding: 0 17px;
    align-items: center;
    justify-content: space-between;
    color: #25272d;
    font-size: 13px;
    font-weight: 760;
    text-align: left;
  }
  body[data-check-mode="report"] .report-list:not(.is-expanded) .report-blocks,
  body[data-check-mode="updating"] .report-list:not(.is-expanded) .report-blocks {
    display: none;
  }
  body[data-check-mode="report"] .report-list.is-expanded .report-list-head,
  body[data-check-mode="updating"] .report-list.is-expanded .report-list-head {
    border-bottom: 1px solid var(--line);
  }
  body[data-check-mode="report"] .seo-guide,
  body[data-check-mode="updating"] .seo-guide {
    display: none;
  }
  body[data-check-mode="report"] .result-disclaimer,
  body[data-check-mode="updating"] .result-disclaimer {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    max-width: 330px;
    margin: 20px auto 0;
    align-items: start;
    gap: 10px;
    color: #777a84;
  }
  body[data-check-mode="report"] .result-disclaimer > span,
  body[data-check-mode="updating"] .result-disclaimer > span {
    display: grid;
    width: 21px;
    height: 21px;
    place-items: center;
    border: 1.5px solid currentColor;
    border-radius: 50%;
    font-family: Georgia, serif;
    font-size: 12px;
    font-weight: 700;
  }
  body[data-check-mode="report"] .result-disclaimer p,
  body[data-check-mode="updating"] .result-disclaimer p {
    margin: 0;
    font-size: 10px;
    line-height: 1.5;
  }
  body[data-check-mode="report"] .check-footer,
  body[data-check-mode="updating"] .check-footer {
    margin-top: 18px;
    padding: 18px 8px 0;
    align-items: center;
    color: #888a92;
    text-align: center;
  }
  body[data-check-mode="report"] .check-footer nav,
  body[data-check-mode="updating"] .check-footer nav { justify-content: center; }
}

/* Plain-language AI explanation ----------------------------------------- */
.ai-declaration { grid-template-columns: 38px minmax(0, 1fr) auto; }
.ai-declaration > button {
  align-self: center;
  padding: 8px 0 8px 12px;
  color: #a56d17;
  border: 0;
  background: transparent;
  cursor: pointer;
  font: inherit;
  font-size: 11px;
  font-weight: 800;
  white-space: nowrap;
}
.ai-declaration > button:hover { color: #7f4f08; }
.ai-declaration > button:focus-visible,
.overview-card > [data-open-ai-explainer]:focus-visible { outline: 3px solid rgba(105, 85, 199, .24); outline-offset: 3px; }

@media (min-width: 981px) and (min-height: 640px) {
  body[data-check-mode="report"] .overview-card > [data-open-ai-explainer],
  body[data-check-mode="updating"] .overview-card > [data-open-ai-explainer] {
    display: inline-flex;
    min-width: max-content;
    padding: 0 2px 0 12px;
    align-items: center;
    gap: 9px;
    color: var(--blue);
    cursor: pointer;
    font-size: 12px;
    font-weight: 800;
  }
  body[data-check-mode="report"] .overview-card > [data-open-ai-explainer]::after,
  body[data-check-mode="updating"] .overview-card > [data-open-ai-explainer]::after {
    color: #8a8d97;
    font-size: 22px;
    content: "›";
  }
}

/* Optional first-party provenance check shown only after local screening. */
.evidence-relationship {
  grid-template-columns: 176px minmax(0, 1fr) auto;
  align-items: center;
  column-gap: 24px;
}
.ai-scale { display: grid; min-width: 0; gap: 8px; }
.ai-scale-value { display: flex; align-items: baseline; color: #252833; line-height: 1; }
.ai-scale-value strong { font-size: 42px; letter-spacing: -.055em; }
.ai-scale-value span { margin-left: 4px; color: #777b87; font-size: 13px; font-weight: 750; }
.ai-scale-value b { margin-left: 7px; color: #34744a; font-size: 18px; }
.ai-scale-track { height: 7px; overflow: hidden; border-radius: 999px; background: linear-gradient(90deg, #58a36a 0 20%, #aeb466 20% 45%, #d2aa4f 45% 56%, #dc7b46 56% 80%, #d54d49 80%); }
.ai-scale-track i { display: block; width: 0; height: 100%; border-right: 3px solid #20232c; background: rgba(255,255,255,.7); transition: width .35s ease; }
.ai-scale p { display: flex; margin: 0; flex-wrap: wrap; gap: 3px 10px; color: #565b68; font-size: 10px; font-weight: 780; }
.ai-scale small { color: #747985; font-size: 9px; line-height: 1.35; }
.evidence-relationship-copy { display: grid; min-width: 0; gap: 7px; }
.evidence-relationship-copy > span {
  color: currentColor;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.openai-check-action {
  position: relative;
  display: grid;
  grid-template-columns: auto 28px;
  align-items: center;
  gap: 8px;
  max-width: 270px;
}
.openai-check-action > button {
  min-height: 48px;
  padding: 9px 15px;
  color: #b93631;
  border: 1px solid #e6a6a2;
  border-radius: 10px;
  background: rgba(255, 255, 255, .82);
  cursor: pointer;
  font: inherit;
  font-size: 13px;
  font-weight: 850;
  line-height: 1.25;
}
.openai-check-action > button:hover,
.openai-check-action > button:focus-visible { border-color: #c94d47; background: #fff; }
.openai-check-action > button:disabled { cursor: wait; opacity: .68; }
.openai-check-action[data-state="completed"] > button:disabled {
  color: #34744a;
  border-color: #a8d3b6;
  background: #f5fbf7;
  cursor: default;
  opacity: 1;
}
.openai-check-info { position: relative; }
.openai-check-info summary {
  display: grid;
  width: 28px;
  height: 28px;
  color: #b93631;
  border: 1px solid currentColor;
  border-radius: 50%;
  cursor: pointer;
  place-items: center;
  font-size: 14px;
  font-weight: 900;
  list-style: none;
}
.openai-check-info summary::-webkit-details-marker { display: none; }
.openai-check-info p {
  position: absolute;
  z-index: 5;
  top: calc(100% + 9px);
  right: 0;
  width: min(300px, calc(100vw - 40px));
  margin: 0;
  padding: 12px 14px;
  color: #3e414b;
  border: 1px solid #e0e2e9;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(35, 38, 49, .16);
  font-size: 12px;
  line-height: 1.45;
}
.openai-check-info:not([open]) p { display: none; }
.openai-check-info:focus-within p,
.openai-check-info:hover p { display: block; }
.openai-check-action > [role="status"] {
  grid-column: 1 / -1;
  color: #6b6e78;
  font-size: 11px;
  line-height: 1.35;
}

@media (max-width: 700px) {
  .evidence-relationship { grid-template-columns: minmax(0, 1fr); row-gap: 16px; }
  .openai-check-action { width: 100%; max-width: none; grid-template-columns: minmax(0, 1fr) 30px; }
  .openai-check-action > button { width: 100%; }
  .openai-check-info p { right: -2px; }
}

/* Origin analysis --------------------------------------------------------
   Visual-model signals and embedded provenance are evidence for one result,
   not two separate reports. Keep them in one connected evidence rail and
   expose a single action for the combined explanation. */
body:not([data-check-mode="empty"]) .overview-grid:has(.origin-analysis-card) {
  display: block;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

body:not([data-check-mode="empty"]) .overview-card.origin-analysis-card {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: auto auto auto;
  min-height: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid #dde2ea;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 14px 36px rgba(30, 41, 67, .07);
}

.origin-analysis-head {
  display: flex;
  min-height: 74px;
  padding: 15px 20px;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  border-bottom: 1px solid #e8ebf1;
}

.origin-analysis-heading {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 13px;
}

.origin-analysis-heading .overview-icon {
  display: grid;
  width: 40px;
  height: 40px;
  flex: none;
  place-items: center;
  color: #3f6fd8;
  border: 1px solid #dce5f8;
  border-radius: 12px;
  background: #f2f6ff;
}

.origin-analysis-heading .overview-icon svg {
  display: block;
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
}

.origin-analysis-heading h3 {
  margin: 0;
  color: #20232a;
  font-size: 17px;
  font-weight: 820;
  line-height: 1.2;
  letter-spacing: -.015em;
}

body:not([data-check-mode="empty"]) .origin-analysis-head .overview-value {
  position: relative;
  display: inline-flex;
  margin: 0;
  align-items: center;
  gap: 10px;
  color: #3f6fd8;
  font-size: clamp(20px, 2vw, 28px);
  font-weight: 840;
  line-height: 1;
  letter-spacing: -.025em;
  white-space: nowrap;
}

.origin-analysis-head .overview-value::before {
  width: 8px;
  height: 8px;
  flex: none;
  border-radius: 50%;
  background: currentColor;
  box-shadow: 0 0 0 4px rgba(63, 111, 216, .1);
  content: "";
}

.origin-evidence-rail {
  position: relative;
  display: grid;
  padding: 14px 20px 13px;
  gap: 8px;
}

.origin-evidence-rail::before {
  position: absolute;
  z-index: 0;
  top: 45px;
  bottom: 45px;
  left: 39px;
  width: 2px;
  background: #dde4ef;
  content: "";
}

body:not([data-check-mode="empty"]) .origin-evidence {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  min-height: 72px;
  margin: 0;
  padding: 11px 14px 11px 10px;
  align-items: center;
  gap: 12px;
  border: 0;
  border-radius: 12px;
  background: #f8faff;
  box-shadow: none;
}

body:not([data-check-mode="empty"]) .origin-evidence.ai-declaration {
  grid-column: auto;
  grid-row: auto;
  grid-template-columns: 42px minmax(0, 1fr);
  margin: 0;
  border: 0;
  border-radius: 12px;
  background: #fffaf2;
}

.origin-evidence-icon,
body:not([data-check-mode="empty"]) .origin-evidence .ai-declaration-icon {
  display: grid;
  width: 38px;
  height: 38px;
  place-items: center;
  color: #3f6fd8;
  border: 1px solid #dce5f8;
  border-radius: 11px;
  background: #fff;
  font-size: 0;
}

body:not([data-check-mode="empty"]) .origin-evidence .ai-declaration-icon {
  color: #c88820;
  border-color: #f0dfbf;
  background: #fffdf8;
}

.origin-evidence-icon svg,
body:not([data-check-mode="empty"]) .origin-evidence .ai-declaration-icon svg {
  display: block;
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.origin-evidence-kicker {
  display: block;
  margin: 0 0 3px;
  color: #3f6fd8;
  font-size: 10px;
  font-weight: 820;
  letter-spacing: .035em;
}

.origin-evidence.ai-declaration .origin-evidence-kicker { color: #b77714; }
.origin-evidence.openai-provenance-evidence[data-openai-result="neutral"] { background: #f7f8fa; }
.origin-evidence.openai-provenance-evidence[data-openai-result="neutral"] .origin-evidence-icon {
  color: #7b808a;
  border-color: #dfe2e7;
  background: #fbfbfc;
}
.origin-evidence.openai-provenance-evidence[data-openai-result="neutral"] .origin-evidence-kicker { color: #737881; }

body:not([data-check-mode="empty"]) .origin-evidence.openai-provenance-evidence[data-openai-result="detected"] {
  grid-template-columns: 48px minmax(0, 1fr);
  padding-left: 8px;
  border-left: 3px solid #d95b54;
  background: linear-gradient(105deg, #fff3f1, #fff9f7);
}
.origin-evidence.openai-provenance-evidence[data-openai-result="detected"] .origin-evidence-icon {
  width: 44px;
  height: 44px;
  align-self: start;
  margin-top: 2px;
  color: #c84740;
  border-color: #edbbb6;
  border-radius: 50%;
  background: #fff8f7;
  box-shadow: 0 0 0 4px rgba(200, 71, 64, .08);
}
.origin-evidence.openai-provenance-evidence[data-openai-result="detected"] .origin-evidence-kicker { color: #b43c36; }

body:not([data-check-mode="empty"]) .origin-evidence > div > strong,
body:not([data-check-mode="empty"]) .origin-evidence h3 {
  display: block;
  margin: 0;
  color: #252831;
  font-size: 13px;
  font-weight: 760;
  line-height: 1.35;
}

body:not([data-check-mode="empty"]) .origin-evidence p,
body:not([data-check-mode="empty"]) .origin-evidence.ai-declaration p {
  display: block;
  max-width: 920px;
  margin: 3px 0 0;
  color: #707684;
  font-size: 10px;
  line-height: 1.45;
}

body:not([data-check-mode="empty"]) .overview-card.origin-analysis-card > .origin-analysis-action {
  position: static;
  display: inline-flex;
  grid-column: 1;
  grid-row: 3;
  width: max-content;
  min-width: 150px;
  min-height: 42px;
  margin: 0 20px 16px auto;
  padding: 0 15px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: #fff;
  border: 1px solid #3565d2;
  border-radius: 11px;
  background: #3f6fd8;
  box-shadow: 0 8px 18px rgba(63, 111, 216, .18);
  cursor: pointer;
  font: inherit;
  font-size: 11px;
  font-weight: 800;
  text-align: center;
  transition: background .18s ease, box-shadow .18s ease, transform .18s ease;
}

body:not([data-check-mode="empty"]) .overview-card.origin-analysis-card > .origin-analysis-action::after { content: none; }
body:not([data-check-mode="empty"]) .overview-card.origin-analysis-card > .origin-analysis-action:hover {
  background: #315fc6;
  box-shadow: 0 10px 22px rgba(63, 111, 216, .24);
  transform: translateY(-1px);
}
.origin-analysis-action svg {
  width: 16px;
  height: 16px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

@media (max-width: 560px) {
  body:not([data-check-mode="empty"]) .overview-card.origin-analysis-card {
    min-height: 0;
    padding: 0;
    border-radius: 16px;
  }
  .origin-analysis-head {
    min-height: 0;
    padding: 16px;
    align-items: flex-start;
    flex-direction: column;
    gap: 11px;
  }
  .origin-analysis-heading { gap: 11px; }
  .origin-analysis-heading .overview-icon {
    display: grid;
    width: 38px;
    height: 38px;
    border-radius: 11px;
  }
  .origin-analysis-heading h3 { font-size: 16px; }
  body:not([data-check-mode="empty"]) .origin-analysis-head .overview-value {
    padding-left: 49px;
    font-size: 21px;
  }
  .origin-analysis-head .overview-value::before { width: 7px; height: 7px; }
  .origin-evidence-rail { padding: 12px 12px 13px; gap: 8px; }
  .origin-evidence-rail::before { left: 31px; }
  body:not([data-check-mode="empty"]) .origin-evidence,
  body:not([data-check-mode="empty"]) .origin-evidence.ai-declaration {
    grid-template-columns: 36px minmax(0, 1fr);
    min-height: 0;
    padding: 12px 10px 12px 7px;
    align-items: start;
    gap: 10px;
  }
  body:not([data-check-mode="empty"]) .origin-evidence.openai-provenance-evidence[data-openai-result="detected"] {
    grid-template-columns: 40px minmax(0, 1fr);
    padding-left: 6px;
  }
  .origin-evidence.openai-provenance-evidence[data-openai-result="detected"] .origin-evidence-icon {
    width: 38px;
    height: 38px;
  }
  .origin-evidence-icon,
  body:not([data-check-mode="empty"]) .origin-evidence .ai-declaration-icon {
    width: 34px;
    height: 34px;
    border-radius: 10px;
  }
  .origin-evidence-icon svg,
  body:not([data-check-mode="empty"]) .origin-evidence .ai-declaration-icon svg { width: 18px; height: 18px; }
  body:not([data-check-mode="empty"]) .origin-evidence > div > strong,
  body:not([data-check-mode="empty"]) .origin-evidence h3 { font-size: 12px; }
  body:not([data-check-mode="empty"]) .origin-evidence p,
  body:not([data-check-mode="empty"]) .origin-evidence.ai-declaration p { font-size: 10px; }
  body:not([data-check-mode="empty"]) .overview-card.origin-analysis-card > .origin-analysis-action {
    width: calc(100% - 24px);
    min-height: 44px;
    margin: 0 12px 14px;
    font-size: 12px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body:not([data-check-mode="empty"]) .overview-card.origin-analysis-card > .origin-analysis-action { transition: none; }
}

.ai-explainer {
  position: fixed;
  z-index: 100;
  inset: 0;
  display: grid;
  width: 100%;
  height: 100%;
  padding: 16px;
  place-items: center;
  overflow: auto;
  color: var(--ink);
  border: 0;
  background: rgba(28, 30, 41, .52);
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
}
.ai-explainer-shell {
  display: flex;
  width: min(680px, 100%);
  max-height: min(780px, calc(100dvh - 32px));
  overflow: hidden;
  flex-direction: column;
  border: 1px solid rgba(214, 216, 228, .92);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 30px 90px rgba(25, 28, 43, .22), 0 4px 16px rgba(25, 28, 43, .08);
  animation: ai-modal-in .2s ease-out both;
}
body.has-ai-modal { overflow: hidden; }
.ai-explainer-head {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) 40px;
  gap: 14px;
  padding: 22px 24px 18px;
  align-items: center;
  border-bottom: 1px solid #ececf2;
  background: linear-gradient(135deg, #fff 35%, #f5f8ff);
}
.ai-explainer-mark {
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  color: var(--blue);
  border: 1.5px solid #aac0ea;
  border-radius: 13px;
  background: #fff;
}
.ai-explainer-mark svg { width: 23px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.ai-explainer-head p { margin: 0 0 4px; color: var(--blue); font-size: 10px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.ai-explainer-head h2 { margin: 0; font-size: 23px; line-height: 1.18; letter-spacing: -.025em; }
.ai-explainer-close {
  display: grid;
  width: 40px;
  height: 40px;
  padding: 0;
  place-items: center;
  color: #676a76;
  border: 0;
  border-radius: 12px;
  background: #f4f5f8;
  cursor: pointer;
}
.ai-explainer-close:hover { color: var(--ink); background: #eceef3; }
.ai-explainer-close svg { width: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; }
.ai-explainer-body { padding: 22px 24px 4px; overflow: auto; overscroll-behavior: contain; }
.ai-explainer-hero {
  padding: 19px 20px;
  border: 1px solid #d5e0f5;
  border-radius: 16px;
  background: linear-gradient(135deg, #f5f8ff, #fbfcff);
}
.ai-explainer-hero > span { display: inline-block; margin-bottom: 10px; color: var(--blue); font-size: 11px; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.ai-explainer-hero > strong { display: block; font-size: 17px; line-height: 1.35; }
.ai-explainer-hero > p { margin: 8px 0 0; color: var(--muted); font-size: 13px; line-height: 1.55; }
.ai-explainer-section { display: grid; grid-template-columns: 38px minmax(0, 1fr); gap: 14px; padding: 19px 4px; border-bottom: 1px solid #eeeef3; }
.ai-explainer-section-icon { display: grid; width: 36px; height: 36px; place-items: center; color: #9a6a16; border-radius: 11px; background: #fff4de; font-size: 16px; font-weight: 900; }
.ai-explainer-section-icon.is-signal { color: var(--blue); background: #edf3ff; }
.ai-explainer-section-icon.is-file { color: var(--violet); background: var(--violet-soft); }
.ai-explainer-section-icon svg { width: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.ai-explainer-section h3 { margin: 0; font-size: 14px; line-height: 1.35; }
.ai-explainer-section p { margin: 6px 0 0; color: var(--muted); font-size: 12px; line-height: 1.55; }
.ai-explainer-section.is-caution { border-bottom: 0; }
.ai-explainer-tags { display: flex; margin-top: 10px; flex-wrap: wrap; gap: 6px; }
.ai-explainer-tags:empty { display: none; }
.ai-explainer-tags span { padding: 5px 8px; color: #4e5f82; border: 1px solid #dce4f3; border-radius: 8px; background: #f8faff; font-size: 10px; font-weight: 750; }
.ai-explainer-next { margin: 0 0 18px; padding: 15px 17px; border-radius: 13px; background: #f6f5fb; }
.ai-explainer-next strong { font-size: 12px; }
.ai-explainer-next p { margin: 5px 0 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.ai-explainer-actions { display: flex; padding: 16px 24px 20px; justify-content: flex-end; gap: 10px; border-top: 1px solid #ececf2; background: #fff; }
.ai-explainer-actions button { min-height: 42px; padding: 0 16px; border: 1px solid #dcdde5; border-radius: 11px; background: #fff; cursor: pointer; font: inherit; font-size: 12px; font-weight: 780; }
.ai-explainer-actions button:last-child { min-width: 104px; color: #fff; border-color: var(--violet); background: var(--violet); }
.ai-explainer-actions button:hover { transform: translateY(-1px); }

@keyframes ai-modal-in { from { opacity: 0; transform: translateY(12px) scale(.98); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .ai-explainer-shell { animation: none; } }

@media (max-width: 560px) {
  .ai-declaration { grid-template-columns: 32px minmax(0, 1fr); }
  .ai-declaration > button { grid-column: 2; justify-self: start; padding: 5px 0 0; }
  .ai-explainer { padding: 10px; }
  .ai-explainer-shell { max-height: calc(100dvh - 20px); border-radius: 20px; }
  .ai-explainer-head { grid-template-columns: 38px minmax(0, 1fr) 36px; gap: 10px; padding: 17px 16px 15px; }
  .ai-explainer-mark { width: 38px; height: 38px; border-radius: 11px; }
  .ai-explainer-head h2 { font-size: 18px; }
  .ai-explainer-close { width: 36px; height: 36px; }
  .ai-explainer-body { padding: 16px 16px 2px; }
  .ai-explainer-hero { padding: 16px; }
  .ai-explainer-hero > strong { font-size: 15px; }
  .ai-explainer-hero > p { font-size: 12px; }
  .ai-explainer-section { gap: 11px; padding: 16px 2px; }
  .ai-explainer-section p { font-size: 11px; }
  .ai-explainer-actions { padding: 12px 16px 15px; }
  .ai-explainer-actions button { flex: 1; padding-inline: 10px; }
}
@media (min-width: 981px) and (max-height: 800px) {
  .check-shell { padding-top: 18px; }
  .check-intro { margin-bottom: 18px; }
  .check-intro h1 { font-size: clamp(30px, 3.3vw, 40px); }
  .check-intro .intro-detail { display: none; }
  .check-intro > p:not(.intro-eyebrow) { margin-top: 11px; font-size: 13px; line-height: 1.45; }
  .seo-anchor-nav { margin-top: 13px; }
  .seo-anchor-nav a { padding-block: 6px; }
  .workspace { gap: 24px; }
  .drop-zone { min-height: 198px; padding-block: 20px; }
  .privacy-card { padding-block: 15px; }
  .report-panel { min-height: 0; }
  .report-empty, .report-loading, .report-error { min-height: 245px; padding: 28px; }
}

/* Desktop analysis is a workspace, not a second landing page. Once a file is
   selected, keep the complete summary inside the viewport: the upload copy and
   SEO guide are useful before the check, but repeating them above and below the
   report pushed the actual results off standard 1280x720 and 1366x768 screens. */
@media (min-width: 981px) and (min-height: 640px) {
  body:not([data-check-mode="empty"]) {
    height: 100dvh;
    overflow: hidden;
    background: #f6f7f9;
  }

  body:not([data-check-mode="empty"]) .check-header {
    width: min(1280px, calc(100% - 32px));
    min-height: 54px;
  }

  body:not([data-check-mode="empty"]) .check-shell {
    width: min(1280px, calc(100% - 32px));
    height: calc(100dvh - 54px);
    padding: 10px 0 12px;
  }

  body:not([data-check-mode="empty"]) .check-intro,
  body:not([data-check-mode="empty"]) .drop-zone,
  body:not([data-check-mode="empty"]) .privacy-card,
  body:not([data-check-mode="empty"]) .result-disclaimer,
  body:not([data-check-mode="empty"]) .seo-guide,
  body:not([data-check-mode="empty"]) .check-footer {
    display: none;
  }

  body:not([data-check-mode="empty"]) .workspace {
    grid-template-columns: 300px minmax(0, 1fr);
    height: 100%;
    min-height: 0;
    align-items: start;
    gap: var(--ds-space-4);
  }

  body:not([data-check-mode="empty"]) .media-column,
  body:not([data-check-mode="empty"]) .report-panel {
    min-height: 0;
  }

  body:not([data-check-mode="empty"]) .media-column { display: block; }

  body:not([data-check-mode="empty"]) .preview-card:not([hidden]) {
    display: grid;
    grid-template-rows: auto auto auto;
    height: auto;
    border-radius: var(--ds-radius-card);
    box-shadow: var(--ds-card-shadow);
  }

  body:not([data-check-mode="empty"]) .preview-frame {
    display: grid;
    height: clamp(228px, 36dvh, 300px);
    min-height: 228px;
    max-height: 300px;
    padding: var(--ds-space-3);
    place-items: center;
    overflow: hidden;
    background: #f8f8fb;
  }

  body:not([data-check-mode="empty"]) .preview-stage {
    display: grid;
    width: 100%;
    height: 100%;
    place-items: center;
  }

  body:not([data-check-mode="empty"]) .preview-frame img {
    width: auto;
    height: auto;
    max-width: 236px;
    max-height: 100%;
    object-fit: contain;
  }

  body:not([data-check-mode="empty"]) .file-line {
    gap: var(--ds-space-2);
    padding: var(--ds-space-3);
  }

  body:not([data-check-mode="empty"]) .file-summary > div { gap: 2px; }
  body:not([data-check-mode="empty"]) .file-line strong { font-size: 12px; }
  body:not([data-check-mode="empty"]) .file-line span { font-size: 10px; }

  body:not([data-check-mode="empty"]) .file-line .replace-button {
    min-height: 36px;
    width: 100%;
    border-radius: var(--ds-radius-control);
    font-size: 11px;
  }

  body:not([data-check-mode="empty"]) .file-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
    padding-top: var(--ds-space-2);
  }

  body:not([data-check-mode="empty"]) .file-actions:has(.is-physical[hidden]) .is-crops:not([hidden]) {
    grid-column: 1 / -1;
  }

  body:not([data-check-mode="empty"]) .file-line .analysis-button,
  body:not([data-check-mode="empty"]) .file-line .analysis-button.is-detective {
    grid-column: auto;
    min-height: 36px;
    padding: 5px 6px;
    font-size: 9px;
  }

  body:not([data-check-mode="empty"]) .file-line .analysis-button small { display: none; }

  body:not([data-check-mode="empty"]) .file-actions .action-group-label { display: none; }

  body:not([data-check-mode="empty"]) .heatmap-notice { padding: 9px 11px; }

  body:not([data-check-mode="empty"]) .report-panel {
    display: grid;
    height: auto;
    margin: 0;
    align-content: start;
    gap: var(--ds-space-3);
  }

  body[data-check-mode="loading"] .report-head,
  body[data-check-mode="error"] .report-head {
    flex: 0 0 auto;
    padding: 14px 18px;
  }

  body[data-check-mode="loading"] .report-loading,
  body[data-check-mode="error"] .report-error {
    min-height: 0;
    flex: 1 1 auto;
    padding: 24px;
    border-radius: 17px;
  }

  body[data-check-mode="report"] .score-card,
  body[data-check-mode="updating"] .score-card {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(290px, .65fr);
    align-items: center;
    gap: var(--ds-space-4);
    min-height: 146px;
    padding: 16px 20px;
    border-radius: var(--ds-radius-card);
    box-shadow: var(--ds-card-shadow);
  }

  body[data-check-mode="report"] .score-result,
  body[data-check-mode="updating"] .score-result { gap: 16px; }

  body[data-check-mode="report"] .score-target,
  body[data-check-mode="updating"] .score-target { width: 64px; height: 64px; }
  body[data-check-mode="report"] .score-target::before,
  body[data-check-mode="updating"] .score-target::before { inset: 14px; }
  body[data-check-mode="report"] .score-target::after,
  body[data-check-mode="updating"] .score-target::after { inset: 24px; }
  body[data-check-mode="report"] .score-target i::before,
  body[data-check-mode="updating"] .score-target i::before { top: 7px; bottom: 7px; }
  body[data-check-mode="report"] .score-target i::after,
  body[data-check-mode="updating"] .score-target i::after { right: 7px; left: 7px; }

  body[data-check-mode="report"] .score-copy,
  body[data-check-mode="updating"] .score-copy { gap: 3px; }
  body[data-check-mode="report"] .score-copy > span,
  body[data-check-mode="updating"] .score-copy > span { font-size: 11px; }
  body[data-check-mode="report"] .score-copy > strong,
  body[data-check-mode="updating"] .score-copy > strong { font-size: clamp(25px, 2.5vw, 34px); }
  body[data-check-mode="report"] .score-copy > em,
  body[data-check-mode="updating"] .score-copy > em { font-size: 11px; line-height: 1.35; }

  body[data-check-mode="report"] .score-summary,
  body[data-check-mode="updating"] .score-summary {
    gap: 7px;
    margin: 0;
    padding-left: 18px;
    border-left: 1px solid rgba(98, 104, 122, .15);
  }

  body[data-check-mode="report"] .score-summary > div > span,
  body[data-check-mode="updating"] .score-summary > div > span { font-size: 9px; }
  body[data-check-mode="report"] .score-summary p,
  body[data-check-mode="updating"] .score-summary p { font-size: 10px; line-height: 1.35; }
  body[data-check-mode="report"] .score-summary details,
  body[data-check-mode="updating"] .score-summary details { padding-top: 6px; }
  body[data-check-mode="report"] .score-summary summary,
  body[data-check-mode="updating"] .score-summary summary { font-size: 10px; }

  body[data-check-mode="report"] .overview-grid,
  body[data-check-mode="updating"] .overview-grid {
    gap: var(--ds-space-3);
    margin-top: 0;
  }

  body[data-check-mode="report"] .overview-card,
  body[data-check-mode="updating"] .overview-card {
    min-height: 138px;
    padding: 12px 14px;
    border-radius: var(--ds-radius-card);
    box-shadow: none;
  }

  body[data-check-mode="report"] .overview-title,
  body[data-check-mode="updating"] .overview-title { min-height: 38px; gap: 8px; }
  body[data-check-mode="report"] .overview-title h3,
  body[data-check-mode="updating"] .overview-title h3 { font-size: 12px; line-height: 1.2; }
  body[data-check-mode="report"] .overview-icon,
  body[data-check-mode="updating"] .overview-icon { width: 27px; height: 27px; border-radius: 7px; }
  body[data-check-mode="report"] .overview-value,
  body[data-check-mode="updating"] .overview-value { margin-top: 6px; font-size: 27px; }
  body[data-check-mode="report"] .overview-card > b,
  body[data-check-mode="updating"] .overview-card > b { margin-top: 4px; font-size: 11px; }
  body[data-check-mode="report"] .overview-card > p,
  body[data-check-mode="updating"] .overview-card > p {
    display: -webkit-box;
    margin: 5px 0 7px;
    overflow: hidden;
    font-size: 9px;
    line-height: 1.35;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
  body[data-check-mode="report"] .overview-card > button,
  body[data-check-mode="updating"] .overview-card > button {
    min-height: 32px;
    border-radius: var(--ds-radius-control);
    font-size: 10px;
  }

  body[data-check-mode="report"] .report-list,
  body[data-check-mode="updating"] .report-list {
    min-height: 0;
    margin-top: 0;
    border-radius: var(--ds-radius-card);
    box-shadow: var(--ds-card-shadow);
  }

  body[data-check-mode="report"] .report-list-head,
  body[data-check-mode="updating"] .report-list-head { min-height: 44px; padding: 0 15px; }
  body[data-check-mode="report"] .report-block summary,
  body[data-check-mode="updating"] .report-block summary { min-height: 40px; padding: 6px 15px; gap: 9px; }

  body[data-check-mode="report"] .report-list.is-expanded .report-blocks,
  body[data-check-mode="updating"] .report-list.is-expanded .report-blocks {
    max-height: calc(100dvh - 280px);
    overflow: auto;
  }
}

/* Mobile polish: keep the same quiet violet system while turning the upload,
   preview and analysis controls into one coherent compact workspace. */
@media (max-width: 560px) {
  body[data-check-mode="empty"] .check-shell { padding-top: 12px; }
  body[data-check-mode="empty"] .check-intro { margin-bottom: 12px; }
  body[data-check-mode="empty"] .check-intro h1 {
    font-size: clamp(24px, 6.8vw, 27px);
    line-height: 1.03;
  }
  body[data-check-mode="empty"] .check-intro > p:not(.intro-eyebrow) {
    margin-top: 9px;
    font-size: 11px;
    line-height: 1.4;
  }

  body[data-check-mode="empty"] .drop-zone {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    grid-template-areas:
      "icon title"
      "icon action"
      "formats formats";
    min-height: 0;
    padding: 16px;
    align-items: center;
    gap: 5px 13px;
    color: var(--violet);
    border: 1px solid #ded8f1;
    border-radius: 16px;
    background:
      radial-gradient(circle at 92% 8%, rgba(105, 85, 199, .12), transparent 9rem),
      linear-gradient(145deg, #fff, #faf9ff);
    box-shadow: 0 9px 28px rgba(46, 42, 72, .06);
    text-align: left;
  }

  body[data-check-mode="empty"] .drop-icon {
    grid-area: icon;
    width: 54px;
    height: 54px;
    margin: 0;
    padding: 12px;
    border: 1px solid #e2ddf5;
    border-radius: 15px;
    background: rgba(255, 255, 255, .92);
    box-shadow: 0 8px 20px rgba(105, 85, 199, .1);
  }

  body[data-check-mode="empty"] .drop-zone strong {
    grid-area: title;
    align-self: end;
    font-size: 16px;
    line-height: 1.2;
  }

  body[data-check-mode="empty"] .drop-zone p {
    grid-area: action;
    align-self: start;
    width: 100%;
    margin: 0;
    font-size: 0;
  }

  body[data-check-mode="empty"] .drop-desktop-copy { display: none; }

  body[data-check-mode="empty"] .drop-zone p button {
    display: inline-flex;
    min-height: 36px;
    padding: 0 13px;
    align-items: center;
    justify-content: center;
    color: #fff;
    border-radius: 10px;
    background: linear-gradient(135deg, #7764d0, #5b48b4);
    box-shadow: 0 7px 16px rgba(105, 85, 199, .18);
    font-size: 11px;
    font-weight: 800;
  }

  body[data-check-mode="empty"] .drop-zone small {
    grid-area: formats;
    margin-top: 8px;
    padding-top: 10px;
    border-top: 1px solid #ece9f5;
    color: #777985;
    font-size: 9.5px;
    line-height: 1.35;
    text-align: left;
  }

  body[data-check-mode="empty"] .privacy-card {
    gap: 9px;
    padding: 12px 14px;
    border-radius: 15px;
  }
  body[data-check-mode="empty"] .privacy-card-icon { width: 27px; height: 27px; }
  body[data-check-mode="empty"] .privacy-card strong { font-size: 12px; }
  body[data-check-mode="empty"] .privacy-card p {
    margin-top: 3px;
    font-size: 9.5px;
    line-height: 1.35;
  }

  body[data-check-mode="empty"] .report-panel { margin-top: 8px; }
  body[data-check-mode="empty"] .report-head { padding: 14px 16px; }
  body[data-check-mode="empty"] .report-head h2 { font-size: 20px; }
  body[data-check-mode="empty"] .report-empty {
    min-height: 130px;
    padding: 18px;
  }
  body[data-check-mode="empty"] .report-empty > span { font-size: 34px; }
  body[data-check-mode="empty"] .report-empty p {
    max-width: 270px;
    margin-top: 7px;
    font-size: 10px;
  }

  body[data-check-mode="loading"] .check-shell,
  body[data-check-mode="report"] .check-shell,
  body[data-check-mode="updating"] .check-shell {
    padding: 10px 12px 12px;
  }

  body[data-check-mode="loading"] .workspace,
  body[data-check-mode="report"] .workspace,
  body[data-check-mode="updating"] .workspace { gap: var(--ds-space-2); }

  body[data-check-mode="loading"] .preview-card,
  body[data-check-mode="report"] .preview-card,
  body[data-check-mode="updating"] .preview-card {
    grid-template-columns: 84px minmax(0, 1fr);
    grid-template-areas:
      "preview summary"
      "preview replace"
      "actions actions";
    grid-template-rows: auto auto auto;
    gap: 8px 10px;
    padding: 10px;
    align-items: center;
    border: 1px solid #e3e4eb;
    border-radius: var(--ds-radius-card);
    box-shadow: var(--ds-card-shadow);
  }

  body[data-check-mode="loading"] .preview-frame,
  body[data-check-mode="report"] .preview-frame,
  body[data-check-mode="updating"] .preview-frame {
    grid-area: preview;
    display: grid;
    width: 84px;
    min-height: 104px;
    height: 104px;
    padding: 4px;
    place-items: center;
    border: 1px solid #ebe9f2;
    border-radius: var(--ds-radius-control);
    background:
      radial-gradient(circle at 50% 45%, rgba(105, 85, 199, .08), transparent 9rem),
      #f8f8fb;
  }

  body[data-check-mode="loading"] .preview-stage,
  body[data-check-mode="report"] .preview-stage,
  body[data-check-mode="updating"] .preview-stage {
    display: grid;
    width: 76px;
    height: 96px;
    place-items: center;
  }

  body[data-check-mode="loading"] .preview-frame img,
  body[data-check-mode="report"] .preview-frame img,
  body[data-check-mode="updating"] .preview-frame img {
    width: 76px !important;
    height: 96px !important;
    max-width: 100%;
    max-height: 100%;
    border-radius: 8px;
    object-fit: contain !important;
  }

  body[data-check-mode="loading"] .file-line,
  body[data-check-mode="report"] .file-line,
  body[data-check-mode="updating"] .file-line {
    display: contents;
  }

  body[data-check-mode="loading"] .file-summary,
  body[data-check-mode="report"] .file-summary,
  body[data-check-mode="updating"] .file-summary {
    grid-area: summary;
    min-width: 0;
    align-self: end;
  }

  body[data-check-mode="loading"] .file-summary strong,
  body[data-check-mode="report"] .file-summary strong,
  body[data-check-mode="updating"] .file-summary strong {
    font-size: 12px;
  }

  body[data-check-mode="loading"] .file-line .result-drop-hint,
  body[data-check-mode="report"] .file-line .result-drop-hint,
  body[data-check-mode="updating"] .file-line .result-drop-hint { font-size: 8.5px; }

  body[data-check-mode="loading"] .file-line .replace-button,
  body[data-check-mode="report"] .file-line .replace-button,
  body[data-check-mode="updating"] .file-line .replace-button {
    grid-area: replace;
    min-height: 36px;
    padding: 0 10px;
    align-self: start;
    justify-self: stretch;
    border: 1px solid #e2def2;
    border-radius: var(--ds-radius-control);
    font-size: 10.5px;
    white-space: nowrap;
  }

  body[data-check-mode="loading"] .file-actions,
  body[data-check-mode="report"] .file-actions,
  body[data-check-mode="updating"] .file-actions {
    grid-area: actions;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
    margin-top: 0;
    padding: 6px;
    border: 1px solid #e8e6f0;
    border-radius: var(--ds-radius-control);
    background: #f7f7fa;
  }

  body[data-check-mode="loading"] .file-actions:has(.is-physical[hidden]) .is-crops:not([hidden]),
  body[data-check-mode="report"] .file-actions:has(.is-physical[hidden]) .is-crops:not([hidden]),
  body[data-check-mode="updating"] .file-actions:has(.is-physical[hidden]) .is-crops:not([hidden]) { grid-column: 1 / -1; }

  body[data-check-mode="loading"] .file-actions .action-group-label,
  body[data-check-mode="report"] .file-actions .action-group-label,
  body[data-check-mode="updating"] .file-actions .action-group-label { display: none; }

  body[data-check-mode="loading"] .file-line .analysis-button,
  body[data-check-mode="report"] .file-line .analysis-button,
  body[data-check-mode="updating"] .file-line .analysis-button,
  body[data-check-mode="loading"] .file-line .analysis-button.is-detective,
  body[data-check-mode="report"] .file-line .analysis-button.is-detective,
  body[data-check-mode="updating"] .file-line .analysis-button.is-detective {
    grid-column: auto;
    display: flex;
    min-height: 36px;
    padding: 4px 7px;
    align-items: center;
    justify-content: center;
    gap: 5px;
    border-radius: var(--ds-radius-control);
    font-size: 9.5px;
    line-height: 1.05;
  }

  body[data-check-mode="loading"] .heatmap-notice,
  body[data-check-mode="report"] .heatmap-notice,
  body[data-check-mode="updating"] .heatmap-notice {
    grid-column: 1 / -1;
  }

  body[data-check-mode="loading"] .file-line .analysis-button small,
  body[data-check-mode="report"] .file-line .analysis-button small,
  body[data-check-mode="updating"] .file-line .analysis-button small { display: none; }

  body[data-check-mode="loading"] .analysis-button::before,
  body[data-check-mode="report"] .analysis-button::before,
  body[data-check-mode="updating"] .analysis-button::before {
    color: currentColor;
    font-size: 13px;
    line-height: 1;
    content: "◇";
  }
  body[data-check-mode="loading"] .analysis-button.is-detective::before,
  body[data-check-mode="report"] .analysis-button.is-detective::before,
  body[data-check-mode="updating"] .analysis-button.is-detective::before { content: "◎"; }
  body[data-check-mode="loading"] .analysis-button.is-dino::before,
  body[data-check-mode="report"] .analysis-button.is-dino::before,
  body[data-check-mode="updating"] .analysis-button.is-dino::before { content: "▦"; }
  body[data-check-mode="loading"] .analysis-button.is-crops::before,
  body[data-check-mode="report"] .analysis-button.is-crops::before,
  body[data-check-mode="updating"] .analysis-button.is-crops::before { content: "⌁"; }

  body[data-check-mode="report"] .score-card,
  body[data-check-mode="updating"] .score-card {
    padding: 14px;
    border-radius: var(--ds-radius-card);
  }

  body[data-check-mode="report"] .score-result,
  body[data-check-mode="updating"] .score-result { gap: 10px; }
  body[data-check-mode="report"] .score-target,
  body[data-check-mode="updating"] .score-target { width: 44px; height: 44px; }
  body[data-check-mode="report"] .score-target::before,
  body[data-check-mode="updating"] .score-target::before { inset: 11px; border-width: 2px; }
  body[data-check-mode="report"] .score-target::after,
  body[data-check-mode="updating"] .score-target::after { inset: 18px; }
  body[data-check-mode="report"] .score-copy > strong,
  body[data-check-mode="updating"] .score-copy > strong {
    font-size: 22px;
    line-height: 1.05;
  }
  body[data-check-mode="report"] .score-copy > small,
  body[data-check-mode="updating"] .score-copy > small { font-size: 9px; line-height: 1.25; }
  body[data-check-mode="report"] .score-copy > em,
  body[data-check-mode="updating"] .score-copy > em {
    display: -webkit-box;
    overflow: hidden;
    font-size: 9px;
    line-height: 1.3;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }

  body[data-check-mode="report"] .score-summary,
  body[data-check-mode="updating"] .score-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px 12px;
    margin-top: 11px;
    padding-top: 10px;
    border-top: 1px solid rgba(98, 104, 122, .15);
  }
  body[data-check-mode="report"] .score-summary p,
  body[data-check-mode="updating"] .score-summary p {
    font-size: 9px;
    line-height: 1.3;
  }
  body[data-check-mode="report"] .score-summary details,
  body[data-check-mode="updating"] .score-summary details {
    grid-column: 1 / -1;
    padding-top: 5px;
  }

  body[data-check-mode="report"] .overview-grid,
  body[data-check-mode="updating"] .overview-grid {
    grid-template-columns: 1fr;
    gap: 0;
    margin-top: 0;
    overflow: hidden;
    border: var(--ds-card-border);
    border-radius: var(--ds-radius-card);
    background: var(--surface);
    box-shadow: var(--ds-card-shadow);
  }

  body[data-check-mode="report"] .overview-card,
  body[data-check-mode="updating"] .overview-card {
    grid-template-columns: 32px minmax(0, 1fr) auto 18px;
    grid-template-areas: "overview-icon overview-title overview-value overview-chevron";
    min-height: 52px;
    padding: 8px 12px;
    align-items: center;
    justify-items: stretch;
    border: 0;
    border-bottom: var(--ds-card-border);
    border-radius: 0;
    background: var(--surface);
    box-shadow: none;
    text-align: left;
  }
  body[data-check-mode="report"] .overview-card:last-child,
  body[data-check-mode="updating"] .overview-card:last-child { border-bottom: 0; }
  body[data-check-mode="report"] .overview-title,
  body[data-check-mode="updating"] .overview-title {
    display: contents;
  }
  body[data-check-mode="report"] .overview-icon,
  body[data-check-mode="updating"] .overview-icon {
    grid-area: overview-icon;
    width: 28px;
    height: 28px;
    border-radius: 8px;
  }
  body[data-check-mode="report"] .overview-title h3,
  body[data-check-mode="updating"] .overview-title h3 {
    grid-area: overview-title;
    font-size: 11px;
    line-height: 1.2;
  }
  body[data-check-mode="report"] .overview-title h3 br,
  body[data-check-mode="updating"] .overview-title h3 br { display: none; }
  body[data-check-mode="report"] .overview-value,
  body[data-check-mode="updating"] .overview-value {
    grid-area: overview-value;
    margin: 0 18px 0 8px;
    font-size: 14px;
    line-height: 1;
    white-space: nowrap;
  }
  body[data-check-mode="report"] .overview-card > b,
  body[data-check-mode="updating"] .overview-card > b,
  body[data-check-mode="report"] .overview-card > p,
  body[data-check-mode="updating"] .overview-card > p { display: none; }

  body[data-check-mode="report"] .report-list,
  body[data-check-mode="updating"] .report-list {
    margin-top: 0;
    border-radius: var(--ds-radius-card);
  }

  body[data-check-mode="report"] .report-list-head,
  body[data-check-mode="updating"] .report-list-head,
  body[data-check-mode="report"] .report-list-head button,
  body[data-check-mode="updating"] .report-list-head button { min-height: 50px; }

  body[data-check-mode="report"] .result-disclaimer,
  body[data-check-mode="updating"] .result-disclaimer,
  body[data-check-mode="report"] .check-footer,
  body[data-check-mode="updating"] .check-footer { display: none; }
}

/* Product landing state: before a file exists there is no report to show.
   The first viewport is one product promise and one primary action. */
body[data-check-mode="empty"] .report-panel { display: none; }
body[data-check-mode="empty"] .workspace { display: block; }
body[data-check-mode="empty"] .media-column {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}
body[data-check-mode="empty"] .drop-zone,
body[data-check-mode="empty"] .privacy-card {
  grid-column: 1;
  grid-row: auto;
}
body[data-check-mode="empty"] .intro-detail { display: none; }
body:not([data-check-mode="empty"]) .landing-hero { display: contents; }
body:not([data-check-mode="empty"]) .capability-list,
body:not([data-check-mode="empty"]) .check-shell > .seo-anchor-nav { display: none; }

.capability-list {
  display: flex;
  margin-top: var(--ds-space-5);
  flex-wrap: wrap;
  gap: var(--ds-space-2);
}
.capability-list a {
  display: inline-flex;
  min-height: 36px;
  padding: 0 13px;
  align-items: center;
  gap: 7px;
  color: #4f4382;
  border: var(--ds-card-border);
  border-radius: var(--ds-radius-pill);
  background: var(--surface-subtle, #f8f7fc);
  font-size: 11px;
  font-weight: 780;
  text-decoration: none;
}
.capability-list a:hover { border-color: #c7bfe8; background: var(--violet-soft); }
.capability-list a > span { color: var(--violet); font-size: 15px; }

@media (min-width: 981px) {
  body[data-check-mode="empty"] .check-header {
    width: min(1200px, calc(100% - 48px));
    min-height: 56px;
  }
  body[data-check-mode="empty"] .check-shell {
    width: min(1200px, calc(100% - 48px));
    padding: 0;
  }
  body[data-check-mode="empty"] .landing-hero {
    display: grid;
    grid-template-columns: minmax(0, .95fr) minmax(480px, 1.05fr);
    min-height: calc(100svh - 56px);
    padding: 32px 0 40px;
    align-items: center;
    gap: 56px;
  }
  body[data-check-mode="empty"] .check-intro {
    max-width: none;
    margin: 0;
    text-align: left;
  }
  body[data-check-mode="empty"] .check-intro h1 {
    max-width: 540px;
    margin: 0;
    font-size: clamp(42px, 3.7vw, 52px);
    line-height: 1.04;
  }
  body[data-check-mode="empty"] .check-intro > p:not(.intro-eyebrow):not(.intro-detail) {
    max-width: 470px;
    margin: 16px 0 0;
    font-size: 16px;
    line-height: 1.5;
  }
  body[data-check-mode="empty"] .intro-detail { display: none; }
  body[data-check-mode="empty"] .workspace { min-width: 0; }
  body[data-check-mode="empty"] .drop-zone {
    min-height: 272px;
    padding: 28px;
    border: 1px solid #dedbe9;
    border-radius: var(--ds-radius-hero);
    background:
      radial-gradient(circle at 88% 12%, rgba(105, 85, 199, .10), transparent 13rem),
      linear-gradient(145deg, #fff, #faf9ff);
    box-shadow: var(--ds-card-shadow);
  }
  body[data-check-mode="empty"] .drop-zone::after {
    position: absolute;
    inset: 10px;
    border: 1px dashed #c9c2ee;
    border-radius: 13px;
    content: "";
    pointer-events: none;
  }
  body[data-check-mode="empty"] .drop-zone > * { position: relative; z-index: 1; }
  body[data-check-mode="empty"] .drop-zone input { position: absolute; }
  body[data-check-mode="empty"] .drop-icon { width: 52px; height: 52px; margin-bottom: 12px; }
  body[data-check-mode="empty"] .drop-zone strong { font-size: 20px; }
  body[data-check-mode="empty"] .drop-zone p {
    display: grid;
    margin: 8px 0 13px;
    justify-items: center;
    gap: 10px;
    font-size: 13px;
  }
  body[data-check-mode="empty"] .drop-zone p button {
    display: inline-flex;
    width: 230px;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    color: #fff;
    border-radius: var(--ds-radius-control);
    background: linear-gradient(135deg, #7562ce, #5946b2);
    box-shadow: 0 8px 18px rgba(105, 85, 199, .2);
    font-size: 12px;
    font-weight: 800;
  }
  body[data-check-mode="empty"] .drop-zone small { font-size: 10px; }
  body[data-check-mode="empty"] .privacy-card {
    min-height: 88px;
    padding: 14px 16px;
    align-items: center;
    border-radius: var(--ds-radius-card);
    box-shadow: var(--ds-card-shadow);
  }
  body[data-check-mode="empty"] .privacy-card-icon { font-size: 13px; font-weight: 850; }
  body[data-check-mode="empty"] .privacy-card p { margin-top: 5px; font-size: 10px; line-height: 1.45; }
  body[data-check-mode="empty"] .check-shell > .seo-anchor-nav { margin-top: 24px; }
  body[data-check-mode="empty"] .seo-guide { margin-top: 20px; }
}

@media (min-width: 561px) and (max-width: 980px) {
  body[data-check-mode="empty"] .check-header {
    width: min(100% - 32px, 900px);
    min-height: 56px;
  }
  body[data-check-mode="empty"] .check-shell {
    width: min(100% - 32px, 900px);
    padding: 0;
  }
  body[data-check-mode="empty"] .landing-hero {
    min-height: calc(100svh - 56px);
    padding: 24px 0 32px;
  }
  body[data-check-mode="empty"] .check-intro {
    max-width: none;
    margin: 0;
    text-align: left;
  }
  body[data-check-mode="empty"] .check-intro h1 {
    max-width: 520px;
    margin: 0;
    font-size: clamp(34px, 4.6vw, 40px);
    line-height: 1.04;
  }
  body[data-check-mode="empty"] .check-intro > p:not(.intro-eyebrow):not(.intro-detail) {
    max-width: 480px;
    margin: 13px 0 0;
    font-size: 14px;
    line-height: 1.45;
  }
  body[data-check-mode="empty"] .capability-list { margin-top: 18px; }
  body[data-check-mode="empty"] .drop-zone {
    min-height: 230px;
    padding: 24px;
    border: 1px solid #dedbe9;
    border-radius: var(--ds-radius-hero);
    background:
      radial-gradient(circle at 88% 12%, rgba(105, 85, 199, .10), transparent 12rem),
      linear-gradient(145deg, #fff, #faf9ff);
    box-shadow: var(--ds-card-shadow);
  }
  body[data-check-mode="empty"] .drop-zone p {
    display: grid;
    margin: 7px 0 12px;
    justify-items: center;
    gap: 9px;
  }
  body[data-check-mode="empty"] .drop-zone p button {
    display: inline-flex;
    width: min(230px, 100%);
    min-height: 44px;
    align-items: center;
    justify-content: center;
    color: #fff;
    border-radius: var(--ds-radius-control);
    background: linear-gradient(135deg, #7562ce, #5946b2);
    box-shadow: 0 8px 18px rgba(105, 85, 199, .2);
    font-size: 12px;
    font-weight: 800;
  }
  body[data-check-mode="empty"] .privacy-card {
    min-height: 82px;
    padding: 13px 15px;
    align-items: center;
    border-radius: var(--ds-radius-card);
  }
  body[data-check-mode="empty"] .privacy-card p { margin-top: 4px; font-size: 10px; line-height: 1.4; }
  body[data-check-mode="empty"] .check-shell > .seo-anchor-nav { margin-top: 22px; }
  body[data-check-mode="empty"] .seo-guide { margin-top: 18px; }
}

@media (min-width: 760px) and (max-width: 980px) {
  body[data-check-mode="empty"] .landing-hero {
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(360px, 1.08fr);
    align-items: center;
    gap: 32px;
  }
}

@media (min-width: 561px) and (max-width: 759px) {
  body[data-check-mode="empty"] .landing-hero { display: block; }
  body[data-check-mode="empty"] .workspace { margin-top: 22px; }
  body[data-check-mode="empty"] .check-intro h1 { max-width: 620px; }
}

@media (min-width: 561px) and (max-width: 980px) {
  body:not([data-check-mode="empty"]) {
    height: 100dvh;
    overflow: hidden;
    background: #f6f7f9;
  }
  body:not([data-check-mode="empty"]) .check-header {
    width: 100%;
    min-height: 54px;
    padding: 0 16px;
  }
  body:not([data-check-mode="empty"]) .check-shell {
    width: 100%;
    height: calc(100dvh - 54px);
    padding: 10px 12px 12px;
  }
  body:not([data-check-mode="empty"]) .check-intro,
  body:not([data-check-mode="empty"]) .drop-zone,
  body:not([data-check-mode="empty"]) .privacy-card,
  body:not([data-check-mode="empty"]) .result-disclaimer,
  body:not([data-check-mode="empty"]) .seo-guide,
  body:not([data-check-mode="empty"]) .check-footer { display: none; }
  body:not([data-check-mode="empty"]) .workspace {
    display: grid;
    grid-template-columns: 240px minmax(0, 1fr);
    height: 100%;
    gap: 10px;
    align-items: start;
  }
  body:not([data-check-mode="empty"]) .media-column { display: block; }
  body:not([data-check-mode="empty"]) .preview-card:not([hidden]) {
    display: grid;
    grid-template-rows: auto auto auto;
    height: auto;
    border-radius: var(--ds-radius-card);
    box-shadow: var(--ds-card-shadow);
  }
  body:not([data-check-mode="empty"]) .preview-frame {
    display: grid;
    height: 220px;
    min-height: 0;
    max-height: 220px;
    padding: 10px;
    place-items: center;
    overflow: hidden;
    background: #f8f8fb;
  }
  body:not([data-check-mode="empty"]) .preview-stage {
    display: grid;
    width: 100%;
    height: 100%;
    place-items: center;
  }
  body:not([data-check-mode="empty"]) .preview-frame img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
  }
  body:not([data-check-mode="empty"]) .file-line { gap: 6px; padding: 10px; }
  body:not([data-check-mode="empty"]) .file-summary > div { gap: 2px; }
  body:not([data-check-mode="empty"]) .file-line strong { font-size: 11px; }
  body:not([data-check-mode="empty"]) .file-line span { font-size: 9px; }
  body:not([data-check-mode="empty"]) .file-line .result-drop-hint { font-size: 8px; }
  body:not([data-check-mode="empty"]) .file-line .replace-button {
    min-height: 34px;
    width: 100%;
    border-radius: var(--ds-radius-control);
    font-size: 10px;
  }
  body:not([data-check-mode="empty"]) .file-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 5px;
    padding-top: 6px;
  }
  body:not([data-check-mode="empty"]) .file-actions .action-group-label,
  body:not([data-check-mode="empty"]) .analysis-button small { display: none; }
  body:not([data-check-mode="empty"]) .file-line .analysis-button,
  body:not([data-check-mode="empty"]) .file-line .analysis-button.is-detective {
    grid-column: auto;
    min-height: 32px;
    padding: 4px 5px;
    font-size: 8px;
  }
  body:not([data-check-mode="empty"]) .file-actions:has(.is-physical[hidden]) .is-crops:not([hidden]) { grid-column: 1 / -1; }
  body:not([data-check-mode="empty"]) .report-panel {
    display: grid;
    min-height: 0;
    margin: 0;
    align-content: start;
    gap: 8px;
  }
  body[data-check-mode="report"] .score-card,
  body[data-check-mode="updating"] .score-card {
    padding: 12px 14px;
    border-radius: var(--ds-radius-card);
    box-shadow: var(--ds-card-shadow);
  }
  body[data-check-mode="report"] .score-result,
  body[data-check-mode="updating"] .score-result { gap: 10px; }
  body[data-check-mode="report"] .score-target,
  body[data-check-mode="updating"] .score-target { width: 48px; height: 48px; }
  body[data-check-mode="report"] .score-target::before,
  body[data-check-mode="updating"] .score-target::before { inset: 11px; border-width: 2px; }
  body[data-check-mode="report"] .score-target::after,
  body[data-check-mode="updating"] .score-target::after { inset: 19px; }
  body[data-check-mode="report"] .score-copy > span,
  body[data-check-mode="updating"] .score-copy > span { font-size: 9px; }
  body[data-check-mode="report"] .score-copy > strong,
  body[data-check-mode="updating"] .score-copy > strong { font-size: clamp(20px, 3vw, 25px); line-height: 1.04; }
  body[data-check-mode="report"] .score-copy > small,
  body[data-check-mode="updating"] .score-copy > small,
  body[data-check-mode="report"] .score-copy > em,
  body[data-check-mode="updating"] .score-copy > em { font-size: 9px; line-height: 1.25; }
  body[data-check-mode="report"] .score-summary,
  body[data-check-mode="updating"] .score-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px 12px;
    margin-top: 10px;
    padding-top: 9px;
  }
  body[data-check-mode="report"] .score-summary p,
  body[data-check-mode="updating"] .score-summary p { font-size: 8.5px; line-height: 1.3; }
  body[data-check-mode="report"] .score-summary details,
  body[data-check-mode="updating"] .score-summary details { grid-column: 1 / -1; padding-top: 4px; }
  body[data-check-mode="report"] .overview-grid,
  body[data-check-mode="updating"] .overview-grid {
    grid-template-columns: 1fr;
    gap: 0;
    margin-top: 0;
    overflow: hidden;
    border: var(--ds-card-border);
    border-radius: var(--ds-radius-card);
    background: var(--surface);
    box-shadow: var(--ds-card-shadow);
  }
  body[data-check-mode="report"] .overview-card,
  body[data-check-mode="updating"] .overview-card {
    position: relative;
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr) auto 18px;
    grid-template-areas: "overview-icon overview-title overview-value overview-chevron";
    min-height: 48px;
    padding: 7px 11px;
    align-items: center;
    border: 0;
    border-bottom: var(--ds-card-border);
    border-radius: 0;
    background: var(--surface);
    box-shadow: none;
  }
  body[data-check-mode="report"] .overview-card:last-child,
  body[data-check-mode="updating"] .overview-card:last-child { border-bottom: 0; }
  body[data-check-mode="report"] .overview-title,
  body[data-check-mode="updating"] .overview-title { display: contents; }
  body[data-check-mode="report"] .overview-icon,
  body[data-check-mode="updating"] .overview-icon {
    grid-area: overview-icon;
    width: 27px;
    height: 27px;
    border-radius: 8px;
  }
  body[data-check-mode="report"] .overview-title h3,
  body[data-check-mode="updating"] .overview-title h3 { grid-area: overview-title; font-size: 10px; line-height: 1.2; }
  body[data-check-mode="report"] .overview-title h3 br,
  body[data-check-mode="updating"] .overview-title h3 br { display: none; }
  body[data-check-mode="report"] .overview-value,
  body[data-check-mode="updating"] .overview-value {
    grid-area: overview-value;
    margin: 0 16px 0 8px;
    color: var(--muted);
    font-size: 13px;
    white-space: nowrap;
  }
  body[data-check-mode="report"] .overview-card > b,
  body[data-check-mode="updating"] .overview-card > b,
  body[data-check-mode="report"] .overview-card > p,
  body[data-check-mode="updating"] .overview-card > p { display: none; }
  body[data-check-mode="report"] .overview-card > button,
  body[data-check-mode="updating"] .overview-card > button {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    padding-right: 12px;
    border: 0;
    background: transparent;
    font-size: 0;
    text-align: right;
  }
  body[data-check-mode="report"] .overview-card > button::after,
  body[data-check-mode="updating"] .overview-card > button::after { color: #8a8d97; font-size: 20px; content: "›"; }
  body[data-check-mode="report"] .report-list,
  body[data-check-mode="updating"] .report-list {
    margin-top: 0;
    border-radius: var(--ds-radius-card);
    box-shadow: var(--ds-card-shadow);
  }
  body[data-check-mode="report"] .report-list-head,
  body[data-check-mode="updating"] .report-list-head { min-height: 48px; padding: 0; border-bottom: 0; }
  body[data-check-mode="report"] .report-list-head h3,
  body[data-check-mode="updating"] .report-list-head h3 { display: none; }
  body[data-check-mode="report"] .report-list-head button,
  body[data-check-mode="updating"] .report-list-head button {
    display: flex;
    width: 100%;
    min-height: 48px;
    padding: 0 12px;
    align-items: center;
    justify-content: space-between;
  }
  body[data-check-mode="report"] .report-list:not(.is-expanded) .report-blocks,
  body[data-check-mode="updating"] .report-list:not(.is-expanded) .report-blocks { display: none; }
}

@media (max-width: 560px) {
  body[data-check-mode="empty"] .check-header { min-height: 56px; }
  body[data-check-mode="empty"] .check-shell {
    width: 100%;
    padding: 0 12px;
  }
  body[data-check-mode="empty"] .landing-hero {
    display: block;
    min-height: calc(100svh - 56px);
    padding: 14px 0 20px;
  }
  body[data-check-mode="empty"] .check-intro { margin: 0; }
  body[data-check-mode="empty"] .check-intro .intro-eyebrow { margin-bottom: 6px; font-size: 9px; }
  body[data-check-mode="empty"] .check-intro h1 {
    max-width: 355px;
    font-size: clamp(28px, 7.7vw, 30px);
    line-height: 1.04;
  }
  body[data-check-mode="empty"] .check-intro > p:not(.intro-eyebrow):not(.intro-detail) {
    margin-top: 10px;
    font-size: 13px;
    line-height: 1.42;
  }
  body[data-check-mode="empty"] .intro-detail { display: none; }
  body[data-check-mode="empty"] .capability-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 12px;
    gap: 6px;
  }
  body[data-check-mode="empty"] .capability-list a {
    min-height: 38px;
    padding: 0 6px;
    justify-content: center;
    gap: 5px;
    border-radius: var(--ds-radius-control);
    font-size: 10px;
    white-space: nowrap;
  }
  body[data-check-mode="empty"] .workspace { margin-top: 14px; }
  body[data-check-mode="empty"] .drop-zone {
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr);
    grid-template-areas:
      "icon title"
      "action action"
      "formats formats";
    min-height: 154px;
    padding: 14px;
    align-items: center;
    gap: 8px 10px;
    border-radius: 16px;
  }
  body[data-check-mode="empty"] .drop-icon {
    grid-area: icon;
    width: 40px;
    height: 40px;
    padding: 8px;
    border-radius: var(--ds-radius-control);
  }
  body[data-check-mode="empty"] .drop-zone strong {
    grid-area: title;
    align-self: center;
    font-size: 16px;
  }
  body[data-check-mode="empty"] .drop-zone p {
    grid-area: action;
    display: block;
    width: 100%;
    margin: 0;
  }
  body[data-check-mode="empty"] .drop-desktop-copy { display: none; }
  body[data-check-mode="empty"] .drop-zone p button {
    display: flex;
    width: 100%;
    min-height: 46px;
    padding: 0 14px;
    align-items: center;
    justify-content: center;
    color: #fff;
    border-radius: var(--ds-radius-control);
    background: linear-gradient(135deg, #7562ce, #5946b2);
    box-shadow: 0 8px 18px rgba(105, 85, 199, .18);
    font-size: 12px;
    font-weight: 800;
  }
  body[data-check-mode="empty"] .drop-zone small {
    grid-area: formats;
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 9.5px;
    text-align: center;
    white-space: nowrap;
  }
  body[data-check-mode="empty"] .privacy-card {
    min-height: 82px;
    padding: 11px 12px;
    align-items: start;
    border-radius: var(--ds-radius-card);
  }
  body[data-check-mode="empty"] .privacy-card-icon {
    width: 26px;
    height: 26px;
    font-size: 11px;
    font-weight: 850;
  }
  body[data-check-mode="empty"] .privacy-card strong { font-size: 11px; }
  body[data-check-mode="empty"] .privacy-card p { margin-top: 3px; font-size: 9.5px; line-height: 1.35; }
}

@media (max-width: 370px) {
  body:not([data-check-mode="empty"]) .check-shell { padding-bottom: 7px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; }
  .spinner { animation-duration: 1.5s; }
}

/* 2026 landing refresh — the accepted desktop composition, extended into a
   responsive app surface. Report-state rules above intentionally stay intact. */
.capability-list a svg {
  width: 20px;
  height: 20px;
  flex: none;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.trust-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 34px;
  gap: 18px;
}

.trust-list span {
  position: relative;
  padding-left: 25px;
  color: #3e4352;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.45;
}

.trust-list span::before {
  position: absolute;
  top: 1px;
  left: 0;
  display: grid;
  width: 16px;
  height: 16px;
  place-items: center;
  color: #31a85a;
  border: 1.5px solid #43b86a;
  border-radius: 50%;
  font-size: 10px;
  font-weight: 900;
  line-height: 1;
  content: "✓";
}

.drop-zone p button svg {
  width: 18px;
  height: 18px;
  margin-right: 8px;
  flex: none;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body:not([data-check-mode="empty"]) .trust-list { display: none; }

@media (min-width: 981px) {
  body[data-check-mode="empty"] {
    padding: 18px;
    background:
      radial-gradient(circle at 3% 5%, rgba(119, 100, 208, .10), transparent 28rem),
      linear-gradient(135deg, #f6f5ff 0%, #fafbff 42%, #f7f8ff 100%);
  }

  body[data-check-mode="empty"] .check-header,
  body[data-check-mode="empty"] .check-shell {
    width: min(1480px, 100%);
    background: rgba(255, 255, 255, .92);
  }

  body[data-check-mode="empty"] .check-header {
    position: relative;
    min-height: 86px;
    padding: 0 28px;
    border: 1px solid rgba(218, 216, 235, .82);
    border-bottom-color: #ecebf4;
    border-radius: 18px 18px 0 0;
    box-shadow: 0 -2px 34px rgba(58, 49, 102, .045);
  }

  body[data-check-mode="empty"] .check-header > nav {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
  }

  body[data-check-mode="empty"] .check-header > nav a {
    display: grid;
    width: 42px;
    height: 42px;
    padding: 0;
    place-items: center;
    border-color: #d9d2f3;
    background: rgba(255, 255, 255, .7);
    font-size: 13px;
  }

  body[data-check-mode="empty"] .brand { gap: 13px; font-size: 22px; }
  body[data-check-mode="empty"] .brand > span {
    width: 46px;
    height: 46px;
    border-radius: 13px;
    box-shadow: 0 10px 24px rgba(89, 70, 178, .2);
    font-size: 25px;
  }

  body[data-check-mode="empty"] .privacy-note { font-size: 13px; }

  body[data-check-mode="empty"] .check-shell {
    padding: 0 36px 28px;
    border: 1px solid rgba(218, 216, 235, .82);
    border-top: 0;
    border-radius: 0 0 18px 18px;
    box-shadow: 0 24px 70px rgba(58, 49, 102, .07);
  }

  body[data-check-mode="empty"] .landing-hero {
    grid-template-columns: minmax(420px, .88fr) minmax(520px, 1.12fr);
    min-height: calc(100svh - 124px);
    padding: 48px 0 56px;
    gap: clamp(44px, 5vw, 86px);
  }

  body[data-check-mode="empty"] .check-intro h1 {
    max-width: 600px;
    font-size: clamp(46px, 4.15vw, 62px);
    line-height: 1.08;
    letter-spacing: -.052em;
  }

  body[data-check-mode="empty"] .check-intro > p:not(.intro-eyebrow):not(.intro-detail) {
    max-width: 540px;
    margin-top: 22px;
    color: #70758b;
    font-size: 18px;
    line-height: 1.55;
  }

  body[data-check-mode="empty"] .intro-eyebrow {
    margin-bottom: 22px;
    font-size: 12px;
    letter-spacing: .15em;
  }

  body[data-check-mode="empty"] .capability-list { margin-top: 30px; gap: 12px; }
  body[data-check-mode="empty"] .capability-list a {
    min-height: 54px;
    padding: 0 18px;
    gap: 10px;
    border-color: #ddd8f1;
    background: rgba(255, 255, 255, .78);
    font-size: 14px;
  }

  body[data-check-mode="empty"] .drop-zone {
    min-height: 420px;
    padding: 46px 34px;
    border-color: #e3e0ee;
    border-radius: 22px;
    background:
      radial-gradient(circle at 50% 88%, rgba(104, 82, 199, .08), transparent 15rem),
      linear-gradient(145deg, #fff 0%, #fcfbff 100%);
    box-shadow: 0 20px 60px rgba(55, 44, 108, .07);
  }

  body[data-check-mode="empty"] .drop-zone::after {
    inset: 12px;
    border-color: #c9c0ee;
    border-radius: 16px;
  }

  body[data-check-mode="empty"] .drop-icon {
    width: 78px;
    height: 78px;
    margin-bottom: 18px;
    filter: drop-shadow(0 9px 14px rgba(105, 85, 199, .14));
  }

  body[data-check-mode="empty"] .drop-zone strong { font-size: 23px; }
  body[data-check-mode="empty"] .drop-zone p { margin: 10px 0 16px; gap: 16px; font-size: 14px; }
  body[data-check-mode="empty"] .drop-zone p button {
    width: 290px;
    min-height: 54px;
    border-radius: 12px;
    box-shadow: 0 13px 28px rgba(95, 73, 190, .27);
    font-size: 15px;
    transition: transform .18s ease, box-shadow .18s ease;
  }

  body[data-check-mode="empty"] .drop-zone p button svg {
    width: 21px;
    height: 21px;
    margin-right: 10px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
  }

  body[data-check-mode="empty"] .drop-zone p button:hover {
    transform: translateY(-2px);
    box-shadow: 0 17px 34px rgba(95, 73, 190, .32);
  }

  body[data-check-mode="empty"] .drop-zone small { font-size: 12px; }
  body[data-check-mode="empty"] .privacy-card {
    min-height: 98px;
    padding: 18px 22px;
    gap: 16px;
    border-radius: 18px;
    box-shadow: 0 14px 42px rgba(55, 44, 108, .055);
  }

  body[data-check-mode="empty"] .privacy-card-icon {
    width: 42px;
    height: 42px;
    border-radius: 13px;
    font-size: 20px;
  }
  body[data-check-mode="empty"] .privacy-card strong { font-size: 14px; }
  body[data-check-mode="empty"] .privacy-card p { margin-top: 5px; font-size: 11.5px; }
}

@media (min-width: 981px) and (max-height: 800px) {
  body[data-check-mode="empty"] { padding: 12px; }
  body[data-check-mode="empty"] .check-header { min-height: 68px; }
  body[data-check-mode="empty"] .brand { font-size: 19px; }
  body[data-check-mode="empty"] .brand > span { width: 38px; height: 38px; font-size: 21px; }
  body[data-check-mode="empty"] .check-shell { padding-inline: 30px; }
  body[data-check-mode="empty"] .landing-hero {
    min-height: calc(100svh - 94px);
    padding: 30px 0 34px;
    gap: 42px;
  }
  body[data-check-mode="empty"] .check-intro h1 { font-size: clamp(38px, 3.8vw, 52px); }
  body[data-check-mode="empty"] .check-intro > p:not(.intro-eyebrow):not(.intro-detail) { margin-top: 16px; font-size: 15px; }
  body[data-check-mode="empty"] .intro-eyebrow { margin-bottom: 14px; }
  body[data-check-mode="empty"] .capability-list { margin-top: 22px; }
  body[data-check-mode="empty"] .capability-list a { min-height: 46px; padding-inline: 15px; font-size: 12px; }
  body[data-check-mode="empty"] .trust-list { margin-top: 24px; gap: 12px; }
  body[data-check-mode="empty"] .trust-list span { font-size: 10.5px; }
  body[data-check-mode="empty"] .drop-zone { min-height: 340px; padding: 32px; }
  body[data-check-mode="empty"] .drop-icon { width: 64px; height: 64px; margin-bottom: 12px; }
  body[data-check-mode="empty"] .drop-zone strong { font-size: 20px; }
  body[data-check-mode="empty"] .drop-zone p button { min-height: 48px; }
  body[data-check-mode="empty"] .privacy-card { min-height: 82px; padding-block: 14px; }
}

@media (min-width: 561px) and (max-width: 980px) {
  body[data-check-mode="empty"] .trust-list { margin-top: 22px; gap: 10px; }
  body[data-check-mode="empty"] .trust-list span { padding-left: 21px; font-size: 10px; }
  body[data-check-mode="empty"] .trust-list span::before { width: 14px; height: 14px; font-size: 8px; }
  body[data-check-mode="empty"] .capability-list a svg { width: 17px; height: 17px; }
}

@media (min-width: 760px) and (max-width: 980px) {
  body[data-check-mode="empty"] .landing-hero {
    min-height: auto;
    padding-top: clamp(54px, 9vh, 76px);
    align-items: start;
  }
}

@media (max-width: 560px) {
  html { background: #f7f6ff; }
  body[data-check-mode="empty"] {
    padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);
    background:
      radial-gradient(circle at 100% 0, rgba(112, 88, 202, .11), transparent 18rem),
      linear-gradient(180deg, #f8f7ff, #fff 34rem);
    overflow-x: clip;
  }
  body[data-check-mode="empty"] .check-header {
    position: sticky;
    z-index: 10;
    top: env(safe-area-inset-top);
    width: 100%;
    min-height: 64px;
    padding: 0 16px;
    border-bottom-color: rgba(221, 218, 235, .8);
    background: rgba(255, 255, 255, .82);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
  }
  body[data-check-mode="empty"] .brand { font-size: 18px; }
  body[data-check-mode="empty"] .brand > span { width: 36px; height: 36px; font-size: 20px; }
  body[data-check-mode="empty"] .privacy-note { font-size: 0; }
  body[data-check-mode="empty"] .privacy-note::after {
    color: #697084;
    font-size: 10px;
    content: "Telegram";
  }
  body[data-check-mode="empty"] .check-header > nav { order: 3; }
  body[data-check-mode="empty"] .check-header > nav a { min-width: 34px; min-height: 34px; padding: 0; display: grid; place-items: center; }
  body[data-check-mode="empty"] .check-shell { padding: 0 16px 28px; }
  body[data-check-mode="empty"] .landing-hero { min-height: auto; padding-top: 22px; }
  body[data-check-mode="empty"] .check-intro h1 {
    max-width: 390px;
    font-size: clamp(31px, 8.8vw, 36px);
    line-height: 1.06;
    letter-spacing: -.045em;
  }
  body[data-check-mode="empty"] .check-intro > p:not(.intro-eyebrow):not(.intro-detail) { font-size: 13px; line-height: 1.5; }
  body[data-check-mode="empty"] .capability-list { margin-top: 18px; gap: 7px; }
  body[data-check-mode="empty"] .capability-list a { min-height: 40px; padding-inline: 9px; font-size: 10px; }
  body[data-check-mode="empty"] .capability-list a svg { width: 16px; height: 16px; }
  body[data-check-mode="empty"] .trust-list { grid-template-columns: 1fr 1fr; margin-top: 18px; gap: 9px 14px; }
  body[data-check-mode="empty"] .trust-list span { padding-left: 21px; font-size: 10px; }
  body[data-check-mode="empty"] .trust-list span::before { width: 14px; height: 14px; font-size: 8px; }
  body[data-check-mode="empty"] .workspace { margin-top: 22px; }
  body[data-check-mode="empty"] .drop-zone {
    min-height: 194px;
    padding: 18px;
    border: 1px solid #ded9ef;
    background:
      radial-gradient(circle at 95% 0, rgba(105, 85, 199, .12), transparent 10rem),
      rgba(255, 255, 255, .94);
    box-shadow: 0 18px 46px rgba(55, 44, 108, .08);
  }
  body[data-check-mode="empty"] .drop-zone small { white-space: normal; }
  body[data-check-mode="empty"] .privacy-card { background: rgba(255, 255, 255, .84); }
  body[data-check-mode="empty"] .seo-anchor-nav,
  body[data-check-mode="empty"] .seo-guide,
  body[data-check-mode="empty"] .check-footer { display: none; }
}

@media (min-width: 981px) {
  body[data-check-mode="empty"] .header-actions nav a {
    width: 42px;
    height: 42px;
    padding: 0;
    font-size: 13px;
  }
  body[data-check-mode="empty"] .profile-stub { min-height: 44px; padding-right: 15px; font-size: 13px; }
  body[data-check-mode="empty"] .profile-stub > svg { width: 31px; height: 31px; }
}

@media (min-width: 981px) and (max-width: 1120px) {
  body[data-check-mode="empty"] .check-shell { padding-inline: 24px; }
  body[data-check-mode="empty"] .landing-hero {
    grid-template-columns: minmax(340px, .84fr) minmax(0, 1.16fr);
    gap: 28px;
  }
  body[data-check-mode="empty"] .check-intro h1 { font-size: clamp(37px, 4.3vw, 46px); }
  body[data-check-mode="empty"] .capability-list { gap: 7px; }
  body[data-check-mode="empty"] .capability-list a { padding-inline: 11px; }
  body[data-check-mode="empty"] .trust-list { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 560px) {
  body[data-check-mode="empty"] .header-actions { gap: 8px; }
  body[data-check-mode="empty"] .header-divider { height: 20px; }
  body[data-check-mode="empty"] .profile-stub { min-height: 34px; padding: 0 9px 0 5px; gap: 5px; font-size: 10px; }
  body[data-check-mode="empty"] .profile-stub > svg { width: 25px; height: 25px; }
}

/* Retina laptop windows often expose a 640–759 CSS-pixel viewport even when
   the screenshot itself is much wider. Keep the desktop composition there. */
@media (min-width: 640px) and (max-width: 980px) {
  body[data-check-mode="empty"] .landing-hero {
    display: grid;
    grid-template-columns: minmax(260px, .82fr) minmax(330px, 1.18fr);
    min-height: auto;
    padding: clamp(38px, 7vh, 64px) 0 34px;
    align-items: start;
    gap: clamp(20px, 3.4vw, 32px);
  }
  body[data-check-mode="empty"] .workspace { min-width: 0; margin-top: 0; }
  body[data-check-mode="empty"] .check-intro h1 {
    max-width: 390px;
    font-size: clamp(30px, 4.5vw, 38px);
    line-height: 1.05;
  }
  body[data-check-mode="empty"] .check-intro > p:not(.intro-eyebrow):not(.intro-detail) {
    margin-top: 12px;
    font-size: 12px;
    line-height: 1.45;
  }
  body[data-check-mode="empty"] .capability-list { margin-top: 16px; gap: 6px; }
  body[data-check-mode="empty"] .capability-list a {
    min-height: 36px;
    padding: 0 8px;
    gap: 5px;
    font-size: 9px;
  }
  body[data-check-mode="empty"] .capability-list a svg { width: 15px; height: 15px; }
  body[data-check-mode="empty"] .trust-list {
    grid-template-columns: 1fr;
    margin-top: 16px;
    gap: 8px;
  }
  body[data-check-mode="empty"] .trust-list span { font-size: 9.5px; }
  body[data-check-mode="empty"] .drop-zone { min-height: 330px; }
  body[data-check-mode="empty"] .privacy-card { min-height: 82px; }
}

/* Result workspace — faithful to the approved second-screen composition. */
.overview-icon svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.replace-button .replace-icon {
  width: 18px;
  height: 18px;
  flex: none;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.file-summary {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
}

.file-summary-icon {
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  color: #6854c3;
  border: 1px solid #e4def8;
  border-radius: 10px;
  background: #f6f3ff;
}

.file-summary-icon svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

@media (min-width: 981px) and (min-height: 640px) {
  body:not([data-check-mode="empty"]) {
    background:
      radial-gradient(circle at 82% 6%, rgba(106, 83, 199, .035), transparent 26rem),
      #f6f7fa;
  }

  body:not([data-check-mode="empty"]) .check-header,
  body:not([data-check-mode="empty"]) .check-shell {
    width: min(1320px, calc(100% - 32px));
  }

  body:not([data-check-mode="empty"]) .check-header {
    min-height: 58px;
    border-bottom-color: #e7e8ee;
  }

  body:not([data-check-mode="empty"]) .check-shell {
    height: calc(100dvh - 58px);
    padding: 10px 0 14px;
  }

  body:not([data-check-mode="empty"]) .workspace {
    grid-template-columns: 300px minmax(0, 1fr);
    gap: 16px;
  }

  body:not([data-check-mode="empty"]) .preview-card:not([hidden]) {
    border-color: #e0e1e8;
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 15px 38px rgba(31, 35, 48, .065);
  }

  body:not([data-check-mode="empty"]) .preview-frame {
    height: clamp(278px, 42dvh, 320px);
    min-height: 278px;
    max-height: 320px;
    padding: 14px 14px 0;
    background: #f9f8fb;
  }

  body:not([data-check-mode="empty"]) .preview-frame img {
    max-width: 252px;
    max-height: 100%;
    border-radius: 9px;
  }

  body:not([data-check-mode="empty"]) .file-line { gap: 7px; padding: 13px 14px 14px; }
  body:not([data-check-mode="empty"]) .file-summary {
    padding-bottom: 10px;
    border-bottom: 1px solid #eeeef3;
  }
  body:not([data-check-mode="empty"]) .file-line strong { font-size: 12px; }
  body:not([data-check-mode="empty"]) .file-line span { font-size: 10px; line-height: 1.3; }
  body:not([data-check-mode="empty"]) .file-line .result-drop-hint { color: #684fbd; font-size: 9px; }
  body:not([data-check-mode="empty"]) .file-line .replace-button {
    min-height: 38px;
    margin-top: 2px;
    border-radius: 10px;
    background: #f3efff;
    font-size: 11px;
  }

  body:not([data-check-mode="empty"]) .report-panel { gap: 12px; }

  body[data-check-mode="report"] .score-card,
  body[data-check-mode="updating"] .score-card {
    grid-template-columns: minmax(0, 1.48fr) minmax(270px, .52fr);
    min-height: 150px;
    padding: 18px 22px;
    border-color: #c9bdea;
    border-radius: 15px;
    background: linear-gradient(135deg, #fff 0%, #fbf9ff 100%);
    box-shadow: 0 14px 34px rgba(62, 47, 119, .055);
  }

  body[data-check-mode="report"] .score-result,
  body[data-check-mode="updating"] .score-result { gap: 18px; }
  body[data-check-mode="report"] .score-target,
  body[data-check-mode="updating"] .score-target { width: 70px; height: 70px; }
  body[data-check-mode="report"] .score-target::before,
  body[data-check-mode="updating"] .score-target::before { inset: 16px; }
  body[data-check-mode="report"] .score-target::after,
  body[data-check-mode="updating"] .score-target::after { inset: 27px; }
  body[data-check-mode="report"] .score-copy > strong,
  body[data-check-mode="updating"] .score-copy > strong { font-size: clamp(28px, 2.7vw, 38px); }
  body[data-check-mode="report"] .score-copy > small,
  body[data-check-mode="updating"] .score-copy > small { font-size: 11px; }
  body[data-check-mode="report"] .score-copy > em,
  body[data-check-mode="updating"] .score-copy > em { max-width: 650px; font-size: 11px; line-height: 1.35; }
  body[data-check-mode="report"] .score-summary,
  body[data-check-mode="updating"] .score-summary { padding-left: 20px; }

  body[data-check-mode="report"] .overview-grid,
  body[data-check-mode="updating"] .overview-grid { gap: 12px; }
  body[data-check-mode="report"] .overview-card,
  body[data-check-mode="updating"] .overview-card {
    min-height: 154px;
    padding: 14px 14px 13px;
    border-radius: 15px;
  }
  body[data-check-mode="report"] .overview-icon,
  body[data-check-mode="updating"] .overview-icon { width: 31px; height: 31px; border-radius: 8px; }
  body[data-check-mode="report"] .overview-title h3,
  body[data-check-mode="updating"] .overview-title h3 { font-size: 12px; }
  body[data-check-mode="report"] .overview-value,
  body[data-check-mode="updating"] .overview-value { font-size: 30px; }
  body[data-check-mode="report"] .overview-card > p,
  body[data-check-mode="updating"] .overview-card > p { font-size: 9.5px; }

  body[data-check-mode="report"] .report-list,
  body[data-check-mode="updating"] .report-list {
    border-radius: 15px;
    box-shadow: 0 14px 34px rgba(31, 35, 48, .055);
  }
  body[data-check-mode="report"] .report-list-head,
  body[data-check-mode="updating"] .report-list-head { min-height: 48px; padding: 0 16px; }
  body[data-check-mode="report"] .report-list-head h3,
  body[data-check-mode="updating"] .report-list-head h3 { font-size: 14px; }
  body[data-check-mode="report"] .report-block summary,
  body[data-check-mode="updating"] .report-block summary { min-height: 42px; padding: 7px 16px; }
}

@media (max-width: 560px) {
  body:not([data-check-mode="empty"]) .overview-icon svg { display: none; }
  body:not([data-check-mode="empty"]) .file-summary {
    display: block;
    max-width: 100%;
    overflow: hidden;
  }
  body:not([data-check-mode="empty"]) .file-summary > div {
    max-width: 100%;
    overflow: hidden;
  }
  body:not([data-check-mode="empty"]) .file-summary strong,
  body:not([data-check-mode="empty"]) .file-summary span { max-width: 100%; }
  body:not([data-check-mode="empty"]) .file-summary-icon { display: none; }
}

/* Mobile result: use a readable document flow instead of compressing the
   desktop workspace into a single viewport. */
@media (max-width: 560px) {
  body[data-check-mode="loading"],
  body[data-check-mode="report"],
  body[data-check-mode="updating"] {
    height: auto;
    min-height: 100dvh;
    overflow-x: hidden;
    overflow-y: auto;
    background: #f6f7fa;
  }

  body[data-check-mode="loading"] .check-header,
  body[data-check-mode="report"] .check-header,
  body[data-check-mode="updating"] .check-header {
    position: sticky;
    z-index: 20;
    top: 0;
    min-height: 62px;
    padding: 0 14px;
    justify-content: space-between;
    background: rgba(255, 255, 255, .94);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
  }

  body:not([data-check-mode="empty"]) .brand { font-size: 16px; }
  body:not([data-check-mode="empty"]) .brand > span {
    width: 32px;
    height: 32px;
    font-size: 18px;
  }
  body:not([data-check-mode="empty"]) .header-actions { gap: 7px; }
  body:not([data-check-mode="empty"]) .header-divider { height: 20px; }
  body:not([data-check-mode="empty"]) .header-actions nav a {
    min-width: 32px;
    min-height: 32px;
    padding: 0 7px;
    font-size: 10px;
  }
  body:not([data-check-mode="empty"]) .profile-stub {
    min-height: 34px;
    padding: 0 9px 0 5px;
    gap: 5px;
    font-size: 10px;
  }
  body:not([data-check-mode="empty"]) .profile-stub > svg { width: 25px; height: 25px; }

  body[data-check-mode="loading"] .check-shell,
  body[data-check-mode="report"] .check-shell,
  body[data-check-mode="updating"] .check-shell {
    width: 100%;
    height: auto;
    padding: 12px 12px 28px;
  }

  body:not([data-check-mode="empty"]) .workspace {
    display: block;
    height: auto;
  }
  body:not([data-check-mode="empty"]) .report-panel {
    display: grid;
    margin-top: 12px;
    gap: 12px;
  }

  body[data-check-mode="loading"] .preview-card,
  body[data-check-mode="report"] .preview-card,
  body[data-check-mode="updating"] .preview-card {
    display: block;
    padding: 0;
    overflow: hidden;
    border: 1px solid #e1e2e9;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(31, 35, 48, .07);
  }

  body[data-check-mode="loading"] .preview-frame,
  body[data-check-mode="report"] .preview-frame,
  body[data-check-mode="updating"] .preview-frame {
    display: grid;
    width: 100%;
    height: clamp(220px, 72vw, 280px);
    min-height: 220px;
    max-height: 280px;
    padding: 16px;
    place-items: center;
    overflow: hidden;
    border: 0;
    border-radius: 0;
    background: #f3f3f7;
  }
  body[data-check-mode="loading"] .preview-stage,
  body[data-check-mode="report"] .preview-stage,
  body[data-check-mode="updating"] .preview-stage {
    display: grid;
    width: 100%;
    height: 100%;
    place-items: center;
  }
  body[data-check-mode="loading"] .preview-frame img,
  body[data-check-mode="report"] .preview-frame img,
  body[data-check-mode="updating"] .preview-frame img {
    width: auto !important;
    height: auto !important;
    max-width: 100%;
    max-height: 100%;
    border-radius: 10px;
    object-fit: contain !important;
  }

  body[data-check-mode="loading"] .file-line,
  body[data-check-mode="report"] .file-line,
  body[data-check-mode="updating"] .file-line {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: none;
    gap: 12px;
    padding: 16px;
  }
  body:not([data-check-mode="empty"]) .file-summary {
    grid-area: auto;
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    max-width: none;
    padding-bottom: 12px;
    gap: 11px;
    overflow: visible;
    border-bottom: 1px solid #ececf2;
  }
  body:not([data-check-mode="empty"]) .file-summary-icon {
    display: grid;
    width: 38px;
    height: 38px;
    border-radius: 11px;
  }
  body:not([data-check-mode="empty"]) .file-summary > div { overflow: hidden; }
  body:not([data-check-mode="empty"]) .file-line strong { font-size: 13px; }
  body:not([data-check-mode="empty"]) .file-line span { font-size: 10px; }
  body:not([data-check-mode="empty"]) .file-line .result-drop-hint { font-size: 9px; }
  body:not([data-check-mode="empty"]) .file-line .replace-button {
    grid-area: auto;
    width: 100%;
    min-height: 44px;
    margin: 0;
    align-self: auto;
    justify-self: stretch;
    border: 1px solid #e0dbf4;
    border-radius: 11px;
    background: #f3efff;
    font-size: 12px;
  }

  body[data-check-mode="report"] .score-card,
  body[data-check-mode="updating"] .score-card {
    padding: 18px 16px 16px;
    border-radius: 16px;
  }
  body[data-check-mode="report"] .score-result,
  body[data-check-mode="updating"] .score-result {
    grid-template-columns: 52px minmax(0, 1fr);
    align-items: start;
    gap: 12px;
  }
  body[data-check-mode="report"] .score-target,
  body[data-check-mode="updating"] .score-target { width: 52px; height: 52px; }
  body[data-check-mode="report"] .score-copy,
  body[data-check-mode="updating"] .score-copy { min-width: 0; }
  body[data-check-mode="report"] .score-copy > strong,
  body[data-check-mode="updating"] .score-copy > strong {
    max-width: 100%;
    font-size: clamp(23px, 6.7vw, 27px);
    line-height: 1.03;
    text-wrap: balance;
  }
  body[data-check-mode="report"] .score-copy > em,
  body[data-check-mode="updating"] .score-copy > em {
    display: block;
    overflow: visible;
    font-size: 10px;
    line-height: 1.4;
    -webkit-line-clamp: unset;
  }
  body[data-check-mode="report"] .score-summary,
  body[data-check-mode="updating"] .score-summary {
    grid-template-columns: 1fr;
    gap: 10px;
    margin-top: 15px;
  }
  body[data-check-mode="report"] .score-summary details,
  body[data-check-mode="updating"] .score-summary details { grid-column: auto; }

  body[data-check-mode="report"] .overview-grid,
  body[data-check-mode="updating"] .overview-grid { margin-top: 0; }
  body[data-check-mode="report"] .overview-card,
  body[data-check-mode="updating"] .overview-card {
    min-height: 58px;
    padding: 10px 16px;
  }
  body[data-check-mode="report"] .report-list,
  body[data-check-mode="updating"] .report-list { margin-top: 0; }
  body[data-check-mode="report"] .report-list-head button,
  body[data-check-mode="updating"] .report-list-head button { padding-inline: 16px; }
}

@media (max-width: 560px) {
  body[data-check-mode="loading"] .check-header,
  body[data-check-mode="report"] .check-header,
  body[data-check-mode="updating"] .check-header { padding-inline: 12px; }
}

/* Report document flow ----------------------------------------------------
   The report used to combine a viewport-locked body, a second vertical
   scroller for the expanded list and a third scroller inside raw payloads.
   Besides feeling awkward, a long payload could also contribute its intrinsic
   width to the grid and push the whole result off-screen. Keep the page as the
   only vertical scroll container and make every technical value shrink/wrap
   inside the report column. */
html,
body { max-width: 100%; overflow-x: clip; }

body:not([data-check-mode="empty"]) .workspace,
body:not([data-check-mode="empty"]) .media-column,
body:not([data-check-mode="empty"]) .preview-card,
body:not([data-check-mode="empty"]) .file-line,
body:not([data-check-mode="empty"]) .report-panel,
body:not([data-check-mode="empty"]) .score-card,
body:not([data-check-mode="empty"]) .score-result,
body:not([data-check-mode="empty"]) .score-copy,
body:not([data-check-mode="empty"]) .score-summary,
body:not([data-check-mode="empty"]) .overview-grid,
body:not([data-check-mode="empty"]) .overview-card,
body:not([data-check-mode="empty"]) .secondary-checks,
body:not([data-check-mode="empty"]) .report-list,
body:not([data-check-mode="empty"]) .report-blocks,
body:not([data-check-mode="empty"]) .report-block,
body:not([data-check-mode="empty"]) .report-block summary,
body:not([data-check-mode="empty"]) .block-body,
body:not([data-check-mode="empty"]) .field-list,
body:not([data-check-mode="empty"]) .field-row,
body:not([data-check-mode="empty"]) .payload { min-width: 0; max-width: 100%; }

body:not([data-check-mode="empty"]) .report-list { overflow: clip; }
body:not([data-check-mode="empty"]) .report-list.is-expanded .report-blocks {
  max-height: none;
  overflow: visible;
}

body:not([data-check-mode="empty"]) .block-copy,
body:not([data-check-mode="empty"]) .block-count,
body:not([data-check-mode="empty"]) .field-row dt,
body:not([data-check-mode="empty"]) .field-row dd { min-width: 0; overflow-wrap: anywhere; }
body:not([data-check-mode="empty"]) .field-row code { display: none; }

body:not([data-check-mode="empty"]) .payload pre {
  width: 100%;
  max-width: 100%;
  max-height: none;
  overflow: hidden;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  word-break: break-word;
}

body:not([data-check-mode="empty"]) .report-block[open] {
  background: linear-gradient(180deg, #fff 0%, #fbfbfe 100%);
  box-shadow: inset 3px 0 var(--violet);
}
body:not([data-check-mode="empty"]) .report-block[open] summary { border-bottom: 1px solid #ececf2; }
body:not([data-check-mode="empty"]) .report-block[open] .block-copy strong { white-space: normal; }
body:not([data-check-mode="empty"]) [data-toggle-checks] span {
  display: inline-block;
  transition: transform .18s ease;
}
body:not([data-check-mode="empty"]) .report-list.is-expanded [data-toggle-checks] span { transform: rotate(90deg); }

.ai-declaration {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 12px;
  padding: 15px 17px;
  align-items: start;
  border: 1px solid #d9d2f3;
  border-radius: 14px;
  background: #faf9ff;
  box-shadow: 0 8px 24px rgba(51, 43, 90, .045);
}
.ai-declaration-icon {
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  color: #fff;
  border-radius: 9px;
  background: var(--violet);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .04em;
}
.ai-declaration h3 { margin: 1px 0 0; font-size: 14px; line-height: 1.3; }
.ai-declaration p { max-width: 820px; margin: 5px 0 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.ai-declaration[data-declaration-state="verified_declaration"] {
  border-color: #c8e4d0;
  background: #f7fcf8;
}
.ai-declaration[data-declaration-state="verified_declaration"] .ai-declaration-icon { background: var(--green); }
.ai-declaration[data-declaration-state="unverified_declaration"] {
  border-color: #ead8b8;
  background: #fffaf2;
}
.ai-declaration[data-declaration-state="unverified_declaration"] .ai-declaration-icon { background: #c88a27; }

.overview-card > .ai-declaration {
  position: relative;
  z-index: 2;
  grid-column: 1 / -1;
  grid-row: 3;
  margin: 11px -14px -13px;
  padding: 13px 14px;
  border-width: 1px 0 0;
  border-radius: 0;
  box-shadow: none;
}
.overview-card.has-ai-declaration { min-height: 0; }

@media (min-width: 981px) and (min-height: 640px) {
  body:not([data-check-mode="empty"]) {
    height: auto;
    min-height: 100dvh;
    overflow-x: hidden;
    overflow-y: auto;
  }
  body:not([data-check-mode="empty"]) .check-header {
    position: sticky;
    z-index: 30;
    top: 0;
    background: rgba(255, 255, 255, .94);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
  }
  body:not([data-check-mode="empty"]) .check-shell {
    height: auto;
    min-height: calc(100dvh - 54px);
    padding-block: 18px 34px;
  }
  body:not([data-check-mode="empty"]) .workspace {
    grid-template-columns: 282px minmax(0, 1fr);
    height: auto;
    align-items: start;
    gap: 22px;
  }
  body:not([data-check-mode="empty"]) .preview-card { position: sticky; top: 72px; }
  body:not([data-check-mode="empty"]) .report-panel { gap: 12px; }
  body[data-check-mode="report"] .score-card,
  body[data-check-mode="updating"] .score-card {
    grid-template-columns: minmax(0, 1.4fr) minmax(260px, .6fr);
    min-height: 132px;
    padding: 18px 20px;
    border-radius: 14px;
  }
  body[data-check-mode="report"] .overview-grid,
  body[data-check-mode="updating"] .overview-grid {
    grid-template-columns: 1fr;
    gap: 0;
    overflow: clip;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: #fff;
    box-shadow: var(--ds-card-shadow);
  }
  body[data-check-mode="report"] .overview-card,
  body[data-check-mode="updating"] .overview-card {
    position: relative;
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr) auto 28px;
    grid-template-rows: auto auto;
    min-height: 76px;
    padding: 13px 14px;
    align-items: center;
    column-gap: 12px;
    border: 0;
    border-bottom: 1px solid var(--line);
    border-radius: 0;
    background: #fff;
    box-shadow: none;
  }
  body[data-check-mode="report"] .overview-card:last-child,
  body[data-check-mode="updating"] .overview-card:last-child { border-bottom: 0; }
  body[data-check-mode="report"] .overview-title,
  body[data-check-mode="updating"] .overview-title { display: contents; }
  body[data-check-mode="report"] .overview-icon,
  body[data-check-mode="updating"] .overview-icon {
    grid-column: 1;
    grid-row: 1 / span 2;
    width: 34px;
    height: 34px;
    border-width: 1.5px;
    border-radius: 9px;
  }
  body[data-check-mode="report"] .overview-title h3,
  body[data-check-mode="updating"] .overview-title h3 { grid-column: 2; grid-row: 1; margin: 0; font-size: 13px; }
  body[data-check-mode="report"] .overview-value,
  body[data-check-mode="updating"] .overview-value {
    grid-column: 3;
    grid-row: 1 / span 2;
    margin: 0;
    font-size: 22px;
    white-space: nowrap;
  }
  body[data-check-mode="report"] .overview-card > b,
  body[data-check-mode="updating"] .overview-card > b {
    grid-column: 2;
    grid-row: 2;
    margin: 2px 0 0;
    color: var(--muted);
    font-size: 10px;
    font-weight: 650;
  }
  body[data-check-mode="report"] .overview-card > p,
  body[data-check-mode="updating"] .overview-card > p { display: none; }
  body[data-check-mode="report"] .overview-card > button,
  body[data-check-mode="updating"] .overview-card > button {
    position: static;
    grid-column: 4;
    grid-row: 1 / span 2;
    min-height: 40px;
    padding: 0;
    border: 0;
    background: transparent;
    font-size: 0;
  }
  body[data-check-mode="report"] .overview-card > button::after,
  body[data-check-mode="updating"] .overview-card > button::after { color: #898b96; font-size: 22px; content: "›"; }
  body[data-check-mode="report"] .overview-card.has-ai-declaration,
  body[data-check-mode="updating"] .overview-card.has-ai-declaration { grid-template-rows: auto auto auto; }
  body:not([data-check-mode="empty"]) .secondary-checks { margin-top: 0; border-radius: 14px; }
  body:not([data-check-mode="empty"]) .report-list { margin-top: 0; border-radius: 14px; }
  body:not([data-check-mode="empty"]) .report-list-head { min-height: 54px; padding-inline: 18px; }
  body:not([data-check-mode="empty"]) .report-block summary { min-height: 50px; padding: 9px 18px; }
  body:not([data-check-mode="empty"]) .block-body { padding: 16px 20px 20px 47px; }
}

@media (max-width: 560px) {
  body:not([data-check-mode="empty"]) .profile-stub > span { display: none; }
  body:not([data-check-mode="empty"]) .profile-stub { padding: 3px; border: 0; background: transparent; }
  body:not([data-check-mode="empty"]) .header-divider { display: none; }
  .ai-declaration { grid-template-columns: 32px minmax(0, 1fr); padding: 13px; gap: 10px; }
  .ai-declaration-icon { width: 30px; height: 30px; border-radius: 8px; font-size: 9px; }
  .ai-declaration h3 { font-size: 12px; }
  .ai-declaration p { font-size: 10px; }
  body[data-check-mode="report"] .overview-card.has-ai-declaration,
  body[data-check-mode="updating"] .overview-card.has-ai-declaration {
    grid-template-rows: auto auto;
    min-height: 0;
    padding-bottom: 10px;
  }
  body[data-check-mode="report"] .overview-card > .ai-declaration,
  body[data-check-mode="updating"] .overview-card > .ai-declaration {
    grid-column: 1 / -1;
    grid-row: 2;
    margin: 10px -16px -10px;
  }
  body[data-check-mode="loading"] .preview-card,
  body[data-check-mode="report"] .preview-card,
  body[data-check-mode="updating"] .preview-card {
    display: grid;
    grid-template-columns: 94px minmax(0, 1fr);
    grid-template-areas: "preview file" "actions actions";
    gap: 0;
    padding: 0;
  }
  body[data-check-mode="loading"] .preview-frame,
  body[data-check-mode="report"] .preview-frame,
  body[data-check-mode="updating"] .preview-frame {
    grid-area: preview;
    width: 94px;
    height: 142px;
    min-height: 142px;
    padding: 8px;
    border-right: 1px solid #ececf2;
  }
  body[data-check-mode="loading"] .preview-stage,
  body[data-check-mode="report"] .preview-stage,
  body[data-check-mode="updating"] .preview-stage { width: 78px; height: 126px; }
  body[data-check-mode="loading"] .file-line,
  body[data-check-mode="report"] .file-line,
  body[data-check-mode="updating"] .file-line {
    grid-area: file;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
    padding: 14px;
    align-content: center;
  }
  body:not([data-check-mode="empty"]) .file-summary { display: block; padding: 0; overflow: hidden; border: 0; }
  body:not([data-check-mode="empty"]) .file-summary-icon,
  body:not([data-check-mode="empty"]) .result-drop-hint { display: none; }
  body:not([data-check-mode="empty"]) .file-line .replace-button { min-height: 38px; }
  body:not([data-check-mode="empty"]) .file-actions { grid-column: 1 / -1; grid-area: actions; margin: 10px; }
  body:not([data-check-mode="empty"]) .report-block summary {
    grid-template-columns: auto minmax(0, 1fr) auto;
    min-height: 54px;
    padding: 9px 14px;
  }
  body:not([data-check-mode="empty"]) .block-body { padding: 12px 14px 17px; }
  body:not([data-check-mode="empty"]) .field-row { grid-template-columns: 1fr; gap: 4px; }
  body:not([data-check-mode="empty"]) .payload pre {
    margin-top: 8px;
    padding: 11px;
    font-size: 9px;
    line-height: 1.5;
  }
}

/* Keep the explanatory actions visible after the compact-report cascade. */
@media (min-width: 981px) and (min-height: 640px) {
  body[data-check-mode="report"] .overview-card,
  body[data-check-mode="updating"] .overview-card {
    grid-template-columns: 38px minmax(0, 1fr) auto auto;
  }
  body[data-check-mode="report"] .overview-card > .ai-declaration,
  body[data-check-mode="updating"] .overview-card > .ai-declaration { grid-template-columns: 38px minmax(0, 1fr) auto; }
  body[data-check-mode="report"] .overview-card > [data-open-ai-explainer],
  body[data-check-mode="updating"] .overview-card > [data-open-ai-explainer] {
    display: inline-flex;
    min-width: 112px;
    padding: 0 0 0 18px;
    align-items: center;
    justify-content: flex-end;
    gap: 9px;
    color: var(--blue);
    cursor: pointer;
    font-size: 12px;
    font-weight: 800;
  }
  body[data-check-mode="report"] .overview-card > [data-open-ai-explainer]::after,
  body[data-check-mode="updating"] .overview-card > [data-open-ai-explainer]::after {
    color: #8a8d97;
    font-size: 22px;
    content: "›";
  }
}

@media (min-width: 561px) and (max-width: 980px) {
  body[data-check-mode="report"] .overview-card,
  body[data-check-mode="updating"] .overview-card {
    grid-template-columns: 32px minmax(0, 1fr) auto 104px;
    grid-template-rows: auto auto auto;
  }
  body[data-check-mode="report"] .overview-card > [data-open-ai-explainer],
  body[data-check-mode="updating"] .overview-card > [data-open-ai-explainer] {
    grid-column: 4;
    grid-row: 1 / span 2;
    display: inline-flex;
    width: auto;
    min-width: 0;
    min-height: 40px;
    padding: 0;
    align-items: center;
    justify-content: flex-end;
    gap: 7px;
    color: var(--blue);
    border: 0;
    background: transparent;
    font-size: 11px;
    font-weight: 800;
  }
  body[data-check-mode="report"] .overview-card > [data-open-ai-explainer]::after,
  body[data-check-mode="updating"] .overview-card > [data-open-ai-explainer]::after {
    color: #8a8d97;
    font-size: 20px;
    content: "›";
  }
  body[data-check-mode="report"] .overview-card > .ai-declaration,
  body[data-check-mode="updating"] .overview-card > .ai-declaration {
    grid-column: 1 / -1;
    grid-row: 3;
    grid-template-columns: 32px minmax(0, 1fr) auto;
    margin: 10px -11px -10px;
  }
}

/* Final origin-card placement override. The report stylesheet contains older
   compact-card layouts for several viewport bands; this keeps the combined
   card's three regions explicit after that cascade. */
body:not([data-check-mode="empty"]) .overview-card.origin-analysis-card {
  grid-template-areas: none;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: auto auto auto;
  padding: 0;
}
body:not([data-check-mode="empty"]) .overview-card.origin-analysis-card > .origin-analysis-head {
  position: relative;
  display: flex;
  grid-column: 1;
  grid-row: 1;
}
body:not([data-check-mode="empty"]) .overview-card.origin-analysis-card > .origin-evidence-rail {
  grid-column: 1;
  grid-row: 2;
}
body:not([data-check-mode="empty"]) .overview-card.origin-analysis-card > .origin-analysis-action {
  grid-column: 1;
  grid-row: 3;
}

@media (max-width: 560px) {
  body:not([data-check-mode="empty"]) .overview-card.origin-analysis-card > .origin-analysis-head {
    padding: 16px;
    flex-direction: column;
  }
  body:not([data-check-mode="empty"]) .overview-card.origin-analysis-card > .origin-analysis-action {
    width: calc(100% - 24px);
    margin: 0 12px 14px;
  }
}
