/* A shared editorial character page, with source-backed details added per character. */
body:has(.cw-character-page){background:#fbfaf7}
.ed-main:has(.cw-character-page){background:linear-gradient(120deg,#fbfaf7,#f8f7f3 70%,#fffdf9)}
.ed-main:has(.cw-character-page) .ed-shell{max-width:1120px;width:86%;padding:22px 0 52px}
.ed-main:has(.cw-character-page) .ed-crumbs{font-size:12px;letter-spacing:.04em}
.cw-character-page{--cw-accent:#cb581e;--cw-line:#dcdcd5;color:#333c41}
.cw-character-page p{font-size:16px;line-height:1.95;margin:8px 0}
.cw-profile{display:grid;grid-template-columns:46% 49%;gap:5%;align-items:center;padding:16px 0 35px}
.cw-profile-art img{display:block;width:100%;height:540px;object-fit:contain;filter:drop-shadow(0 14px 9px #39362b18)}
.cw-series{color:#b94816;font-size:14px;font-weight:700;letter-spacing:.06em;text-decoration:none}
.cw-profile-copy h1{font-size:clamp(36px,4.6vw,62px);line-height:1.3;letter-spacing:.07em;margin:12px 0 2px}
.cw-character-page .cw-roman{font:400 14px/1.6 'Fufu Tilt','Fufu Noto',Arial,sans-serif;font-family:'Fufu Tilt','Fufu Noto',Arial,sans-serif!important;font-weight:400!important;letter-spacing:.35em;color:#b94816;margin:8px 0 28px}
.cw-profile-copy .cw-tagline{font-size:clamp(21px,2.1vw,29px);line-height:1.6;margin:24px 0 6px;text-wrap:balance}
.cw-profile-copy .cw-subtitle{font-size:16px;margin:0 0 28px}
.cw-facts{margin:28px 0 22px;border-top:1px solid var(--cw-line)}
.cw-facts>div{display:grid;grid-template-columns:35% 1fr;border-bottom:1px solid var(--cw-line);padding:11px 0;gap:12px;align-items:start}
.cw-facts dt,.cw-facts dd{font-size:14px;line-height:1.65;margin:0}
.cw-nav{display:flex;flex-wrap:wrap;align-items:center;gap:12px 0}
.cw-nav a{font-size:14px;padding:3px 16px;color:#476579;text-decoration:underline;text-underline-offset:5px;border-right:1px solid var(--cw-line)}
.cw-nav a:first-child{padding-left:0}.cw-nav a:last-child{border:0}
.cw-character-page section{scroll-margin-top:24px}
.cw-character-page .cw-label{font-size:12px;font-weight:500!important;letter-spacing:.08em;color:#b94816;margin:0 0 11px}
.cw-character-page .cw-label[lang=en]{font-family:'Fufu Tilt','Fufu Noto',Arial,sans-serif!important;font-weight:400!important}
.cw-character-page h2{font-size:clamp(24px,2.5vw,34px);line-height:1.6;letter-spacing:.01em;margin:0 0 15px}
.cw-message{border-left:3px solid #e77633;padding:0 0 0 25px;margin:5px 0 32px}
.cw-message blockquote{padding:0;margin:0;border:0;font-style:normal;max-width:930px}
.cw-message blockquote p{margin:5px 0;line-height:1.95}
.cw-section{border-top:1px solid var(--cw-line);padding:28px 0;margin:0}
.cw-world p{max-width:1000px}
.cw-features>h2{margin-bottom:28px}
.cw-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.cw-feature-grid>article{padding:0 23px;border-left:1px solid var(--cw-line);min-width:0;display:flex;flex-direction:column}
.cw-feature-grid>article:first-child{padding-left:0;border:0}.cw-feature-grid>article:last-child{padding-right:0}
.cw-feature-copy{display:flex;gap:14px;align-items:flex-start}
.cw-feature-number{font:400 36px/1.2 Arial,sans-serif;color:#d86524;border-bottom:1px solid #d8652466;padding-bottom:12px}
.cw-feature-copy h3{font-size:18px;line-height:1.6;margin:0 0 9px}
.cw-feature-copy p{font-size:14px;line-height:1.85;margin:0 0 20px}
.cw-detail-image{position:relative;overflow:hidden;width:100%;height:265px;margin-top:auto;background:#f4f0e8}
.cw-detail-mane img{width:100%;height:100%;object-fit:cover;object-position:50% 80%;transform:scale(1.3)}
.cw-detail-bird img{width:100%;height:100%;object-fit:cover;object-position:50% 0;transform:scale(1.4);transform-origin:center top}
.cw-detail-back-window{position:absolute;display:block;width:173px;height:265px;left:50%;transform:translateX(-50%);overflow:hidden}
.cw-detail-back-window img{position:absolute;width:358.47%;height:296.09%;max-width:none;left:-248.09%;top:-116.72%;object-fit:fill}
.cw-living{display:grid;grid-template-columns:1fr 220px;gap:35px;align-items:center;min-height:220px}
.cw-living>img{width:100%;height:230px;object-fit:contain}
.cw-concept .cw-label{margin:0 0 3px}
.cw-concept-name{display:flex;align-items:center;gap:20px;font-size:22px;color:#b94816;line-height:1.7;margin:0 0 12px;text-decoration:none}
.cw-concept-name:after{content:'';height:1px;flex:1;background:#e49e776e}
.cw-concept-name span{font-size:18px}
.cw-related{display:grid;grid-template-columns:36% 1fr;gap:35px;padding:24px 0 18px;border-top:1px solid var(--cw-line);border-bottom:1px solid var(--cw-line)}
.cw-related>section+section{border-left:1px solid var(--cw-line);padding-left:30px}
.cw-related h2{font-size:16px;line-height:1.6;margin:0 0 18px}
.cw-related>section>a{display:block;font-size:14px;color:#45677c;text-decoration:underline;text-underline-offset:4px;margin:10px 0}
.cw-product{display:grid;grid-template-columns:65px 1fr auto;gap:13px;align-items:center}
.cw-product>img{width:65px;height:95px;object-fit:contain}
.cw-product small{font-size:11px;line-height:1.7}.cw-product p{font-size:14px;margin:3px 0}
.cw-product a{font-size:13px;color:#45677c;text-decoration:underline;text-underline-offset:4px}
.cw-product .cw-shop-button{background:#303438;color:#fff;padding:16px 18px;min-height:44px;box-sizing:border-box;text-decoration:none;white-space:nowrap;border-radius:3px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font:400 12px/1.5 Arial,'Fufu Noto',sans-serif}
.cw-shop-button:hover{background:#4b5054}
.cw-back{display:block;text-align:right;padding:20px 0 0;font-size:13px;letter-spacing:.03em;color:#45677c;text-decoration:underline;text-underline-offset:4px}
.cw-peers{margin:14px 0 0;padding:0;font-size:14px}.cw-peers summary{cursor:pointer;padding:9px 0;color:#45677c}.cw-peers .ed-character-grid{margin-top:20px;grid-template-columns:repeat(3,minmax(0,1fr))}.cw-peers .ed-character img{height:180px}
.cw-character-page a:focus-visible,.cw-peers summary:focus-visible{outline:3px solid #d7662b;outline-offset:4px}
.cw-character-page .cw-reference-crop{display:block;position:relative;overflow:hidden;width:100%;aspect-ratio:var(--crop-ratio);flex-shrink:0}
.cw-character-page .cw-reference-crop>img{position:absolute;display:block;max-width:none;width:var(--crop-width);height:var(--crop-height);left:var(--crop-left);top:var(--crop-top);object-fit:fill;filter:none;transform:none}
.cw-profile-art .cw-reference-portrait{width:min(100%,430px);margin:auto}
.cw-character-page .cw-blessing{display:flex;align-items:center;gap:13px;font-size:clamp(20px,2.4vw,30px);font-weight:900;line-height:1.6;border-bottom:1px solid #dc713b;padding-bottom:12px;margin:18px 0 12px}
.cw-character-page .cw-reference-seal{width:36px}
.cw-reference-detail{height:auto;aspect-ratio:1.045;display:flex;align-items:center;background:none}
.cw-character-page .cw-reference-living{max-width:185px;justify-self:center}
.cw-character-page:is([data-character="kokorobi-5"],[data-character="kokorobi-3"]) .cw-roman{margin-bottom:14px}
.cw-character-page:is([data-character="kokorobi-5"],[data-character="kokorobi-3"]) .cw-tagline{font-size:clamp(20px,2vw,25px);margin-top:18px}
.cw-character-page:is([data-character="kokorobi-5"],[data-character="kokorobi-3"]) .cw-world p{margin:3px 0}
@media(max-width:900px){.cw-profile-art img{height:430px}.cw-profile{grid-template-columns:43% 52%}.cw-profile-copy h1{font-size:38px}.cw-facts dt,.cw-facts dd{font-size:13px}.cw-nav a{font-size:13px;padding:3px 10px}.cw-feature-grid>article{padding:0 15px}.cw-feature-copy{gap:8px}.cw-feature-number{font-size:28px}.cw-detail-image{height:220px}.cw-detail-back-window{width:143px;height:220px}.cw-related{grid-template-columns:34% 1fr;gap:20px}.cw-related>section+section{padding-left:20px}.cw-product{grid-template-columns:65px 1fr}.cw-product .cw-shop-button{grid-column:1/-1}}
@media(max-width:620px){
 .cw-profile-art .cw-reference-portrait{width:min(78%,280px)}
 .cw-character-page .cw-blessing{font-size:22px;gap:10px}
 .cw-character-page .cw-reference-seal{width:30px}
 .cw-detail-image.cw-reference-detail{height:auto}
 .ed-main:has(.cw-character-page) .ed-shell{width:89%;padding-top:18px}
 .cw-profile{grid-template-columns:1fr;padding:10px 0 25px;gap:12px}
 .cw-profile-art img{height:330px}.cw-profile-copy h1{font-size:38px;letter-spacing:.05em}
 .cw-profile-copy .cw-tagline{font-size:23px;margin-top:20px}.cw-character-page .cw-roman{margin-bottom:18px}
 .cw-profile-copy .cw-subtitle{margin-bottom:20px}.cw-facts{margin-top:20px}.cw-facts dt,.cw-facts dd{font-size:14px}
 .cw-nav{justify-content:space-between}.cw-nav a{font-size:13px;padding:4px 9px}
 .cw-message{padding-left:17px;margin-bottom:25px}.cw-character-page h2{font-size:24px;line-height:1.65}
 .cw-character-page p{font-size:15px;line-height:2}.cw-section{padding:24px 0}
 .cw-feature-grid{grid-template-columns:1fr;gap:25px}
 .cw-feature-grid>article,.cw-feature-grid>article:first-child,.cw-feature-grid>article:last-child{border:0;padding:0}
 .cw-feature-copy{gap:15px}.cw-feature-number{font-size:35px}.cw-feature-copy h3{font-size:20px}.cw-feature-copy p{font-size:15px}
 .cw-detail-image{height:260px;width:min(100%,310px);align-self:center}.cw-detail-back-window{width:170px;height:260px}
 .cw-living{grid-template-columns:1fr 95px;gap:16px}.cw-living h2{font-size:22px}.cw-living>img{height:190px}.cw-living p{font-size:14px}
 .cw-concept-name{font-size:20px;gap:12px}.cw-concept-name:after{display:none}
 .cw-related{grid-template-columns:1fr;gap:20px}.cw-related>section+section{padding:20px 0 0;border-left:0;border-top:1px solid var(--cw-line)}
 .cw-product{grid-template-columns:65px 1fr}.cw-product .cw-shop-button{grid-column:1/-1;font-size:14px}
 .cw-peers .ed-character img{height:130px}.cw-peers .ed-character h3{font-size:14px}
}

/* Official character-guide panels supplied by FUFUTIETIE. */
.cw-official-guide{border-top:1px solid var(--cw-line);padding:34px 0 38px;margin:0}
.cw-official-guide header{display:flex;align-items:baseline;gap:16px;margin:0 0 20px;flex-wrap:wrap}
.cw-official-guide header h2{margin:0;font-size:clamp(22px,2.4vw,32px)}
.cw-official-guide header>p:last-child{font-size:13px;color:#6f7f89;margin:0}
.cw-official-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.cw-official-guide-card{margin:0;background:#f5f0e7;border:1px solid #dfd0bf;overflow:hidden}
.cw-official-guide-card img{display:block;width:100%;height:auto}
@media(max-width:620px){.cw-official-guide{padding:28px 0}.cw-official-guide header{display:block}.cw-official-guide header h2{margin:0 0 6px}.cw-official-guide-grid{grid-template-columns:1fr;gap:14px}}

.cw-character-page[data-character="kokorobi-6"] .cw-profile-art--official-photo .cw-profile-original{display:block;width:100%;height:auto;filter:none}

.cw-character-page .cw-product>.cw-reference-product{width:65px;justify-self:start}

/* 子｜千手観音菩薩 */
.cw-feature-grid--two{grid-template-columns:repeat(2,minmax(0,1fr));max-width:740px}
.cw-feature-grid--two>article:nth-child(2){padding-right:0}
.cw-feature-grid--two .cw-detail-image img{width:100%;height:100%;object-fit:cover}
.cw-feature-one img{object-position:center 40%}.cw-feature-two img{object-position:center 88%}
.cw-living>.cw-living-character{height:260px;object-fit:contain}
@media(max-width:620px){.cw-feature-grid--two{grid-template-columns:1fr}}
