/* Scoped visual and code styles shared by selected project articles. */
.analysis-hero { margin: 1.5rem 0 2rem; border: 1px solid var(--line); border-radius: 16px; overflow: hidden; }
.analysis-hero-art { background: var(--surface, #f3f1e9); }
.analysis-hero-art img { display: block; width: 100%; height: clamp(210px, 28vw, 310px); object-fit: contain; }
.analysis-facts { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 1rem; padding: 1.25rem; }
.analysis-facts span { display: block; font-family: var(--mono); font-size: .68rem; text-transform: uppercase; color: var(--muted); margin-bottom: .4rem; }
.analysis-facts strong { display: block; font-size: .95rem; font-weight: 500; line-height: 1.45; }
.analysis-figure { margin: 2rem 0; }
.analysis-chart { overflow-x: auto; border: 1px solid var(--line); border-radius: 12px; background: var(--surface, var(--paper)); }
.analysis-chart:focus-visible { outline: 2px solid var(--blue); outline-offset: 3px; }
.analysis-chart img { width: 100%; max-width: none; height: auto; margin: 0; }
.analysis-light { display: block; }
.analysis-dark { display: none; }
body.quarto-dark .analysis-light { display: none; }
body.quarto-dark .analysis-dark { display: block; }
.analysis-figure figcaption { margin-top: .6rem; color: var(--muted); font-size: .8rem; line-height: 1.6; }
.analysis-scroll-hint { display: none; }
.analysis-note { border-left: 3px solid var(--blue); background: var(--surface, #f4f5f0); padding: 1rem 1.25rem; margin: 1.5rem 0; }
.analysis-note p:last-child { margin-bottom: 0; }
.analysis-table { max-width: 100%; overflow-x: auto; margin: 1.5rem 0; }
.analysis-table table { font-size: .88rem; }
body.quarto-light .analysis-code div.sourceCode,
body.quarto-light .analysis-code pre { background: #f4f2eb !important; }
.analysis-code pre { padding: 1rem; }
.analysis-code pre code { white-space: pre-wrap; overflow-wrap: anywhere; }
.analysis-code code.sourceCode > span { display: block; text-indent: 0; padding-left: 0; }
body.quarto-light .analysis-code code { color: #24282b; }
body.quarto-light .analysis-code .cf, body.quarto-light .analysis-code .bu, body.quarto-light .analysis-code .kw { color: #78428d; }
body.quarto-light .analysis-code .st { color: #246950; }
body.quarto-light .analysis-code .dv, body.quarto-light .analysis-code .fl { color: #205f99; }
body.quarto-light .analysis-code .op { color: #4b535c; }
body.quarto-dark .analysis-code code { color: #e0e6e3; }
body.quarto-dark .analysis-code .cf, body.quarto-dark .analysis-code .bu, body.quarto-dark .analysis-code .kw { color: #d3b6ed; }
body.quarto-dark .analysis-code .st { color: #92d5b2; }
body.quarto-dark .analysis-code .dv, body.quarto-dark .analysis-code .fl { color: #93c5ff; }
body.quarto-dark .analysis-code .op { color: #bbc5cf; }
body.quarto-dark .analysis-hero-art img { filter: brightness(.85) saturate(.85); }
@media (max-width: 650px) {
  .analysis-facts { grid-template-columns: 1fr; }
  .analysis-facts > div + div { padding-top: .8rem; border-top: 1px solid var(--line); }
  .analysis-chart img { min-width: 590px; }
  .analysis-scroll-hint { display: inline; }
}
