/* Large artwork overlaps a portrait-and-text profile sheet. */
.character-page{--record-color:#c53370;--record-soft:#ffd1dc;--record-line:#e4d9dc;max-width:1500px;margin:0 auto;padding-top:36px;padding-bottom:60px}
.character-page[data-character="dive"]{--record-color:#8b0000;--record-soft:#8b0000;--record-line:#e5d6d7}
.character-toolbar{margin-bottom:22px}
.character-back{margin:0;font-size:11px;min-height:32px;gap:4px;color:var(--muted)}
.character-layout{position:relative;display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1fr);align-items:stretch;gap:0;max-width:none;isolation:isolate}
.character-art{position:relative;min-width:0;min-height:650px;z-index:2;pointer-events:none;overflow:visible}
.character-portrait{position:absolute;inset:15px -75px 0 -22px;width:auto;max-width:none;aspect-ratio:auto;border-radius:48% 48% 0 0;outline:0;border:0;background:var(--record-soft);color:var(--record-color);font-size:clamp(44px,6vw,82px);font-weight:500;letter-spacing:-.07em;transform:rotate(-7deg);transform-origin:center bottom;box-shadow:none}
.character-portrait>span{transform:rotate(7deg)}
.character-page[data-character="dive"] .character-portrait{background:var(--record-soft);color:#fffafa}
.character-bio{position:relative;z-index:1;background:#fffefa;min-width:0;padding:38px 35px 46px 86px;border-radius:2px;box-shadow:none}

.character-identity{display:grid;grid-template-columns:160px minmax(0,1fr);align-items:start;gap:20px;margin-bottom:15px}
.character-identity-text{display:flex;flex-direction:column;min-width:0}
.character-id-photo{position:relative;width:100%;height:auto;min-height:0;aspect-ratio:4/5;overflow:hidden;border-radius:5px;background:var(--record-soft)}
.character-id-photo span::before{content:'';position:absolute;width:34%;height:31%;left:33%;top:18%;border-radius:50%;background:var(--record-color);opacity:.25}
.character-id-photo span::after{content:'';position:absolute;width:78%;height:65%;left:11%;top:54%;border-radius:50% 50% 0 0;background:var(--record-color);opacity:.25}
#character-class{align-self:flex-end;display:inline-block;font-size:10px;letter-spacing:.025em;line-height:1.5;margin:5px 0 24px;padding:0 4px;color:#fffefa;background:var(--record-color)}
.character-bio h1{font-family:Poppins,Pretendard,sans-serif;font-size:clamp(28px,3.2vw,44px);line-height:1.1;font-weight:500;letter-spacing:-.04em;margin:0;color:var(--ink)}
#character-identity-facts{margin:auto 0 0;padding-top:16px;font-size:clamp(11px,1.1vw,14px);line-height:1.6}
#character-identity-facts>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:3px 0}
#character-identity-facts>div:last-child{border-bottom:0}
#character-identity-facts dt{color:var(--muted);letter-spacing:.03em}
#character-identity-facts dd{margin:0;text-align:right}
#character-facts{display:flex;justify-content:space-around;gap:12px;background:none;padding:12px 0;margin:0 0 21px;font-size:12px;line-height:1.6;text-align:center}
#character-facts>div{flex:1;min-width:0}
#character-facts dt{color:var(--muted);font-size:11px;margin-bottom:2px}
#character-facts dd{margin:0;word-break:keep-all}
.character-conservation{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 0 17px;margin-bottom:20px}
.character-conservation>span{font-size:8px;letter-spacing:.04em}
.character-conservation strong{display:flex;align-items:center;gap:8px;font-size:20px;font-weight:500;color:var(--record-color)}
.character-conservation strong span{font-size:8px;letter-spacing:.05em;font-weight:400}
.character-description{max-width:none;width:100%;margin:23px 0 0}
.character-description p{font-size:13px;line-height:1.95;word-break:keep-all;margin:0 0 1.1em}
.character-description p:last-child{margin-bottom:0}
@media(min-width:851px){
 .character-page[data-character="siren"] .character-layout{max-width:1080px;margin-inline:auto;grid-template-columns:minmax(0,.9fr) minmax(0,1fr)}
 .character-page[data-character="siren"] .character-bio{padding:38px 40px 46px}
 .character-page[data-character="siren"] .character-identity{grid-template-columns:140px minmax(0,1fr);gap:18px}
 .character-page[data-character="siren"] .character-portrait{left:80px;right:-65px}

}
@media(min-width:1500px){.character-page{padding-top:55px}.character-art{min-height:710px}.character-bio{padding-top:45px;padding-right:45px;padding-left:100px}.character-identity{gap:32px}}
@media(min-width:561px) and (max-width:850px){.character-page{padding-left:28px;padding-right:28px}.character-layout{grid-template-columns:minmax(0,.65fr) minmax(0,1fr)}.character-portrait{right:-45px}.character-bio{padding-left:54px;padding-right:22px}.character-identity{gap:14px;grid-template-columns:90px minmax(0,1fr)}#character-name{font-size:26px}#character-class{font-size:8px}.character-conservation{flex-wrap:wrap}}
@media(max-width:560px){.character-page{padding-top:26px}.character-toolbar{margin-bottom:18px}.character-layout{grid-template-columns:1fr}.character-art{min-height:290px;margin-right:20px;overflow:hidden}.character-portrait{inset:12px 15px -100px 12px;font-size:60px;width:auto}.character-bio{z-index:3;margin:-24px 0 0 12px;padding:30px 23px 35px 36px}.character-identity{grid-template-columns:95px minmax(0,1fr);gap:18px}#character-name{font-size:28px}#character-class{font-size:8px;margin-bottom:14px}.character-description{max-width:none}.character-description p{font-size:12px}.character-conservation{flex-wrap:wrap}}
