/* Editorial extension: Doa's white, ink, space and two illustrated voices. */
.ed-review-note{background:var(--soft);padding:9px var(--gutter);font-size:12px;border-bottom:1px solid var(--line);display:flex;gap:18px;flex-wrap:wrap}.ed-review-note a{text-decoration:underline}.ed-kicker{font-size:12px;letter-spacing:.1em;font-weight:650;margin:0 0 20px}.ed-small{font-size:13px;line-height:1.9;color:var(--muted);margin-top:20px}.ed-under{text-decoration:underline;text-underline-offset:6px;font-weight:650;display:inline-block;margin-top:25px}.ed-button{display:inline-flex;justify-content:space-between;align-items:center;gap:35px;background:var(--ink);color:var(--bg);padding:19px 24px;font-weight:700;line-height:1.6;min-height:56px}.ed-button span{font-size:24px}.ed-button:hover{opacity:.8}.ed-button:active{transform:translateY(1px)}.ed-button:focus-visible,.ed-card a:focus-visible,.ed-topics a:focus-visible,.ed-filters button:focus-visible,.ed-search input:focus-visible{outline:3px solid var(--ink);outline-offset:5px}.ed-library-head{display:grid;grid-template-columns:1fr 260px;gap:60px;align-items:center;padding-top:72px;padding-bottom:62px}.ed-library-head h1{font-size:clamp(36px,4.6vw,64px);line-height:1.42;letter-spacing:.015em;font-weight:750}.ed-library-head p:not(.ed-kicker){font-size:17px;line-height:1.9;margin-top:24px}.ed-library-head img{width:240px;max-width:100%;height:auto;mix-blend-mode:multiply}html[data-theme=dark] .ed-library-head img{mix-blend-mode:normal;background:#fff}.ed-topics{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line)}.ed-topics a{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:22px 18px;border-right:1px solid var(--line);font-size:16px;font-weight:650}.ed-topics a:last-child{border-right:0}.ed-topics a:hover{background:var(--soft)}.ed-feature{display:grid;grid-template-columns:.65fr 1.35fr;gap:60px;padding:65px 0;border-bottom:1px solid var(--line)}.ed-feature-label{padding-top:12px}.ed-feature-label h2{font-size:34px;line-height:1.65}.ed-feature-label>p:last-child{font-size:15px;line-height:2;margin-top:22px;max-width:270px}.ed-feature .ed-card>a{display:grid;grid-template-columns:1fr 1fr;gap:14px 26px;align-content:start}.ed-feature .ed-poster{grid-row:1/5;height:100%;min-height:310px}.ed-feature .ed-card h3{font-size:24px}.ed-feature .ed-card p{font-size:14px}.ed-card a{display:block;height:100%}.ed-card h3{font-size:21px;font-weight:750;line-height:1.65;margin:14px 0 10px;text-wrap:pretty}.ed-card p{font-size:14px;line-height:1.85;color:var(--muted)}.ed-card-meta{display:flex;gap:8px 18px;flex-wrap:wrap;font-size:11px;margin-top:17px}.ed-card-meta>span:first-child{font-weight:700}.ed-card a:hover h3{text-decoration:underline;text-underline-offset:5px}.ed-read{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:18px 0;font-size:13px;font-weight:650}.ed-read b{font-size:21px;font-weight:400}.ed-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 28px}.ed-grid [hidden]{display:none!important}.ed-poster{position:relative;aspect-ratio:1.6;background:#efefea;overflow:hidden;padding:23px;color:#313433;isolation:isolate}.ed-poster-label{display:block;font-size:10px;font-weight:700;letter-spacing:.045em;position:relative;z-index:2}.ed-poster>strong{display:block;font-size:clamp(20px,2vw,29px);line-height:1.5;position:relative;z-index:2;max-width:82%;margin-top:28px;letter-spacing:.02em;font-weight:750}.ed-poster img{position:absolute;width:90px;height:110px;object-fit:contain;right:6px;bottom:-2px;mix-blend-mode:multiply;z-index:1}.ed-poster-shape{position:absolute;border:1px solid #b6bbb6;width:48%;height:68%;right:-4%;top:-8%;transform:rotate(-18deg);z-index:0}.ed-ai .ed-poster-shape{border-radius:50%;box-shadow:0 0 0 12px #efefea,0 0 0 13px #b6bbb6}.ed-web{background:#e9edef}.ed-web .ed-poster-shape{transform:rotate(12deg);border-radius:3px;box-shadow:-13px 13px 0 -1px #e9edef,-13px 13px 0 0 #b6bbb6}.ed-design{background:#f0eae6}.ed-design .ed-poster-shape{border-radius:50% 0 50% 0;transform:rotate(30deg)}.ed-operations{background:#e9eee8}.ed-operations .ed-poster-shape{height:35%;top:8%;transform:rotate(-10deg);box-shadow:0 14px 0 -1px #e9eee8,0 15px 0 #b6bbb6,0 29px 0 -1px #e9eee8,0 30px 0 #b6bbb6}.ed-library{padding:64px 0 85px;scroll-margin-top:110px}.ed-section-title{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:30px}.ed-section-title h2{font-size:29px;line-height:1.6}.ed-section-title>p,.ed-section-title>span{font-size:12px;color:var(--muted)}.ed-search{max-width:700px;margin-bottom:23px}.ed-search>label{display:block;font-size:13px;margin-bottom:10px;font-weight:650}.ed-search>div{display:flex;border-bottom:1px solid var(--ink);gap:12px}.ed-search input{width:100%;min-width:0;background:transparent;border:0;padding:14px 2px;font:inherit;font-size:17px;color:var(--ink);border-radius:0}.ed-search button{border:0;background:transparent;font:inherit;font-size:13px;white-space:nowrap;cursor:pointer;padding:12px}.ed-filters{display:flex;gap:5px 25px;flex-wrap:wrap;margin-bottom:40px}.ed-filters button{font:inherit;font-size:14px;border:0;border-bottom:2px solid transparent;padding:10px 0;background:transparent;cursor:pointer;color:var(--muted)}.ed-filters [aria-pressed=true]{border-color:var(--ink);color:var(--ink);font-weight:750}.ed-empty{padding:45px 0}.ed-empty button{margin-top:20px;padding:15px;background:var(--ink);color:var(--bg);border:0;cursor:pointer}.ed-help{display:grid;grid-template-columns:220px 1fr;gap:60px;padding:55px 0;border-block:1px solid var(--line);margin:60px 0}.ed-help h2{font-size:30px;line-height:1.7;margin-bottom:18px}.ed-help p:not(.ed-small):not(.ed-kicker){font-size:16px;line-height:1.9;max-width:600px;margin-bottom:24px}.ed-help-people{display:flex;align-items:center;justify-content:center;gap:4px}.ed-help-people img{width:98px;height:180px;object-fit:contain;background:transparent}.ed-help .ed-under{font-size:14px}.ed-help .ed-button{min-width:290px}.ed-back{margin:0 0 65px}.ed-breadcrumb{font-size:12px;color:var(--muted);line-height:1.8;margin-bottom:36px}.ed-breadcrumb a{text-decoration:underline;text-underline-offset:4px}.ed-article-head{padding-top:45px;padding-bottom:45px}.ed-article-top{display:grid;grid-template-columns:1.2fr .8fr;gap:55px;align-items:center}.ed-article-top h1{font-size:clamp(28px,3vw,43px);line-height:1.58;font-weight:750;letter-spacing:.01em;text-wrap:pretty}.ed-summary{font-size:17px;line-height:1.9;margin-top:24px;max-width:640px}.ed-byline{display:flex;gap:10px 22px;flex-wrap:wrap;font-size:12px;line-height:1.8;margin-top:25px;color:var(--muted)}.ed-poster-large{aspect-ratio:1.2}.ed-poster-large>strong{font-size:32px}.ed-poster-large img{width:140px;height:170px}.ed-reading-actions{display:flex;gap:28px;margin-top:28px;font-size:13px}.ed-reading-actions button{font:inherit;background:none;border:0;cursor:pointer;text-decoration:underline;text-underline-offset:4px;color:var(--ink)}.ed-article-columns{display:grid;grid-template-columns:minmax(0,760px) minmax(210px,270px);gap:75px;justify-content:center;border-top:1px solid var(--line);padding-top:24px}.ed-article-columns>div{min-width:0}.ed-article .article-body{width:100%;max-width:none;margin:15px 0 45px;font-size:17px;line-height:2;letter-spacing:.015em}.ed-article .article-body p{margin:1.5em 0}.ed-article .article-body h2{font-size:25px;line-height:1.7;padding:17px 0 17px 20px;border-left:3px solid var(--ink);background:var(--soft);margin:2.6em 0 1.25em;scroll-margin-top:120px}.ed-article .article-body h2:first-child{margin-top:20px}.ed-article .article-body ul,.ed-article .article-body ol{padding-left:1.4em}.ed-article .article-body li{padding-left:.2em;margin:10px 0}.ed-article .article-dialogue{border:0!important;padding:0!important;display:grid;grid-template-columns:70px 1fr;gap:18px;color:var(--ink)!important;margin:32px 0!important}.ed-article .article-dialogue img{width:66px;height:90px;object-fit:contain;background:#fff}.ed-article .article-dialogue>div{background:var(--soft);padding:20px 24px;position:relative}.ed-article .article-dialogue p{margin:0!important;font-size:16px;line-height:1.9}.ed-article .article-dialogue .dialogue-role{font-size:12px!important;margin-bottom:8px!important}.ed-article .article-dialogue[data-speaker=mei]{grid-template-columns:1fr 70px}.ed-article .article-dialogue[data-speaker=mei] img{grid-column:2;grid-row:1}.ed-article .article-dialogue[data-speaker=mei]>div{grid-column:1;grid-row:1;background:transparent;border:1px solid var(--line)}.ed-sidebar{align-self:start;position:sticky;top:110px;max-height:calc(100dvh - 125px);overflow:auto;padding-top:24px}.ed-sidebar .article-toc{position:static;width:100%;max-height:none;padding:0;border:0}.ed-sidebar .article-toc ol{padding-left:20px;line-height:1.8;font-size:13px}.ed-sidebar .article-toc li{margin:13px 0}.ed-sidebar .article-toc summary{font-size:15px;font-weight:700}.ed-sidebar-link{display:block;border-block:1px solid var(--line);padding:22px 0;font-size:14px;font-weight:700;margin-top:30px}.ed-sources{border-top:1px solid var(--line);margin-top:40px;padding-top:18px;font-size:13px;color:var(--muted)}.ed-sources h2{font-size:17px!important;border:0!important;background:none!important;padding:0!important;margin-top:15px!important}.ed-article .article-toolkit{width:100%;max-width:none;margin:30px 0 70px}.ed-next{padding:35px 0}.ed-hub,.ed-service,.ed-review{padding-top:45px;padding-bottom:60px}.ed-page-head{max-width:830px;padding:10px 0 30px}.ed-page-head h1{font-size:clamp(32px,4.2vw,58px);line-height:1.55;letter-spacing:.015em;font-weight:750}.ed-intro{font-size:18px;line-height:2;max-width:720px;margin-top:25px}.ed-flow{margin:30px 0 60px}.ed-flow ol{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;padding:0;border-block:1px solid var(--line)}.ed-flow li{padding:25px 20px;border-right:1px solid var(--line)}.ed-flow li:last-child{border:0}.ed-flow small{display:block;font-size:12px;margin-bottom:14px;color:var(--muted)}.ed-flow strong{font-size:17px}.ed-flow figcaption{font-size:12px;margin-top:12px;color:var(--muted)}.ed-hub-guide{max-width:800px;margin-bottom:60px}.ed-hub-guide h2{font-size:27px;line-height:1.6;margin-bottom:22px}.ed-hub-guide p{line-height:2;font-size:16px}.ed-hub-guide ol{padding-left:24px;margin:28px 0}.ed-hub-guide li{padding:10px 0}.ed-hub-guide li p{font-size:15px;margin-top:9px;color:var(--muted)}.ed-service-split{display:grid;grid-template-columns:1fr 1.25fr;gap:65px;padding:65px 0;border-block:1px solid var(--line);margin-top:65px}.ed-service h2{font-size:27px;line-height:1.7}.ed-service p,.ed-service li{line-height:2;font-size:16px}.ed-service-split ul{padding-left:22px}.ed-service-split li{margin-bottom:18px}.ed-service-section{padding:65px 0;border-bottom:1px solid var(--line)}.ed-service-rows>div{display:grid;grid-template-columns:45px .8fr 1.2fr;gap:22px;padding:26px 0}.ed-service-rows>div>span{font-size:12px;color:var(--muted);padding-top:10px}.ed-service-rows h2{font-size:23px}.ed-decision{background:var(--soft);padding:35px 42px;margin:55px 0 0;max-width:900px}.ed-decision p{margin-top:20px}.ed-steps{list-style:none;padding:0;counter-reset:step;margin-top:25px;display:grid;grid-template-columns:repeat(2,1fr);gap:35px}.ed-steps li{counter-increment:step;border-top:1px solid var(--line);padding:25px 0}.ed-steps li::before{content:'0' counter(step);display:block;font-size:12px;color:var(--muted);margin-bottom:10px}.ed-steps strong{font-size:20px}.ed-steps p{margin-top:15px}.ed-conditions{display:grid;grid-template-columns:1fr;gap:35px;max-width:850px}.ed-conditions h2{font-size:23px;margin-bottom:15px}.ed-faq{padding:55px 0;max-width:850px}.ed-faq>div{border-bottom:1px solid var(--line);padding:25px 0}.ed-faq h3{font-size:19px;line-height:1.8;margin-bottom:10px}.ed-service-directory{padding-block:50px}.ed-service-directory>div{display:grid;grid-template-columns:1fr 1fr;gap:0 35px;margin-top:25px}.ed-service-directory a{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:24px 0}.ed-review-list{margin-top:50px}.ed-review-list article{display:grid;grid-template-columns:85px 1.3fr 1fr;gap:20px;padding:25px 0;border-top:1px solid var(--line);align-items:start}.ed-review-list h2{font-size:19px;line-height:1.7}.ed-review-list p,.ed-review-list>article>span,.ed-review-list small{font-size:12px;line-height:1.9}.ed-review-list small{grid-column:2;color:var(--muted)}
@media(max-width:1000px){.ed-feature{gap:30px;grid-template-columns:.55fr 1.45fr}.ed-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ed-article-columns{gap:35px;grid-template-columns:minmax(0,1fr) 220px}.ed-article-top{gap:30px}.ed-poster-large>strong{font-size:26px}.ed-review-list article{grid-template-columns:65px 1fr}.ed-review-list p{grid-column:2}.ed-service-split{gap:35px}}
@media(max-width:760px){.ed-library-head{grid-template-columns:1fr 115px;gap:15px;padding-top:40px;padding-bottom:36px}.ed-library-head h1{font-size:34px}.ed-library-head p:not(.ed-kicker){font-size:14px}.ed-library-head img{width:115px}.ed-topics{grid-template-columns:1fr 1fr}.ed-topics a{font-size:14px;padding:17px 12px}.ed-topics a:nth-child(2){border-right:0}.ed-topics a:nth-child(-n+2){border-bottom:1px solid var(--line)}.ed-feature{grid-template-columns:1fr;padding:38px 0;gap:25px}.ed-feature-label h2{font-size:26px}.ed-feature-label h2 br{display:none}.ed-feature-label>p:last-child{max-width:none;margin-top:12px}.ed-feature .ed-card>a{gap:12px 20px}.ed-feature .ed-card h3{font-size:20px}.ed-feature .ed-card p{display:none}.ed-feature .ed-poster{min-height:230px}.ed-section-title h2{font-size:25px}.ed-library{padding-top:38px}.ed-article-top{grid-template-columns:1fr}.ed-article-top .ed-poster{aspect-ratio:2;margin-top:8px}.ed-poster-large img{width:115px;height:145px}.ed-article-head{padding-top:30px;padding-bottom:28px}.ed-article-top h1{font-size:30px}.ed-summary{font-size:16px}.ed-article-columns{display:flex;flex-direction:column;gap:25px}.ed-sidebar{order:-1;position:static;max-height:none;padding-top:5px;width:100%}.ed-sidebar .article-toc{padding:18px 20px;background:var(--soft)}.ed-sidebar-link{display:none}.ed-article .article-body{font-size:17px}.ed-article .article-body h2{font-size:23px;margin-top:45px}.ed-help{grid-template-columns:100px 1fr;gap:22px;padding:36px 0}.ed-help-people{flex-direction:column}.ed-help-people img{width:85px;height:120px}.ed-help h2{font-size:24px}.ed-help .ed-button{min-width:0;width:100%;font-size:14px;padding:16px}.ed-help p:not(.ed-small):not(.ed-kicker){font-size:15px}.ed-service-split{grid-template-columns:1fr;gap:25px;padding:40px 0;margin-top:40px}.ed-service h2{font-size:24px}.ed-service-section{padding:40px 0}.ed-service-rows>div{grid-template-columns:30px 1fr;gap:10px 15px}.ed-service-rows p{grid-column:2}.ed-decision{padding:25px}.ed-steps{gap:20px}.ed-review-list article{gap:12px}.ed-flow{margin-bottom:40px}.ed-flow ol{grid-template-columns:1fr 1fr}.ed-flow li:nth-child(2){border-right:0}.ed-flow li:nth-child(-n+2){border-bottom:1px solid var(--line)}.ed-hub-guide h2{font-size:23px}.ed-service-directory>div{grid-template-columns:1fr}}
@media(max-width:480px){.ed-library-head{grid-template-columns:1fr 75px}.ed-library-head h1{font-size:30px}.ed-library-head img{width:75px}.ed-library-head .ed-kicker{font-size:10px}.ed-library-head .ed-under{font-size:13px}.ed-grid{grid-template-columns:1fr;gap:35px}.ed-poster{aspect-ratio:1.9}.ed-poster>strong{font-size:25px;margin-top:22px}.ed-feature .ed-card>a{display:block}.ed-feature .ed-poster{min-height:0;aspect-ratio:1.7}.ed-feature .ed-card p{display:block}.ed-feature .ed-card h3{font-size:23px}.ed-card h3{font-size:22px}.ed-section-title{align-items:flex-start;gap:15px;flex-wrap:wrap}.ed-section-title h2{font-size:24px}.ed-filters{gap:4px 19px}.ed-filters button{font-size:13px}.ed-search input{font-size:16px}.ed-article .article-dialogue{grid-template-columns:48px 1fr;gap:10px}.ed-article .article-dialogue[data-speaker=mei]{grid-template-columns:1fr 48px}.ed-article .article-dialogue img{width:46px;height:75px}.ed-article .article-dialogue>div{padding:16px}.ed-article .article-dialogue p{font-size:15px}.ed-article-top h1{font-size:28px}.ed-poster-large>strong{font-size:25px}.ed-poster-large img{height:120px;width:100px}.ed-article .article-body pre{font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere}.ed-help{grid-template-columns:1fr}.ed-help-people{flex-direction:row;justify-content:flex-start}.ed-help-people img{height:90px;width:70px}.ed-help h2{font-size:26px}.ed-steps{grid-template-columns:1fr}.ed-review-list article{grid-template-columns:1fr}.ed-review-list p,.ed-review-list small{grid-column:1}.ed-page-head h1{font-size:33px}.ed-intro{font-size:16px}.ed-breadcrumb{font-size:11px}.ed-flow strong{font-size:15px}}
@media(prefers-reduced-motion:reduce){.ed-button,.ed-poster{transition:none;animation:none}}
@media print{.ed-review-note,.ed-sidebar,.ed-reading-actions,.ed-help,.ed-next,.ed-back,.ed-poster,.ed-library-head{display:none!important}.ed-article-top,.ed-article-columns{display:block}.ed-article .article-body{font-size:11pt}.ed-article-top h1{font-size:24pt}.ed-article-head{padding-top:0}.ed-sources{break-inside:avoid}}

/* The feature poster must fit its grid column rather than derive width from height. */
.ed-feature .ed-card>a{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.ed-feature .ed-poster{aspect-ratio:auto;width:100%;min-width:0;grid-column:1}
.ed-feature .ed-card>a>:not(.ed-poster){grid-column:2;min-width:0}
@media(max-width:760px){.ed-feature .ed-card>a{display:block}.ed-feature .ed-poster{min-height:0;aspect-ratio:1.6;height:auto}}
@media(max-width:480px){
 .ed-library-head{display:block;position:relative;padding-top:34px;padding-bottom:32px}
 .ed-library-head h1{padding-right:70px}
 .ed-library-head img{position:absolute;right:0;top:106px;width:64px}
 .ed-library-head p:not(.ed-kicker){font-size:15px}
 .ed-feature-label h2 br{display:initial}
 .ed-feature-label>p:last-child{display:none}
 .ed-feature-label .ed-kicker{margin-bottom:10px}
}

/* Article-specific diagrams: original SVG, no portrait or decorative background motif. */
.ed-poster.ed-cover{padding:0;aspect-ratio:8/5;height:auto;min-height:0;background:transparent;isolation:auto;width:100%;overflow:hidden}
.ed-poster.ed-cover>img{display:block;position:static;width:100%;height:auto;object-fit:contain;mix-blend-mode:normal;max-width:100%;transform:none}
.ed-feature .ed-poster.ed-cover{height:auto;min-height:0;align-self:start;aspect-ratio:8/5}
.ed-article-top .ed-poster.ed-cover{aspect-ratio:8/5}
.ed-help-people img,.ed-article .article-dialogue>img,.article-author img{background:transparent}
.ed-card .ed-cover{transition:opacity .18s ease}
.ed-card a:hover .ed-cover{opacity:.88}
@media(prefers-reduced-motion:reduce){.ed-card .ed-cover{transition:none}}
