/* Third Blog article: match the approved JING/DAO editorial metrics. */
@font-face{font-family:D-DIN;src:url('/fonts/D-DIN.otf');font-weight:100 500;font-display:optional}
@font-face{font-family:D-DIN;src:url('/fonts/D-DIN-Bold.otf');font-weight:600 900;font-display:optional}
.dual-exam-page{--article-ink:#171717;--article-muted:#666;--article-line:#dedede;background:#080a0b}
[hidden]{display:none!important}
.editorial-wrap,.dual-article{width:min(1180px,calc(100% - 80px));margin-inline:auto}
.dual-exam-page a{color:inherit}
.dual-exam-page button,.dual-exam-page input,.dual-exam-page select{font:inherit}
.dual-exam-page button{cursor:pointer}
.dual-exam-page :is(a,button,input,select,[tabindex]):focus-visible{outline:2px solid currentColor;outline-offset:4px}
.article-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:36px 0 0}
.back-blog{color:#666!important;text-transform:uppercase;text-decoration:none;font-size:13px}
.back-blog:hover{color:#171717!important}
.language-tabs{display:inline-flex;width:max-content;max-width:100%;padding:2px;border:1px solid #d8d8d8;border-radius:4px;background:#f6f6f6}
.language-tabs button{min-height:34px;padding:0 18px;border:0;border-radius:2px;background:transparent;color:#777;font-size:13px;line-height:1.2}
.language-tabs button[aria-pressed=true]{background:#171717;color:#fff}
.asset-notice{margin-top:24px;padding:12px 16px;border:1px solid #dedede;border-radius:3px;background:#fafafa;color:#777;font-size:13px;line-height:1.6}
.dual-article{padding-top:64px;padding-bottom:88px;font-size:18px;line-height:1.7;color:#666}
.dual-article h1,.dual-article h2{color:#171717;font-family:D-DIN,Arial,'PingFang SC','Microsoft YaHei',sans-serif}
.article-title{max-width:1100px;margin:0 auto 40px;font-size:clamp(36px,4.2vw,56px);font-weight:600;line-height:1.08;letter-spacing:-.035em;text-align:center;text-wrap:balance;text-transform:uppercase}
.article-intro>p:first-of-type{max-width:960px;margin:0 auto 40px;text-align:center;font-size:20px;line-height:1.7}
.dual-article p{margin:24px 0 0}
.dual-article strong{color:#333;font-weight:600}
.article-section{margin-top:88px;padding-top:64px;border-top:1px solid #dedede;scroll-margin-top:120px}
.section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start;margin-bottom:32px}
.section-heading{margin:0;font-size:clamp(30px,3.2vw,42px);font-weight:400;line-height:1.12;letter-spacing:-.025em;text-transform:uppercase;text-wrap:balance}
.section-head>p{margin:0;min-width:0}
.dual-article[lang=zh-CN]{font-family:D-DIN,'PingFang SC','Microsoft YaHei',Arial,sans-serif;font-size:17px;line-height:1.9}
.dual-article[lang=zh-CN] .article-title{font-size:clamp(32px,3.6vw,48px);line-height:1.35;letter-spacing:0}
.dual-article[lang=zh-CN] .section-heading{font-size:clamp(28px,3vw,36px);line-height:1.45;letter-spacing:0}
.dual-article[lang=zh-CN] .article-intro>p:first-of-type{font-size:18px;line-height:1.9}
.article-figure{position:relative;margin:36px 0 32px}
.article-figure img{display:block;width:100%;height:auto;border:1px solid #dedede;cursor:zoom-in}
.media-slot{position:relative;margin:36px 0 28px;overflow:hidden;border-radius:12px;background:#f6f6f6}
.media-slot video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#080a0b}
.media-poster-placeholder{display:grid;place-items:center;aspect-ratio:16/9;padding:28px;background:#f6f6f6;color:#555;font-size:18px;line-height:1.4}
.video-preview{position:relative;display:block;width:100%;padding:0;border:0;background:#f6f6f6;color:#171717;overflow:hidden}
.video-preview img{display:block;width:100%;aspect-ratio:16/9;object-fit:contain}
.play-badge{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#171717c9;color:#fff;font-size:18px}
.media-missing{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:220px;aspect-ratio:16/9;padding:32px;background:#f6f6f6;border:1px solid #dedede;border-radius:8px;text-align:center;color:#777}
.media-missing-label{font-size:12px;line-height:1.4;letter-spacing:.08em;text-transform:uppercase}
.media-missing-title{max-width:680px;font-size:clamp(18px,2vw,26px);font-weight:400;line-height:1.35;color:#555}
.media-missing-note{max-width:600px;font-size:13px;line-height:1.5;color:#888}
.table-scroll{width:100%;margin:32px 0;overflow-x:auto;border:1px solid #dedede}
.table-scroll table{border-collapse:collapse;width:100%;min-width:610px;color:#555;font-size:16px;line-height:1.65}
.table-scroll th,.table-scroll td{padding:20px 24px;text-align:left;vertical-align:top;border-bottom:1px solid #e5e5e5;font-weight:400}
.table-scroll thead{background:#f6f6f6;color:#777}
.table-scroll tbody tr:last-child td{border-bottom:0}
.table-scroll td:first-child{color:#171717;width:22%}
.dual-article ul,.dual-article ol{margin:28px 0;padding-left:24px}
.dual-article li+li{margin-top:20px}
.library{padding:64px 0 96px;border-top:1px solid #dedede;color:#171717}
.library-heading{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:32px}
.library h2{margin:0;font-size:40px;line-height:1.1;font-weight:400;text-transform:uppercase}
#case-count{margin:0;color:#888;font-size:14px}
.controls{position:relative;z-index:2;display:flex;flex-wrap:wrap;align-items:end;gap:16px;margin-bottom:32px}
.controls>.filter-control,.controls>.search-control{display:flex;flex-direction:column;gap:8px;min-width:150px;color:#777;font-size:13px}
.controls .search-control{flex:1}
.controls input,.controls select,.controls .filter-trigger{height:42px;max-width:100%;padding:8px 12px;border:1px solid #d8d8d8;border-radius:3px;background:#fafafa;color:#171717;font-size:15px}
.filter-select{position:relative;width:100%;min-width:0}
.controls .filter-trigger{position:relative;display:block;width:100%;padding-right:40px;text-align:left;white-space:nowrap}
.filter-trigger::after{content:"";position:absolute;right:16px;top:calc(50% - 5px);width:7px;height:7px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:rotate(45deg);pointer-events:none}
.filter-trigger[aria-expanded=true]::after{top:calc(50% - 1px);transform:rotate(225deg)}
.dual-exam-page .controls :is(input,select,.filter-trigger):focus{outline:none;box-shadow:none;border-color:#aaa;background:#f5f5f5}
.dual-exam-page .controls :is(input,select,.filter-trigger):focus-visible{outline:none;box-shadow:none;border-color:#949494;background:#f2f2f2}
.filter-options{position:absolute;top:calc(100% + 8px);left:0;z-index:3;width:100%;box-sizing:border-box;max-height:240px;overflow-y:auto;overscroll-behavior:contain;padding:4px;border:1px solid #d8d8d8;border-radius:4px;background:#fff;box-shadow:0 6px 18px #0000000d;color:#171717;font-size:15px}
.filter-option{position:relative;padding:10px 28px 10px 10px;border-radius:2px;line-height:1.25;cursor:pointer}
.filter-option.is-active{background:#f0f0f0}
.filter-option[aria-selected=true]::after{content:"";position:absolute;right:13px;top:50%;width:5px;height:9px;border:solid #444;border-width:0 1.5px 1.5px 0;transform:translateY(-65%) rotate(45deg);pointer-events:none}
.case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px}
.case-card{min-width:0;border:1px solid #dedede;border-radius:10px;overflow:hidden;background:#fff}
.case-media{overflow:hidden;background:#f6f6f6;aspect-ratio:16/9}
.case-media :is(video,img){display:block;width:100%;height:100%;object-fit:contain}
.case-media .media-missing{width:100%;height:100%;min-height:0;gap:8px;padding:20px;border:0;border-radius:0}
.case-media .media-missing-title{font-size:16px}
.case-media .media-missing-note{font-size:12px}
.case-body{padding:22px}
.case-meta{margin:0 0 12px;color:#888;font-size:12px;line-height:1.5;text-transform:uppercase;letter-spacing:.025em}
.case-title{margin:0;color:#171717;font-size:22px;font-weight:400;line-height:1.2}
.case-caption{margin:16px 0 0;color:#666;font-size:15px;line-height:1.7}
.case-model{margin:16px 0 0;color:#888;font-size:12px;line-height:1.5}
.case-body a{display:inline-block;margin-top:16px;font-size:13px;text-underline-offset:3px}
.dual-exam-page .research-footer a{color:#dce0e5}
/* Keep the shared header's visible-edge inset on tall desktop windows too. */
@media(min-width:1025px) and (pointer:fine),(min-width:1367px){
 .dual-exam-page .topbar .nav-inner{left:0;width:calc(100% / var(--header-scale,1));transform:scale(var(--header-scale,1));transform-origin:top left}
}
.library{scroll-margin-top:120px}
#zoom{max-width:94vw;max-height:94dvh;padding:36px 0 0;border:0;background:transparent;color:#fff;overflow:visible}
#zoom::backdrop{background:#000d}
#zoom-image{display:block;max-width:94vw;max-height:82dvh;object-fit:contain}
#close{position:absolute;top:0;right:0;padding:0;border:0;background:none;color:#fff;font-size:30px;line-height:30px}
#original{display:block;padding:12px 0 0;text-align:right;font-size:13px}
@media(max-width:1024px){.case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
 .editorial-wrap,.dual-article{width:calc(100% - 40px)}
 .article-toolbar{padding-top:24px}.language-tabs button{min-height:34px;padding-inline:14px}
 .dual-article{padding-top:40px;padding-bottom:56px;font-size:16px}
 .article-title{font-size:36px;line-height:1.12;margin-bottom:28px}
 .article-intro>p:first-of-type{font-size:17px;text-align:left;margin-bottom:28px}
 .article-section{margin-top:56px;padding-top:40px;scroll-margin-top:90px}
 .section-head{grid-template-columns:1fr;gap:24px;margin-bottom:24px}.section-heading{font-size:30px;line-height:1.15}
 .dual-article[lang=zh-CN]{font-size:16px}.dual-article[lang=zh-CN] .article-title{font-size:30px}.dual-article[lang=zh-CN] .section-heading{font-size:26px}.dual-article[lang=zh-CN] .article-intro>p:first-of-type{font-size:17px}
 .article-figure,.media-slot{margin-top:28px}.media-missing{min-height:185px;padding:24px 16px;gap:10px}
 .table-scroll th,.table-scroll td{padding:16px}.table-scroll table{font-size:15px}
 .library{padding:40px 0 56px}.library h2{font-size:30px}.library-heading{gap:16px}
 .controls{gap:12px}.controls>.filter-control,.controls>.search-control{min-width:0;flex:1}.controls .search-control{flex-basis:100%}
 .case-grid{gap:24px}.case-title{font-size:22px}.case-body{padding:20px}
}
@media(max-width:540px){.case-grid{grid-template-columns:1fr}.library-heading{align-items:start;flex-direction:column;gap:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
