@charset "UTF-8";
:root{--paper:#f5f7fb;--ink:#232334;--muted:#666778;--red:#c8233e;--blue:#176da0;--gold:#8c641b;--line:#e4e4ec;--radius:20px;--width:1200px;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;color:var(--ink);background:#fff;font-family:system-ui,-apple-system,"Segoe UI","Microsoft YaHei","Hiragino Kaku Gothic ProN",sans-serif;line-height:1.8}a{color:inherit;text-decoration:none}a:hover{color:var(--red)}button{font:inherit}img{display:block;width:100%;height:auto}svg{width:20px;height:20px;vertical-align:middle;flex-shrink:0}p{margin:0 0 1.1rem}h1,h2,h3{line-height:1.35;margin:0;font-weight:750}h1,h2{letter-spacing:-.035em}h3{font-size:1.15rem}ul,ol{padding-left:1.35rem}li{margin-bottom:.6rem}button,a,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--blue);outline-offset:5px}.wrap{width:min(var(--width),calc(100% - 64px));margin-inline:auto}.skip{position:fixed;top:-80px;left:18px;padding:12px 20px;background:#fff;z-index:100}.skip:focus{top:12px}.header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;gap:24px;min-height:82px}.brand{display:flex;gap:10px;align-items:center;flex-shrink:0}.brand img{width:42px;height:42px;border-radius:50%;border:2px solid #fae3e8}.brand strong{font-family:Georgia,"Yu Mincho",serif;font-size:20px;letter-spacing:.13em}.brand small{display:block;font-size:9px;letter-spacing:.28em;line-height:1.2;color:var(--muted)}.nav{display:flex;gap:22px;align-items:center;margin-left:auto;font-size:13px;font-weight:650}.nav a{white-space:nowrap;position:relative}.nav a[aria-current]{color:var(--red)}.nav a[aria-current]:after{content:"";position:absolute;height:2px;left:0;right:0;bottom:-10px;background:var(--red)}.btn{display:inline-flex;justify-content:center;align-items:center;gap:14px;background:var(--red);color:white;border:1px solid var(--red);padding:14px 24px;font-size:14px;font-weight:650;border-radius:5px;transition:background .2s,box-shadow .2s}.btn:hover{color:#fff;background:#a51e35;box-shadow:0 7px 22px #c8233e24}.btn.secondary{background:transparent;color:var(--ink);border-color:#ccc8d2}.btn.secondary:hover{border-color:var(--red);color:var(--red)}.header .btn{padding:9px 17px;font-size:12px}.menu-toggle{display:none;border:1px solid var(--line);background:white;border-radius:6px;padding:7px 10px;cursor:pointer}.hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 90% 15%,#eaf6ff 0,transparent 50%),radial-gradient(ellipse at 30% 80%,#fff0f3 0,transparent 53%),#f9f9fc;padding:58px 0 52px}.hero:before{content:"";position:absolute;width:760px;height:760px;border:1px solid #dfd3db;border-radius:50%;right:-250px;top:-240px;pointer-events:none}.hero-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:54px;align-items:center;position:relative}.eyebrow{display:flex;align-items:center;gap:12px;font-size:11px;letter-spacing:.22em;color:var(--red);text-transform:uppercase;font-weight:700;margin-bottom:24px}.eyebrow:before{content:"";width:28px;height:1px;background:currentColor}.hero h1{font-family:Georgia,"Yu Mincho","Noto Serif CJK JP",serif;font-size:clamp(42px,5vw,68px);line-height:1.14;margin-bottom:15px}.hero h1 span{display:block;font-size:.41em;font-family:system-ui,sans-serif;letter-spacing:.1em;margin-top:14px;color:#373046}.subtitle{font-size:13px;letter-spacing:.06em;color:var(--muted);margin-bottom:27px}.hero-copy{font-size:15px;color:#626171;max-width:440px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:27px}.hero-tags{display:flex;gap:18px;flex-wrap:wrap;font-size:11px;color:var(--muted);margin-top:26px}.hero-tags span{display:flex;align-items:center;gap:6px}.hero-tags svg{width:14px;height:14px}.hero-art{padding:23px 0 5px}.art-heading{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.2em;color:var(--muted);margin-bottom:12px}.visual-frame{position:relative;background:#fff;border:1px solid white;padding:12px;border-radius:5px;box-shadow:0 18px 60px #42374512;transform:rotate(-2deg)}.visual-frame img{border-radius:2px}.visual-frame:after{content:"";position:absolute;width:65px;height:65px;border-right:2px solid var(--gold);border-bottom:2px solid var(--gold);bottom:-11px;right:-11px}.portrait-row{display:flex;gap:13px;margin-top:31px;justify-content:flex-end;align-items:center}.portrait-row img{width:83px;height:83px;border-radius:50%;object-fit:cover;border:5px solid white;box-shadow:0 4px 12px #26203114}.portrait-row .caption{font-size:12px;color:var(--muted);margin-left:5px;line-height:1.6}.portrait-row b{display:block;color:var(--ink);font-size:14px}.hero-bottom{border-top:1px solid #dedee6;margin-top:42px;padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:11px;letter-spacing:.07em}.hero-bottom .edition{color:var(--gold)}.section{padding:82px 0;scroll-margin-top:90px}.section.soft{background:var(--paper)}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:36px}.section-heading h2{font-family:Georgia,"Yu Mincho",serif;font-size:32px}.section-heading h2 .prefix{display:block;font:600 10px/1.5 system-ui,sans-serif;color:var(--red);letter-spacing:.25em;margin-bottom:12px}.section-heading p{font-size:13px;color:var(--muted);max-width:410px;margin:0}.split{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}.body-copy{font-size:15px;color:var(--muted)}.lead-title{font-size:25px;margin-bottom:22px}.figure{margin:0}.figure img{border-radius:var(--radius);border:1px solid #e8e8f0}.figure figcaption{font-size:11px;color:var(--muted);margin-top:12px;display:flex;align-items:center;gap:9px}.figure figcaption:before{content:"";width:17px;height:1px;background:var(--blue)}.facts{display:grid;grid-template-columns:repeat(4,1fr);margin:35px 0 0;border:1px solid var(--line);border-radius:12px;overflow:hidden}.facts div{padding:22px;border-right:1px solid var(--line)}.facts div:last-child{border:0}.facts dt{font-size:11px;color:var(--muted)}.facts dd{margin:5px 0 0;font-size:15px;font-weight:650}.characters{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:30px}.character{padding:24px;background:#fff;border:1px solid var(--line);border-radius:12px}.character img{width:76px;height:76px;border-radius:50%;object-fit:cover;margin-bottom:20px}.character .label{font-size:10px;letter-spacing:.12em;color:var(--red)}.character h3{margin:5px 0 14px}.character p{font-size:13px;color:var(--muted);margin:0}.mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:28px}.mini{border-top:2px solid #dae6f0;padding:21px 4px 0}.mini .number{color:var(--gold);font:italic 25px Georgia,serif;display:block;margin-bottom:12px}.mini h3{margin-bottom:12px;font-size:17px}.mini p{font-size:13px;color:var(--muted)}.guide-layout{display:grid;grid-template-columns:300px 1fr;gap:38px}.guide-cover{background:linear-gradient(160deg,#f8edf2,#edf4fb);padding:25px;border-radius:14px;align-self:start}.guide-cover img{border-radius:8px;max-height:270px;object-fit:cover}.guide-cover h3{margin:20px 0 12px;font-size:22px}.guide-cover p{font-size:13px;color:var(--muted)}.guide-list{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.guide-card{border:1px solid var(--line);padding:26px;border-radius:12px}.guide-card h3{font-size:17px;display:flex;align-items:center;gap:12px;margin-bottom:16px}.guide-card h3 span{font-size:12px;color:var(--red);border:1px solid #f2dbe1;padding:4px 8px;border-radius:50%}.guide-card ol{font-size:13px;color:var(--muted);margin:0}.note{padding:18px 22px;border-left:2px solid var(--blue);background:#f1f7fb;margin-top:24px;font-size:13px;color:var(--muted)}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature{border:1px solid var(--line);padding:26px;border-radius:12px;background:white}.feature .icon{display:grid;place-items:center;width:40px;height:40px;background:#fbecf0;color:var(--red);border-radius:10px;margin-bottom:22px}.feature:nth-child(2n) .icon{background:#eef7fc;color:var(--blue)}.feature:nth-child(3n) .icon{background:#fff8e9;color:var(--gold)}.feature h3{font-size:17px;margin-bottom:13px}.feature p{font-size:13px;color:var(--muted);margin:0}.feature-banner{margin-top:25px;display:grid;grid-template-columns:1.3fr 1fr;gap:35px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:25px;align-items:center}.feature-banner img{border-radius:8px}.feature-banner h3{font-size:22px;margin-bottom:14px}.feature-banner p{font-size:13px;color:var(--muted);margin:0}.updates-layout{display:grid;grid-template-columns:1fr 2fr;gap:65px}.version-card{padding:32px;background:var(--red);color:#fff;border-radius:12px;align-self:start}.version-card .label{font-size:11px;letter-spacing:.2em;opacity:.85}.version-card strong{display:block;font-size:42px;line-height:1.3;margin:16px 0}.version-card p{font-size:13px;opacity:.9;margin:0}.timeline{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.timeline li{display:grid;grid-template-columns:105px 1fr;gap:20px;border-bottom:1px solid var(--line);padding:19px 0;margin:0}.timeline time{font-size:11px;color:var(--muted);padding-top:3px}.timeline h3{font-size:14px;margin-bottom:6px}.timeline p{font-size:13px;color:var(--muted);margin:0}.faq-layout{display:grid;grid-template-columns:.65fr 1.35fr;gap:70px}.faq-intro h3{font-size:24px;margin-bottom:15px}.faq-intro p{color:var(--muted);font-size:14px}.faq-intro img{width:120px;height:120px;border-radius:50%;margin:28px 0}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:0 0 0 2px}summary{list-style:none;cursor:pointer;font-size:14px;font-weight:650;padding:20px 30px 20px 0;position:relative}summary::-webkit-details-marker{display:none}summary:after{content:"+";position:absolute;right:6px;top:18px;color:var(--red);font-size:21px;font-weight:400}details[open] summary:after{content:"−"}details p{font-size:13px;line-height:1.9;color:var(--muted);padding-right:30px;margin-bottom:20px}.closing{background:radial-gradient(ellipse at 20% 20%,#fff0f2,transparent 50%),#f0f5fa;border-block:1px solid #e8e8ef;padding:49px 0}.closing-inner{display:flex;justify-content:space-between;gap:30px;align-items:center}.closing h2{font-family:Georgia,"Yu Mincho",serif;font-size:29px;margin-bottom:9px}.closing p{color:var(--muted);font-size:13px;margin:0}.footer{padding:32px 0}.footer-top,.footer-bottom{display:flex;justify-content:space-between;gap:30px;align-items:center}.footer-bottom{padding-top:24px;margin-top:24px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}.languages{display:flex;gap:17px;font-size:12px}.languages a[aria-current]{color:var(--red);font-weight:650}.back-top{border:1px solid var(--line);border-radius:50%;width:38px;height:38px;display:grid;place-items:center}.error{min-height:70vh;display:grid;place-items:center;text-align:center}.error h1{font-size:90px}.error p{margin:25px 0}.legal-text{max-width:760px;margin:auto}.legal-text h2{font-size:23px;margin:30px 0 15px}.legal-text p{color:var(--muted)}
.hero-grid>*,.split>*,.section-heading>*,.character{min-width:0}.section-heading h2{overflow-wrap:anywhere}
@media(min-width:1500px){.hero{padding-block:78px}}
@media(max-width:1100px){.nav{gap:12px;font-size:12px}.header-inner{gap:15px}.wrap{width:calc(100% - 48px)}.hero-grid{gap:30px}.hero h1{font-size:53px}.guide-layout{grid-template-columns:250px 1fr}.characters{gap:12px}.character{padding:18px}}
@media(max-width:900px){html{scroll-padding-top:85px}.header-inner{min-height:72px}.nav{display:flex;position:absolute;top:72px;left:0;right:0;background:#fff;flex-wrap:wrap;padding:16px 24px;border-bottom:1px solid var(--line);justify-content:center}.header .btn{margin-left:auto}.js .menu-toggle{display:block}.js .nav{display:none}.js .nav.open{display:flex}.hero{padding-top:42px}.hero h1{font-size:46px}.hero-grid{grid-template-columns:1fr 1fr;gap:23px}.hero-art{padding-top:0}.portrait-row img{width:60px;height:60px}.portrait-row{gap:7px}.portrait-row .caption{font-size:11px}.split{gap:30px}.section{padding:65px 0}.section-heading h2{font-size:29px}.characters{grid-template-columns:repeat(2,1fr)}.guide-layout{grid-template-columns:1fr}.guide-cover{display:grid;grid-template-columns:200px 1fr;gap:24px;align-items:center}.guide-cover h3{margin-top:0}.guide-cover img{max-height:180px}.faq-layout{gap:38px}.updates-layout{gap:30px}.version-card{padding:25px}.version-card strong{font-size:34px}}
@media(max-width:620px){.wrap{width:calc(100% - 36px)}.brand strong{font-size:16px}.brand small{font-size:8px}.brand img{width:34px;height:34px}.header-inner{gap:10px}.header .btn{font-size:11px;padding:8px 11px}.header .btn svg{display:none}.menu-toggle{font-size:12px}.hero-grid{grid-template-columns:1fr;gap:30px}.hero{padding-top:36px;padding-bottom:28px}.hero h1{font-size:49px}.eyebrow{font-size:9px;margin-bottom:22px}.hero-copy{font-size:14px;max-width:none}.hero-art{margin-top:0}.visual-frame{transform:rotate(-1.5deg)}.portrait-row{margin-top:24px;justify-content:flex-start}.portrait-row img{width:62px;height:62px}.hero-tags{gap:14px}.hero-bottom{margin-top:28px;font-size:10px;gap:12px;flex-wrap:wrap}.section{padding:54px 0}.section-heading{display:block;margin-bottom:26px}.section-heading h2{font-size:28px}.section-heading p{margin-top:16px}.split{grid-template-columns:1fr;gap:24px}.lead-title{font-size:23px}.body-copy{font-size:14px}.facts{grid-template-columns:repeat(2,1fr)}.facts div{padding:16px}.facts div:nth-child(2){border-right:0}.facts div:nth-child(-n+2){border-bottom:1px solid var(--line)}.facts dd{font-size:13px}.characters{gap:12px}.character{padding:17px 15px}.character h3{font-size:16px}.character img{width:63px;height:63px}.character p{font-size:12px}.mini-grid{grid-template-columns:1fr;gap:10px}.mini{display:grid;grid-template-columns:38px 1fr;column-gap:12px}.mini .number{grid-row:span 2}.mini p{margin-bottom:0}.guide-cover{grid-template-columns:95px 1fr;gap:17px;padding:20px}.guide-cover img{height:115px;object-fit:cover}.guide-cover h3{font-size:18px}.guide-cover p{font-size:12px;margin:0}.guide-list{grid-template-columns:1fr}.guide-card{padding:23px}.feature-grid{grid-template-columns:repeat(2,1fr);gap:12px}.feature{padding:19px 16px}.feature h3{font-size:15px}.feature p{font-size:12px}.feature .icon{margin-bottom:16px}.feature-banner{grid-template-columns:1fr;padding:20px;gap:20px}.updates-layout,.faq-layout{grid-template-columns:1fr;gap:26px}.version-card{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:center}.version-card strong{grid-row:span 2;margin:0;font-size:32px;text-align:right}.version-card p{font-size:12px}.timeline li{grid-template-columns:78px 1fr;gap:14px}.timeline time{font-size:10px}.faq-intro{display:grid;grid-template-columns:1fr 70px;gap:8px}.faq-intro img{width:70px;height:70px;grid-column:2;grid-row:1/4;margin:0}.faq-intro h3{font-size:22px}.faq-intro p{font-size:13px;margin:0}summary{font-size:13px;padding-block:18px}.closing-inner{display:block}.closing h2{font-size:26px}.closing .btn{margin-top:24px}.footer-top{align-items:flex-start}.languages{gap:10px;font-size:11px;flex-wrap:wrap;justify-content:flex-end}.footer-bottom{align-items:flex-start;font-size:10px}.footer-bottom p{margin:0}.hero .btn{padding:12px 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
@media print{.header,.actions,.closing,.back-top,.languages{display:none}.section{padding:25px 0}details p{display:block!important}.wrap{width:100%}.hero{padding:20px 0}a{color:#000}.figure img{max-height:200px;object-fit:contain}body{font-size:11pt}}
/* Keep the complete image visible at every viewport, including small thumbnails. */
.brand img,.portrait-row img,.figure img,.visual-frame img,.guide-cover img,.feature-banner img,.faq-intro img{height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;border-radius:0}
.portrait-row img{border:1px solid #e4e4ec;padding:3px;background:#fff;box-shadow:none}
.portrait-row img:nth-of-type(2){width:160px}
.character .icon{display:block;color:var(--red);margin-bottom:16px}
.character:nth-child(2) .icon{color:var(--gold)}
.character:nth-child(3) .icon{color:var(--blue)}
.character:nth-child(4) .icon{color:#785080}
@media(max-width:900px){.portrait-row{flex-wrap:wrap;justify-content:flex-start}.portrait-row img:nth-of-type(2){width:130px}}
@media(max-width:620px){.portrait-row img:nth-of-type(2){width:140px}}
/* Screenshot gallery: this requested presentation intentionally uses a 16:9 crop. */
.gallery-section{background:#11141e;color:#f6f7fb;padding:82px 0}.gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:30px}.gallery-heading span{color:#e7a5b3;font-size:10px;font-weight:700;letter-spacing:.22em}.gallery-heading h2{font-family:Georgia,"Yu Mincho",serif;font-size:32px;color:#fff}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.gallery-item{appearance:none;display:block;width:100%;aspect-ratio:16/9;padding:0;overflow:hidden;border:1px solid #343846;border-radius:12px;background:#202430;cursor:zoom-in;box-shadow:0 14px 30px #00000024}.gallery-item:focus-visible{outline:3px solid #fff;outline-offset:4px}.gallery-image{width:100%;height:100%;object-fit:cover;transition:transform .28s ease}.gallery-item:hover .gallery-image,.gallery-item:focus-visible .gallery-image{transform:scale(1.05)}.lightbox{width:min(1180px,calc(100% - 32px));max-width:none;margin:auto;padding:0;border:0;background:transparent;color:#fff}.lightbox::backdrop{background:rgba(5,7,12,.9);backdrop-filter:blur(6px)}.lightbox-shell{position:relative;display:grid;place-items:center;min-height:min(78vh,820px);padding:64px 72px 46px;background:#11141e;border:1px solid #393d4a;border-radius:12px;box-shadow:0 28px 80px #00000080}.lightbox-figure{width:100%;margin:0}.lightbox-figure img{width:100%;height:min(68vh,700px);object-fit:contain}.lightbox-figure figcaption{padding-top:13px;text-align:center;font-size:13px;color:#d8dbe7}.lightbox-close,.lightbox-arrow{position:absolute;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid #555b6c;border-radius:50%;background:#191d29;color:#fff;cursor:pointer;font-size:27px;line-height:1;transition:background .2s,border-color .2s}.lightbox-close:hover,.lightbox-arrow:hover{background:#c8233e;border-color:#c8233e}.lightbox-close{right:20px;top:18px}.lightbox-prev{left:18px;top:calc(50% - 22px)}.lightbox-next{right:18px;top:calc(50% - 22px)}.lightbox-count{position:absolute;bottom:15px;margin:0;font-size:11px;letter-spacing:.12em;color:#aeb4c2}@media(max-width:900px){.gallery-section{padding:65px 0}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.lightbox-shell{padding-inline:60px}}@media(max-width:620px){.gallery-section{padding:54px 0}.gallery-heading{display:block;margin-bottom:24px}.gallery-heading h2{font-size:28px;margin-top:10px}.gallery-grid{grid-template-columns:1fr;gap:13px}.lightbox{width:calc(100% - 18px)}.lightbox-shell{min-height:70vh;padding:54px 16px 42px;border-radius:9px}.lightbox-figure img{height:auto;max-height:60vh}.lightbox-arrow{width:38px;height:38px;font-size:23px;background:#11141ecc}.lightbox-prev{left:8px}.lightbox-next{right:8px}.lightbox-close{right:9px;top:9px;width:38px;height:38px;font-size:25px}}@media print{.gallery-section,.lightbox{display:none}}
/* High-visibility controls and full-width update / FAQ card flows. */
.nav a{display:inline-flex;align-items:center;gap:6px}.nav a svg{width:14px;height:14px}.menu-toggle{align-items:center;gap:6px}.menu-toggle svg{width:15px;height:15px}.gallery-zoom{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:34px;height:34px;border:1px solid #ffffff80;border-radius:50%;background:#11141eb8;color:#fff;opacity:0;transform:translateY(5px);transition:opacity .2s,transform .2s}.gallery-zoom svg{width:17px;height:17px}.gallery-item:hover .gallery-zoom,.gallery-item:focus-visible .gallery-zoom{opacity:1;transform:translateY(0)}.floating-detail{position:fixed;right:24px;bottom:24px;z-index:19;padding:13px 19px;box-shadow:0 12px 32px #5c142236}.floating-detail svg{width:17px;height:17px}#updates .section-heading,#faq .section-heading{display:block;margin-bottom:30px}#updates .section-heading p,#faq .section-heading p{max-width:720px;margin-top:13px;font-size:15px}.updates-layout{display:block}.version-card{display:grid;grid-template-columns:auto 1fr;column-gap:24px;align-items:center;width:100%;margin-bottom:18px;padding:27px 32px;border-radius:12px}.version-card .label{grid-column:1;grid-row:1}.version-card strong{grid-column:1;grid-row:2;margin:4px 0 0;font-size:42px}.version-card p{grid-column:2;grid-row:1/3;max-width:660px;margin:0;font-size:15px;line-height:1.8}.timeline{border:0}.timeline li{display:block;margin:0 0 14px;padding:27px 32px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 8px 22px #24243308}.update-card-heading{display:flex;align-items:center;gap:15px;margin-bottom:11px}.timeline time{padding:0;font-size:13px;font-weight:700;color:var(--red);letter-spacing:.04em}.timeline h3{margin:0;font-size:20px;line-height:1.4}.timeline p{font-size:15px;line-height:1.9;color:var(--muted);margin:0}.faq-layout{display:block}.faq-intro{padding:0 0 22px;margin:0}.faq-intro h3{font-size:25px;margin-bottom:9px}.faq-intro p{font-size:15px;margin:0}.faq-list{border:0}.faq-list details{margin-bottom:14px;padding:0;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 8px 22px #24243308;overflow:hidden}.faq-list summary{padding:22px 56px 22px 24px;font-size:16px;line-height:1.6}.faq-list summary:after{right:22px;top:19px;font-size:24px}.faq-list details p{padding:0 24px;margin:0 0 22px;font-size:15px;line-height:1.9}.faq-list details[open]{border-color:#d7a3af}.faq-list details[open] summary{color:var(--red)}@media(max-width:900px){.nav a{gap:5px}.floating-detail{right:18px;bottom:18px}.version-card{padding:24px}.timeline li{padding:24px}.faq-list summary{padding:20px 52px 20px 20px}.faq-list details p{padding:0 20px;margin-bottom:20px}}@media(max-width:620px){.menu-toggle{display:inline-flex}.nav a{font-size:13px}.gallery-zoom{opacity:1;transform:none;width:30px;height:30px;right:9px;bottom:9px}.floating-detail{right:12px;bottom:12px;padding:11px 14px;font-size:12px}.version-card{display:block;padding:22px}.version-card strong{margin:5px 0 10px;font-size:36px}.version-card p{font-size:14px}.timeline li{padding:20px;margin-bottom:12px}.update-card-heading{display:block;margin-bottom:9px}.timeline time{display:block;margin-bottom:5px;font-size:12px}.timeline h3{font-size:18px}.timeline p,.faq-intro p,.faq-list details p{font-size:14px}.faq-intro{padding-bottom:18px}.faq-intro h3{font-size:23px}.faq-list summary{padding:19px 48px 19px 18px;font-size:15px}.faq-list summary:after{right:18px;top:16px}.faq-list details p{padding:0 18px;margin-bottom:19px}}@media print{.floating-detail{display:none}}
.header .btn svg{display:block}@media(max-width:900px){.js .menu-toggle{display:inline-flex}}
.visual-frame,.facts,.character,.guide-cover,.guide-card,.feature,.feature-banner,.version-card,.timeline li,.faq-list details,.gallery-item,.lightbox-shell{border-radius:16px}.btn,.menu-toggle,.back-top,.lightbox-close,.lightbox-arrow,.floating-detail{border-radius:999px}.gallery-item,.gallery-item:focus-visible{border-radius:12px}img,.brand img,.portrait-row img,.figure img,.visual-frame img,.guide-cover img,.feature-banner img,.faq-intro img,.character img,.gallery-image,.lightbox-figure img{border-radius:12px}.hero-tags span,.character .label,.version-card .label,.gallery-heading span,.guide-card h3 span{border-radius:4px}

/* Unified hover feedback: motion and color transitions stay purely in CSS. */
.character,.guide-cover,.guide-card,.feature,.feature-banner,.version-card,.timeline li,.faq-list details{transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.character:hover,.guide-cover:hover,.guide-card:hover,.feature:hover,.feature-banner:hover,.timeline li:hover,.faq-list details:hover{transform:translateY(-6px);border-color:#e5b3bf;box-shadow:0 14px 34px rgba(200,35,62,.16),0 0 22px rgba(23,109,160,.1)}
.version-card:hover{transform:translateY(-6px);box-shadow:0 16px 38px rgba(200,35,62,.28),0 0 24px rgba(200,35,62,.14)}
.btn,.menu-toggle,.back-top,.lightbox-close,.lightbox-arrow{transition:transform .3s ease,background-color .3s ease,border-color .3s ease,color .3s ease,box-shadow .3s ease,filter .3s ease}
.btn:hover,.menu-toggle:hover,.back-top:hover,.lightbox-close:hover,.lightbox-arrow:hover{transform:scale(1.05);filter:brightness(1.08)}
.btn:hover{box-shadow:0 10px 28px rgba(200,35,62,.28)}
.menu-toggle:hover,.back-top:hover{border-color:var(--red);color:var(--red);box-shadow:0 8px 22px rgba(200,35,62,.14)}
img{transform-origin:center;transition:transform .3s ease,filter .3s ease,box-shadow .3s ease}
img:hover,.visual-frame:hover img,.figure:hover img,.character:hover img,.guide-cover:hover img,.feature-banner:hover img,.gallery-item:hover .gallery-image,.gallery-item:focus-visible .gallery-image{transform:translateY(-4px) scale(1.05);filter:brightness(1.08);box-shadow:0 12px 30px rgba(35,35,52,.2)}
.nav a:after{content:"";position:absolute;left:0;right:0;bottom:-10px;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left center;transition:transform .3s ease}
.nav a:hover:after,.nav a:focus-visible:after,.nav a[aria-current]:after{transform:scaleX(1)}
@media(prefers-reduced-motion:reduce){.character:hover,.guide-cover:hover,.guide-card:hover,.feature:hover,.feature-banner:hover,.version-card:hover,.timeline li:hover,.faq-list details:hover,.btn:hover,.menu-toggle:hover,.back-top:hover,.lightbox-close:hover,.lightbox-arrow:hover,img:hover,.visual-frame:hover img,.figure:hover img,.character:hover img,.guide-cover:hover img,.feature-banner:hover img,.gallery-item:hover .gallery-image,.gallery-item:focus-visible .gallery-image{transform:none}.nav a:after{transition:none}}

/* Footer friend links: full-width theme band with text-only controls. */
.friend-links{width:100vw;margin:30px 0 0 calc(50% - 50vw);padding:34px max(32px,calc((100vw - var(--width))/2));background:var(--red);color:#fff;text-align:center}
.friend-links h2{font-family:Georgia,"Yu Mincho",serif;font-size:28px;color:#fff;margin:0 0 20px}
.friend-link-list{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px}
.friend-link{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 20px;border:1px solid rgba(255,255,255,.42);border-radius:999px;background:rgba(255,255,255,.08);color:#fff;font-size:14px;font-weight:650;line-height:1.5;transition:transform .3s ease,background-color .3s ease,border-color .3s ease,box-shadow .3s ease}
.friend-link:hover,.friend-link:focus-visible{color:#fff;background:rgba(255,255,255,.18);border-color:#fff;transform:translateY(-3px);box-shadow:0 10px 24px rgba(80,7,23,.25)}
@media(max-width:620px){.friend-links{padding:28px 18px}.friend-links h2{font-size:24px;margin-bottom:17px}.friend-link-list{gap:10px}.friend-link{width:100%;max-width:320px;padding:9px 16px;font-size:13px}}
@media(prefers-reduced-motion:reduce){.friend-link:hover,.friend-link:focus-visible{transform:none}}
