:root{color-scheme:dark;--ink:#e9dfcb;--gold:#bea270;--dim:#b2b1aa;--panel:#151d21}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#10181e;color:var(--ink);font-family:Songti SC,"Noto Serif CJK SC",SimSun,serif}button,input,select{font:inherit}button{color:inherit;cursor:pointer;touch-action:manipulation}button:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid #e8bf75;outline-offset:5px}[hidden]{display:none!important}#world{position:fixed;inset:0;width:100%;height:100%;touch-action:none;display:block}#welcome{position:fixed;inset:0;background:linear-gradient(180deg,#0911171a,#0810151a 25%,#081015d4 75%,#0b141bec);padding:calc(30px + env(safe-area-inset-top)) 28px calc(24px + env(safe-area-inset-bottom));display:flex;flex-direction:column;justify-content:space-between;transition:opacity .8s}#welcome.leave{opacity:0;pointer-events:none}.intro-top{font-size:11px;letter-spacing:2.7px;display:flex;justify-content:space-between;gap:12px}.intro-top span{font-size:10px;letter-spacing:1px;color:#b9b6ad}.intro-copy{margin-top:auto;padding-top:24vh}.eyebrow{font-family:Georgia,serif;font-size:9px;letter-spacing:2.7px;color:var(--gold)}h1{font-weight:400;font-size:clamp(34px,9.1vw,66px);line-height:1.4;letter-spacing:3px;margin:18px 0}p{font-size:14px;line-height:1.95;color:#bbbdb7;letter-spacing:.6px}.intro-copy p{margin:0 0 26px}#enter{width:100%;height:54px;border:1px solid #c3a66c8a;background:#bb9a6321;letter-spacing:3px;font-size:16px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:background .2s}#enter:hover{background:#bb9a6340}#enter:disabled{opacity:.55;cursor:wait}#progress{height:1px;margin-top:10px;background:#ffffff1c}#progress i{display:block;height:100%;background:var(--gold);width:0;transition:width .25s}#load-label{font-size:10px;color:#b9b6a5;display:block;margin-top:8px;letter-spacing:1px}.intro-bottom{font-size:10px;letter-spacing:1px;color:#b1b6b5;margin-top:28px}.intro-bottom small{display:block;font-size:8px;letter-spacing:1.2px;margin-top:10px;opacity:.6}#hud{position:fixed;inset:0;pointer-events:none;background:linear-gradient(180deg,#08121a66,transparent 16%,transparent 80%,#08121a44)}#hud button,#joystick{pointer-events:auto}header{position:absolute;top:calc(22px + env(safe-area-inset-top));left:22px;right:20px;display:flex;justify-content:space-between;align-items:start}header small{display:block;font:9px Georgia;letter-spacing:3px;color:#c7b894}header span{display:block;font-size:14px;letter-spacing:2px;margin-top:8px;text-shadow:0 2px 8px #000}nav{display:flex;gap:8px}nav button,#sound-btn{min-width:44px;min-height:44px;background:#121b2280;border:1px solid #c4b38955;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}nav button{font:25px Georgia;border-radius:50%}#title-toast{position:absolute;top:25%;width:100%;text-align:center;opacity:0;transition:opacity 1.3s;text-shadow:0 2px 18px #000}#title-toast.show{opacity:1}#title-toast small{display:block;letter-spacing:5px;font:10px Georgia;color:#dbcaa8}#title-toast span{display:block;font-size:27px;letter-spacing:6px;margin-top:14px}#hint{position:absolute;top:calc(104px + env(safe-area-inset-top));width:100%;text-align:center;font-size:11px;color:#e0d6be;opacity:.9;transition:opacity 2s}#reticle{position:absolute;left:50%;top:50%;width:3px;height:3px;border-radius:50%;background:#eee3ca90;box-shadow:0 0 4px #000}#interact{position:absolute;left:50%;bottom:25%;transform:translate(-50%);padding:14px 23px;background:#172027bd;border:1px solid #bca5799c;letter-spacing:2px;white-space:nowrap;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-height:48px}#interact span{margin-left:18px;color:#d6b478}#joystick{position:absolute;width:112px;height:112px;left:27px;bottom:calc(43px + env(safe-area-inset-bottom));border:1px solid #e7d5ae38;border-radius:50%;background:#15202925;touch-action:none}#joystick:before,#joystick:after{content:"";position:absolute;background:#dfc28e45;left:50%;top:12px;width:1px;height:8px}#joystick:after{top:auto;bottom:12px}#stick{position:absolute;left:35px;top:35px;width:40px;height:40px;border-radius:50%;border:1px solid #d9c59c6e;background:#d2bf9226;box-shadow:0 2px 12px #0003;pointer-events:none}#look-label{position:absolute;right:33px;bottom:calc(98px + env(safe-area-inset-bottom));font-size:10px;letter-spacing:2px;color:#e1d4b77a}#sound-btn{position:absolute;right:22px;bottom:calc(23px + env(safe-area-inset-bottom));padding:0 12px;font-size:10px;letter-spacing:1px;border:0;background:transparent}dialog{width:calc(100% - 36px);max-width:430px;border:1px solid #8e7e605c;background:linear-gradient(140deg,#20282b,#111a20);color:var(--ink);padding:40px 26px 28px;box-shadow:0 24px 100px #0009}dialog::backdrop{background:#050c11a8;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}dialog h2{font-weight:400;font-size:24px;margin:15px 0 25px;letter-spacing:2px}.close{position:absolute;right:9px;top:9px;width:44px;height:44px;border:0;background:transparent;font:28px Georgia;color:#c9b896}dialog p{font-size:12px}label{display:flex;align-items:center;justify-content:space-between;margin:25px 0;font-size:14px}select{background:#0e181e;color:#ddccb0;border:1px solid #917e555e;padding:12px;font-size:16px}input{width:42%;accent-color:#c1a371}#reset{width:100%;padding:14px;border:1px solid #b5a07855;background:#c5aa6b10;margin-top:12px;font-size:14px}#stats{font:10px monospace;color:#8b9a9f}#map-area{height:285px;position:relative;margin:15px 25px 25px}.map-room{position:absolute;left:12%;right:12%;height:240px;border:3px double #c4a57088}.map-room>span{position:absolute;top:12px;width:100%;text-align:center;font-size:12px;color:#b7a982}.table{position:absolute;top:48px;width:20%;height:155px;border:1px solid #a28e6255;background:#b7986020}.t1{left:16%}.t2{right:16%}.map-entry{position:absolute;bottom:0;height:47px;left:37%;right:37%;border:1px solid #c4a57088;text-align:center;font-size:10px;padding-top:19px}#map-dot{position:absolute;width:9px;height:9px;background:#e4c277;border-radius:50%;box-shadow:0 0 16px #e4c277;transform:translate(-50%,-50%)}#error{position:absolute;inset:20%;padding:25px;background:#111c25;color:#eee;z-index:10}@media(min-width:760px){#welcome{padding:40px 6vw}.intro-copy{max-width:450px;padding-top:14vh}h1{font-size:58px}.intro-top{max-width:none}.intro-bottom{margin-top:35px}header{left:35px;right:35px}#joystick{left:40px}#hint{font-size:12px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}html,body{overscroll-behavior:none;height:100dvh;-webkit-user-select:none;user-select:none}button{-webkit-tap-highlight-color:transparent}dialog{max-height:calc(100dvh - 32px);overflow-y:auto}#house{padding:30px 20px 22px;text-align:center;max-width:430px}#house h2{font-size:21px;margin:4px 0 8px}#house p{font-size:11px;margin:0 0 16px;letter-spacing:1px}#house-image{display:block;max-width:100%;width:auto;height:min(65dvh,600px);object-fit:contain;margin:auto}#phone-check,#phone-export,#gyro-btn{width:100%;padding:13px;border:1px solid #b5a07855;background:#c5aa6b10;margin:8px 0;font-size:13px;min-height:46px}#gyro-btn.active{border-color:#d4b46f;background:#b6904729;color:#f0d79d}#gyro-status{display:block;margin:-2px 0 10px;color:#aead9f;font:11px/1.55 -apple-system,BlinkMacSystemFont,PingFang SC,sans-serif}#phone-status{position:fixed;bottom:calc(14px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%);max-width:90vw;width:max-content;padding:10px 14px;border:1px solid #ba9e6355;background:#111d25d9;color:#d9c8a5;font-size:11px;pointer-events:none;text-align:center;z-index:9}#settings p{font-size:11px;line-height:1.8}#settings label{margin:18px 0}#castle-map{display:block;height:min(49dvh,400px);width:100%;margin:0 auto}.map-zone{fill:#bc985910;stroke:#c3ac79;stroke-width:.08}.map-table{fill:#b9985936;stroke:#ae945b;stroke-width:.04}#castle-map text{fill:#c9b38d;text-anchor:middle;font-size:1.3px;letter-spacing:.08px}#map-player{fill:#f8d985;stroke:#fff6d6;stroke-width:.08}#map-current{color:#d6bd87;text-align:center;font-size:12px}#world-notice{position:fixed;top:28%;left:50%;transform:translate(-50%);max-width:85vw;width:max-content;padding:15px 20px;background:#16232be0;border:1px solid #bda37070;color:#e0cda6;font-size:14px;pointer-events:none;z-index:10}#map label{font-size:12px;display:block}#map-floor{display:block;width:100%;margin-top:8px;font-size:12px}#castle-map{height:250px}#castle-map text{font-size:1.65px}#hint{line-height:1.8}#route-guide{position:fixed;top:calc(150px + env(safe-area-inset-top));left:20px;right:20px;max-width:350px;display:flex;align-items:center;gap:12px;padding:9px 12px;background:#15212be6;border:1px solid #ae996660;z-index:6;pointer-events:none;border-radius:8px;font:12px/1.6 system-ui;color:#e1d2b1}#route-arrow{display:block;font-size:29px;line-height:1;width:30px;text-align:center;color:#e8c781}#route-copy{white-space:pre-line;flex:1}#route-guide button{pointer-events:auto;background:transparent;border:0;font-size:22px;padding:5px 8px}#route-choices p{font-size:12px;line-height:1.6}#route-choices>div{display:grid;grid-template-columns:1fr 1fr;gap:7px}#route-choices button{min-height:42px;border:1px solid #b6a07250;background:#c5aa6b12;font-size:12px;padding:8px;border-radius:4px}#route-choices button:hover{background:#c5aa6b25}#visit-mode{border:0;padding:0;margin:0 0 18px;display:grid;gap:8px}#visit-mode legend{font-size:11px;color:var(--dim);margin-bottom:9px}#visit-mode label{display:flex;justify-content:flex-start;gap:8px;margin:0;padding:10px 12px;border:1px solid #bea27044;font-size:13px;cursor:pointer}#visit-mode input{width:16px;height:16px;margin:0;accent-color:#cfb57f}#visit-mode small{font-size:10px;color:#b1b2a7;margin-left:auto}#visit-mode label:has(input:checked){background:#ad90591e;border-color:#c1a57188}.intro-copy{padding-top:8vh}#chapter-strip{position:absolute;top:calc(96px + env(safe-area-inset-top));left:20px;right:20px;max-width:350px;display:flex;gap:8px;align-items:center;pointer-events:none}#chapter-strip button{pointer-events:auto;background:#14212cda;border:1px solid #b8a37465;min-height:38px;padding:7px 12px;font:11px system-ui;color:#dbcdac;border-radius:5px}#chapter-open{display:flex;gap:14px;align-items:center;flex:1}#chapter-open span{font-family:serif;letter-spacing:2px}#chapter-open b{font-weight:400;flex:1;text-align:right}#chapter-next{white-space:nowrap}#chapter-book{max-height:86dvh;overflow:auto}#chapter-book h2{margin-bottom:8px}#chapter-stops{padding:0;margin:15px 0;list-style:none}#chapter-stops li{display:flex;gap:13px;padding:11px 0;border-top:1px solid #bea27026}#chapter-stops li>span{font:15px Georgia;color:#aaa184;width:20px;flex:none}#chapter-stops strong{font-weight:400;font-size:14px}#chapter-stops small{display:block;font-size:11px;line-height:1.7;color:#aeb4b0;margin-top:5px}#chapter-stops .visited>span{color:#d7bb7f}#chapter-stops .current strong{color:#f0d8a3}.chapter-footnote{font-size:10px}#chapter-resume,#chapter-free,#chapter-map{width:100%;min-height:44px;padding:10px;background:#bca56e18;border:1px solid #bfa26c60;margin:6px 0;font-size:13px}#chapter-free{background:transparent;color:#c2c4bb}#world-notice{white-space:pre-line;line-height:1.7;font-size:12px;top:auto;bottom:calc(185px + env(safe-area-inset-bottom));max-width:350px;width:calc(100% - 40px)}#hint{top:calc(214px + env(safe-area-inset-top));pointer-events:none}#interact{max-width:calc(100vw - 36px);font-size:12px;letter-spacing:1px;white-space:normal;text-align:center}#chapter-book button,#chapter-map{touch-action:manipulation}@media(max-height:710px){.intro-copy{padding-top:0}.intro-copy h1{font-size:36px;margin:12px 0}.intro-copy p{font-size:12px;margin-bottom:14px}#visit-mode{margin-bottom:12px;gap:6px}.intro-bottom{margin-top:14px}#welcome{padding-top:20px;padding-bottom:18px}}@media(max-height:500px)and (orientation:landscape){#welcome{overflow:auto}.intro-copy{max-width:540px}.intro-copy h1{font-size:30px}#visit-mode{grid-template-columns:1fr 1fr}#visit-mode small{display:none}#chapter-strip{top:78px}#route-guide{top:126px}#hint{display:none}#interact{bottom:15%;left:65%}#world-notice{bottom:22px;left:65%}}#hud,dialog,#phone-status,#world-notice{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Noto Sans CJK SC,Microsoft YaHei,sans-serif}#hud{background:linear-gradient(180deg,rgba(5,10,14,.62),transparent 19%,transparent 77%,rgba(5,10,14,.48))}header{top:calc(12px + env(safe-area-inset-top));left:16px;right:14px;align-items:center}header>div{min-width:0;padding-left:10px;border-left:2px solid #d2b36d}header small{font:600 8px/1 -apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;letter-spacing:2.2px;color:#d2b36d}header span{font:500 13px/1.3 -apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;letter-spacing:.4px;margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 5px #000}nav{gap:7px}nav button{width:44px;min-width:44px;height:44px;min-height:44px;border-radius:10px;border:1px solid rgba(230,220,199,.22);background:#091015b8;font:20px/1 Georgia;box-shadow:inset 0 1px #ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}nav button:active,#chapter-strip button:active,#interact:active{transform:translateY(1px)}#chapter-strip{top:calc(67px + env(safe-area-inset-top));left:16px;right:16px;max-width:361px;gap:6px}#chapter-strip button{min-height:44px;padding:6px 10px;border-radius:3px;border:1px solid rgba(219,198,154,.24);background:#091117c7;font:500 10px/1.4 -apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;color:#ebe3d3;box-shadow:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}#chapter-open{gap:9px}#chapter-open span{font-family:inherit;letter-spacing:.8px;color:#d9bd7c}#chapter-open b{font-weight:500;color:#f0eee9;font-variant-numeric:tabular-nums}#route-guide{top:calc(117px + env(safe-area-inset-top));left:16px;right:16px;max-width:361px;min-height:51px;gap:9px;padding:3px 5px 3px 10px;border-radius:3px;border:1px solid rgba(219,198,154,.24);border-left:2px solid #d2b36d;background:#091117db;font:500 11px/1.45 -apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;color:#f0eee9;box-shadow:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}#route-arrow{width:25px;font-size:24px;color:#d9bd7c}#route-guide button{font:20px/1 sans-serif;color:#aaa79f;width:44px;height:44px;padding:4px 5px}#hint{top:auto;bottom:calc(142px + env(safe-area-inset-bottom));font:500 9px/1.6 -apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;letter-spacing:.5px;color:#f2eee5a8;text-shadow:0 1px 5px #000}#interact{bottom:calc(139px + env(safe-area-inset-bottom));min-height:46px;padding:12px 17px;border-radius:3px;border:1px solid rgba(221,194,132,.48);border-left:3px solid #d2b36d;background:#080f14e0;font:600 12px/1.45 -apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;letter-spacing:.3px;color:#f4efe4;box-shadow:0 8px 24px #00000038;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}#interact span{margin-left:12px;color:#d9bd7c}#joystick{width:98px;height:98px;left:18px;bottom:calc(22px + env(safe-area-inset-bottom));border-color:#ede5d338;background:#0910152e}#stick{left:31px;top:31px;width:34px;height:34px;border-color:#dec6946b;background:#c7a8672e;box-shadow:none}#look-label{right:20px;bottom:calc(78px + env(safe-area-inset-bottom));font:500 9px/1 sans-serif;letter-spacing:1px;color:#eeeae17a}#sound-btn{right:12px;bottom:calc(19px + env(safe-area-inset-bottom));font:500 10px/1 sans-serif;letter-spacing:.5px;color:#f2eee5b8}#title-toast{top:23%;text-shadow:0 2px 14px #000}#title-toast small{font:600 8px/1 sans-serif;letter-spacing:3px;color:#d9bd7c}#title-toast span{font:500 22px/1.35 -apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;letter-spacing:2px;margin-top:10px}dialog{border-radius:4px;border:1px solid rgba(219,198,154,.25);background:#10181d;color:#eee9df;padding:36px 22px 24px;box-shadow:0 24px 90px #000000b3}dialog h2{font:500 22px/1.35 -apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;letter-spacing:.4px;margin:12px 0 18px}dialog p{font-size:12px;line-height:1.75;letter-spacing:.2px;color:#bfc1bd}.close{font:300 25px/1 sans-serif;color:#c9c4b9}.eyebrow{font:600 8px/1.2 -apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;letter-spacing:2.2px;color:#d2b36d}#route-choices>div{gap:6px}#route-choices button,#chapter-resume,#chapter-free,#chapter-map,#reset,#phone-check,#phone-export,#gyro-btn{border-radius:3px;border-color:#dbc69a40;background:#d2b36d12;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;letter-spacing:.2px}@media(max-height:710px){#chapter-strip{top:calc(62px + env(safe-area-inset-top))}#route-guide{top:calc(112px + env(safe-area-inset-top))}#interact{bottom:calc(126px + env(safe-area-inset-bottom))}}#welcome{z-index:8;justify-content:center;align-items:center;padding:calc(24px + env(safe-area-inset-top)) 20px calc(24px + env(safe-area-inset-bottom));background:linear-gradient(180deg,#060c1047,#060c1094),radial-gradient(circle at 50% 45%,transparent 0,rgba(5,10,14,.38) 72%)}#welcome .intro-copy{width:min(100%,440px);margin:0;padding:28px 20px 20px;border:1px solid rgba(211,183,121,.44);border-top:3px solid #c9a967;background:#080f14d1;box-shadow:0 20px 70px #0000006b;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}#welcome h1{margin:0 0 28px;text-align:center;font:500 clamp(30px,9vw,46px)/1.2 "Songti SC","Noto Serif CJK SC",serif;letter-spacing:3px;color:#f1e8d7}#welcome #visit-mode{gap:10px;margin:0 0 16px}#welcome #visit-mode legend{width:100%;margin:0 0 8px;text-align:center;font:600 11px/1.4 -apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;letter-spacing:1.6px;color:#c9b993}#welcome #visit-mode label{min-height:64px;align-items:center;gap:12px;margin:0;padding:10px 14px;border:1px solid rgba(222,205,169,.24);background:#ffffff06;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif}#welcome #visit-mode label:has(input:checked){border-color:#d0ad64;background:#be974b24;box-shadow:inset 3px 0 #d0ad64}#welcome #visit-mode input{width:20px;height:20px;flex:none}#welcome #visit-mode label>span{display:flex;min-width:0;flex:1;align-items:center;justify-content:space-between;gap:12px}#welcome #visit-mode b{font-size:16px;font-weight:600;letter-spacing:.5px;color:#f2ede3}#welcome #visit-mode small{font-size:11px;line-height:1.35;text-align:right;color:#aaa9a3}#welcome #enter{height:56px;border-color:#caa964;background:#aa843829;font:600 15px/1 -apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;letter-spacing:1.5px}#welcome #progress{margin-top:12px}#welcome #load-label{text-align:center;margin-top:7px}header nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:3px 2px;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif}header nav button b{display:block;font:400 17px/1 Georgia,serif;color:#e4d7bd}header nav button span{display:block;margin:0;overflow:visible;font:600 8px/1 -apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;letter-spacing:.2px;color:#c4c2bb;text-shadow:none}#sound-btn{display:none}@media(max-width:759px)and (orientation:portrait){#hud{background:linear-gradient(180deg,rgba(4,9,13,.48),transparent 13%,transparent 88%,rgba(4,9,13,.28))}header{top:calc(8px + env(safe-area-inset-top));left:12px;right:10px;align-items:start}header>div{max-width:128px;padding-left:7px;margin-top:4px}header small{font-size:7px;letter-spacing:1.6px}header span{max-width:120px;font-size:11px;margin-top:4px}nav{gap:5px}nav button{width:46px;min-width:46px;height:44px;min-height:44px;border-radius:7px;background:#070e13a8}#chapter-strip{top:auto;bottom:calc(17px + env(safe-area-inset-bottom));left:auto;right:12px;width:205px;max-width:calc(100% - 126px)}#chapter-strip button{min-height:38px;height:38px;padding:4px 8px;background:#070e13ad}#chapter-open span{font-size:9px}#chapter-open b{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#route-guide{top:calc(60px + env(safe-area-inset-top));left:12px;right:auto;width:calc(100% - 24px);max-width:235px;min-height:44px;padding:2px 3px 2px 8px;background:#070e13b8;font-size:10px}#route-copy{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#route-arrow{width:20px;font-size:20px}#route-guide button{width:38px;height:38px;min-width:38px;min-height:38px}#hint,#look-label{display:none}#title-toast{top:20%}#title-toast span{font-size:20px}#joystick{width:88px;height:88px;left:14px;bottom:calc(16px + env(safe-area-inset-bottom))}#stick{left:28px;top:28px;width:30px;height:30px}#interact{bottom:calc(116px + env(safe-area-inset-bottom));max-width:76vw}#world-notice{bottom:calc(112px + env(safe-area-inset-bottom));max-width:76vw}}@media(min-width:760px){#welcome .intro-copy{padding:34px 34px 28px}header nav button{width:50px;min-width:50px;height:48px}}#welcome{overflow:hidden;align-items:flex-start;justify-content:center;padding:clamp(28px,5vw,72px);background:linear-gradient(90deg,#050a0ee8 0,#050a0eb8 29%,#050a0e29 65%,#050a0e42),linear-gradient(0deg,rgba(4,8,12,.7),transparent 45%)}#welcome:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 75% 34%,rgba(212,166,80,.12),transparent 23%),linear-gradient(110deg,transparent 35%,rgba(255,233,184,.055) 35.2%,transparent 35.8%)}#welcome .welcome-arch{position:absolute;left:clamp(22px,4.5vw,70px);top:clamp(20px,4vw,58px);bottom:clamp(20px,4vw,58px);width:min(52vw,760px);border:1px solid rgba(214,182,116,.3);border-right:0;pointer-events:none}#welcome .welcome-arch:before{content:"";position:absolute;left:-1px;top:-1px;width:74%;height:34%;border:1px solid rgba(224,195,132,.55);border-bottom:0;border-radius:260px 260px 0 0}#welcome .welcome-arch:after{content:"";position:absolute;left:17px;top:17px;bottom:17px;width:1px;background:linear-gradient(transparent,#d4af68 18%,#d4af68 82%,transparent)}#welcome .welcome-arch i{position:absolute;width:7px;height:7px;transform:rotate(45deg);border:1px solid #cda95f;background:#10171a}.welcome-arch i:nth-child(1){left:14px;top:12%}.welcome-arch i:nth-child(2){left:14px;top:50%}.welcome-arch i:nth-child(3){left:14px;bottom:12%}#welcome .intro-copy{position:relative;width:min(52vw,720px);margin:0 0 0 clamp(22px,4vw,62px);padding:0;border:0;border-top:0;background:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}#welcome .crest{width:54px;height:62px;margin-bottom:25px;display:grid;place-items:center;border:1px solid rgba(217,184,112,.7);clip-path:polygon(50% 0,100% 18%,92% 76%,50% 100%,8% 76%,0 18%);background:linear-gradient(145deg,#be913f45,#0c121559);color:#ead8af}#welcome .crest span{font:500 27px/1 Georgia,serif;text-shadow:0 2px 12px #000}#welcome h1{margin:0;max-width:720px;text-align:left;font:400 clamp(46px,4.5vw,70px)/1.08 "Songti SC","Noto Serif CJK SC",serif;letter-spacing:clamp(3px,.45vw,7px);white-space:nowrap;color:#f1e8d7;text-shadow:0 8px 28px rgba(0,0,0,.45)}#welcome .title-rule{display:flex;align-items:center;width:min(100%,470px);height:24px;margin:20px 0 18px}#welcome .title-rule:before,#welcome .title-rule:after{content:"";height:1px;background:linear-gradient(90deg,#d0ac63,#d0ac6314);flex:1}#welcome .title-rule:after{transform:scaleX(-1)}#welcome .title-rule i{width:8px;height:8px;margin:0 10px;border:1px solid #d0ac63;transform:rotate(45deg)}#welcome #visit-mode{width:min(100%,500px);grid-template-columns:1fr 1fr;gap:9px;margin:0 0 12px}#welcome #visit-mode legend{grid-column:1/-1;width:auto;margin:0 0 2px;text-align:left;font:600 9px/1.3 -apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;letter-spacing:2.4px;color:#cbb888}#welcome #visit-mode label{position:relative;min-height:108px;align-items:flex-end;gap:0;margin:0;padding:14px;border:1px solid rgba(224,205,164,.25);background:linear-gradient(145deg,#151d1fb3,#080e128a);overflow:hidden;transition:border-color .25s,transform .25s,background .25s}#welcome #visit-mode label:hover{transform:translateY(-2px);border-color:#dab568b3}#welcome #visit-mode label:has(input:checked){border-color:#d3ad61;background:linear-gradient(145deg,#7a5b2678,#101617a8);box-shadow:inset 0 0 0 1px #e6c68229}#welcome #visit-mode label:has(input:checked):before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#d8b56b,transparent)}#welcome #visit-mode input{position:absolute;opacity:0;pointer-events:none}#welcome #visit-mode em{position:absolute;top:12px;left:14px;font:italic 10px/1 Georgia,serif;letter-spacing:1px;color:#b69a66}#welcome #visit-mode label>span{display:block;min-width:0}#welcome #visit-mode b{display:block;font:600 17px/1.2 -apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;letter-spacing:.6px;color:#f0eadf}#welcome #visit-mode small{display:block;margin:7px 0 0;text-align:left;font:400 10px/1.4 -apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;color:#aaa9a3}#welcome #visit-mode label>i{position:absolute;right:13px;top:11px;font:400 14px/1 Georgia,serif;color:#d8b56b;opacity:0;transform:translate(-5px);transition:.25s}#welcome #visit-mode label:has(input:checked)>i{opacity:1;transform:none}#welcome #enter{position:relative;width:min(100%,500px);height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border:1px solid #d5b36d;background:linear-gradient(90deg,#ae823461,#5b441f33);font:600 14px/1 -apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;letter-spacing:2px;overflow:hidden}#welcome #enter:before{content:"";position:absolute;inset:0;transform:translate(-102%);background:linear-gradient(90deg,transparent,rgba(255,223,155,.17),transparent);transition:transform .55s}#welcome #enter:hover:before{transform:translate(102%)}#welcome #enter i{font:400 21px/1 Georgia,serif;color:#e6ca91}#welcome #enter span{position:relative}#welcome #progress{width:min(100%,500px);margin-top:9px;background:#ffffff17}#welcome #load-label{width:min(100%,500px);text-align:right;color:#dad3c28f}@media(max-width:759px){#welcome{justify-content:flex-end;padding:calc(24px + env(safe-area-inset-top)) 20px calc(30px + env(safe-area-inset-bottom));background:linear-gradient(0deg,#04090df7 0,#04090dcc 43%,#04090d1f 78%),linear-gradient(90deg,#04090d33,#04090d0a)}#welcome .welcome-arch{left:20px;right:20px;top:calc(24px + env(safe-area-inset-top));bottom:auto;width:auto;height:35vh;border-right:1px solid rgba(214,182,116,.3);border-bottom:0}#welcome .welcome-arch:before{left:12%;width:76%;height:82%;border-bottom:0}.welcome-arch i:nth-child(2){display:none}#welcome .intro-copy{width:100%;margin:0;padding:0}#welcome .crest{width:42px;height:48px;margin-bottom:14px}.welcome-arch+.intro-copy .crest span{font-size:21px}#welcome h1{font-size:clamp(38px,11vw,48px);letter-spacing:4px;white-space:nowrap}#welcome .title-rule{height:19px;margin:13px 0 10px}#welcome #visit-mode{width:100%;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:9px}#welcome #visit-mode label{min-height:92px;padding:12px}#welcome #visit-mode em{top:10px;left:12px}#welcome #visit-mode b{font-size:16px}#welcome #visit-mode small{font-size:9px}#welcome #enter,#welcome #progress,#welcome #load-label{width:100%}#welcome #enter{height:54px}}@media(max-width:370px){#welcome{padding-left:14px;padding-right:14px}#welcome h1{font-size:35px}#welcome #visit-mode label{min-height:88px;padding:10px}#welcome #visit-mode small{max-width:120px}}#welcome{display:flex;align-items:center;justify-content:flex-start;overflow:hidden;padding:calc(25px + env(safe-area-inset-top)) 5vw calc(24px + env(safe-area-inset-bottom));background:radial-gradient(circle at 48% 22%,rgba(209,158,60,.17),transparent 27%),linear-gradient(90deg,#03070ac2,#03070a2e 55%,#03070a4d),linear-gradient(0deg,rgba(3,7,10,.88),transparent 58%)}#welcome:before{background:radial-gradient(circle at 32% 37%,rgba(255,218,142,.12),transparent 23%);filter:none}#welcome .welcome-arch{display:none}#welcome .welcome-arch:before{left:8%;top:8%;width:84%;height:84%;border:1px solid rgba(232,192,111,.18);border-radius:50%}#welcome .welcome-arch:after{left:50%;top:-4%;bottom:auto;width:1px;height:108%;background:linear-gradient(transparent,#e7bd69 48%,transparent)}#welcome .welcome-arch i{width:6px;height:6px;border:0;border-radius:50%;background:#ffe0a0;box-shadow:0 0 8px 2px #eab958}.welcome-arch i:nth-child(1){left:12%;top:22%}.welcome-arch i:nth-child(2){left:auto;right:2%;top:56%}.welcome-arch i:nth-child(3){left:35%;bottom:1%}#welcome .intro-copy{position:absolute;inset:0;width:auto;max-width:none;margin:0;padding:0;border:0;background:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}#welcome .crest{display:none}#welcome h1{position:absolute;left:0;right:0;top:5%;max-width:none;margin:0;text-align:center;font:500 clamp(58px,5vw,76px)/.98 "Songti SC","Noto Serif CJK SC",serif;letter-spacing:clamp(5px,.6vw,9px);white-space:nowrap;color:#e6c77e;background:linear-gradient(180deg,#fff4d5 5%,#e7c878 42%,#9b6d25,#f0d791);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px 0 #5d3d14) drop-shadow(0 8px 15px rgba(0,0,0,.5))}#welcome h1 span{display:inline}#welcome h1 span+span{margin-left:.14em}#welcome .title-rule{display:none}#welcome .title-rule:before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:linear-gradient(90deg,transparent,#e1b75e 12%,#e1b75e 82%,transparent)}#welcome .title-rule:after{content:"";position:absolute;right:5%;top:-48px;width:160px;height:90px;border-top:1px solid rgba(238,193,99,.62);border-radius:50%;transform:rotate(-12deg)}#welcome .title-rule i{position:absolute;left:50%;top:50%;width:9px;height:9px;margin:-5px 0 0 -5px;border:1px solid #e4bc69;background:#6d4c1d;transform:rotate(45deg);box-shadow:0 0 14px #e9bd61}#welcome #visit-mode{position:absolute;left:50%;bottom:210px;width:570px;display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:0;padding:0;border:0;transform:translate(-50%)}#welcome #visit-mode legend{position:absolute;clip:rect(0 0 0 0);width:1px;height:1px;overflow:hidden}#welcome #visit-mode label{position:relative;min-height:174px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;margin:0;padding:18px 10px 12px;border:0;background:none;box-shadow:none;overflow:visible;transform:none}#welcome #visit-mode label:hover{transform:translateY(-3px);background:none;border:0}#welcome #visit-mode label:before{content:"";position:absolute;left:50%;top:0;width:116px;height:116px;transform:translate(-50%);border:1px solid rgba(231,194,116,.52);border-radius:50%;background:radial-gradient(circle,#a5752838,#080d1066 68%);box-shadow:inset 0 0 0 6px #e2be7109,0 0 28px #00000047;transition:.3s}#welcome #visit-mode label:after{content:"";position:absolute;left:50%;top:7px;width:100px;height:100px;transform:translate(-50%) rotate(45deg);border:1px solid rgba(230,191,111,.16);border-radius:50%}#welcome #visit-mode label:has(input:checked){background:none;border:0;box-shadow:none}#welcome #visit-mode label:has(input:checked):before{top:0;left:50%;right:auto;height:116px;background:radial-gradient(circle,#e1b14f4d,#3223107a 70%);border-color:#edc76f;box-shadow:inset 0 0 0 6px #e2be7112,0 0 28px #e0ae482e}#welcome #visit-mode input{position:absolute;opacity:0}#welcome #visit-mode em{position:absolute;z-index:1;left:50%;top:25px;width:66px;height:66px;transform:translate(-50%);color:#dbb867}#welcome #visit-mode em svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 2px 8px rgba(223,177,76,.35))}#welcome #visit-mode label>span{display:block;z-index:1;text-align:center}#welcome #visit-mode b{display:block;font:500 20px/1.2 Songti SC,"Noto Serif CJK SC",serif;letter-spacing:3px;color:#ecd494;text-shadow:0 2px 8px #000}#welcome #visit-mode small{display:block;margin:7px 0 0;text-align:center;font:400 9px/1.3 -apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;letter-spacing:.5px;color:#e4dac48f}#welcome #visit-mode label>i{display:none}#welcome #enter{position:absolute;left:50%;bottom:132px;width:570px;height:68px;transform:translate(-50%);display:flex;align-items:center;justify-content:center;gap:30px;padding:0 25px;border:1px solid #d8ae57;background:linear-gradient(180deg,#a4702394,#4f310fbf);clip-path:polygon(16px 0,calc(100% - 16px) 0,100% 50%,calc(100% - 16px) 100%,16px 100%,0 50%);font:500 20px/1 Songti SC,"Noto Serif CJK SC",serif;letter-spacing:8px;color:#f6e2ad;box-shadow:inset 0 0 24px #f4c6671f;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}#welcome #enter:after{content:"";position:absolute;inset:6px;border:1px solid rgba(255,226,164,.24);clip-path:inherit}#welcome #enter i{font:400 15px/1 Georgia;color:#f5d68f;animation:star-pulse 2s ease-in-out infinite}#welcome #progress{position:absolute;left:50%;bottom:120px;width:570px;margin:0;transform:translate(-50%);background:#ffde9b14}#welcome #load-label{position:absolute;left:50%;bottom:100px;width:570px;margin:0;transform:translate(-50%);text-align:center;color:#e3d6b87a}@keyframes orbit-drift{to{transform:rotate(-8deg) scale(1.03)}}@keyframes star-pulse{50%{transform:scale(1.35);text-shadow:0 0 14px #ffd882}}@media(max-width:759px){#welcome{display:block;padding:0;background:radial-gradient(circle at 50% 14%,rgba(209,158,60,.15),transparent 25%),linear-gradient(180deg,#03070a29,#03070a0f 36%,#03070a7a 62%,#03070a)}#welcome:before{background:radial-gradient(circle at 50% 18%,rgba(255,218,142,.1),transparent 22%)}#welcome .welcome-arch{display:block;left:20%;top:4%;width:72vw;height:72vw}#welcome .intro-copy{position:absolute;inset:0;width:auto;margin:0;padding:0}#welcome h1{position:absolute;left:0;right:0;top:calc(34px + env(safe-area-inset-top));text-align:center;font-size:clamp(48px,15vw,64px);line-height:1.03;letter-spacing:6px;white-space:normal}#welcome h1 span{display:block}#welcome h1 span+span{margin:4px 0 0}#welcome .title-rule{display:none}#welcome #visit-mode{position:absolute;left:18px;right:18px;bottom:calc(112px + env(safe-area-inset-bottom));width:auto;gap:8px;margin:0;transform:none}#welcome #visit-mode label{min-height:150px;padding:14px 3px 8px}#welcome #visit-mode label:before,#welcome #visit-mode label:has(input:checked):before{width:100px;height:100px}#welcome #visit-mode label:after{width:86px;height:86px}#welcome #visit-mode em{top:21px;width:58px;height:58px}#welcome #visit-mode b{font-size:18px;letter-spacing:2px}#welcome #visit-mode small{font-size:8px}#welcome #enter{position:absolute;left:18px;right:18px;bottom:calc(42px + env(safe-area-inset-bottom));width:auto;height:62px;transform:none;font-size:18px;letter-spacing:6px}#welcome #progress{position:absolute;left:18px;right:18px;bottom:calc(31px + env(safe-area-inset-bottom));width:auto;margin:0;transform:none}#welcome #load-label{position:absolute;left:auto;right:18px;bottom:calc(15px + env(safe-area-inset-bottom));width:auto;margin:0;transform:none;text-align:right}}@media(max-height:750px)and (orientation:portrait){#welcome h1{font-size:49px}#welcome .title-rule{height:20px;margin-top:5px}#welcome #visit-mode label{min-height:136px}#welcome #visit-mode label:before,#welcome #visit-mode label:has(input:checked):before{width:88px;height:88px}#welcome #visit-mode label:after{width:76px;height:76px}#welcome #visit-mode em{top:18px;width:50px;height:50px}#welcome #enter{height:56px}}@media(prefers-reduced-motion:reduce){#welcome .welcome-arch,#welcome #enter i{animation:none}}#welcome{display:block;padding:0;background-color:#080806;background-image:url(/assets/home-a-landscape-v43.webp);background-repeat:no-repeat;background-position:center;background-size:100% 100%}#welcome:before,#welcome .welcome-arch,#welcome .crest,#welcome .title-rule{display:none}#welcome .intro-copy{position:absolute;inset:0;width:auto;max-width:none;margin:0;padding:0}#welcome h1{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}#welcome #visit-mode{position:absolute;left:31%;right:29%;bottom:18%;width:auto;height:30%;display:grid;grid-template-columns:1fr 1fr;gap:8%;margin:0;padding:0;border:0;transform:none}#welcome #visit-mode legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}#welcome #visit-mode label{position:relative;width:100%;height:100%;min-height:44px;margin:0;padding:0;border:0;border-radius:50%;background:transparent;box-shadow:none;overflow:visible;transform:none}#welcome #visit-mode label:hover{transform:none;border:0;background:transparent}#welcome #visit-mode label:before{display:none}#welcome #visit-mode label:after{content:"✓";position:absolute;z-index:2;top:8%;right:13%;display:grid;width:22px;height:22px;place-items:center;border:1px solid rgba(241,205,128,.78);border-radius:50%;background:#1c1409db;color:#f4d68f;font:600 13px/1 Georgia,serif;box-shadow:0 0 14px #e8b54b59;opacity:0;transform:scale(.72);transition:opacity .16s,transform .16s}#welcome #visit-mode label:has(input:checked){border:0;background:transparent;box-shadow:none}#welcome #visit-mode label:has(input:checked):before{display:none}#welcome #visit-mode label:has(input:checked):after{opacity:1;transform:scale(1)}#welcome #visit-mode input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}#welcome #visit-mode em,#welcome #visit-mode label>span,#welcome #visit-mode label>i{display:none}#welcome #enter{position:absolute;left:33%;right:32%;bottom:4.8%;width:auto;height:13%;min-height:48px;transform:none;padding:0;border:0;background:transparent;clip-path:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;color:transparent}#welcome #enter:before{content:"";position:absolute;inset:5%;transform:none;background:transparent;border:2px solid transparent;clip-path:polygon(5% 0,95% 0,100% 50%,95% 100%,5% 100%,0 50%);transition:background .16s,border-color .16s,filter .16s}#welcome #enter:after{display:none}#welcome #enter span,#welcome #enter i{opacity:0}#welcome #enter:hover:before,#welcome #enter:focus-visible:before{background:#ffda8614;border-color:#ffe29fb8;filter:drop-shadow(0 0 14px rgba(245,190,80,.48))}#welcome #enter:active:before{background:#ffe09d29;filter:drop-shadow(0 0 20px rgba(255,203,96,.72))}#welcome #enter:disabled{cursor:wait}#welcome #enter:disabled:before{background:#04070847}#welcome #progress{position:absolute;left:34%;right:33%;bottom:4.2%;width:auto;height:2px;margin:0;transform:none;background:#ffe4ac1f}#welcome #progress i{background:#f2c66e;box-shadow:0 0 8px #e7af49}#welcome #load-label{display:none}@media(orientation:portrait){#welcome{background-image:url(/assets/home-a-portrait-v43.webp)}#welcome #visit-mode{left:16%;right:16%;bottom:18%;height:21%;gap:12%}#welcome #visit-mode label:before,#welcome #visit-mode label:has(input:checked):before{display:none}#welcome #enter{left:18%;right:18%;bottom:5.5%;height:10%}#welcome #progress{left:21%;right:21%;bottom:5%}}@media(max-height:500px)and (orientation:landscape){#welcome #visit-mode{bottom:18%;height:30%}#welcome #enter{bottom:4%;height:13%}#welcome #progress{bottom:3.5%}}
