:root {
  --bg:#f5f6f8;
  --paper:#fff;
  --ink:#242933;
  --muted:#8b919c;
  --line:#edf0f3;
  --accent:#6654d9;
  --soft:#f0edff;
  --green:#2f9b79;
}
* {
  box-sizing:border-box;
}
html {
  scroll-behavior:smooth;
  scroll-padding-top:25px;
}
body {
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font:14px/1.65 Inter,"Segoe UI","Microsoft YaHei",sans-serif;
}
a {
  color:inherit;
  text-decoration:none;
}
button,input,select {
  font:inherit;
}
button,a,select,label {
  -webkit-tap-highlight-color:transparent;
}
button {
  cursor:pointer;
}
button:disabled {
  cursor:default;
  opacity:.5;
}
[hidden] {
  display:none!important;
}
button:focus-visible,a:focus-visible,select:focus-visible,.upload:focus-within {
  outline:3px solid #b9acf9;
  outline-offset:4px;
}
.rail {
  width:76px;
  position:fixed;
  inset:0 auto 0 0;
  background:white;
  border-right:1px solid var(--line);
  display:flex;
  align-items:center;
  flex-direction:column;
  gap:17px;
  z-index:10;
}
.monogram {
  font-size:31px;
  font-weight:800;
  letter-spacing:-6px;
  margin:20px 0 33px;
  padding-right:5px;
}
.monogram span {
  color:var(--accent);
  font-size:29px;
}
.rail-item {
  font-size:23px;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:12px;
  color:#9297a3;
  transition:background .2s,color .2s;
}
.rail-item:hover,.rail-item.active {
  background:var(--soft);
  color:var(--accent);
}
.rail-bottom {
  margin-top:auto;
  margin-bottom:23px;
  font-size:9px;
  letter-spacing:2px;
  color:#a2a6af;
}
.app-shell {
  margin-left:76px;
}
.topbar {
  height:80px;
  background:#ffffffd9;
  border-bottom:1px solid var(--line);
  padding:0 38px;
  display:flex;
  justify-content:space-between;
  align-items:center;
}
.brand {
  font-weight:750;
  font-size:18px;
  letter-spacing:-.6px;
}
.brand span {
  font-size:12px;
  color:var(--muted);
  font-weight:400;
  letter-spacing:0;
  border-left:1px solid #e2e4e9;
  margin-left:20px;
  padding-left:20px;
}
.connection {
  display:flex;
  align-items:center;
  gap:8px;
  color:#7f8792;
  font-size:11px;
}
.connection i {
  height:6px;
  width:6px;
  border-radius:50%;
  background:var(--green);
  box-shadow:0 0 0 4px #edf8f3;
}
main {
  max-width:1580px;
  padding:32px 38px 0;
  margin:auto;
}
.page-heading {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:28px;
}
.eyebrow {
  font-size:9px;
  letter-spacing:1.8px;
  color:#9695aa;
  font-weight:650;
}
h1 {
  font-size:28px;
  line-height:1.5;
  letter-spacing:-.9px;
  margin:6px 0;
}
h1 span {
  color:var(--accent);
}
.page-heading p {
  margin:0;
  color:var(--muted);
  font-size:12px;
}
.workspace-tag {
  font-size:11px;
  color:#727782;
}
.workspace-tag span {
  margin-left:13px;
  color:#b3b7bf;
}
.workspace {
  display:grid;
  grid-template-columns:292px minmax(0,1fr);
  gap:24px;
  align-items:start;
}
.input-column {
  position:sticky;
  top:24px;
  min-width:0;
}
.card {
  background:var(--paper);
  border:1px solid #e9ecf1;
  border-radius:15px;
  padding:24px;
  box-shadow:0 3px 6px #20254402;
  min-width:0;
}
.card-heading {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:18px;
}
.card-heading h2 {
  margin:0;
  font-size:14px;
  font-weight:650;
  letter-spacing:.2px;
}
.card-heading .eyebrow+h2 {
  margin-top:5px;
  font-size:18px;
}
.tiny-tag {
  font-size:8px;
  letter-spacing:1px;
  color:#a3a7b1;
  white-space:nowrap;
}
.input-card {
  padding:22px;
}
.input-card .card-heading {
  margin-bottom:24px;
}
.upload {
  min-height:204px;
  border:1.5px dashed #d8d2ed;
  border-radius:11px;
  background:linear-gradient(150deg,#faf9ff,#f6f5fc);
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:5px;
  cursor:pointer;
  position:relative;
  padding:20px 10px;
  text-align:center;
  transition:border-color .2s,background .2s,transform .2s;
  overflow:hidden;
}
.upload:hover,.upload.dragover {
  border-color:var(--accent);
  background:#f0edff;
}
.upload.dragover {
  transform:scale(1.015);
}
.upload input {
  position:absolute;
  inset:0;
  opacity:0;
  width:100%;
  height:100%;
  cursor:pointer;
}
.upload-icon {
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  background:white;
  border:1px solid #eae5fc;
  border-radius:13px;
  font-size:26px;
  line-height:1;
  color:var(--accent);
  margin-bottom:12px;
  box-shadow:0 4px 10px #6654d90a;
}
.upload strong {
  font-weight:550;
  font-size:12px;
  word-break:break-all;
}
.upload>span:not(.upload-icon) {
  font-size:10px;
  color:#9490aa;
}
.upload small {
  font-size:10px;
  color:#aca8ba;
}
video {
  width:100%;
  max-height:270px;
  border-radius:10px;
  background:#17191e;
  margin-top:14px;
}
.field-note {
  font-size:11px;
  color:#959ba6;
  line-height:1.8;
  margin:12px 0 0;
  overflow-wrap:anywhere;
}
.field-note:empty {
  display:none;
}
.select-label {
  display:block;
  margin:22px 0 8px;
  font-size:11px;
  font-weight:600;
  color:#606674;
}
select {
  width:100%;
  height:42px;
  border:1px solid #e5e8ef;
  background:#fff;
  border-radius:8px;
  padding:0 11px;
  color:#4f5663;
  font-size:12px;
}
.primary {
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  background:var(--accent);
  color:white;
  border:none;
  border-radius:9px;
  padding:12px 15px;
  margin-top:18px;
  font-size:12px;
  box-shadow:0 5px 12px #6654d91c;
  transition:background .2s,transform .2s,box-shadow .2s;
}
.primary:hover:not(:disabled) {
  background:#5543c5;
  transform:translateY(-2px);
  box-shadow:0 8px 17px #6654d92b;
}
.primary:active:not(:disabled) {
  transform:translateY(0);
}
.privacy-note {
  font-size:10px;
  color:#a3a7b2;
  line-height:1.8;
  margin:13px 0 20px;
}
.run-status {
  border-top:1px solid var(--line);
  padding-top:18px;
  display:flex;
  align-items:flex-start;
  gap:9px;
}
.run-status strong {
  font-size:11px;
  font-weight:550;
}
.run-status p {
  font-size:10px;
  color:#969ca6;
  margin:3px 0;
  line-height:1.8;
}
.state-dot {
  width:7px;
  height:7px;
  border-radius:50%;
  background:#aca4d7;
  flex-shrink:0;
  margin-top:6px;
}
#elapsed {
  font-size:10px;
  color:#969ca6;
  white-space:nowrap;
  margin-left:auto;
}
.small-note {
  display:flex;
  gap:10px;
  padding:22px 6px;
  font-size:11px;
  color:#9499a5;
}
.small-note>span {
  font-size:24px;
  color:#b0a6dc;
  line-height:1.4;
}
.small-note strong {
  font-size:11px;
  color:#858994;
  font-weight:500;
}
.small-note p {
  font-size:10px;
  margin:5px 0;
  line-height:1.9;
}
.dashboard {
  display:grid;
  gap:20px;
  min-width:0;
}
.subtle {
  font-size:10px;
  background:white;
  border:1px solid #e7e9ee;
  border-radius:7px;
  color:#717786;
  padding:7px 11px;
  white-space:nowrap;
  transition:color .2s,border-color .2s;
}
.subtle:hover:not(:disabled) {
  border-color:#b9acf9;
  color:var(--accent);
}
.summary-text {
  font-size:12px;
  color:#9297a1;
  line-height:1.9;
  margin:0 0 22px;
  max-width:850px;
}
.metric-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:15px;
}
.metric {
  border-left:1px solid var(--line);
  padding-left:24px;
  min-width:0;
}
.metric:first-child {
  border:0;
  padding-left:0;
}
.metric>span {
  font-size:10px;
  color:#8c93a0;
  display:block;
}
.metric>strong {
  font-weight:600;
  letter-spacing:-1px;
  font-size:32px;
  display:block;
  line-height:1.6;
}
.metric>strong small {
  font-size:11px;
  color:#acb0b9;
  font-weight:400;
  letter-spacing:0;
  margin-left:8px;
}
.metric>small {
  display:block;
  font-size:10px;
  color:#a0a5af;
}
.chart-grid {
  display:grid;
  grid-template-columns:1.12fr 1fr;
  gap:20px;
}
.chart-card,.quality-card {
  min-height:310px;
}
.chart-wrap {
  height:210px;
  position:relative;
}
canvas {
  width:100%;
  height:210px;
  display:block;
}
.chart-empty {
  position:absolute;
  inset:0;
  display:flex;
  justify-content:center;
  align-items:center;
  flex-direction:column;
  gap:7px;
  pointer-events:none;
}
.chart-empty-icon {
  font-size:31px;
  color:#b9b0e2;
}
.chart-empty strong {
  font-size:11px;
  color:#9791aa;
  font-weight:500;
}
.chart-empty>span:last-child {
  font-size:10px;
  color:#b0acbd;
}
.score-badge {
  font-size:10px;
  padding:4px 8px;
  border-radius:6px;
  background:var(--soft);
  color:#8e83c4;
}
.quality-list {
  display:grid;
  gap:20px;
  margin:24px 0;
}
.quality-placeholder {
  display:grid;
  grid-template-columns:80px 1fr 18px;
  align-items:center;
  gap:10px;
  font-size:10px;
  color:#9ba1ad;
}
.quality-placeholder i {
  height:5px;
  background:#f0f1f5;
  border-radius:5px;
}
.quality-placeholder small {
  text-align:right;
  font-size:12px;
}
.quality-row>div:first-child {
  display:flex;
  justify-content:space-between;
  gap:10px;
  font-size:11px;
  color:#646b79;
}
.quality-row p {
  font-size:10px;
  color:#969ca6;
  line-height:1.8;
  margin:7px 0 0;
}
.quality-bar {
  height:5px;
  border-radius:4px;
  background:#f0edf8;
  margin-top:8px;
  overflow:hidden;
}
.quality-bar i {
  display:block;
  height:100%;
  background:#a194e1;
  border-radius:4px;
  width:var(--value);
  animation:grow .8s ease-out;
}
.timeline-empty {
  display:flex;
  align-items:center;
  justify-content:space-around;
  margin-top:23px;
  padding:25px 0;
  background:#fafbfc;
  border-radius:9px;
}
.timeline-empty span {
  font-size:10px;
  color:#a4a9b2;
}
.timeline-empty i {
  display:inline-block;
  width:6px;
  height:6px;
  border-radius:50%;
  background:#dad5ee;
  margin:0 10px;
}
.empty-caption {
  font-size:10px;
  color:#a6aab2;
  text-align:center;
  margin:13px 0 2px;
}
.suggestions {
  padding:0;
  margin:0;
  list-style:none;
  counter-reset:suggestion;
  display:grid;
  gap:12px;
}
.suggestions li {
  font-size:12px;
  color:#6f7581;
  line-height:1.9;
  padding:14px;
  background:#faf9fd;
  border-radius:9px;
  display:flex;
  gap:12px;
}
.suggestions li:before {
  counter-increment:suggestion;
  content:counter(suggestion,decimal-leading-zero);
  color:#a297ce;
  font-size:11px;
}
.suggestions .suggestion-empty {
  font-size:11px;
  color:#a0a4af;
  padding:20px;
}
.suggestions .suggestion-empty:before {
  content:'✧';
  font-size:16px;
}
.timeline-row {
  display:grid;
  grid-template-columns:85px 1fr;
  gap:16px;
  padding:17px 0;
  border-bottom:1px solid var(--line);
}
.timeline-row:last-child {
  border-bottom:0;
}
.timeline-time {
  font-size:10px;
  background:var(--soft);
  color:var(--accent);
  border:none;
  border-radius:6px;
  align-self:start;
  padding:7px 5px;
  transition:background .2s;
}
.timeline-time:hover {
  background:#e3dcfc;
}
.timeline-row h3 {
  margin:0;
  font-size:12px;
  font-weight:550;
}
.timeline-row p {
  font-size:11px;
  color:#8d949f;
  margin:5px 0 0;
}
.timeline-row .field-note {
  color:#a5a0b3;
}
#potential-factors {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
#potential-factors:empty {
  display:none;
}
#potential-factors>div {
  margin-top:18px;
  border-radius:9px;
  background:#f7faf9;
  padding:13px;
}
#potential-factors>div+div {
  background:#fcf9f5;
}
#potential-factors h3 {
  font-size:11px;
  margin:0 0 6px;
  color:#748f82;
}
#potential-factors>div+div h3 {
  color:#b19372;
}
#potential-factors ul {
  padding-left:15px;
  font-size:11px;
  color:#8c9594;
  margin:0;
}
details {
  border-top:1px solid var(--line);
  margin-top:20px;
  padding-top:15px;
}
summary {
  cursor:pointer;
  font-size:11px;
  color:#9791a9;
}
#references {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin:14px 0;
}
#references a {
  font-size:10px;
  color:var(--accent);
  background:var(--soft);
  padding:5px 9px;
  border-radius:5px;
}
#limitations {
  font-size:11px;
  line-height:1.9;
  color:#959ba6;
  padding-left:17px;
}
#count-scenarios {
  margin-top:15px;
}
footer {
  display:flex;
  justify-content:space-between;
  color:#b2b6bf;
  font-size:9px;
  padding:28px 0 24px;
}
footer span:first-child {
  letter-spacing:2px;
}
.dashboard.revealed>.card,.dashboard.revealed>.chart-grid {
  animation:reveal .5s ease-out both;
}
.dashboard.revealed>:nth-child(2) {
  animation-delay:.08s;
}
.dashboard.revealed>:nth-child(3) {
  animation-delay:.14s;
}
.busy .state-dot {
  background:var(--accent);
  animation:pulse 1.5s infinite;
}
.busy .primary {
  opacity:.7;
}
.failed .state-dot {
  background:#d97878;
}
.failed #state-label {
  color:#c86b6b;
}
.complete .state-dot {
  background:var(--green);
}
@keyframes pulse {
  50% {
    box-shadow:0 0 0 4px #6654d91a;
    opacity:.6;
  }
}
@keyframes reveal {
  from {
    opacity:.4;
    transform:translateY(8px);
  }
  to {
    opacity:1;
    transform:none;
  }
}
@keyframes grow {
  from {
    width:0;
  }
  to {
    width:var(--value);
  }
}
@media(min-width:1600px) {
  main {
    padding-top:42px;
  }
  .workspace {
    grid-template-columns:310px minmax(0,1fr);
  }
  .card {
    padding:28px;
  }
  .input-card {
    padding:24px;
  }
}
@media(max-width:1150px) {
  main {
    padding:26px 24px 0;
  }
  .topbar {
    padding:0 24px;
  }
  .workspace {
    grid-template-columns:260px minmax(0,1fr);
    gap:18px;
  }
  .card {
    padding:19px;
  }
  .chart-grid {
    grid-template-columns:1fr;
  }
  .metric {
    padding-left:14px;
  }
  .metric>strong {
    font-size:27px;
  }
  .tiny-tag {
    font-size:7px;
  }
  .chart-card {
    min-height:290px;
  }
}
@media(max-width:780px) {
  .rail {
    display:none;
  }
  .app-shell {
    margin:0;
  }
  .topbar {
    height:65px;
    padding:0 20px;
  }
  .brand {
    font-size:16px;
  }
  .brand span {
    display:none;
  }
  main {
    padding:24px 18px 0;
  }
  .page-heading {
    margin-bottom:22px;
  }
  h1 {
    font-size:24px;
  }
  .workspace-tag {
    display:none;
  }
  .workspace {
    grid-template-columns:1fr;
  }
  .input-column {
    position:static;
  }
  .input-card {
    padding:20px;
  }
  .upload {
    min-height:165px;
  }
  .small-note {
    display:none;
  }
  .dashboard {
    gap:16px;
  }
  .chart-grid {
    gap:16px;
  }
  .card {
    padding:20px;
  }
  .metric-grid {
    gap:9px;
  }
  .metric {
    padding-left:10px;
  }
  .metric>span {
    font-size:9px;
  }
  .metric>strong {
    font-size:26px;
  }
  .metric>small {
    font-size:9px;
  }
  .metric>strong small {
    font-size:9px;
    margin-left:4px;
  }
  #potential-factors {
    grid-template-columns:1fr;
    gap:0;
  }
  .timeline-row {
    grid-template-columns:76px 1fr;
    gap:12px;
  }
  footer {
    font-size:8px;
    gap:16px;
  }
  footer span:first-child {
    letter-spacing:1px;
  }
  .connection {
    font-size:10px;
  }
}
@media(prefers-reduced-motion:reduce) {
  *,*:before,*:after {
    animation:none!important;
    transition:none!important;
    scroll-behavior:auto!important;
  }
}
/* Comfortable reading sizes for the report content. */
.summary-text {
  font-size:13px;
  color:#737c8b;
}
.quality-row p,.timeline-row p,#potential-factors ul {
  font-size:12px;
  color:#7c8492;
}
.field-note {
  color:#838c9a;
}
.suggestions li {
  font-size:13px;
}
.quality-row>div:first-child {
  font-size:12px;
}
.access-panel {margin:0 0 20px;padding:15px;background:#f8f7fe;border:1px solid #eae6fa;border-radius:14px;}
.access-heading {display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px;}
.access-heading label {font-size:12px;font-weight:600;}
.access-badge {font-size:10px;color:var(--muted);white-space:nowrap;}
.access-entry {display:flex;gap:8px;}
.access-entry input {width:100%;min-width:0;border:1px solid #e5e1f1;border-radius:8px;background:white;padding:9px 10px;font-size:12px;color:var(--ink);}
.access-entry input:focus-visible {outline:2px solid #b9acf9;outline-offset:2px;}
.access-entry button {flex-shrink:0;border:0;border-radius:8px;background:var(--accent);color:white;padding:0 13px;font-size:12px;}
.access-panel p {margin:9px 0 0;font-size:10px;line-height:1.7;color:#858092;}
.access-panel.verified .access-badge {color:var(--green);}
.topbar-actions {display:flex;align-items:center;gap:16px;}
.language-toggle {border:1px solid #e5e1f1;border-radius:9px;background:var(--paper);color:var(--accent);font-size:12px;font-weight:600;min-width:44px;padding:6px 10px;}
html[lang="en"] .page-heading h1 {font-size:clamp(25px,3vw,39px);letter-spacing:-1.2px;}
@media(max-width:600px) {.topbar-actions {gap:9px;} .language-toggle {padding:5px 7px;min-width:38px;}}
.overall-score {
  background:linear-gradient(115deg,#fff 35%,#f3faf6);
  border-color:#dce9e1;
  padding:26px 28px;
}
.overall-score-heading {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  margin-bottom:24px;
}
.overall-score h2 {
  margin:3px 0 6px;
  font-size:20px;
}
.overall-score-heading p,.score-note {
  margin:0;
  color:#7d8990;
  font-size:12px;
}
.overall-score-number {
  display:flex;
  align-items:baseline;
  gap:7px;
  white-space:nowrap;
}
.overall-score-number strong {
  font-size:54px;
  font-weight:700;
  letter-spacing:-2px;
  line-height:1;
  font-variant-numeric:tabular-nums;
}
.overall-score-number>span {
  font-size:13px;
  color:#85928c;
}
.score-track {
  position:relative;
  height:18px;
  border-radius:20px;
  background:linear-gradient(90deg,#e66b73 0%,#ef9a68 25%,#e7cc65 50%,#a8ca7b 70%,#45ad84 100%);
  box-shadow:inset 0 1px 2px #664b3210,0 4px 12px #83a47512;
}
.score-marker {
  position:absolute;
  left:clamp(7px,var(--score,0%),calc(100% - 7px));
  top:50%;
  transform:translate(-50%,-50%);
  width:14px;
  height:30px;
  border:3px solid white;
  border-radius:8px;
  background:#293c35;
  box-shadow:0 2px 8px #273c3540;
  transition:left .7s ease;
}
.score-scale {
  display:flex;
  justify-content:space-between;
  margin-top:12px;
  font-size:11px;
  color:#90978f;
  font-variant-numeric:tabular-nums;
}
.score-scale>span:first-child { color:#bb6269; }
.score-scale>span:last-child { color:#328d6b; }
.score-note {
  margin-top:15px;
  font-size:11px;
}
body.processing-active { overflow:hidden; }
.processing-dialog {
  width:min(480px,calc(100% - 36px));
  max-height:calc(100dvh - 36px);
  padding:36px;
  border:1px solid #eeeaf9;
  border-radius:24px;
  color:var(--ink);
  background:linear-gradient(150deg,#fff 45%,#f7f5ff);
  box-shadow:0 28px 100px #29204030;
  text-align:center;
  overflow:auto;
}
.processing-dialog::backdrop {
  background:#25213965;
  backdrop-filter:blur(6px);
}
.processing-dialog:focus { outline:none; }
.processing-symbol {
  position:relative;
  display:grid;
  place-items:center;
  width:76px;
  height:76px;
  margin:0 auto 24px;
  background:var(--soft);
  border-radius:50%;
  color:var(--accent);
  font-size:38px;
}
.processing-symbol:before {
  content:'';
  position:absolute;
  inset:-5px;
  border:2px solid #e9e3fc;
  border-top-color:#8e78e1;
  border-right-color:#b6a5ee;
  border-radius:50%;
  animation:processing-spin 1.8s linear infinite;
}
.processing-stage { min-height:144px; }
#processing-step {
  font-size:11px;
  color:#8c7ec1;
  margin:18px 0 6px;
}
#processing-title {
  margin:0 0 10px;
  font-size:24px;
  letter-spacing:-.5px;
}
#processing-message {
  color:#828393;
  font-size:13px;
  line-height:1.8;
  margin:0;
  overflow-wrap:anywhere;
}
.processing-progress-heading,.processing-meta {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  font-size:11px;
  color:#8a8698;
  text-align:left;
}
.processing-progress-heading strong {
  color:var(--accent);
  font-size:20px;
  font-variant-numeric:tabular-nums;
}
.processing-progress {
  height:10px;
  overflow:hidden;
  background:#eae6f5;
  border-radius:12px;
  margin:10px 0 14px;
}
.processing-progress>span {
  display:block;
  height:100%;
  width:0;
  position:relative;
  overflow:hidden;
  border-radius:inherit;
  background:linear-gradient(90deg,#7761d6,#ac95ee);
  transition:width .6s ease;
}
.processing-progress>span:after {
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,transparent,#ffffff65,transparent);
  animation:processing-shimmer 2s ease-in-out infinite;
}
.processing-meta strong { font-weight:500; font-variant-numeric:tabular-nums; }
.processing-live { display:flex; align-items:center; gap:6px; }
.processing-live i { width:5px; height:5px; border-radius:50%; background:#8f7bd3; animation:pulse 1.5s infinite; }
#processing-note {
  border-top:1px solid #ebe7f3;
  padding-top:20px;
  margin:24px 0 0;
  font-size:11px;
  color:#9691a5;
}
@keyframes processing-spin { to { transform:rotate(360deg); } }
@keyframes processing-shimmer { from { transform:translateX(-100%); } to { transform:translateX(100%); } }
@media(max-width:780px) {
  .overall-score { padding:22px 20px; }
  .overall-score-heading { gap:12px; }
  .overall-score h2 { font-size:18px; }
  .overall-score-heading p { font-size:11px; }
  .overall-score-number { gap:4px; }
  .overall-score-number strong { font-size:40px; }
  .overall-score-number>span { font-size:11px; }
  .processing-dialog { padding:30px 24px; }
  #processing-title { font-size:21px; }
}
