/* Tokyo after hours: dark ink, pink signage and cool blue light. */
:root{--paper:#0c0b16;--ink:#f1edf8;--muted:#a8a0bb;--line:#34273f;--accent:#ed79ca}body{background:#0c0b16;color:var(--ink)}body:before{content:"";position:absolute;top:0;left:0;right:0;height:600px;background:linear-gradient(180deg,#0c0b1677,#0c0b16 98%),url('/assets/night-city.png') center 45%/cover;opacity:.32;pointer-events:none;z-index:-1}.site-header{background:#100d1beF;border-bottom:1px solid #513052;box-shadow:0 1px 18px #ce48cb14}.brand-mark,.nav-shell .brand-mark{background:#3d193c;color:#ffb5e8;border:1px solid #ae4e98;box-shadow:0 0 17px #f04fc62a}.nav-shell nav a:after{background:#f181d1;box-shadow:0 0 10px #ed60c7}.nav-shell nav a.active,.nav-shell nav a:hover{color:#ffc0ea}.button,.account-nav .button{background:#e88bcf;border-color:#eb94d5;color:#250d24;box-shadow:0 3px 22px #e85dba18}.button:hover,.account-nav .button:hover{background:#f5addf;border-color:#ffd3f0;box-shadow:0 0 22px #ef70cb35}.intro-label{color:#e693cc;letter-spacing:2px;text-transform:uppercase}.intro-label:after{content:" / 東京 — 夜";font-size:11px;color:#87ccd8;letter-spacing:3px}.library-intro{padding-top:48px}.intro-copy h1{color:#faf1fc;text-shadow:0 0 35px #e77fcb12}.featured-game{border:1px solid #6e426b;box-shadow:0 12px 50px #28152955}.browse-genres a{background:#181021;border-color:#50354e}.browse-genres a:hover{color:#fbb7e2;border-color:#d571b7;background:#2b1832}.cover-link{border-color:#423049;background:#151020}.cover-link:hover{border-color:#da70bd;box-shadow:0 0 20px #e565bb24}.filters,.stats,.journal,.profile-card{background:#151020;border-color:#423049}.search-field input,input,select,textarea{background:#100d19;border-color:#4b3653}.search-field>span{color:#9ce0ed}.game-card h3 a:hover,.plain-link:hover{color:#f4a5d9}.pagination a[aria-current]{background:#e88bcf;border-color:#e88bcf;color:#250d24}.pagination a:hover{border-color:#ea83cd}.time-panel{background:#181124;border-color:#56395b}.time-values strong,.time-values>div+div strong{color:#a9e5ee}.detail-tags span{color:#e1b9dd;border-color:#573d5c;background:#201328}.site-footer{border-color:#422941}.site-footer .footer-brand{color:#f1b4db}:focus-visible{outline:2px solid #8bdfed;outline-offset:4px}.gameplay-gallery{margin:26px 0 42px;max-width:1000px}.gallery-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:15px}.gallery-heading h2{font-size:23px}.gallery-heading>span{font-size:12px;color:#aea2ba}.gameplay-main{display:block;position:relative;background:#07060d;border:1px solid #5a3d63;border-radius:7px;overflow:hidden}.gameplay-main>img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}.gameplay-main>span{position:absolute;bottom:15px;right:15px;background:#130d20dd;border:1px solid #866184;border-radius:4px;padding:7px 12px;font-size:12px;color:#f7e4f5}.gameplay-main:hover{border-color:#ec89d0}.gallery-thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:12px}.gallery-thumbs>a{display:block;border:2px solid transparent;border-radius:5px;overflow:hidden;background:#08060f;opacity:.65;transition:opacity .18s,border-color .18s}.gallery-thumbs>a[aria-current],.gallery-thumbs>a:hover{border-color:#e68acb;opacity:1}.gallery-thumbs img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}.gallery-dialog{position:fixed;inset:0;margin:auto;width:min(1250px,94vw);max-height:94dvh;padding:12px;background:#110d1a;color:#f4eafa;border:1px solid #785078;border-radius:8px}.gallery-dialog::backdrop{background:#05030bea;backdrop-filter:blur(8px)}.gallery-dialog>img{display:block;max-height:calc(94dvh - 80px);width:100%;height:auto;object-fit:contain}.gallery-controls{display:flex;align-items:center;gap:14px;margin-bottom:12px}.gallery-controls button{font:inherit;color:#f8ddf0;background:#2a1932;border:1px solid #775278;padding:8px 15px;border-radius:4px;cursor:pointer}.gallery-controls button:hover{border-color:#f2a4d7}.gallery-controls [data-gallery-close]{margin-left:auto}.gallery-controls span{font-size:13px;color:#c3b7cd}@media(max-width:580px){.gallery-heading{align-items:start}.gallery-heading h2{font-size:21px}.gallery-heading>span{font-size:10px;text-align:right;max-width:140px}.gameplay-gallery{margin:22px 0 30px}.gallery-thumbs{gap:7px;margin-top:8px}.gameplay-main>span{font-size:10px;bottom:8px;right:8px;padding:4px 8px}.gallery-controls{gap:7px}.gallery-controls button{padding:7px 10px;font-size:12px}.gallery-dialog{padding:8px}.intro-label:after{letter-spacing:1px}}@media(prefers-reduced-motion:reduce){.gallery-thumbs>a{transition:none}}

.gallery-heading h1{font-size:clamp(28px,4vw,44px);line-height:1.15;letter-spacing:-1px}.detail-copy>h2{font-size:30px;margin:15px 0}.gallery-heading{align-items:center}
