:root{color-scheme:dark;font-family:system-ui,sans-serif;background:#0c1426;color:#f8f3e9}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 50% 0,#1c2d4c,#0c1426 65%);min-height:100vh}a{color:inherit}.site-header{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,4vw,70px);border-bottom:1px solid #8f734999;background:#0b1425}.brand{text-decoration:none;display:flex;flex-direction:column;line-height:.85;font:26px Georgia,serif;letter-spacing:.04em;color:#edcf91}.brand small{font:12px system-ui,sans-serif;letter-spacing:.35em;text-transform:uppercase;margin-top:6px}.site-header nav{display:flex;gap:24px;align-items:center}.site-header nav a{text-decoration:none;color:#f1e3c4;font-size:15px}.site-header nav a:hover,.site-header nav a:focus-visible{color:#fff;text-decoration:underline;text-underline-offset:5px}.page-title{text-align:center;margin:18px 12px 14px;font:normal clamp(28px,3vw,43px) Georgia,serif;color:#f6e8cf}.scene{position:relative;width:min(calc(100% - 36px),calc((100svh - 170px)*16/9),1660px);aspect-ratio:16/9;margin:0 auto 22px;overflow:hidden;border:1px solid #8d714a;border-radius:8px;box-shadow:0 16px 60px #020711a8;background:#13233e}.scene>img{width:100%;height:100%;display:block;object-fit:contain}.scene:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#07102088,transparent 32%)}.portal{position:absolute;z-index:1;bottom:18%;width:22%;min-height:56px;display:grid;place-items:center;padding:12px;background:#101e36df;border:1px solid #d1a969;border-radius:6px;box-shadow:0 8px 26px #08101da8;text-decoration:none;text-align:center;font:normal clamp(15px,1.65vw,26px) Georgia,serif;transition:transform .2s,background .2s}.portal small{display:block;margin-top:4px;font:13px system-ui,sans-serif;color:#e0c896}.portal:hover,.portal:focus-visible{background:#243c60;transform:translateY(-5px);outline:2px solid #f4dfac;outline-offset:2px}.portal-milo{left:10%}.portal-voyages{left:39%}.portal-ados{right:10%}.scene-detail{width:min(calc(100% - 36px),calc((100svh - 166px)*16/9),1660px)}.intro{position:absolute;z-index:2;top:3%;left:3%;max-width:min(40%,450px);padding:12px 18px;background:#101e36e8;border:1px solid #b5945a;border-radius:6px}.intro h1{font:normal clamp(25px,2.4vw,40px) Georgia,serif;margin:0 0 4px}.intro p{font-size:clamp(13px,1.1vw,17px);margin:0;color:#eee0bf}.books{position:absolute;z-index:2;left:50%;bottom:3%;transform:translateX(-50%);display:flex;justify-content:center;gap:clamp(15px,3vw,55px);width:min(88%,950px);padding:12px 20px;background:#0c182bdb;border:1px solid #b8955d;border-radius:9px;backdrop-filter:blur(8px)}.book{width:min(30%,230px);text-align:center;text-decoration:none;display:flex;flex-direction:column;align-items:center;gap:5px}.book img{height:clamp(115px,19vh,240px);max-width:100%;object-fit:contain;filter:drop-shadow(0 10px 10px #02060aaa)}.book strong{font:normal clamp(15px,1.25vw,20px)/1.2 Georgia,serif}.book span{font-size:13px;color:#e7c987}.book:hover img,.book:focus-visible img{transform:translateY(-4px)}.book:focus-visible{outline:2px solid #f3dca9;outline-offset:4px}.return{position:absolute;z-index:3;right:3%;top:3%;border:1px solid #b8955d;border-radius:100px;padding:8px 13px;background:#0c182be8;text-decoration:none;font-size:14px}.return:hover{background:#284363}.note{max-width:900px;margin:0 auto 30px;text-align:center;color:#d2c3a8;padding:0 20px;font-size:14px}@media(max-width:700px){.site-header{height:64px}.site-header nav{gap:13px}.site-header nav a{font-size:13px}.page-title{margin:22px 15px}.scene,.scene-detail{width:calc(100% - 24px);aspect-ratio:auto;height:auto;overflow:visible;background:transparent;border:0;box-shadow:none}.scene>img{aspect-ratio:16/9;border-radius:6px;object-fit:contain;border:1px solid #8d714a}.scene:after{display:none}.portal{position:static;width:100%;min-height:54px;margin:10px 0;font-size:21px}.portal small{font-size:13px}.intro,.return,.books{position:static;transform:none;max-width:none;width:100%;margin:12px 0}.intro{padding:14px}.return{display:inline-block;width:auto}.books{flex-wrap:wrap;gap:15px}.book{width:44%}.book img{height:180px}.note{margin-top:20px}}
