:root{--navy:#090d26;--navy2:#121a44;--wood:#3a1a10;--gold:#f2d38a;--gold2:#b98a3c;--cream:#f5ecd7;--sub:#c9c0a8}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;background:#04061a;color:var(--cream);font:500 16px/1.8 Shippori Mincho B1,Hiragino Mincho ProN,Yu Mincho,serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}#app{max-width:480px;margin:0 auto;min-height:100dvh;background:var(--navy);position:relative;overflow:hidden}.gate{min-height:100dvh;display:flex;flex-direction:column;background:#000}.gate-v{width:100%;height:56dvh;object-fit:cover;display:block;background:#000}.gate-low{flex:1;background:linear-gradient(180deg,#000,#090d26 40%);padding:12px 22px 36px;text-align:center}.title{width:82%;max-width:360px;display:block;margin:6px auto 2px}.ann{min-height:3.4em;margin:6px 0 14px;font-size:15px}.board{display:block;width:100%;max-width:320px;margin:0 auto;padding:13px;border-radius:8px;font-weight:800;font-size:18px;color:#2a1705;background:linear-gradient(180deg,#fbe7ae,#d9a94e 60%,#b98a3c);box-shadow:0 2px 14px #f2d38a73}.skip{color:var(--sub);font-size:14px;text-decoration:underline;padding:10px}.car{padding-bottom:84px}.car.fade{animation:fd 1s ease}@keyframes fd{0%{opacity:0}to{opacity:1}}.win{position:relative;aspect-ratio:16/9;background:#000;overflow:hidden}.win-v{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.win-f{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.win-t{position:absolute;left:10%;right:26%;bottom:14%;text-align:center;font-size:15px;font-weight:700;line-height:1.5;color:#fff;text-shadow:0 1px 4px #000,0 0 10px #000;transition:opacity .45s}.win-t.off{opacity:0}.rooms{padding:10px 10px 0;display:grid;gap:8px}.room{position:relative;display:block;padding:12px 34px 12px 14px;border:1px solid var(--gold2);border-radius:8px;background-size:cover;background-position:center;box-shadow:inset 0 0 0 1px #f2d38a1f}.room b{display:block;font-size:19px;font-weight:800;color:var(--gold);text-shadow:0 1px 3px #000;line-height:1.35}.room small{display:block;font-size:13px;color:var(--cream);text-shadow:0 1px 3px #000}.room i{position:absolute;right:13px;top:50%;transform:translateY(-50%);font-style:normal;color:var(--gold);font-size:22px}.mas{position:absolute;right:9%;bottom:8%;width:17%;filter:drop-shadow(0 2px 6px #000)}.warp{flex:none;width:58px;height:58px;border-radius:50%;background:radial-gradient(circle,#fff,#a8c6ff 26%,#23327e 72%);border:1px solid var(--gold);color:#fff;font-size:13px;font-weight:800;text-shadow:0 0 4px #000;box-shadow:0 0 14px #a8c6ffb3}.bar{position:fixed;left:50%;transform:translate(-50%);bottom:calc(8px + env(safe-area-inset-bottom));width:calc(min(100vw,480px) - 20px);display:flex;gap:10px;align-items:center;z-index:5}.cta.in{position:static;transform:none;flex:1;width:auto}.cta{position:fixed;left:50%;transform:translate(-50%);bottom:calc(10px + env(safe-area-inset-bottom));width:calc(min(100vw,480px) - 20px);padding:12px;text-align:center;font-weight:800;font-size:17px;color:#2a1705;border-radius:8px;background:linear-gradient(180deg,#fbe7ae,#d9a94e 60%,#b98a3c);box-shadow:0 2px 12px #0009;z-index:5}.foot{margin:16px 12px 0;font-size:12px;line-height:1.6;color:var(--sub)}.foot a{text-decoration:underline}.rm .foot{margin-bottom:84px}.warp-o{position:fixed;top:0;right:0;bottom:0;left:0;background:#000;z-index:20;display:flex;align-items:center;justify-content:center}.warp-o video{width:100%;height:100%;object-fit:cover}.warp-o p{position:absolute;bottom:12%;left:6%;right:6%;margin:0;text-align:center;font-weight:700;color:#fff;text-shadow:0 1px 5px #000}.rm-h{position:relative;height:170px;background-size:cover;background-position:center;padding:10px 14px}.back{display:inline-block;padding:3px 12px;border:1px solid var(--gold2);border-radius:16px;background:#090d26bf;font-size:14px;color:var(--gold)}.rm-h h1{position:absolute;left:16px;bottom:4px;margin:0;font-size:29px;font-weight:800;color:var(--gold);text-shadow:0 2px 6px #000,0 0 2px #000}.rm-b{padding:8px 14px 0}.lead{margin:8px 0 12px;font-size:15px}.hint{font-size:13px;color:var(--sub);margin:8px 0}.sel{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:12px}.sel button{padding:8px 0;border:1px solid var(--gold2);border-radius:6px;font-size:14px;background:var(--navy2)}.sel button.on{background:linear-gradient(180deg,#fbe7ae,#d9a94e);color:#2a1705;font-weight:800}.tk{width:100%;display:block;border-radius:8px;box-shadow:0 4px 18px #0009}.rd{border:1px solid var(--gold2);border-radius:8px;margin-bottom:8px;background:var(--navy2)}.rd summary{padding:11px 14px;font-weight:800;color:var(--gold);cursor:pointer}.rd p{margin:0;padding:0 14px 14px;font-size:15.5px}.snd{display:flex;gap:12px;align-items:center;padding:10px;border:1px solid var(--gold2);border-radius:8px;margin-bottom:8px;background:var(--navy2)}.snd button{flex:none;width:46px;height:46px;border-radius:50%;background:linear-gradient(180deg,#fbe7ae,#b98a3c);color:#2a1705;font-size:17px}.snd b{display:block;color:var(--gold);line-height:1.4}.snd small{display:block;font-size:13px;line-height:1.5}.vol{display:flex;align-items:center;gap:10px;font-size:14px;margin:12px 2px}.vol input{flex:1;accent-color:var(--gold)}.dt{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:8px;margin-bottom:14px}.dt select{padding:11px 6px;font:inherit;color:var(--cream);background:var(--navy2);border:1px solid var(--gold2);border-radius:6px}.star{border:1px solid var(--gold2);border-radius:8px;padding:10px 14px;margin-bottom:10px;background:var(--navy2)}.star h2{margin:0 0 4px;font-size:20px;color:var(--gold)}.star p{margin:4px 0;font-size:15.5px}.next{font-weight:700;margin:12px 0}.moon{display:flex;gap:12px;padding:12px;border:1px solid var(--gold2);border-radius:8px;margin-bottom:8px;background:var(--navy2)}.mk{flex:none;width:34px;height:34px;border-radius:50%;margin-top:3px}.mk.f{background:radial-gradient(circle at 40% 35%,#fffbe6,#f2d38a 70%);box-shadow:0 0 10px #f2d38acc}.mk.n{background:#0b1030;border:1px solid var(--gold)}.moon b{display:block;color:var(--gold);font-size:17px;line-height:1.4}.moon small{display:block;font-size:13px}.moon p{margin:4px 0 0;font-size:15px}.hk{text-align:center;padding:10px 6px}.hk img{width:120px}.say{font-size:20px;font-weight:700;line-height:1.8;margin:8px 0}.hk small{color:var(--gold)}
