.pov{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:radial-gradient(120% 85% at 50% 18%,#2a1c12 0%,#150e09 42%,#08060a 100%);position:fixed;inset:0;overflow:hidden}.pov:active{cursor:grabbing}.pov-vignette{pointer-events:none;mix-blend-mode:multiply;background:radial-gradient(75% 60% at 50% 45%,#0000 35%,#000000b8 100%);position:absolute;inset:0}.pov-vignette:after{content:"";opacity:.07;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/></filter><rect width='160' height='160' filter='url(%23n)' opacity='0.6'/></svg>");position:absolute;inset:0}.pov-shadow{pointer-events:none;opacity:.55;z-index:5;will-change:transform;width:260px;height:340px;margin-top:-150px;margin-left:-130px;transition:opacity .16s;position:absolute;top:50%;left:50%}.pov-fan{z-index:10;position:absolute;top:50%;left:50%}.pov-card{transform-style:preserve-3d;will-change:transform;backface-visibility:hidden;animation:.5s cubic-bezier(.2,.9,.25,1) both cardIn;position:absolute;top:0;left:0;transform:translateZ(0)}@keyframes cardIn{0%{opacity:0}to{opacity:1}}.pov-face{backface-visibility:hidden;border-radius:7px;position:absolute;inset:0;overflow:hidden}.pov-front{transform:rotateY(180deg)}.pov-front img{object-fit:cover;width:100%;height:100%;display:block}.pov-back{background:radial-gradient(60% 55% at 50% 42%,#ffbe6e1a,#0000 70%),linear-gradient(160deg,#221a2c 0%,#140f19 55%,#0c0910 100%);border:1px solid #c69e5c8c;box-shadow:inset 0 0 0 3px #0009,0 8px 16px #0000008c}.pov-back:after{content:"";border:1px solid #c69e5c59;border-radius:4px;position:absolute;inset:14% 16%}.pov-back:before{content:"◉";color:#d6ae68d9;text-shadow:0 0 12px #ffbe6e8c;place-items:center;font-size:30px;display:grid;position:absolute;inset:0}.pov-card{transition:transform .32s cubic-bezier(.3,.8,.3,1)}.pov-slot{pointer-events:none;z-index:2;border:1px dashed #c69e5c38;border-radius:7px;width:118px;height:198px;position:absolute;box-shadow:inset 0 0 26px #00000080}.pov-hint{text-align:center;color:#e6d6bcb8;letter-spacing:.12em;pointer-events:none;font-family:Cinzel,Songti TC,serif;font-size:14px;position:absolute;bottom:34px;left:50%;transform:translate(-50%)}.pov-sub{opacity:.55;letter-spacing:.18em;margin-top:6px;font-size:11px}.pov-mute{color:#e8d9bf;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:50%;width:40px;height:40px;font-size:16px;position:absolute;top:18px;right:18px}.pov-hud{color:#9fe3a0;background:#00000073;border-radius:4px;padding:4px 8px;font-family:ui-monospace,monospace;font-size:12px;position:absolute;top:18px;left:18px}.pov-flip{transform-style:preserve-3d;transition:transform .34s cubic-bezier(.32,.82,.3,1);position:absolute;inset:0}.pov-flip.face-up{transform:rotateY(180deg)}.pov-card.face-up{transform:none}.pov-back{background:radial-gradient(58% 46% at 50% 44%,#ffc47824,#0000 72%),repeating-linear-gradient(45deg,#ffffff03 0 2px,#0000 2px 6px),linear-gradient(158deg,#241c30 0%,#171122 52%,#0d0a14 100%);border:1px solid #cea8669e;overflow:hidden}.pov-back:before{content:"";border:1px solid #cea86657;border-radius:3px;position:absolute;inset:9px}.pov-back:after{content:"✦";color:#e0ba74e6;text-shadow:0 0 14px #ffbe6e99,0 0 34px #ff964647;place-items:center;font-size:26px;display:grid;position:absolute;inset:0}.pov:before{content:"";pointer-events:none;background:radial-gradient(closest-side,#ffba7033,#ff965012 55%,#0000 80%);width:1100px;height:520px;margin-top:-180px;margin-left:-550px;position:absolute;top:62%;left:50%}.pov-card.dragging{filter:drop-shadow(0 26px 30px #000c)}.pov-card.dragging .pov-flip{transform:scale(1.04)}.pov-back{box-shadow:inset 0 1px #ffe2b238,inset 0 0 0 3px #0000008c,0 8px 16px #0000008c;border-color:#d8b474e0!important}.pov-back:before{border-color:#d8b4746b}.pov-shadow{mix-blend-mode:multiply;box-shadow:0 0 60px 10px #ffaa5a0d}.pov-table{pointer-events:none;z-index:1;background:radial-gradient(60% 52% at 50% 42%,#3a2618b8,#1a120c8c 58%,#08060500 82%),radial-gradient(90% 90%,#ffb4640d,#0000 70%);border-radius:46% 46% 40% 40%/28% 28% 42% 42%;width:1500px;height:780px;margin-top:-300px;margin-left:-750px;position:absolute;top:56%;left:50%;box-shadow:inset 0 0 140px #000000e6}.pov-table:after{content:"";border-radius:inherit;opacity:.5;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n2'><feTurbulence type='fractalNoise' baseFrequency='0.55' numOctaves='3'/></filter><rect width='220' height='220' filter='url(%23n2)' opacity='0.22'/></svg>");position:absolute;inset:0}.room{touch-action:none;background:#060505;position:fixed;inset:0;overflow:hidden}.room canvas{display:block}.room-layer{position:absolute;inset:0}.room-vignette{pointer-events:none;background:radial-gradient(78% 62% at 50% 52%,#0000 38%,#000000a8 100%);position:absolute;inset:0}.room-hint{color:#e8d8bea8;letter-spacing:.14em;pointer-events:none;font-family:Cinzel,Songti TC,serif;font-size:13px;position:absolute;bottom:26px;left:50%;transform:translate(-50%)}.room-fan{position:absolute;top:50%;left:50%}.pov-card.on-table{border-radius:6px;box-shadow:0 18px 26px -12px #000000d9,0 2px 4px #0009}.pov-card.on-table .pov-flip{transform:rotateY(180deg)}.room:after{content:"";pointer-events:none;mix-blend-mode:screen;background:radial-gradient(34% 26% at 40% 40%,#ffa85829,#0000 70%),radial-gradient(30% 22% at 58% 38%,#ff964621,#0000 72%),radial-gradient(26% 20% at 50% 30%,#ffc88c1a,#0000 74%);animation:2.3s ease-in-out infinite flicker;position:absolute;inset:0}@keyframes flicker{0%,to{opacity:.82}22%{opacity:1}41%{opacity:.72}63%{opacity:.95}84%{opacity:.78}}.room-shuffle{color:#e6d2ab;letter-spacing:.16em;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#d6ae681f;border:1px solid #d6ae6873;border-radius:999px;padding:10px 18px;font-family:Cinzel,Songti TC,serif;font-size:13px;transition:background .2s,transform .12s;position:absolute;bottom:24px;right:22px}.room-shuffle:hover{background:#d6ae6838}.room-shuffle:active{transform:scale(.96)}.room-layer.shuffling{filter:blur(.7px)}.room.shuffling:before{content:"";pointer-events:none;z-index:6;background:radial-gradient(46% 30% at 50% 62%,#ffd69629,#0000 72%),repeating-radial-gradient(circle at 50% 62%,#ffffff0d 0 1px,#0000 1px 7px);animation:.9s ease-out both shuffleDust;position:absolute;inset:0}@keyframes shuffleDust{0%{opacity:0;transform:scale(.92)}35%{opacity:.9}to{opacity:0;transform:scale(1.12)}}.room.shuffling:after{animation:2.3s ease-in-out infinite flicker,2.4s ease-in-out both sweep}@keyframes sweep{0%{filter:brightness()}40%{filter:brightness(1.18)}to{filter:brightness()}}.room-fan{animation:none}.room3d{background:#060505;position:fixed;inset:0;overflow:hidden}.room3d canvas{display:block}.room3d-hint{color:#e8d8beb3;letter-spacing:.14em;pointer-events:none;font-family:Cinzel,Songti TC,serif;font-size:13px;position:absolute;bottom:28px;left:50%;transform:translate(-50%)}.room3d:after{content:"";pointer-events:none;background:radial-gradient(120% 90% at 50% 45%,#0000 42%,#0000008c 100%),linear-gradient(90deg,#0000008c 0%,#0000002e 12%,#0000 26%),linear-gradient(270deg,#0000006b 0%,#0000001f 10%,#0000 22%),linear-gradient(#0000006b 0%,#0000 18%);position:absolute;inset:0}.hers{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#efe3cd;letter-spacing:.04em;white-space:pre-wrap;z-index:20;background:linear-gradient(#0a0807b8,#0a0807e0);border:1px solid #d6ae6847;border-radius:14px;width:min(680px,84vw);max-height:40vh;padding:14px 20px;font-family:Songti TC,Noto Serif TC,serif;font-size:15px;line-height:1.85;position:absolute;bottom:18px;left:50%;overflow-y:auto;transform:translate(-50%)}.hers-text{min-height:1.85em}.hers-form{gap:10px;margin-top:12px;display:flex}.hers-input{color:#efe3cd;background:#ffffff0d;border:1px solid #d6ae684d;border-radius:10px;outline:none;flex:1;padding:10px 14px;font-size:14px}.hers-input::placeholder{color:#efe3cd66}.hers-send{cursor:pointer;color:#e8d3a8;letter-spacing:.2em;background:#d6ae6829;border:1px solid #d6ae6880;border-radius:10px;padding:10px 18px}.hers-send:disabled{opacity:.4;cursor:default}.hers::-webkit-scrollbar{width:6px}.hers::-webkit-scrollbar-thumb{background:#d6ae6859;border-radius:3px}.spread-modal{z-index:40;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0604039e;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.spread-card{color:#efe3cd;background:linear-gradient(#120d0af5,#0a0705fa);border:1px solid #d6ae6857;border-radius:16px;width:min(560px,92vw);max-height:82vh;padding:24px 26px 20px;font-family:Songti TC,Noto Serif TC,serif;overflow-y:auto;box-shadow:0 24px 60px #0009}.spread-head{justify-content:space-between;align-items:flex-start;display:flex}.spread-title{letter-spacing:.12em;color:#e8d3a8;margin:0;font-size:22px;font-weight:500}.spread-meta{letter-spacing:.2em;color:#e8d3a88c;margin-top:4px;font-size:12px}.spread-close{color:#efe3cd80;cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:24px;line-height:1}.spread-desc{color:#efe3cdd1;margin:14px 0 18px;font-size:14px;line-height:1.9}.spread-list{margin:0;padding:0;list-style:none}.spread-item{border-top:1px solid #d6ae681f;grid-template-columns:26px 96px 1fr;align-items:baseline;gap:8px;padding:7px 0;display:grid}.spread-num{color:#d6ae6899;letter-spacing:.1em;font-size:11px}.spread-name{color:#e8d3a8;letter-spacing:.08em;font-size:14px}.spread-meaning{color:#efe3cdb3;font-size:13px;line-height:1.7}.spread-start{color:#e8d3a8;letter-spacing:.3em;cursor:pointer;background:#d6ae6824;border:1px solid #d6ae6880;border-radius:10px;width:100%;margin-top:18px;padding:12px;font-size:14px;display:block}.spread-start:hover{background:#d6ae6838}.spread-btn{z-index:30;cursor:pointer;color:#e8d3a8;letter-spacing:.18em;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0a080799;border:1px solid #d6ae684d;border-radius:10px;padding:8px 14px;font-family:Songti TC,serif;font-size:13px;position:absolute;top:16px;right:16px}.picker{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:radial-gradient(120% 90% at 50% 40%,#140e0adb,#040302f5);place-items:center;padding:24px;display:grid;position:absolute;inset:0}.picker-inner{width:min(880px,94vw)}.picker-title{letter-spacing:.3em;color:#e8d3a8;text-align:center;margin:0 0 6px;font-family:Songti TC,serif;font-size:26px;font-weight:500}.picker-sub{text-align:center;color:#efe3cd80;letter-spacing:.1em;margin:0 0 26px;font-family:Songti TC,serif;font-size:13px}.picker-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}@media (width<=680px){.picker-grid{grid-template-columns:1fr}}.picker-item{text-align:left;cursor:pointer;color:#efe3cd;background:linear-gradient(#1a130ee6,#0c0907f0);border:1px solid #d6ae683d;border-radius:14px;padding:20px 22px;font-family:Songti TC,serif;transition:border-color .2s,transform .2s}.picker-item:hover{border-color:#d6ae68a6;transform:translateY(-2px)}.picker-name{letter-spacing:.16em;color:#e8d3a8;font-size:18px}.picker-count{letter-spacing:.24em;color:#e8d3a880;margin-top:4px;font-size:11px}.picker-desc{color:#efe3cdad;margin-top:10px;font-size:13px;line-height:1.75}.slot-tag{color:#e8d3a8;letter-spacing:.12em;white-space:nowrap;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:none;opacity:.3;background:#080604b8;border:1px solid #d6ae6852;border-radius:999px;padding:3px 9px;font-family:Songti TC,serif;font-size:10px;transition:opacity .35s,transform .35s;transform:translateY(-6px)}.slot-tag.on{opacity:1;color:#ffe9bd;background:#1c140ce6;border-color:#e8d3a8bf;font-size:11px;box-shadow:0 0 12px #e8d3a840}.read-actions{z-index:25;gap:8px;display:flex;position:absolute;bottom:148px;right:18px}.read-btn{cursor:pointer;color:#e8d3a8;letter-spacing:.12em;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0a0807b8;border:1px solid #d6ae6859;border-radius:10px;padding:9px 16px;font-family:Songti TC,serif;font-size:13px}.read-btn:hover{border-color:#d6ae68b3}.hist-modal{z-index:45;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#060403b3;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.hist-card{color:#efe3cd;background:linear-gradient(#120d0af7,#0a0705fc);border:1px solid #d6ae6852;border-radius:16px;width:min(620px,92vw);max-height:80vh;padding:22px 24px;font-family:Songti TC,serif;overflow-y:auto}.hist-title{letter-spacing:.22em;color:#e8d3a8;margin:0 0 14px;font-size:18px;font-weight:500}.hist-item{border-top:1px solid #d6ae681f;padding:12px 0}.hist-q{color:#efe3cd;font-size:14px}.hist-meta{color:#e8d3a88c;letter-spacing:.06em;margin-top:4px;font-size:12px}.hist-empty{color:#efe3cd80;font-size:13px}.spread-btn-2{left:16px;right:auto}.choice-modal{z-index:48;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#060403b8;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.choice-inner{width:min(820px,94vw)}.choice-title{text-align:center;letter-spacing:.3em;color:#e8d3a8;margin:0 0 6px;font-family:Songti TC,serif;font-size:22px;font-weight:500}.choice-sub{text-align:center;color:#efe3cd80;margin:0 0 22px;font-family:Songti TC,serif;font-size:13px}.choice-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}@media (width<=680px){.choice-grid{grid-template-columns:1fr}}.choice-item{text-align:left;cursor:pointer;color:#efe3cd;background:linear-gradient(#1a130eeb,#0c0907f5);border:1px solid #d6ae6842;border-radius:14px;padding:20px;font-family:Songti TC,serif;transition:border-color .2s,transform .2s}.choice-item:hover{border-color:#d6ae68b3;transform:translateY(-2px)}.choice-name{letter-spacing:.14em;color:#e8d3a8;font-size:18px}.choice-count{letter-spacing:.22em;color:#e8d3a880;margin-top:4px;font-size:11px}.choice-say{color:#efe3cdb8;white-space:pre-wrap;margin-top:12px;font-size:13px;line-height:1.8}.deck-hint{color:#ffe9bd;letter-spacing:.14em;white-space:nowrap;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:none;background:#0a0806d1;border:1px solid #e8d3a873;border-radius:999px;padding:6px 14px;font-family:Songti TC,serif;font-size:12px;animation:1.8s ease-in-out infinite deckHintPulse;transform:translateY(-8px)}@keyframes deckHintPulse{0%,to{opacity:.72;transform:translateY(-8px)scale(1)}50%{opacity:1;transform:translateY(-11px)scale(1.04)}}.landing{z-index:90;opacity:1;transition:opacity var(--landing-reveal-dur,3s) ease;background:#050403;font-family:Songti TC,Noto Serif TC,serif;position:absolute;inset:0;overflow:hidden}.landing.is-revealing{opacity:0}.landing-bg{filter:blur(6px)brightness(.42)saturate(.9);background:url(/world/panorama4-2k.jpg) 50% 58%/cover no-repeat;animation:26s ease-in-out infinite alternate landingDrift;position:absolute;inset:-6%;transform:scale(1.06)}@keyframes landingDrift{0%{transform:scale(1.06)translate(0,0)}to{transform:scale(1.14)translate(-1.4%,-1.2%)}}.landing-shade{background:radial-gradient(70% 60% at 50% 42%,#00000026 0%,#000000d1 100%),linear-gradient(#0000008c 0%,#0000 35%,#000000bf 100%);position:absolute;inset:0}.door-scene{--door-left-deg:-72deg;--door-right-deg:78deg;--door-dur:2.6s;--door-ease:cubic-bezier(.22,.72,.16,1);--door-skew:.18s;--door-perspective:1400px;width:300px;height:470px;perspective:var(--door-perspective);position:absolute;top:50%;left:50%;transform:translate(-50%,-54%)}@media (width<=640px){.door-scene{width:240px;height:380px}}.door-glow{opacity:0;pointer-events:none;background:radial-gradient(closest-side,#ffc47838,#0000 70%);border-radius:12px;transition:opacity .5s;position:absolute;inset:-40px}.door{width:50%;transform-style:preserve-3d;backface-visibility:hidden;will-change:transform;transition:transform var(--door-dur) var(--door-ease);position:absolute;top:0;bottom:0;transform:rotateY(0)}.door-left{transform-origin:0;left:0}.door-right{transform-origin:100%;transition-duration:calc(var(--door-dur) + var(--door-skew));right:0}.door-scene.is-opening .door-left{transform:rotateY(var(--door-left-deg))}.door-scene.is-opening .door-right{transform:rotateY(var(--door-right-deg))}.door-scene.is-opening .door-glow{opacity:1}.door-panel{background:linear-gradient(100deg,#241610 0%,#3a2318 42%,#1b100b 100%),repeating-linear-gradient(90deg,#00000038 0 2px,#0000 2px 9px);position:absolute;inset:0;box-shadow:inset 0 0 0 2px #d6ae6829,inset 0 0 60px #000000e6,0 30px 80px #000000bf}.door-left .door-panel{border-radius:6px 0 0 2px}.door-right .door-panel{border-radius:0 6px 2px 0}.door-arch{border:1px solid #d6ae6838;border-radius:90px 90px 4px 4px;height:150px;position:absolute;inset:26px 26px auto}.door-knob{background:radial-gradient(circle at 35% 30%,#f3d69a,#8a6a2f 65%,#3a2a12);border-radius:50%;width:16px;height:16px;position:absolute;top:52%;box-shadow:0 0 12px #e8c88c73}.door-left .door-knob{right:16px}.door-right .door-knob{left:16px}.landing-copy{text-align:center;padding:0 24px;position:absolute;bottom:9%;left:0;right:0}.landing-brand{letter-spacing:.42em;color:#f0dcae;text-shadow:0 0 30px #e8b46e59;margin:0 0 10px;font-size:clamp(24px,4.2vw,40px);font-weight:400}.landing-line{letter-spacing:.24em;color:#efe3cdb8;margin:0 0 26px;font-size:clamp(13px,1.6vw,16px)}.landing-cta{cursor:pointer;color:#ffe9bd;letter-spacing:.26em;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#d6ae681a;border:1px solid #d6ae688c;border-radius:999px;padding:14px 34px;font-family:inherit;font-size:15px;transition:background .25s,transform .25s,box-shadow .25s}.landing-cta:hover{background:#d6ae6838;transform:translateY(-2px);box-shadow:0 10px 40px #d6ae6847}.landing-small{letter-spacing:.2em;color:#efe3cd61;margin:18px 0 0;font-size:11px}.landing-cta:focus-visible{outline-offset:4px;outline:2px solid #ffe9bde6}@media (prefers-reduced-motion:reduce){.landing{--landing-reveal-dur:.4s}.landing-bg{animation:none}.door,.door-glow,.landing-cta{transition:none}}.door-fan{background:radial-gradient(120% 100% at 50% 100%,#ffc47829,#140c07e6 62%,#120b07);border-radius:999px 999px 0 0;height:78px;position:absolute;top:-78px;left:0;right:0;overflow:hidden;box-shadow:inset 0 0 0 1px #d6ae682e,0 -6px 30px #0009}.fan-tracery{opacity:.85;background:repeating-conic-gradient(from 200deg at 50% 100%,#d6ae684d 0deg .7deg,#0000 .7deg 12deg);position:absolute;inset:0;-webkit-mask-image:radial-gradient(120% 100% at 50% 100%,#000 30%,#0000 78%);mask-image:radial-gradient(120% 100% at 50% 100%,#000 30%,#0000 78%)}.fan-glow{background:radial-gradient(70% 90% at 50% 100%,#ffd2964d,#0000 70%);animation:5.5s ease-in-out infinite fanBreath;position:absolute;inset:0}@keyframes fanBreath{0%,to{opacity:.55}50%{opacity:.95}}.door-seam{filter:blur(.6px);pointer-events:none;background:linear-gradient(#ffd7a000,#ffcd8c8c 18%,#ffbe78bf 55%,#ffd7a000);width:2px;animation:4.2s ease-in-out infinite seamPulse;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 0 18px #ffbe788c,0 0 46px #ffaa5a47}@keyframes seamPulse{0%,to{opacity:.5}50%{opacity:.95}}.door-scene.is-opening .door-seam{opacity:0;transition:opacity .5s .3s}.door-inlay{color:#d6ae68bf;filter:drop-shadow(0 0 6px #d6ae6859);opacity:.9;width:54%;position:absolute;top:26%;left:50%;transform:translate(-50%)}.leaf-star{width:100%;height:auto;display:block}.door-studs{flex-direction:column;justify-content:space-between;width:10px;display:flex;position:absolute;top:6%;bottom:6%}.door-studs--l{left:12%}.door-studs--r{right:12%}.door-studs i{background:radial-gradient(circle at 35% 30%,#f3d69a,#8a6a2f 70%,#2a1c10);border-radius:50%;width:6px;height:6px;box-shadow:0 0 6px #d6ae6859}.door-jamb{background:linear-gradient(90deg,#1b100a,#3a2418 45%,#180e08);width:14px;position:absolute;top:-6px;bottom:-6px;box-shadow:inset 0 0 0 1px #d6ae6824,0 0 22px #000000b3}.door-jamb--l{border-radius:3px 0 0 3px;left:-14px}.door-jamb--r{border-radius:0 3px 3px 0;right:-14px}.door-head{background:linear-gradient(#3a2418,#170e08);height:14px;position:absolute;top:-14px;left:-14px;right:-14px;box-shadow:inset 0 0 0 1px #d6ae6824}.door-sill{background:linear-gradient(#2a1a11,#120b07);height:12px;position:absolute;bottom:-12px;left:-14px;right:-14px;box-shadow:inset 0 0 0 1px #d6ae681f}.door-scene:before{content:"";filter:brightness(.55)saturate(.95);opacity:0;background:url(/world/panorama4-2k.jpg) 50% 62%/cover no-repeat;border-radius:2px;transition:opacity .8s;position:absolute;inset:0}.door-scene.is-opening:before{opacity:1}.quota-modal{z-index:60;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#060403c2;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.quota-card{color:#efe3cd;text-align:center;background:linear-gradient(#140e0af7,#0a0705fc);border:1px solid #d6ae6852;border-radius:16px;width:min(440px,92vw);padding:26px 26px 20px;font-family:Songti TC,serif}.quota-title{letter-spacing:.2em;color:#e8d3a8;margin:0 0 14px;font-size:19px;font-weight:500}.quota-body{color:#efe3cdb8;white-space:pre-wrap;margin:0 0 22px;font-size:13.5px;line-height:1.9}.quota-primary{cursor:pointer;color:#ffe9bd;letter-spacing:.22em;background:#d6ae6829;border:1px solid #d6ae688c;border-radius:10px;width:100%;margin-bottom:10px;padding:12px;font-family:inherit;font-size:14px;display:block}.quota-ghost{color:#efe3cd73;letter-spacing:.18em;cursor:pointer;background:0 0;border:none;font-family:inherit;font-size:12px}.landing-cta-wrap{z-index:20;pointer-events:auto;flex-direction:column;align-items:center;gap:14px;display:flex;position:fixed;bottom:7%;left:50%;transform:translate(-50%)}.landing .stage.pre .dark{opacity:.7}.landing .stage.pre .seamlight{animation:4.2s ease-in-out infinite seamPulse}.landing-pre-brand{letter-spacing:.44em;color:#f0dcae;text-shadow:0 0 26px #e8b46e73;margin:0 0 6px;font-family:Songti TC,Noto Serif TC,serif;font-size:clamp(22px,3.6vw,34px);font-weight:400}.landing-pre-line{letter-spacing:.24em;color:#efe3cd99;margin:0 0 22px;font-family:Songti TC,serif;font-size:13px}.intro{z-index:80;pointer-events:none;opacity:1;transition:opacity 2.6s;position:absolute;inset:0}.intro.is-fading{opacity:0}.intro-vignette{background:radial-gradient(58% 62% at 50% 46%,#0000 0%,#00000059 62%,#000000e0 100%),linear-gradient(#0000008c 0%,#0000 30% 62%,#000000d9 100%);position:absolute;inset:0}.intro-copy{text-align:center;pointer-events:auto;position:absolute;bottom:8%;left:50%;transform:translate(-50%)}.intro-brand{letter-spacing:.44em;color:#f0dcae;text-shadow:0 0 28px #e8b46e80;margin:0 0 8px;font-family:Songti TC,Noto Serif TC,serif;font-size:clamp(22px,3.6vw,34px);font-weight:400}.intro-line{letter-spacing:.24em;color:#efe3cd9e;margin:0 0 22px;font-family:Songti TC,serif;font-size:13px}.intro-cta{cursor:pointer;color:#ffe9bd;letter-spacing:.26em;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#d6ae681a;border:1px solid #d6ae688c;border-radius:999px;padding:13px 32px;font-family:inherit;font-size:15px;transition:background .25s,transform .25s,box-shadow .25s}.intro-cta:hover{background:#d6ae6838;transform:translateY(-2px);box-shadow:0 10px 40px #d6ae684d}.intro-small{letter-spacing:.2em;color:#efe3cd66;margin:16px 0 0;font-size:11px}.picker-topics{flex-wrap:wrap;justify-content:center;gap:8px;margin:-14px 0 20px;display:flex}.picker-topic{letter-spacing:.14em;color:#e8d3a899;border:1px solid #d6ae6838;border-radius:999px;padding:4px 12px;font-family:Songti TC,serif;font-size:11px}.intro-video{object-fit:cover;z-index:1;opacity:1;will-change:transform;backface-visibility:hidden;width:100%;height:100%;position:absolute;inset:0;transform:translateZ(0)}.intro.is-started .intro-copy{opacity:0;pointer-events:none;transition:opacity .6s}.intro.is-started .intro-vignette{opacity:.45;transition:opacity .8s}.intro-flash{z-index:3;pointer-events:none;opacity:0;background:radial-gradient(60% 60%,#fff8ef 0%,#fff0dce6 45%,#ffebd200 100%);transition:opacity .3s;position:absolute;inset:0}.intro-flash.on{opacity:1}.intro-playing .slot-tag,.intro-playing .spread-btn,.intro-playing .hers,.intro-playing .spread-info{-webkit-backdrop-filter:none!important}.intro-playing .spread-btn,.intro-playing .slot-tag{opacity:0!important}.loading-veil{z-index:120;background:radial-gradient(70% 70% at 50% 46%,#14100c 0%,#0a0807 60%,#060505 100%);place-items:center;transition:opacity .75s;display:grid;position:fixed;inset:0}.loading-veil.is-fading{opacity:0;pointer-events:none}.loading-inner{text-align:center}.loading-brand{letter-spacing:.46em;color:#f0dcae;text-shadow:0 0 26px #e8b46e73;margin-bottom:26px;font-family:Songti TC,serif;font-size:clamp(18px,2.4vw,26px)}.loading-line{background:#d6ae6838;width:168px;height:1px;margin:0 auto 16px;overflow:hidden}.loading-bar{background:linear-gradient(90deg,#e8b46e00,#e8b46e,#e8b46e00);width:8%;height:100%;animation:1.4s ease-in-out infinite loadSlide;display:block}.loading-bar.done{width:100%;transition:width .4s;animation:none}@keyframes loadSlide{0%{transform:translate(-100%)}to{transform:translate(900%)}}.loading-text{letter-spacing:.22em;color:#e8d3a880;font-family:Songti TC,serif;font-size:12px}.burn{z-index:96;pointer-events:none;opacity:0;will-change:opacity;background:radial-gradient(120% 120% at 50% 46%,#fffaf2 0%,#fff6ea 55%,#fff2e2 100%);transition:opacity 1.15s cubic-bezier(.4,.05,.5,.95);position:absolute;inset:0}.burn.on{opacity:1;transition-duration:1.15s}.burn:not(.on){transition-duration:1.9s;transition-timing-function:cubic-bezier(.3,.5,.35,1)}.room-btn{left:50%;right:auto;transform:translate(-50%)}.roompick{z-index:70;background:radial-gradient(120% 90% at 50% 40%,#140e0aed,#040302f7);place-items:center;padding:24px;display:grid;position:absolute;inset:0}.roompick-inner{width:min(980px,94vw)}.roompick-title{text-align:center;letter-spacing:.3em;color:#e8d3a8;margin:0 0 6px;font-family:Songti TC,serif;font-size:26px;font-weight:500}.roompick-sub{text-align:center;letter-spacing:.1em;color:#efe3cd80;margin:0 0 24px;font-family:Songti TC,serif;font-size:13px}.roompick-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}@media (width<=780px){.roompick-grid{grid-template-columns:repeat(2,1fr)}}.roompick-item{cursor:pointer;text-align:left;background:#0d0a08;border:1px solid #d6ae6847;border-radius:14px;padding:0;transition:border-color .2s,transform .2s;position:relative;overflow:hidden}.roompick-item:hover{border-color:#e8d3a8b3;transform:translateY(-2px)}.roompick-item.is-now{border-color:#e8d3a8e6;box-shadow:inset 0 0 0 1px #e8d3a859}.roompick-thumb{filter:brightness(.62)saturate(.9);background-position:50%;background-size:cover;height:118px}.roompick-item.is-locked .roompick-thumb{filter:brightness(.32)blur(1.5px)saturate(.6)}.roompick-meta{padding:10px 12px 12px}.roompick-name{letter-spacing:.14em;color:#e8d3a8;font-family:Songti TC,serif;font-size:15px}.roompick-tag{color:#efe3cd80;margin-top:3px;font-family:Songti TC,serif;font-size:11px;line-height:1.5}.roompick-price{letter-spacing:.12em;color:#e8d3a8bf;margin-top:8px;font-family:Songti TC,serif;font-size:11px}.roompick-lock{opacity:.8;font-size:14px;position:absolute;top:8px;right:8px}.roompick-close{cursor:pointer;color:#efe3cd73;letter-spacing:.18em;background:0 0;border:none;margin:20px auto 0;font-family:Songti TC,serif;font-size:12px;display:block}.roompick-pay{background:#060403b8;place-items:center;display:grid;position:absolute;inset:0}.roompick-pay-card{text-align:center;background:linear-gradient(#140e0af7,#0a0705fc);border:1px solid #d6ae6852;border-radius:16px;width:min(400px,90vw);padding:24px;font-family:Songti TC,serif}@media (width<=560px){.spread-btn{letter-spacing:.06em;padding:6px 10px;font-size:11px;top:10px;right:10px}.spread-btn-2{text-overflow:ellipsis;white-space:nowrap;max-width:46vw;left:10px;right:auto;overflow:hidden}.room-btn{top:10px;left:50%;transform:translate(-50%)}.hers{border-radius:12px;width:92vw;max-height:46vh;padding:12px 14px;font-size:14px;bottom:10px}.hers-input{padding:9px 11px;font-size:14px}.hers-send{letter-spacing:.12em;padding:9px 14px}.slot-tag{padding:2px 7px;font-size:9px}.slot-tag.on{font-size:10px}.read-actions{gap:6px;bottom:108px;right:10px}.read-btn{padding:8px 12px;font-size:12px}.intro-copy{padding:0 16px;bottom:6%}.intro-cta{padding:12px 26px;font-size:14px}.roompick-grid{grid-template-columns:repeat(2,1fr);gap:10px}.roompick-thumb{height:92px}.picker-grid,.choice-grid{grid-template-columns:1fr}.intro-brand{letter-spacing:.26em!important;font-size:21px!important}.intro-line{letter-spacing:.16em!important;font-size:12px!important}.intro-small{letter-spacing:.12em!important;font-size:10px!important}.landing-brand{letter-spacing:.3em!important;font-size:26px!important}}.tune-bar{z-index:75;color:#efe3cdb3;background:#0a0807e0;border:1px solid #d6ae684d;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-family:Songti TC,serif;font-size:12px;display:flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.tune-bar button{cursor:pointer;color:#e8d3a8;background:#d6ae6829;border:1px solid #d6ae6873;border-radius:50%;width:30px;height:30px;font-size:14px;line-height:1}.tune-val{text-align:right;color:#e8d3a8cc;min-width:44px}
