.character-page .subpage-section{background-color:#0000}.cast-toc{z-index:30;border-bottom:1px solid var(--line-soft);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);scrollbar-width:none;background:#030405e0;justify-content:center;gap:4px;padding:10px 16px 12px;display:flex;position:sticky;top:68px;overflow-x:auto}.cast-toc::-webkit-scrollbar{display:none}.cast-toc a{color:var(--text-mute);letter-spacing:.16em;transition:color .45s var(--ease);flex:none;padding:8px 16px 10px;font-size:13px;text-decoration:none}.cast-toc a:hover,.cast-toc a:focus-visible{color:var(--gold-light)}.cast{scroll-margin-top:120px}.cast .kicker{margin-bottom:8px}.cast .subpage-section-title{margin-bottom:14px;font-size:clamp(24px,2.8vw,34px)}.cast-lede{color:var(--text-dim);letter-spacing:.04em;margin:0 0 30px;font-size:16px;line-height:2}.profile-list{gap:clamp(38px,6vw,76px);display:grid}.subpage.character-page .profile{min-height:720px;box-shadow:none;background:0 0;border:0;grid-template:"copy figure""portrait figure""rules figure"1fr/minmax(0,1fr) minmax(360px,.74fr);column-gap:clamp(28px,4.5vw,72px);padding:clamp(34px,5vw,72px) clamp(30px,5vw,74px) 0;scroll-margin-top:130px;display:grid;position:relative;overflow:hidden}.profile:after{content:"";z-index:0;aspect-ratio:1;pointer-events:none;border:1px solid #b286432b;border-radius:50%;width:min(42vw,500px);position:absolute;top:50%;right:clamp(34px,7vw,104px);transform:translateY(-50%);box-shadow:0 0 0 28px #9e6f3409,0 0 0 29px #b2864314,inset 0 0 80px #502b3a33}.subpage.character-page .profile--flip{background:0 0;grid-template:"figure copy""figure portrait""figure rules"1fr/minmax(360px,.74fr) minmax(0,1fr)}.profile--flip:after{left:clamp(34px,7vw,104px);right:auto}.profile-body{z-index:3;text-shadow:0 2px 8px #000000f5,0 0 22px #000000e6;grid-area:copy;align-self:start;position:relative}.profile-body:after{content:"";background:linear-gradient(90deg,#d4aa59b8,#0000);width:min(100%,460px);height:1px;margin-top:20px;display:block}.profile-figure{z-index:2;grid-area:figure;align-self:stretch;min-height:690px;margin:0;position:relative;overflow:hidden}.profile-figure img{object-fit:contain;transform-origin:top;filter:drop-shadow(0 28px 30px #000000b8);width:150%;max-width:none;height:auto;transition:opacity .6s var(--ease), transform 1s var(--ease-slow);display:block;position:absolute;top:1%;left:50%;transform:translate(-50%)}.profile:hover .profile-figure img{transform:translate(-50%)scale(1.018)}.profile-figure .figure-smile{opacity:0}.profile-figure:hover .figure-smile,.profile:focus-within .figure-smile{opacity:1}@media (hover:none),(max-width:900px){.profile-figure .figure-smile{display:none}}.profile-body .kicker{margin-bottom:10px}.profile-body h2,.visitor-body h3{color:#e7ce90;letter-spacing:.1em;flex-wrap:wrap;align-items:baseline;gap:12px;margin:0 0 9px;font-size:clamp(34px,4.8vw,62px);font-weight:400;line-height:1;display:flex}.profile-body h2 small,.visitor-body h3 small{color:#8d7447;letter-spacing:.2em;font-size:18px}.profile-tagline{color:#cbb887;letter-spacing:.16em;margin:0 0 20px;font-size:16px}.profile-tagline:before,.profile-tagline:after{content:"「";color:#8d7447}.profile-tagline:after{content:"」"}.profile-body blockquote,.visitor-body blockquote{color:#bcae8b;letter-spacing:.06em;border-top:1px solid #ae844059;border-bottom:1px solid #ae844059;margin:0 0 20px;padding:12px 0;font-size:16px;line-height:1.9}.profile-facts{margin:0;font-size:16px;line-height:1.9}.profile-facts>div{grid-template-columns:6em 1fr;gap:16px;margin-bottom:9px;display:grid}.profile-facts dt{color:#977b49;flex:none;min-width:5em}.profile-facts dd{color:#d5c295;margin:0}.portrait-swap{z-index:3;background:#0a090c;border:1px solid #c4a05a;grid-area:portrait;width:min(74%,480px);margin:30px 0 0;position:relative;overflow:hidden;box-shadow:9px 9px #040405eb,10px 10px #b1874240,0 22px 38px #00000085}.portrait-swap img{aspect-ratio:16/9;object-fit:cover;object-position:center 20%;filter:saturate(.9)brightness(.92);width:100%;display:block}.portrait-swap img+img{opacity:0;transition:opacity .6s var(--ease);position:absolute;inset:0}.portrait-swap:hover img+img,.portrait-swap:focus-within img+img{opacity:1}.portrait-swap figcaption{color:#aa9363;letter-spacing:.2em;text-align:center;transition:opacity .45s var(--ease);background:linear-gradient(#0000,#030405f0);justify-content:center;align-items:center;gap:12px;padding:22px 12px 9px;font-size:11px;display:flex;position:absolute;bottom:0;left:0;right:0}.portrait-swap:hover figcaption{opacity:0}@media (hover:none),(max-width:900px){.portrait-swap .portrait-hover,.portrait-swap figcaption{display:none}}.visitor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,3vw,32px);margin:0;padding:0;list-style:none;display:grid}.visitor{background:#09090b;border:1px solid #b98e4666;grid-template-columns:minmax(150px,190px) 1fr;align-items:start;gap:clamp(16px,2.4vw,28px);padding:clamp(16px,2.2vw,24px);scroll-margin-top:130px;display:grid;box-shadow:inset 0 0 0 4px #0d0c0e}.visitor-body h3{font-size:clamp(19px,1.8vw,22px)}.visitor-body h3 small{font-size:14px}.visitor--unnamed .visitor-body h3{color:#c8b58a}.visitor-body .profile-tagline,.visitor-body blockquote{font-size:15px}.visitor-manner{color:#d5c295;margin:0 0 14px;font-size:15px;line-height:1.9}.subpage-actions{flex-wrap:wrap;justify-content:center;gap:14px;margin-top:28px;display:flex}@media (max-width:1100px){.profile,.profile--flip{grid-template:"copy figure""portrait figure""rules rules"/minmax(0,1fr) minmax(300px,.68fr);min-height:650px;padding-inline:clamp(26px,4vw,48px)}.profile-figure{min-height:590px}.profile-figure img{width:158%}.portrait-swap{width:min(88%,430px)}}@media (max-width:900px){.visitor-grid{grid-template-columns:1fr}}@media (max-width:680px){.cast-toc{justify-content:flex-start}.subpage.character-page .profile,.subpage.character-page .profile--flip{background:0 0;grid-template:"copy""figure"460px"portrait""rules"/minmax(0,1fr);min-height:0;padding:30px 22px 26px}.profile:after,.profile--flip:after{width:84vw;top:48%;left:50%;right:auto;transform:translate(-50%,-50%)}.profile-figure{width:calc(100% + 24px);min-height:0;margin:4px -12px 0;position:relative;top:auto}.profile-figure img{width:142%;top:0}.profile-body h2{font-size:clamp(36px,13vw,48px)}.profile-facts>div{grid-template-columns:1fr;gap:2px;margin-bottom:14px}.portrait-swap{width:calc(100% - 8px);max-width:none;margin:12px 0 18px}.visitor{grid-template-columns:1fr}.visitor .portrait-swap{max-width:260px;margin:0 auto}}.profile-rules{z-index:3;border-top:1px solid #ae844059;grid-area:rules;margin-top:18px;padding:18px 0 28px;position:relative}.profile-rules .kicker{margin-bottom:8px}.profile-rules ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.profile-rules li a{border:1px solid var(--tier,var(--line));color:inherit;transition:background .45s var(--ease);background:#08070ab3;grid-template-columns:auto 1fr;align-items:baseline;column-gap:10px;padding:9px 12px;text-decoration:none;display:grid}.profile-rules li a:hover,.profile-rules li a:focus-visible{background:#1e1622b3}.profile-rules b{color:var(--tier,var(--gold-light));font-family:var(--font-latin), var(--font-jp);letter-spacing:.1em;font-size:13px;font-weight:500}.profile-rules span{color:var(--text);letter-spacing:.04em;font-size:15px}.profile-rules small{color:var(--text-mute);letter-spacing:.04em;grid-column:2;font-size:12px}.profile-rules-note{color:var(--text-dim);margin:0;font-size:15px;line-height:1.9}@media (max-width:680px){.profile-rules ul{grid-template-columns:1fr}}
