.rh.sp{color:#f4edf8;background:#0b0910;width:100%;max-width:900px;min-height:100dvh;margin:0 auto;padding:16px 24px 80px}.sp-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;display:flex}.sp-header img{object-fit:contain;display:block}.sp-header>a:last-child{color:#f4b6d4;font-size:13px}.sp-hero{isolation:isolate;background:#24182d;border-radius:22px;min-height:420px;position:relative;overflow:hidden}.sp-hero>img{object-fit:cover;object-position:center 28%;z-index:-2}.sp-hero-shade{z-index:-1;background:linear-gradient(#0b091010,#0b09108c 45%,#0b0910 100%);position:absolute;inset:0}.sp-hero-copy{padding:180px 30px 30px}.sp-hero-copy>p:first-child,.sp-eyebrow{color:#f7add0;letter-spacing:.04em;font-size:12px}.sp h1{letter-spacing:-.04em;word-break:keep-all;overflow-wrap:anywhere;max-width:680px;font-size:clamp(28px,5vw,40px);line-height:1.35}.sp h2{font-size:23px;line-height:1.4}.sp h3{font-size:20px}.sp article>section{margin-top:48px}.sp section>p,.sp-cast p{white-space:pre-line;word-break:keep-all;overflow-wrap:anywhere;line-height:1.85}.sp-synopsis{font-size:16px}.sp-tags{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.sp-tags span{color:#ecd6ef;background:#24182dbb;border-radius:16px;padding:5px 10px;font-size:12px}.sp-entry{background:#211726;border-radius:18px;margin-top:20px;padding:20px}.sp-entry>p,.sp-entry small,.sp-muted{color:#b8aebf;font-size:13px}.sp-entry form{gap:10px;max-width:500px;display:grid}.sp-entry .btn{justify-content:center;min-height:44px}.sp-cast{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:20px;display:grid}.sp-cast article{background:#1b1522;border-radius:18px;overflow:hidden}.sp-cast .character-art{aspect-ratio:3/4;width:100%;max-height:430px;display:block}.sp-cast article>div{padding:20px}.sp-cast article p{margin:8px 0}.sp-relations{gap:10px;padding:0;list-style:none;display:grid}.sp-relations li{background:#211726;border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px 16px;padding:16px;display:flex}.sp-relations span{color:#f6b7d6}.sp-relations small{color:#b8aebf;flex-basis:100%}.sp-prologue{background:#16111e;border-radius:18px;padding:24px}.sp-prologue .rs-narration,.sp-prologue .rs-line{font:inherit;margin:20px 0;line-height:1.9}.sp-bottom{background:#211726;border-radius:18px;padding:24px}.sp-bottom a{color:#f6b7d6;margin:8px 16px 0 0;display:inline-flex}@media (max-width:600px){.rh.sp{padding:12px 16px 64px}.sp-hero{min-height:360px}.sp-hero-copy{padding:150px 20px 24px}.sp-cast{grid-template-columns:1fr}.sp-cast .character-art{max-height:none}.sp-prologue{padding:16px}}.sp-entry .usage-notice p{color:#e5d7e9;font-size:13px}.sp-entry .usage-notice__detail{color:#b9aec4;font-size:12px}.sp-entry-form{gap:12px;display:grid}.sp-entry-form small{color:#c2b3ca}.sp-entry-form .btn{justify-content:center;min-height:44px}.sp-entry-modal{width:min(520px,100%);max-height:calc(100dvh - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow-y:auto}.sp-entry-dock{display:none}.sp-sections{flex-wrap:wrap;gap:8px;margin-top:24px;display:flex}.sp-sections a{color:#f5c4df;border:1px solid #ffffff24;border-radius:24px;justify-content:center;align-items:center;min-height:44px;padding:8px 16px;display:inline-flex}.sp [id]{scroll-margin-top:24px}.sp-bottom .sp-entry{background:0 0;padding:0}.sp-bottom .sp-entry .btn{color:#250e20}.sp :is(button,a,input):focus-visible{outline-offset:4px;outline:2px solid #f6a5cc}@media (max-width:600px){.sp-entry-flow{padding-bottom:var(--story-entry-height,150px)}.sp-entry-dock{z-index:45;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#160f1ff5;border-top:1px solid #a98e9e55;gap:5px;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #0004}.sp-entry-dock .btn{justify-content:center;width:100%;min-height:44px}.sp-entry-dock .usage-notice{text-align:center;max-width:540px;margin:0 auto}.sp-cast article{grid-template-columns:minmax(110px,38%) minmax(0,1fr);align-items:start;display:grid}.sp-cast .character-art{aspect-ratio:3/4;max-height:230px}.sp-cast article>div{padding:16px 12px}.sp-cast article p{font-size:13px;line-height:1.7}.sp-sections a{padding-inline:12px}}
