/* One editorial annotation grammar; each case keeps its approved palette.
   Flat borders avoid PDF readers turning blurred shadows into dark rectangles.
   Original screenshots, privacy redactions, covers and homepage are untouched. */
.robot-section {
  --annotation-accent:#2256ff;
  --annotation-surface:#eef4ff;
  --annotation-line:#b7c9e4;
}
.approved-section {
  --annotation-accent:#906238;
  --annotation-surface:#fff9ef;
  --annotation-line:#d3bda1;
}
:host([data-project=loan]) {
  --annotation-accent:#246bc8;
  --annotation-surface:#e8f1fa;
  --annotation-line:#b9d0e7;
}
:host([data-project=credit]) {
  --annotation-accent:#3879bb;
  --annotation-surface:#1c3b55;
  --annotation-line:#50718f;
}
:host([data-project=mobility]) {
  --annotation-accent:#586f50;
  --annotation-surface:#e8eddf;
  --annotation-line:#b2bfa5;
}

.robot-section,.robot-section *, .robot-section *::before,.robot-section *::after,
.approved-section,.approved-section *, .approved-section *::before,.approved-section *::after,
:host([data-project]) .page:not(.cover),
:host([data-project]) .page:not(.cover) *,
:host([data-project]) .page:not(.cover)::before,
:host([data-project]) .page:not(.cover)::after,
:host([data-project]) .page:not(.cover) *::before,
:host([data-project]) .page:not(.cover) *::after {
  box-shadow:none!important;
  text-shadow:none!important;
}

/* Reference numbers: solid circles, never a second rectangle behind a number. */
.robot-section .point-number,.approved-section .approved-pin,
:host([data-project]) .num,:host([data-project]) .pin,
:host([data-project]) .focus-pin,:host([data-project]) .ui-focus>span {
  background:var(--annotation-accent);
  color:#fff;
  border-radius:50%;
  font-variant-numeric:tabular-nums;
  font-weight:600;
}
.approved-section .approved-pin {width:28px;min-width:28px;flex-shrink:0}
:host([data-project]) .ui-focus {border-color:var(--annotation-accent);background:transparent}

/* Labels stay outside the artwork and use text only. Summary notes get one
   restrained theme-tinted panel with an accent edge, not a dark scrim. */
.robot-section .evidence-label,.robot-section .robot-label,
.approved-section .native-figure-label,
:host([data-project]) .label {
  background:transparent;
  box-shadow:none;
}
.robot-section .robot-callout,.robot-section .robot-formula,
.approved-section .native-note,
:host([data-project]) .bar {
  background:var(--annotation-surface);
  border:1px solid var(--annotation-line);
  border-left:3px solid var(--annotation-accent);
  border-radius:0 8px 8px 0;
}
:host([data-project]) .screen,:host([data-project]) .shot {
  border:1px solid var(--annotation-line);
}
:host([data-project]) .gallery-surface::before {background:var(--annotation-surface);border:1px solid var(--annotation-line)}
.approved-section .native-zoom,.robot-section .evidence-zoom {
  background:var(--annotation-surface);
  color:var(--annotation-accent);
  border:1px solid var(--annotation-line);
}

/* Loan states: two comparable groups, image first, two matching notes beneath.
   Crops and marker coordinates stay in their original 705px coordinate space. */
:host([data-project=loan]) #page-5 .content {top:302px;bottom:auto}
.state-groups {display:grid;grid-template-columns:1fr 1fr;gap:36px}
.state-group {min-width:0}
.state-group>.label {margin:0 0 13px;font-size:14px;line-height:22px}
.state-image-stage {height:320px;display:flex;align-items:center;justify-content:center;border:1px solid var(--annotation-line);border-radius:10px;background:#f7fbff;overflow:hidden}
.state-image-stage .screen {flex-shrink:0;border-radius:6px}
.state-group:first-child .state-image-stage .screen {zoom:.69}
.state-group:last-child .state-image-stage .screen {zoom:.92}
.state-notes {display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:17px}
.state-note {min-width:0;padding-top:13px;border-top:1px solid var(--annotation-line)}
.state-note h3 {display:flex;align-items:start;gap:10px;margin:0 0 9px;font-size:19px;line-height:1.5}
.state-note .num {width:25px;height:25px;font-size:13px;margin:1px 0 0!important}
.state-note p {font-size:16px;line-height:1.7;margin:0 0 0 35px}
.state-summary {margin-top:20px!important;padding:13px 19px!important;display:flex;gap:22px;align-items:baseline}
.state-summary>.label {flex-shrink:0}
.state-summary p {margin:0!important;font-size:15px;line-height:1.7}
:host([lang=en]) .state-note h3 {font-size:17px;line-height:1.5}
:host([lang=en]) .state-note p {font-size:15px;line-height:1.6}
:host([lang=en]) .state-group>.label {font-size:13px}
:host([lang=en]) .state-summary {margin-top:15px!important}
:host([lang=en]) .state-summary>.label {max-width:270px}

