.article-breadcrumb {display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px;font-size:14px;color:#64748b;line-height:1.5}
.article-breadcrumb a {color:#475569;text-decoration:underline;text-underline-offset:3px}
.article-summary,.photo-check {padding:22px;background:#eff5ff;border:1px solid #cfddf5;border-radius:12px;margin:0 0 24px}
.article-summary p:last-child,.photo-check p:last-child {margin-bottom:0}
.article-toc {padding:18px 20px;border:1px solid #dce3ed;border-radius:12px;margin-bottom:26px}
.article-toc strong {display:block;margin-bottom:12px}
.article-toc a {text-decoration:underline;text-underline-offset:3px}
.article-toc ul {margin:0;gap:6px}
.blog-content [id] {scroll-margin-top:96px}
.review-template {padding:20px;border:1px solid #dce3ed;border-radius:12px;margin:18px 0;background:#fff}
.review-template h3 {margin:0 0 12px;font-size:21px;line-height:1.35}
.review-template blockquote {margin:0 0 16px;padding-left:16px;border-left:3px solid #3157ff}
.review-template blockquote p {margin:0}
.review-template .template-note {font-size:15px;color:#64748b;margin-top:16px;margin-bottom:0}
.article-tool-button {font:inherit;font-weight:700;cursor:pointer;padding:11px 16px;border:1px solid #3157ff;border-radius:8px;background:#fff;color:#2144cd;min-height:44px}
.article-tool-button:focus-visible {outline:3px solid #3157ff;outline-offset:3px}
.article-copy-feedback {display:block;min-height:1.5em;margin-top:8px;font-size:14px;color:#475569}
.article-copy-fallback {box-sizing:border-box;display:block;width:100%;min-height:130px;margin-top:12px;padding:12px;font:inherit;border:1px solid #94a3b8;border-radius:8px}
.article-copy-fallback[hidden],.photo-check [hidden],.review-template button[hidden] {display:none!important}
.photo-check label {display:block;font-weight:700;margin-bottom:10px}
.photo-check input {box-sizing:border-box;width:100%;font:inherit;max-width:100%;padding:12px;border:1px solid #94a3b8;border-radius:8px;background:#fff}
.photo-check dl {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin:20px 0}
.photo-check dt,.photo-check dd {margin:0;overflow-wrap:anywhere;line-height:1.5}
.photo-check dd {font-weight:700}
.photo-check .photo-note {font-size:14px;color:#475569;margin-top:14px}
.article-reference {font-size:15px!important;color:#64748b!important}
@media(max-width:520px) {.article-summary,.photo-check,.review-template {padding:16px}.article-toc {padding:16px}.review-template h3 {font-size:19px}}

.article-diagram {display:block;width:100%;height:auto;margin:24px 0;border-radius:12px}
