*,::before,::after{box-sizing:border-box;margin:0;padding:0;border:0 solid}
html{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4}
img{display:block;vertical-align:middle;max-width:100%;height:auto}
:root,.dark { color-scheme:dark; --background:#0b0c10; --foreground:#e9e8e2; --card:#101218; --card-foreground:#e9e8e2; --popover:#101218; --popover-foreground:#e9e8e2; --primary:#e9e8e2; --primary-foreground:#0b0c10; --secondary:#1c2433; --secondary-foreground:#e9e8e2; --muted:#151820; --muted-foreground:#a1a2a9; --accent:#b94249; --accent-foreground:#fff; --border:#2a2c34; --input:#2a2c34; --ring:#d6666d; --radius:0; }
*{box-sizing:border-box}body{margin:0;background:var(--background);color:var(--foreground);font-family:Georgia,'Times New Roman',serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible{outline:1px solid #d4787b;outline-offset:10px}::selection{background:#92383e;color:#fff}.collage{position:relative;isolation:isolate;max-width:1600px;min-height:960px;height:100svh;margin:auto;overflow:hidden;background:radial-gradient(ellipse at 62% 40%,#15192260,transparent 49%)}.title{position:absolute;left:14%;top:13%;z-index:3}.title h1{writing-mode:vertical-rl;margin:0;font-family:'Yu Mincho','Hiragino Mincho ProN','Noto Serif CJK JP',serif;font-size:clamp(56px,5.3vw,76px);font-weight:400;line-height:1.3;letter-spacing:.09em}.portrait{position:absolute;left:45%;top:18%;width:34%;height:61%;margin:0;display:flex;align-items:center;justify-content:center}.portrait img{z-index:1;width:auto;height:auto;max-height:100%;max-width:100%;filter:brightness(.8)}.orbit{position:absolute;width:130%;aspect-ratio:1;border:1px solid #262b3866;border-radius:50%;transform:rotate(-26deg)}.orbit:after{content:'';position:absolute;inset:6%;border:1px solid #242a342b;border-radius:50%}.portrait figcaption{position:absolute;right:-19%;top:47%;font-size:14px;display:flex;gap:15px;align-items:center;writing-mode:vertical-rl;letter-spacing:.25em;color:#b4b2b5}.portrait figcaption span:last-child{font-size:12px;letter-spacing:.15em;color:#898b96}.game{position:absolute;left:4%;top:44%;margin:0;writing-mode:vertical-rl;transform:rotate(180deg);font-family:Arial,sans-serif;font-size:12px;letter-spacing:.14em;color:#94949e}.game span{margin-top:24px;color:#b46a72}footer{position:absolute;right:5%;bottom:25px;font:12px Arial,sans-serif;color:#85858e;letter-spacing:.035em}footer a:hover{color:#cbc6cc}
@media(min-width:1500px){.collage{max-height:1250px}.portrait{width:31%;left:46%}}
@media(max-width:700px){.collage{min-height:1050px;height:100svh}.title{left:10%;top:8%}.title h1{font-size:clamp(40px,8vw,52px)}.portrait{left:37%;top:28%;width:52%;height:43%}.portrait figcaption{right:-8%;top:15%;gap:12px;font-size:12px;letter-spacing:.18em}.portrait figcaption span:last-child{display:none}.orbit{width:135%}.game{left:6%;top:48%;font-size:12px;letter-spacing:.08em}footer{bottom:25px;right:8%;font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}

.artwork-link{position:absolute;left:18%;bottom:11%;display:flex;align-items:center;gap:22px;font-size:16px;letter-spacing:.15em;color:#b5abb2;transition:color .3s}.artwork-link span:last-child{font-size:14px;color:#a1737d}.artwork-link:hover{color:#e6c7cb}@media(max-width:700px){.artwork-link{left:12%;bottom:15%;gap:18px}}

.title:hover{color:#d8b3b7}
.music-page{max-width:1150px;min-height:100svh;margin:auto;padding:65px 8% 85px}.back-link{font-size:14px;color:#b6adb5}.back-link:hover{color:#ead6da}.music-layout{display:grid;grid-template-columns:130px minmax(0,1fr);gap:70px;margin-top:90px}.music-layout h1{writing-mode:vertical-rl;font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-weight:400;font-size:44px;letter-spacing:.12em;line-height:1.4;margin:0}.music-selection h2{font:400 14px Arial,sans-serif;letter-spacing:.15em;color:#a58d97;margin:0 0 28px}.music-list{list-style:none;padding:0;margin:0}.music-list li{border-top:1px solid #292833}.music-list li:last-child{border-bottom:1px solid #292833}.music-list .track-video{display:block;position:relative;padding:29px 30px 29px 0}.track-name{display:block;font-size:clamp(18px,2.1vw,24px);font-weight:400;overflow-wrap:anywhere;line-height:1.55;color:#d2cbd0}.music-list .track-video:hover .track-name{color:#efccd2}.music-credit{font:12px Arial,sans-serif;color:#93909b;margin:33px 0 0}@media(max-width:700px){.music-page{padding:35px 8% 55px}.music-layout{grid-template-columns:44px minmax(0,1fr);gap:27px;margin-top:60px}.music-layout h1{font-size:28px}.music-list .track-video{padding:23px 21px 23px 0}.track-name{font-size:18px}.music-credit{line-height:1.7}}

.music-list .track-video{padding-bottom:12px}.track-source{display:inline-block;margin-bottom:0;font:14px/1.7 Arial,sans-serif;letter-spacing:.06em;color:#c08c98}.track-source:hover{color:#edc6cf}

.track-release{padding-bottom:26px}.release-event{display:block;width:fit-content;margin-top:7px;font:12px/1.7 Arial,sans-serif;color:#a5a0aa}.release-event:hover{color:#d6bdc5}

.track-version{font-size:.8em;color:#aaa3ae}

.music-list li{display:grid;grid-template-columns:128px minmax(0,1fr);gap:25px;padding:26px 0;align-items:start}.album-cover{display:block;align-self:start}.album-cover img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain}.music-list .track-video{padding:0 0 12px}.album-details{min-width:0}.album-details .track-release{padding-bottom:0}@media(max-width:900px){.music-layout{gap:40px;grid-template-columns:80px minmax(0,1fr)}.music-list li{grid-template-columns:100px minmax(0,1fr);gap:20px}}@media(max-width:700px){.music-layout{grid-template-columns:38px minmax(0,1fr);gap:22px}.music-list li{grid-template-columns:1fr;gap:18px}.album-cover{width:130px}.music-list .track-video{padding:0 0 12px}}

.without-cover .album-details{grid-column:2}.music-list .without-cover .track-video{padding-bottom:0}@media(max-width:700px){.without-cover .album-details{grid-column:1}}

.track-original-title{display:block;margin-top:9px;font-size:14px;line-height:1.8;color:#aaa3ae;overflow-wrap:anywhere}

.portrait figcaption a{display:flex;gap:inherit;align-items:center}.portrait figcaption a:hover,.portrait figcaption a:hover span{color:#e6c7cb}
.lore-passages{max-width:560px}.lore-passages section+section{margin-top:42px}.lore-passages h2{margin:0 0 13px;font:400 18px/1.5 Georgia,serif;color:#d2cbd0}.lore-passages p{margin:0;font-size:16px;line-height:1.85;color:#b5afb9}.lore-source{display:inline-block;margin-top:13px;font:12px/1.7 Arial,sans-serif;color:#b5afb9}.lore-source a{color:#a58d97}.lore-source a:hover{color:#edc6cf}

.lore-passages blockquote{margin:16px 0 0;font-size:16px;line-height:1.85;color:var(--foreground)}.lore-passages blockquote:before{content:"“"}.lore-passages blockquote:after{content:"”"}

.lore-profile{min-width:0;max-width:600px;color:#b5afb9}.profile-credit{margin-bottom:38px}.profile-credit h2{font:400 20px/1.5 Georgia,serif;color:#d2cbd0;margin:0 0 8px}.profile-credit p{font:14px/1.7 Arial,sans-serif}.lore-profile section+section{margin-top:64px}.lore-profile h3{font:400 12px/1.8 Arial,sans-serif;margin:0 0 24px}.lore-profile h3 a{color:#c08c98}.lore-profile h3 a:hover{color:#edc6cf}.lore-profile blockquote{margin:0;white-space:normal;overflow-wrap:anywhere;font:16px/1.85 Georgia,serif}.lore-profile blockquote[lang=ja]{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;line-height:2}

.lore-profile blockquote p{margin:0;text-align:start}.lore-profile blockquote p+p{margin-top:1.25em}

.game a:hover{color:#d8b3b7}

.personality-summary{margin-bottom:64px;font-size:16px;line-height:1.85}.personality-summary h2{font:400 20px/1.5 Georgia,serif;color:#d2cbd0;margin:0 0 24px}.personality-summary p+p{margin-top:1.25em}.personality-summary a{color:#c08c98}.personality-summary a:hover{color:#edc6cf}

.lore-profile h3.quote-attribution{margin:16px 0 0}

.tribute-links{display:flex;gap:24px;flex-wrap:wrap;position:absolute;left:18%;bottom:7%;font:14px/1.7 Arial,sans-serif;color:#b5abb2;letter-spacing:.06em}.tribute-links a:hover{color:#e6c7cb}@media(max-width:700px){.tribute-links{left:12%;bottom:11%}}
