/* Editorial additions preserve the retained template's sections and responsive layout. */
a:focus-visible,button:focus-visible{outline:3px solid #7c3aed;outline-offset:4px}
.card h3 a,.extra-card h3 a,.drama-item h4 a{color:inherit;text-decoration:none}
.card h3 a:hover,.extra-card h3 a:hover,.drama-item h4 a:hover{text-decoration:underline;text-underline-offset:4px}
.source-notes{border:1px solid #ddd6fe;background:#f5f3ff;border-radius:24px;padding:32px;line-height:1.85}
.source-notes h2{font-size:1.4rem;margin-bottom:14px;color:#312e81}
.source-notes p+p{margin-top:14px}.source-notes a{color:#4f46e5;text-underline-offset:3px}
.guide-shell{width:min(100% - 40px,900px);margin:36px auto 72px;overflow-wrap:anywhere}
.breadcrumbs{font-size:.88rem;color:#64748b;margin-bottom:24px}.breadcrumbs a{color:#4f46e5}
.guide-heading h1{font-size:clamp(1.8rem,4vw,2.9rem);line-height:1.35;margin:16px 0 22px;color:#0f172a}
.direct-answer{font-size:1.12rem;line-height:1.9;color:#475569;padding:24px;background:#eef2ff;border-left:4px solid #6366f1;border-radius:0 18px 18px 0}
.guide-figure{margin:28px 0}.guide-figure img{width:100%;max-height:360px;object-fit:contain;border-radius:24px;background:#eef2ff}.guide-figure figcaption{font-size:.85rem;color:#64748b;text-align:center;margin-top:8px}
.guide-toc{display:flex;flex-wrap:wrap;gap:10px 20px;padding:22px;border:1px solid #e0e7ff;border-radius:20px;background:white;margin:28px 0}.guide-toc strong{flex-basis:100%}.guide-toc a{color:#4f46e5;font-size:.92rem}
.guide-body{font-size:1.04rem;line-height:1.95;color:#334155}.guide-body section{margin:36px 0;scroll-margin-top:100px}.guide-body h2{font-size:1.5rem;line-height:1.5;color:#1e1b4b;margin-bottom:16px}.guide-body p+p{margin-top:16px}.guide-body ol{padding-left:1.5em;margin:20px 0}.guide-body li+li{margin-top:12px}
.table-wrap{overflow-x:auto;margin:24px 0;border-radius:16px;border:1px solid #ddd6fe}.table-wrap table{border-collapse:collapse;width:100%;font-size:.95rem;table-layout:fixed}.table-wrap caption{text-align:left;padding:12px 16px;background:#f5f3ff;font-weight:600}.table-wrap th,.table-wrap td{text-align:left;vertical-align:top;padding:14px;border-bottom:1px solid #e0e7ff;overflow-wrap:anywhere}.table-wrap th{background:#eef2ff;color:#312e81}.table-wrap tr:last-child td{border-bottom:0}
.example-panel{padding:26px;background:linear-gradient(135deg,#eef2ff,#f5f3ff);border-radius:24px;border:1px solid #ddd6fe}
.guide-related{background:#fff;border:1px solid #e0e7ff;border-radius:24px;padding:28px;margin-top:44px}.guide-related h2{font-size:1.35rem;margin-bottom:16px}.guide-related a{display:block;color:#4f46e5;margin:12px 0;line-height:1.7}
.guide-body .source-notes{width:100%;padding:24px}.guide-body #sources{padding:0}
@media(max-width:768px){.guide-shell{width:calc(100% - 32px);margin-top:24px}.guide-heading h1{font-size:1.85rem}.direct-answer{font-size:1rem;padding:18px}.guide-body{font-size:1rem}.guide-body h2{font-size:1.28rem}.guide-figure img{max-height:250px}.source-notes{padding:22px}.table-wrap th,.table-wrap td{padding:10px;font-size:.86rem}.example-panel{padding:20px}.hero h1{font-size:2rem;line-height:1.35}.drama-item .info h4{white-space:normal;overflow:visible}.logo span{font-size:1.1rem}}
/* Keep the complete original diagrams visible inside the retained image slots. */
.hero-image img,.card-img,.community-images img,.timeline-right img,.contest-card>img,.step-img{object-fit:contain;background:#eef2ff}
