/* QAF dot additions are scoped so existing columns and articles are unchanged. */
.qafdot-article .column-article-badges span { background:#8f4b64; color:#fff; }
.qafdot-article .column-article-badges span + span { background:#282426; }
.qafdot-column-entry .column-link { max-width: 250px; }
.qafdot-column-entry .qafdot-column-logo { display:block; width:100%; max-width:220px; height:auto; margin:0 0 18px; }
.qafdot-column-entry p { max-width:28em; margin:0; }
.qafdot-column-entry .qafdot-entry-count { display:block; margin-top:12px; color:#777; font-size:14px; }
.qafdot-column-header { padding:26px 0 32px; border-bottom:1px solid #ddd; margin-bottom:25px; }
.qafdot-column-header img { display:block; width:min(250px,70vw); height:auto; margin:8px 0 20px; }
.qafdot-column-header p { margin:0; color:#666; max-width:42em; }
#friend-qafdot-overview[hidden],#friend-qafdot-reader[hidden] { display:none!important; }
.qafdot-article.post-entry { border:0; border-radius:0; max-width:920px; padding:0; margin:28px auto; }
.qafdot-article > h3 { font-size:clamp(29px,4vw,46px); line-height:1.32; font-weight:600; margin:16px 0 12px; letter-spacing:-.03em; }
.qafdot-article > time { display:block; color:#777; font-size:14px; }
.qafdot-article-intro { margin:20px 0 26px; color:#555; font-size:19px; line-height:1.8; }
.qafdot-article .hub-copy { white-space:normal; }
.qafdot-body { font-size:18px; line-height:1.85; overflow-wrap:anywhere; }
.qafdot-body h4 { font-size:27px; line-height:1.5; margin:52px 0 20px; font-weight:650; padding-top:20px; border-top:1px solid #ddd; scroll-margin-top:90px; }
.qafdot-body h5 { font-size:21px; line-height:1.6; margin:30px 0 12px; font-weight:650; }
.qafdot-body p { margin:0 0 20px; }
.qafdot-body li { margin:8px 0; }
.qafdot-body ol,.qafdot-body ul { padding-left:1.5em; margin:18px 0 26px; }
.qafdot-body a { text-decoration-thickness:1px; text-underline-offset:4px; }
.qafdot-table-scroll { overflow-x:auto; max-width:100%; margin:24px 0 30px; border-top:1px solid #bbb; border-bottom:1px solid #ddd; }
.qafdot-body table { border-collapse:collapse; width:100%; min-width:560px; font-size:16px; line-height:1.7; }
.qafdot-body th,.qafdot-body td { text-align:left; vertical-align:top; padding:13px 15px; border:0; border-bottom:1px solid #e2e2e2; }
.qafdot-body th { background:#f4f4f4; color:#222; font-weight:650; }
.qafdot-body tr:last-child td { border-bottom:0; }
.qafdot-body blockquote { margin:24px 0; padding:18px 22px; border-left:3px solid #da6f96; background:#faf7f8; color:#333; }
.qafdot-body blockquote p:last-child { margin-bottom:0; }
.qafdot-body code { white-space:pre-wrap; overflow-wrap:anywhere; font-family:inherit; font-size:inherit; background:#f2f2f2; padding:1px 4px; }
.qafdot-body pre { white-space:pre-wrap; overflow-wrap:anywhere; padding:20px; background:#f6f6f6; border:1px solid #ddd; font:inherit; }
.qafdot-body .post-image-gallery { margin:28px 0 18px; }
.qafdot-body .post-image-gallery figure { margin:0; }
.qafdot-body .post-image-gallery figcaption { text-align:left; color:#666; font-size:14px; line-height:1.65; }
.qafdot-article-footer { margin:45px auto 24px; max-width:920px; border-top:1px solid #ddd; padding:20px 0; }
.qafdot-article-footer a { display:inline-block; margin:8px 22px 8px 0; }
.qafdot-toc nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px 22px; }
.qafdot-toc a { line-height:1.5; }
.qafdot-toc summary span { font-size:13px; }
@media(max-width:650px) {
 .qafdot-column-entry .qafdot-column-logo { max-width:165px; }
 .qafdot-article.post-entry { margin:24px 0; }
 .qafdot-body { font-size:17px; line-height:1.85; }
 .qafdot-body h4 { font-size:24px; margin-top:40px; }
 .qafdot-body h5 { font-size:20px; }
 .qafdot-article-intro { font-size:17px; }
 .qafdot-body th,.qafdot-body td { padding:11px 12px; }
 .qafdot-toc nav { grid-template-columns:1fr; }
 .qafdot-toc summary span { display:block; margin:5px 0 0 20px; }
}

/* Scoped to the article. Uses the host site's existing font family. */
.qaf-guide-body{--qaf-ink:#282426;--qaf-muted:#625b60;--qaf-line:#d6d1d3;--qaf-pink:#8f4b64;--qaf-wash:#f5e3e9;color:var(--qaf-ink);line-height:1.85;overflow-wrap:anywhere}
.qaf-guide-body h4{margin-top:2.8em;scroll-margin-top:2rem}
.qaf-guide-body h5{margin-top:1.8em;scroll-margin-top:2rem}
.qaf-guide-body p{margin-block:1em}
.qaf-guide-body a{color:var(--qaf-pink);text-decoration:underline;text-underline-offset:.2em}
.qaf-guide-body a:focus-visible,.qaf-guide-body button:focus-visible,.qaf-table-scroll:focus-visible{outline:2px solid var(--qaf-pink);outline-offset:4px}
.qaf-guide-body .qaf-guide-graphic{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);align-items:center;gap:1.5rem;margin:1.8rem 0 .8rem}
.qaf-guide-graphic>figure{margin:0;min-width:0}
.qaf-guide-graphic>figure img{display:block;width:100%;height:auto;object-fit:contain}
.qaf-guide-graphic>figure figcaption{font-size:.83rem;color:var(--qaf-muted);line-height:1.6}
.qaf-guide-body .qaf-native{font-size:1rem;line-height:1.7;min-width:0}
.qaf-native p{margin:.65em 0}
.qaf-native strong{font-weight:650}
.qaf-guide-body .qaf-mini-note{font-size:.875rem;line-height:1.7;color:var(--qaf-muted);margin:.7rem 0 0}
.qaf-guide-body .qaf-accent-note{font-size:.95rem;color:var(--qaf-pink);font-weight:600;margin:.8rem 0 .5rem}
.qaf-diagram-heading{border-block:1px solid var(--qaf-line);padding:.7rem 0;font-weight:650;text-align:center;margin-bottom:.9rem}
.qaf-diagram-heading span{display:block;font-size:.9rem;color:var(--qaf-muted);font-weight:400}
.qaf-duo{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}
.qaf-duo>div{border:1px solid var(--qaf-line);padding:.85rem .8rem;text-align:center}
.qaf-shared{padding:.8rem;text-align:center;background:var(--qaf-wash);border-left:3px solid var(--qaf-pink);margin-top:.9rem}
.qaf-layer-diagram dl{margin:0}
.qaf-layer-diagram dl>div{display:grid;grid-template-columns:6em 1fr;gap:1rem;border-bottom:1px solid var(--qaf-line);padding:.8rem 0}
.qaf-layer-diagram dt{font-weight:650;color:var(--qaf-pink)}
.qaf-layer-diagram dd{margin:0}
.qaf-flow{list-style:none;counter-reset:qaf-steps;display:grid;grid-template-columns:repeat(3,1fr);padding:0!important;gap:.65rem;margin:0!important}
.qaf-flow li{counter-increment:qaf-steps;border-bottom:1px solid var(--qaf-line);padding:.55rem .1rem!important;margin:0!important;display:flex;align-items:center;gap:.45rem}
.qaf-flow li:before{content:counter(qaf-steps,decimal-leading-zero);font-size:.8rem;font-weight:650;color:var(--qaf-pink)}
.qaf-check-types{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;padding:0!important;margin:.9rem 0 0!important}
.qaf-check-types li{padding:0!important;margin:0!important}
.qaf-check-types span{display:block;color:var(--qaf-muted);font-size:.875rem}
.qaf-chat-pair>div{padding:.35rem .65rem;color:var(--qaf-muted)}
.qaf-source{text-align:center;padding:.85rem .8rem;background:var(--qaf-wash);border-inline:3px solid var(--qaf-pink);margin:.8rem 0}
.qaf-source span{display:block;font-size:.9rem}
.qaf-version-pair>div{padding:.5rem .3rem;font-size:.875rem;border-style:dashed}
.qaf-device-branches{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}
.qaf-device-branches section{border-top:1px dashed var(--qaf-line);padding-top:.8rem;font-size:.92rem}
.qaf-nas{border-left:2px solid var(--qaf-line);padding:.4rem 0 .4rem .8rem;margin-top:.75rem}
.qaf-nas span,.qaf-cloud-dev span{display:block;font-size:.86rem;color:var(--qaf-muted)}
.qaf-cloud-dev{border-top:1px dashed var(--qaf-line);padding-top:.8rem;margin-top:.9rem;font-size:.92rem}
.qaf-quota-proposal{border:1px solid var(--qaf-line);border-top:3px solid var(--qaf-pink);padding:1rem 1.1rem;margin:1.3rem 0}
.qaf-proposal-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem}
.qaf-proposal-heading span{background:var(--qaf-wash);color:var(--qaf-pink);font-size:.875rem;padding:.25rem .5rem;font-weight:600}
.qaf-thresholds{display:grid;grid-template-columns:3fr 4fr 3fr;gap:.65rem;margin:1rem 0}
.qaf-thresholds>div{border-top:4px solid var(--qaf-line);padding:.6rem .2rem}
.qaf-thresholds>div:first-child{border-top-color:var(--qaf-pink)}
.qaf-thresholds>div:last-child{border-top-color:#c78da3}
.qaf-thresholds strong{font-size:.95rem}
.qaf-thresholds p{font-size:.9rem;margin:.3rem 0}
.qaf-table-scroll{overflow-x:auto;overscroll-behavior-x:contain;width:100%;margin:1.25rem 0 1.6rem;border-top:1px solid var(--qaf-line)}
.qaf-table-scroll table{width:100%;border-collapse:collapse;font-size:1rem;line-height:1.7;table-layout:auto}
.qaf-table-scroll th,.qaf-table-scroll td{text-align:left;vertical-align:top;padding:.75rem .8rem;border-bottom:1px solid var(--qaf-line);min-width:8em}
.qaf-table-scroll th{font-weight:600}
.qaf-table-scroll thead th{background:var(--qaf-wash);color:var(--qaf-ink)}
.qaf-table-scroll tbody th{background:transparent}
@media(max-width:700px){
 .qaf-guide-body .qaf-guide-graphic{grid-template-columns:1fr;gap:1rem}
 .qaf-guide-graphic>figure{max-width:350px;justify-self:center;width:100%}
 .qaf-native{width:100%}
 .qaf-table-scroll{position:relative}
 .qaf-table-scroll:before{content:"表格可左右滑動";display:block;position:sticky;left:0;font-size:.875rem;color:var(--qaf-muted);padding:.4rem 0}
 .qaf-table-scroll th,.qaf-table-scroll td{padding:.7rem;min-width:9em}
 .qaf-thresholds{grid-template-columns:1fr;gap:.1rem}
 .qaf-thresholds>div{display:grid;grid-template-columns:10em 1fr;gap:.7rem;padding:.65rem 0;border-top-width:2px}
 .qaf-thresholds p{margin:0}
 .qaf-quota-proposal{padding:.9rem}
}
@media(max-width:420px){
 .qaf-flow{grid-template-columns:1fr}
 .qaf-check-types{grid-template-columns:1fr}
 .qaf-check-types li{display:flex;gap:.75rem}
 .qaf-layer-diagram dl>div{grid-template-columns:5em 1fr;gap:.7rem}
 .qaf-device-branches{grid-template-columns:1fr}
 .qaf-thresholds>div{grid-template-columns:1fr;gap:.25rem}
}
/* The four-scene workflow illustration needs the full content width. */
.qaf-guide-body .qaf-graphic-workflow{grid-template-columns:1fr}
.qaf-graphic-workflow>figure{width:100%;max-width:none;justify-self:stretch}
.qaf-graphic-workflow .qaf-flow{grid-template-columns:repeat(6,1fr)}
@media(max-width:700px){.qaf-graphic-workflow .qaf-flow{grid-template-columns:repeat(3,1fr)}}
@media(max-width:420px){.qaf-graphic-workflow .qaf-flow{grid-template-columns:1fr}}
/* Expanded analytical visuals: each table has a corresponding reasoning diagram. */
.qaf-guide-body .qaf-root{font-weight:650;color:var(--qaf-ink);padding:.6rem 0 .65rem;border-bottom:2px solid var(--qaf-pink);text-align:center;margin-bottom:.8rem}
.qaf-guide-body .qaf-loop-note{border-left:3px solid var(--qaf-pink);padding:.55rem .8rem;margin:.85rem 0 .2rem;color:var(--qaf-pink);font-size:.9rem;line-height:1.75;background:var(--qaf-wash)}
.qaf-guide-body .qaf-converge{text-align:center;padding:.7rem 0;font-size:.9rem;color:var(--qaf-pink);font-weight:550}
.qaf-guide-body .qaf-native-only{margin:1.4rem 0;padding:1.15rem 0;border-block:1px solid var(--qaf-line)}
.qaf-native small,.qaf-native em{font-style:normal}
.qaf-branches,.qaf-recovery-branches,.qaf-permission-branches{list-style:none!important;padding:0 0 0 1rem!important;margin:.5rem 0 0!important;border-left:1px solid var(--qaf-line)}
.qaf-branches>li,.qaf-recovery-branches>li,.qaf-permission-branches>li{position:relative;padding:.65rem 0!important;margin:0!important}
.qaf-branches>li:before,.qaf-recovery-branches>li:before,.qaf-permission-branches>li:before{content:"";position:absolute;top:1.35rem;left:-1rem;width:.7rem;border-top:1px solid var(--qaf-line)}
.qaf-branches>li{display:grid;grid-template-columns:1fr auto 1.25fr;gap:.5rem;align-items:start}
.qaf-branches small{display:block;color:var(--qaf-muted);font-size:.82rem;line-height:1.7;margin-top:.2rem}
.qaf-path-arrow{color:var(--qaf-pink)}
.qaf-venn{position:relative;height:235px;margin:.5rem 0}
.qaf-venn-left,.qaf-venn-right{position:absolute;top:12px;width:62%;height:202px;border:1.5px solid var(--qaf-line);border-radius:50%;padding:2rem .65rem;box-sizing:border-box}
.qaf-venn-left{left:0;background:rgba(245,227,233,.22)}
.qaf-venn-right{right:0;background:rgba(245,227,233,.22)}
.qaf-venn-left>strong,.qaf-venn-left>span{display:block;width:59%;text-align:center}
.qaf-venn-right>strong,.qaf-venn-right>span{display:block;width:59%;margin-left:auto;text-align:center}
.qaf-venn-left>span,.qaf-venn-right>span{font-size:.82rem;margin-top:.6rem;color:var(--qaf-muted)}
.qaf-venn-overlap{position:absolute;left:31%;width:38%;top:76px;text-align:center;line-height:1.7;font-size:.83rem;color:var(--qaf-pink)}
.qaf-venn-overlap>strong{font-size:.85rem}
.qaf-responsibility-track{display:flex;justify-content:space-between;align-items:center;gap:.4rem;font-size:.83rem;border-top:1px solid var(--qaf-line);padding-top:.65rem}
.qaf-responsibility-track>b{color:var(--qaf-pink)}
.qaf-layer-stack{padding-left:.35rem}
.qaf-layer{padding:.7rem .8rem;border-left:3px solid var(--qaf-pink);border-bottom:1px solid var(--qaf-line)}
.qaf-layer>strong{display:block}
.qaf-layer>span{font-size:.9rem;color:var(--qaf-muted)}
.qaf-layer-1{width:70%;background:var(--qaf-wash)}
.qaf-layer-2{width:84%;background:rgba(245,227,233,.4)}
.qaf-layer-3{width:100%}
.qaf-layer-join{font-size:.8rem;color:var(--qaf-muted);padding:.3rem 0 .3rem .7rem}
.qaf-permission-rail{border-left:1px dashed var(--qaf-pink);padding-left:.8rem;color:var(--qaf-pink);font-size:.85rem}
.qaf-connected-flow>li{position:relative;padding-right:.9rem!important}
.qaf-connected-flow>li:not(:last-child):after{content:"→";color:var(--qaf-pink);position:absolute;right:0;font-size:.85rem}
.qaf-version-source{display:flex;gap:.5rem;justify-content:center;align-items:center;font-size:.86rem;flex-wrap:wrap}
.qaf-version-source strong{color:var(--qaf-pink);border-bottom:2px solid var(--qaf-pink);padding:.2rem .35rem}
.qaf-version-source b{font-weight:400;color:var(--qaf-muted)}
.qaf-stage-road{list-style:none!important;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;padding:1rem 0 0!important;margin:.5rem 0!important;border-top:1px solid var(--qaf-line)}
.qaf-stage-road li{position:relative;padding:.45rem 0!important;margin:0!important}
.qaf-stage-road li:before{content:"";position:absolute;top:-1.4rem;left:.35rem;width:.6rem;height:.6rem;border-radius:50%;background:var(--qaf-pink)}
.qaf-stage-road li:not(:last-child):after{content:"→";position:absolute;right:-.8rem;top:.45rem;color:var(--qaf-pink)}
.qaf-stage-road strong,.qaf-stage-road span{display:block}
.qaf-stage-road strong{font-size:.94rem}
.qaf-stage-road span{font-size:.83rem;color:var(--qaf-muted);margin-top:.4rem}
.qaf-device-branches>section{position:relative}
.qaf-device-branches>section:before{content:"↓";display:block;color:var(--qaf-pink);font-size:.9rem;margin-bottom:.35rem}
.qaf-research-fan{list-style:none!important;padding:0!important;margin:1rem 0 .4rem!important;display:grid;grid-template-columns:1fr 1fr;gap:1.1rem .9rem}
.qaf-research-fan li{padding:0 0 .5rem!important;margin:0!important;border-bottom:1px solid var(--qaf-line)}
.qaf-research-fan strong,.qaf-research-fan span{display:block}
.qaf-research-fan strong:before{content:"↘ ";color:var(--qaf-pink)}
.qaf-research-fan span{font-size:.84rem;color:var(--qaf-muted);margin-top:.2rem}
.qaf-research-outcomes{display:flex;flex-wrap:wrap;gap:.4rem 1rem;justify-content:center;font-size:.83rem}
.qaf-evidence-paths ol{list-style:none!important;padding:0!important;margin:0!important}
.qaf-evidence-paths li{display:grid;grid-template-columns:6em minmax(0,1fr) auto 7em;gap:.8rem;align-items:center;margin:0!important;padding:.85rem 0!important;border-bottom:1px solid var(--qaf-line)}
.qaf-evidence-paths li>strong{color:var(--qaf-pink)}
.qaf-evidence-paths li>em{border-bottom:2px solid var(--qaf-pink);padding:.35rem 0;text-align:center;font-weight:600}
.qaf-evidence-paths li>span{font-size:.94rem}
.qaf-evidence-paths li>b{color:var(--qaf-pink)}
.qaf-reading-pair{display:grid;grid-template-columns:1fr auto 1fr;gap:1rem;align-items:center;text-align:center;padding:.5rem 0}
.qaf-reading-pair>div{border-bottom:1px solid var(--qaf-line);padding:.5rem}
.qaf-reading-pair strong,.qaf-reading-pair span{display:block}
.qaf-reading-pair span{font-size:.88rem;color:var(--qaf-muted)}
.qaf-reading-pair>b{font-size:1.5rem;color:var(--qaf-pink)}
.qaf-evidence-tags{list-style:none!important;display:grid;grid-template-columns:repeat(4,1fr);padding:0!important;margin:.5rem 0!important;gap:.8rem}
.qaf-evidence-tags li{padding:.6rem .35rem .6rem .6rem!important;margin:0!important;border-left:2px solid var(--qaf-line)}
.qaf-evidence-tags li:nth-child(3){border-left-color:var(--qaf-pink)}
.qaf-evidence-tags li:nth-child(4){border-left-style:dashed}
.qaf-evidence-tags strong,.qaf-evidence-tags span{display:block}
.qaf-evidence-tags strong{font-size:.94rem}
.qaf-evidence-tags span{font-size:.84rem;color:var(--qaf-muted);margin-top:.3rem}
.qaf-guide-body .qaf-graphic-conflict-recovery{grid-template-columns:1fr}
.qaf-graphic-conflict-recovery>figure{max-width:430px;justify-self:center;width:100%}
.qaf-recovery-branches>li{display:grid;grid-template-columns:8em 1fr;column-gap:1rem;border-bottom:1px solid var(--qaf-line)}
.qaf-recovery-branches>li>strong{grid-row:1/3;color:var(--qaf-pink)}
.qaf-recovery-branches>li>p{margin:0;font-size:.94rem}
.qaf-recovery-branches>li>span{font-size:.9rem;color:var(--qaf-muted);margin-top:.35rem}
.qaf-metric{display:grid;grid-template-columns:2rem 1fr auto 1fr;gap:.65rem;align-items:center;padding:.85rem 0;border-bottom:1px solid var(--qaf-line)}
.qaf-metric-symbol{font-size:1.6rem;color:var(--qaf-pink);text-align:center}
.qaf-metric strong,.qaf-metric span:not(.qaf-metric-symbol){display:block}
.qaf-metric div>span{font-size:.82rem;color:var(--qaf-muted)}
.qaf-metric strong{font-size:.95rem}
.qaf-metric p{font-size:.84rem;margin:0}
.qaf-metric>b{color:var(--qaf-pink);font-weight:400}
.qaf-quota-invalid{border-left:2px dashed var(--qaf-pink);padding:.6rem .8rem;font-size:.9rem}
.qaf-quota-invalid strong,.qaf-quota-invalid span{display:block}
.qaf-quota-invalid span{font-size:.86rem;color:var(--qaf-muted);margin-top:.25rem}
.qaf-permission-branches{display:grid;grid-template-columns:1fr 1fr;gap:0 1.3rem}
.qaf-permission-branches>li{border-bottom:1px solid var(--qaf-line)}
.qaf-permission-branches>li>strong{display:block;color:var(--qaf-pink)}
.qaf-permission-branches>li>span{font-size:.85rem;color:var(--qaf-muted)}
.qaf-archive-road{list-style:none!important;counter-reset:qaf-archive;position:relative;padding:0 0 0 .55rem!important;margin:0!important;border-left:1px solid var(--qaf-line)}
.qaf-archive-road li{counter-increment:qaf-archive;position:relative;margin:0!important;padding:.5rem 0 .5rem 1.3rem!important;font-size:.94rem}
.qaf-archive-road li:before{content:counter(qaf-archive);position:absolute;left:-1.05rem;top:.5rem;width:1rem;line-height:1.5;background:white;color:var(--qaf-pink);font-size:.9rem;text-align:center;font-weight:650}
.qaf-archive-retry{margin:.8rem 0 0;padding:.7rem 0;border-top:1px dashed var(--qaf-line);font-size:.9rem}
.qaf-archive-retry>strong,.qaf-archive-retry>span{display:block}
.qaf-archive-retry>span{color:var(--qaf-muted);font-size:.84rem}
.qaf-brief-inputs{list-style:none!important;display:grid;grid-template-columns:1fr 1fr;gap:.45rem 1rem;padding:0!important;margin:0!important}
.qaf-brief-inputs li{padding:.55rem 0!important;margin:0!important;border-bottom:1px solid var(--qaf-line);font-size:.9rem}
.qaf-funnel-point{text-align:center;color:var(--qaf-pink);font-size:.9rem;padding:.7rem 0}
.qaf-brief-return{display:flex;justify-content:center;flex-wrap:wrap;gap:.4rem 1rem;font-size:.87rem}
.qaf-quality-gates ol{list-style:none!important;padding:0!important;margin:0!important}
.qaf-quality-gates li{display:flex;align-items:center;gap:1rem;padding:.8rem 0!important;margin:0!important;position:relative}
.qaf-quality-gates li:not(:last-child):after{content:"";position:absolute;left:1.03rem;top:3rem;bottom:-.45rem;border-left:1px solid var(--qaf-line)}
.qaf-quality-gates li>b{flex:none;display:grid;place-items:center;width:2.15rem;height:2.15rem;border:1.5px solid var(--qaf-pink);border-radius:50%;font-size:.85rem;color:var(--qaf-pink)}
.qaf-quality-gates li strong,.qaf-quality-gates li span{display:block}
.qaf-quality-gates li span{font-size:.86rem;color:var(--qaf-muted)}
@media(max-width:700px){
 .qaf-guide-body .qaf-native-only{padding-block:.8rem}
 .qaf-evidence-paths li{grid-template-columns:5em minmax(0,1fr) auto 6em;gap:.5rem}
 .qaf-evidence-paths li>span{font-size:.85rem}
 .qaf-evidence-tags{grid-template-columns:1fr 1fr}
 .qaf-recovery-branches>li{grid-template-columns:1fr}
 .qaf-recovery-branches>li>strong{grid-row:auto}
 .qaf-recovery-branches>li>p{margin-top:.3rem}
}
@media(max-width:420px){
 .qaf-branches>li{grid-template-columns:1fr auto 1fr;gap:.4rem;font-size:.91rem}
 .qaf-branches small{font-size:.8rem}
 .qaf-venn{height:240px}
 .qaf-venn-left,.qaf-venn-right{height:215px;padding-top:2.2rem}
 .qaf-venn-overlap{top:84px;font-size:.8rem}
 .qaf-venn-overlap>strong{font-size:.8rem}
 .qaf-responsibility-track{flex-wrap:wrap;justify-content:center}
 .qaf-stage-road{grid-template-columns:1fr;border-top:none;border-left:1px solid var(--qaf-line);margin-left:.45rem!important;padding:.2rem 0 .2rem 1rem!important}
 .qaf-stage-road li:before{left:-1.32rem;top:.9rem}
 .qaf-stage-road li:not(:last-child):after{content:"↓";right:auto;left:-1.32rem;top:auto;bottom:-1.05rem;font-size:.8rem;background:white}
 .qaf-stage-road span br{display:none}
 .qaf-evidence-paths li{grid-template-columns:1fr auto 1fr;gap:.5rem}
 .qaf-evidence-paths li>strong{grid-column:1/-1}
 .qaf-evidence-paths li>em{font-size:.9rem}
 .qaf-reading-pair{gap:.6rem}
 .qaf-metric{grid-template-columns:1.8rem 1fr auto 1fr;gap:.4rem}
 .qaf-metric strong{font-size:.9rem}
 .qaf-metric div>span{font-size:.8rem}
 .qaf-permission-branches{grid-template-columns:1fr}
 .qaf-permission-branches>li>strong,.qaf-permission-branches>li>span{display:inline}
 .qaf-connected-flow>li:not(:last-child):after{content:"↓"}
}
/* Japanese interior 01: scoped to the game-making article. */
.qaf-game-making{max-width:960px!important;margin:36px auto!important;padding:24px 0!important;font-family:Arial,"Microsoft JhengHei",sans-serif!important;color:#262426}
.qaf-game-making h3{font-size:38.6667px!important;line-height:52.2px!important;font-weight:500!important;letter-spacing:0!important;margin:16px 0!important}
.qaf-game-making .qafdot-body,.qaf-game-making p,.qaf-game-making li{font-size:17.6667px!important;line-height:27.3834px!important;font-weight:400}
.qaf-game-making p{margin:7px 0!important}.qaf-game-making .qafdot-article-intro{margin:20px 0 26px!important;color:#696468}
.qaf-game-making h4{font-size:20.6667px!important;line-height:38.2334px!important;font-weight:700!important;margin:28px 0 12px!important;border-top:1px solid #cec9cb;padding-top:20px}
.qaf-game-making h5{font-size:22px;line-height:1.5;margin:0 0 10px;font-weight:600}
.qaf-game-making a{color:#a43d60;text-decoration-thickness:1px;text-underline-offset:4px}.qaf-game-making a:focus-visible,.qaf-game-making summary:focus-visible{outline:2px solid #d65e85;outline-offset:4px}
.qaf-game-making .column-article-badges span{background:#fbe9ef;color:#6a3648;border:0;font-size:13px;padding:5px 9px}
.qaf-game-making figure{margin:22px 0 28px!important;width:100%}.qaf-game-making figure img{display:block!important;width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;background:white}
.qaf-game-making figcaption{font-size:17.6667px!important;line-height:27.3834px!important;color:#737373!important;text-align:center;margin:8px 0 0!important}
.qaf-game-making .game-showcase{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 28px;margin:24px 0 36px}.qaf-game-making .game-showcase section{min-width:0;padding-bottom:22px;border-bottom:1px solid #cec9cb}.qaf-game-making .game-showcase-wide{grid-column:1/-1}.qaf-game-making .game-showcase figure{margin:0 0 16px!important}.qaf-game-making .game-showcase-wide figure{max-width:800px;margin:0 auto 16px!important}.qaf-game-making .game-play-link{display:inline-block;margin-top:14px;padding:9px 0;font-weight:700}
.qaf-game-making .game-prompt{margin:18px 0;border:1px solid #cec9cb;border-left:3px solid #d65e85;padding:12px 16px;background:white}.qaf-game-making .game-prompt summary{cursor:pointer;font-size:17.6667px;line-height:1.55;font-weight:700}.qaf-game-making .game-prompt div{margin-top:14px;font-size:17.6667px;line-height:1.7;white-space:normal;user-select:text}.qaf-game-making code{font-size:.9em;background:#f3f2f2;padding:2px 4px;overflow-wrap:anywhere}.qaf-game-making .game-checklist{padding-left:24px;margin:18px 0}.qaf-game-making .game-checklist li{margin:7px 0}.qaf-game-making .game-article-note{border-top:1px solid #cec9cb;margin-top:32px;padding-top:18px;color:#696468}
@media(max-width:600px){.qaf-game-making h3{font-size:30.6667px!important;line-height:41.4px!important}.qaf-game-making .game-showcase{grid-template-columns:1fr;gap:26px}.qaf-game-making .game-showcase-wide{grid-column:auto}.qaf-game-making .game-prompt{padding:12px}.qaf-game-making h4{margin-top:24px!important}.qaf-game-making .qafdot-toc{max-width:100%}.qaf-game-making figcaption{text-align:left!important}}
.qaf-game-making .column-article-badges span{background:#fbe9ef!important;color:#6a3648!important}

/* Revision 2: full-width figures and the same heading hierarchy as QAF articles. */
.qaf-game-making .game-showcase{display:block}.qaf-game-making .game-showcase section{margin:28px 0 42px}.qaf-game-making .game-showcase figure{max-width:none;margin:18px 0!important}.qaf-game-making h5{font-size:20.6667px;line-height:1.6}.qaf-game-making .qafdot-body>p:first-child{margin-top:24px!important}.qaf-game-making figure a{display:block}.qaf-game-making .game-showcase section:nth-child(-n+2) figure{max-width:640px;margin-left:auto!important;margin-right:auto!important}

/* Five equal game cards: two columns, with no featured fifth card. */
.qaf-game-making .game-showcase{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 28px}
.qaf-game-making .game-showcase section{grid-column:auto;margin:0;display:flex;flex-direction:column}
.qaf-game-making .game-showcase section figure{max-width:none;width:100%;margin:18px 0 12px!important}
.qaf-game-making .game-showcase figure a{aspect-ratio:4/3;display:block;background:#fff}
.qaf-game-making .game-showcase figure img{width:100%!important;height:100%!important;object-fit:contain!important}
.qaf-game-making .game-showcase .game-play-link{margin-top:auto}
@media(max-width:600px){.qaf-game-making .game-showcase{grid-template-columns:1fr;gap:28px}}

/* QAF daily essay revision: match shared column typography. */
.qaf-daily-ai{max-width:960px!important;margin:36px auto!important;padding:24px 0!important;color:#262426;font-family:Arial,"Microsoft JhengHei",sans-serif!important}
.qaf-daily-ai h3{font-size:38.6667px!important;line-height:52.2px!important;font-weight:500!important;letter-spacing:0!important;margin:16px 0!important}
.qaf-daily-ai .qafdot-body,.qaf-daily-ai p,.qaf-daily-ai li{font-size:17.6667px!important;line-height:27.3834px!important}
.qaf-daily-ai p{margin:7px 0!important}.qaf-daily-ai .qafdot-article-intro{margin:20px 0 26px!important;color:#696468}
.qaf-daily-ai h4{font-size:20.6667px!important;line-height:38.2334px!important;font-weight:700!important;margin:28px 0 12px!important;padding-top:20px;border-top:1px solid #cec9cb}
.qaf-daily-ai figure{width:100%;margin:22px 0 28px!important}.qaf-daily-ai figure a{display:block}.qaf-daily-ai figure img{width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;background:white;display:block!important}
.qaf-daily-ai figcaption{font-size:17.6667px!important;line-height:27.3834px!important;color:#737373!important;margin-top:8px;text-align:center}
.qaf-daily-ai a{color:#a43d60;text-underline-offset:4px}.qaf-daily-ai .daily-prompt{margin:20px 0;padding:14px 0;border-top:1px solid #cec9cb;border-bottom:1px solid #cec9cb}.daily-prompt summary{font-weight:700;cursor:pointer}.daily-prompt[open] summary{margin-bottom:10px}
.qaf-daily-ai .daily-note{margin-top:28px!important;color:#696468;border-top:1px solid #cec9cb;padding-top:16px}
.qaf-daily-ai .universal-prompt,.qaf-game-making .universal-prompt{margin:24px 0;padding:16px 0;border-top:2px solid #d65e85;border-bottom:1px solid #cec9cb;user-select:text}
.qaf-daily-ai .universal-prompt h5,.qaf-game-making .universal-prompt h5{font-size:20.6667px;line-height:1.6;margin:0 0 12px}
@media(max-width:600px){.qaf-daily-ai h3{font-size:30.6667px!important;line-height:41.4px!important}.qaf-daily-ai figcaption{text-align:left}}

/* Dot/local collaboration guide: scoped readable setup lists. */
.qaf-collab-guide .collab-setup{padding-left:1.4em;margin:16px 0}
.qaf-collab-guide .collab-setup>li{margin:0 0 22px;padding-left:.15em}
.qaf-collab-guide p,.qaf-collab-guide li{overflow-wrap:anywhere}
.qaf-collab-guide .post-meta{display:flex;gap:14px;align-items:center;font-size:14px;color:#696468}
.qaf-collab-guide .daily-prompt p,.qaf-collab-guide .universal-prompt p{user-select:text}
