@font-face{font-family:"Noto Serif TC";src:url(./noto-serif-tc-chinese-traditional-400-normal-DQpnKpeM.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Noto Serif TC";src:url(./noto-serif-tc-chinese-traditional-700-normal-CplHwGhL.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:"Noto Serif TC";src:url(./noto-serif-tc-chinese-traditional-900-normal-D56GMwqp.woff2) format("woff2");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:Phosphor-Bold;src:url(./Phosphor-Bold-BCak21uZ.woff2) format("woff2");font-weight:400;font-style:normal;font-display:block}.ph-bold{font-family:Phosphor-Bold!important;speak:never;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;font-feature-settings:"liga";font-variant-ligatures:discretionary-ligatures;-webkit-font-smoothing:antialiased}.ph-bold.ph-arrows-clockwise:before{content:""}.ph-bold.ph-lightning:before{content:""}.ph-bold.ph-list:before{content:""}.ph-bold.ph-minus:before{content:""}.ph-bold.ph-plus:before{content:""}.ph-bold.ph-speaker-high:before{content:""}.ph-bold.ph-speaker-slash:before{content:""}:root{font-family:"Noto Serif TC",Songti TC,serif;color:#fff4d6;background:#06070a;font-synthesis:none;--gold: #d7a93e;--gold-hi: #ffe8a0;--gold-dk: #60400f;--ink: #08090d;--lacquer: #8d1d12;--wood: #42d17a;--fire: #ff5a31;--earth: #f4c44f;--metal: #e9edf6;--water: #43a7ff}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}button{font:inherit}button:focus-visible{outline:3px solid #fff4c0;outline-offset:3px}.scene{position:relative;width:100%;height:100%;min-width:720px;min-height:0;overflow:hidden;background-color:#07080b;background-image:var(--scene-art);background-size:cover;background-position:center;isolation:isolate}.scene:after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;box-shadow:inset 0 0 120px 36px #000000c7}.opening{position:fixed;inset:0;z-index:100;border:0;color:#ffe7a3;background:#050508e6;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;transition:opacity .26s ease,transform .26s ease}.opening strong{font-size:clamp(40px,7vw,86px);letter-spacing:.18em;text-shadow:0 0 26px #b97816,0 4px 5px #000}.opening-kicker,.opening small{letter-spacing:.38em;color:#cf9e52}.opening.leaving{opacity:0;transform:scale(1.05);pointer-events:none}.tophud{position:absolute;top:clamp(8px,1.8vh,18px);left:clamp(10px,1.7vw,28px);right:clamp(10px,1.7vw,28px);z-index:12;display:grid;grid-template-columns:1fr auto 1fr;align-items:start;pointer-events:none}.logo-seal,.banner-top,.rtp-badge{color:var(--gold-hi);background:#07080cdb;border:2px solid var(--gold);box-shadow:0 7px 22px #000000b8,inset 0 0 18px #d49d2e2e}.logo-seal{justify-self:start;width:clamp(180px,17vw,265px);padding:10px 18px 9px;text-align:center;border-radius:5px}.logo-seal .t{display:block;font-size:clamp(23px,2.25vw,37px);line-height:1.1;font-weight:900;letter-spacing:.14em;text-shadow:0 2px 3px #000}.logo-seal small{display:block;margin-top:5px;color:#ca9b55;font-size:clamp(8px,.8vw,12px);letter-spacing:.35em}.banner-top{justify-self:center;min-width:clamp(260px,31vw,500px);padding:10px 28px;text-align:center;border-width:2px 4px;box-shadow:0 7px 24px #000000c7,0 0 24px #e1a42c47}.banner-top .txt{font-size:clamp(19px,2.1vw,33px);font-weight:900;letter-spacing:.22em;text-shadow:0 2px 3px #000,0 0 14px #a96a10}.rtp-badge{justify-self:end;padding:7px 17px;border-radius:24px;font:700 clamp(10px,1vw,14px) ui-monospace,monospace;letter-spacing:.08em}.center{position:absolute;top:clamp(62px,10.5vh,96px);left:50%;z-index:5;transform:translate(-50%);display:flex;flex-direction:column;align-items:center}.main-row{position:relative}.frame{position:relative;width:min(730px,56vw,90vh);aspect-ratio:1.12 / 1;background-image:var(--frame-art);background-size:100% 100%;background-repeat:no-repeat;filter:drop-shadow(0 16px 24px rgba(0,0,0,.75))}.board{position:absolute;inset:17.2% 12.7% 12.8%;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:repeat(5,minmax(0,1fr));gap:clamp(3px,.42vw,7px);padding:clamp(3px,.38vw,6px);background:#020306c7;border:1px solid rgba(255,216,120,.22);overflow:hidden}.tile{position:relative;min-width:0;min-height:0;overflow:hidden;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#08090ee0;box-shadow:inset 0 0 11px #000000e6,0 2px 5px #000000ad;animation:tile-drop .28s cubic-bezier(.2,.85,.32,1.18) both;transition:transform .16s ease,opacity .16s ease,box-shadow .2s ease}.tile img{width:100%;height:100%;object-fit:cover;pointer-events:none;user-select:none}.tile[data-symbol^=L] img,.tile[data-symbol=WD] img,.tile[data-symbol=SC] img{object-fit:contain}.tile[data-symbol^=H]{border:2px solid rgba(228,180,70,.65);border-radius:7px}.tile .nm{position:absolute;left:4px;right:4px;bottom:2px;padding:2px 3px;color:#ffe79c;background:#030305c7;font-size:clamp(7px,.58vw,10px);font-weight:700;letter-spacing:.08em;text-align:center;white-space:nowrap;text-shadow:0 1px 2px #000}.tile.win{transform:scale(1.06);box-shadow:0 0 17px 4px #ffcf5a,inset 0 0 12px #fff1a3;z-index:2}.tile.burst{opacity:0;transform:scale(1.38)}.tile.skill-hit{z-index:3;animation:skill-pulse .55s ease both}.tile.skill-wood{box-shadow:0 0 24px 7px var(--wood)}.tile.skill-fire{box-shadow:0 0 26px 8px var(--fire)}.tile.skill-earth{box-shadow:0 0 26px 8px var(--earth)}.tile.skill-metal{box-shadow:0 0 26px 8px var(--metal)}.tile.skill-water{box-shadow:0 0 26px 8px var(--water)}.board.water-rise{animation:water-rise .7s ease both}.board.tianming{box-shadow:0 0 38px 12px #ffd35c,inset 0 0 32px #fff0a0}@keyframes tile-drop{0%{opacity:0;transform:translateY(-28%) scale(.88)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes skill-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.14)}}@keyframes water-rise{0%{transform:translateY(8px);filter:saturate(1)}50%{transform:translateY(-8px);filter:saturate(1.7) brightness(1.22)}to{transform:translateY(0);filter:saturate(1)}}.gauges{position:absolute;left:clamp(-66px,-5vw,-48px);top:26%;z-index:9;display:flex;flex-direction:column;gap:clamp(6px,.8vh,10px)}.gauge{width:clamp(36px,3.35vw,50px);display:flex;flex-direction:column;align-items:center;transition:transform .2s ease,filter .2s ease}.gauge .orb{width:100%;aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 3px 5px rgba(0,0,0,.9))}.gauge progress{width:82%;height:6px;margin-top:-2px;appearance:none;border:1px solid #7d5016;border-radius:6px;overflow:hidden;background:#130d08}.gauge progress::-webkit-progress-bar{background:#130d08}.gauge progress::-webkit-progress-value{background:#e2b84d;box-shadow:0 0 8px #ffdb6c}.gauge.full,.gauge.highlight{transform:scale(1.16);filter:brightness(1.35)}.base-chain,.fg-hud{position:absolute;left:19%;right:19%;top:9.5%;z-index:8;height:clamp(28px,3.2vw,43px);display:flex;align-items:center;justify-content:center;gap:clamp(5px,.6vw,9px);color:#f9df9a;background:#040508d6;border:1px solid rgba(225,175,67,.66);box-shadow:0 4px 12px #000000b3}.base-chain-label{font-size:clamp(8px,.68vw,11px);letter-spacing:.18em;color:#c89d52}.base-chain-flow{display:flex;align-items:center}.base-chain-flow span{width:clamp(18px,1.75vw,27px);aspect-ratio:1;opacity:.48;transition:opacity .2s,transform .2s,filter .2s}.base-chain-flow img{width:100%;height:100%;object-fit:contain}.base-chain-flow span.current{opacity:1;transform:scale(1.18);filter:brightness(1.4)}.base-chain b{min-width:32px;font-size:clamp(12px,1.2vw,19px);color:#ffe896}.base-chain.charged{box-shadow:0 0 18px #da9d22,0 4px 12px #000}.base-chain.locked{box-shadow:0 0 28px #ffd25d,inset 0 0 14px #6d3b05}.fg-hud{display:none;left:15%;right:15%;justify-content:space-around;font-size:clamp(8px,.72vw,12px);white-space:nowrap}.fg-hud.on{display:flex}.fg-hud.on~.board+.skill-stage,.scene[data-phase=feature] .base-chain{opacity:.32}.fg-hud .chain{display:flex;gap:3px}.fg-hud .lvl,.fg-hud .stamp{padding:2px 5px;color:#876d43;background:#111014;border:1px solid #5f4924}.fg-hud .lvl.on,.fg-hud .stamp.on{color:#fff2bf;border-color:#e3b646;box-shadow:0 0 8px #c78b1a}.fg-hud .lvl.tm{color:#fff;background:#8b2614}.dock{position:relative;z-index:10;width:min(610px,48vw,76vh);height:clamp(55px,7vh,72px);margin-top:clamp(-76px,-8.4vh,-54px);display:flex;align-items:center;justify-content:center;gap:clamp(14px,2vw,30px);padding:8px 24px;background:#080707eb;border:2px solid #9c6e22;border-radius:38px;box-shadow:0 8px 24px #000,inset 0 0 15px #d69e2d2e}.stat{min-width:clamp(92px,9vw,135px);text-align:center}.stat .k{color:#b88b45;font-size:clamp(8px,.72vw,11px);letter-spacing:.26em}.stat .v{color:#fff0c9;font:900 clamp(16px,1.6vw,24px) ui-monospace,monospace;text-shadow:0 2px 3px #000}.stat .v.win-flash{color:#ffe16a;text-shadow:0 0 13px #e59b1d,0 2px 3px #000}.bet-ctrl{display:flex;align-items:center;gap:7px}.bet-ctrl button{width:clamp(30px,2.9vw,43px);aspect-ratio:1;border-radius:50%;border:2px solid #d6a63a;background:#5f3e10;color:#ffe9a5;cursor:pointer;box-shadow:0 4px 9px #000,inset 0 0 8px #ffe08b40}.bet-ctrl button:active{transform:scale(.92)}.controls{position:absolute;right:clamp(16px,4.5vw,70px);bottom:clamp(18px,3vh,32px);z-index:20;display:flex;flex-direction:column;align-items:center;gap:clamp(7px,1.2vh,13px)}.btn-round{display:grid;place-items:center;border-radius:50%;border:2px solid #e2bd60;background:#23180ced;color:#ffe596;cursor:pointer;box-shadow:0 6px 14px #000,inset 0 0 9px #f1ba4638;transition:transform .12s,filter .18s,box-shadow .18s}.btn-round:active{transform:scale(.93)}.btn-round:disabled,.btn-plaque:disabled,.bet-ctrl button:disabled{filter:grayscale(.85) brightness(.48);cursor:default}.btn-sm{width:clamp(42px,4vw,58px);aspect-ratio:1;font-size:clamp(18px,1.7vw,27px)}.btn-sm.on{color:#fff;box-shadow:0 0 17px #f5ba37,0 6px 14px #000}.btn-sm.off{opacity:.65}.btn-spin{width:clamp(84px,7.5vw,116px);aspect-ratio:1;border:0;background-color:transparent;background-image:var(--spin-art);background-size:contain;background-position:center;background-repeat:no-repeat;font-size:clamp(34px,3.6vw,54px);color:#ffefa4;text-shadow:0 3px 5px #481000;filter:drop-shadow(0 8px 12px #000)}.btn-spin.spinning i{animation:spin 1s linear infinite}.btn-plaque{width:clamp(90px,8.2vw,126px);padding:8px;border:2px solid #d1a03b;border-radius:10px;background:#4b2a0df0;color:#ffe5a0;font-size:clamp(9px,.8vw,12px);font-weight:900;line-height:1.45;cursor:pointer;box-shadow:0 5px 13px #000,inset 0 0 10px #ffdc7829}@keyframes spin{to{transform:rotate(360deg)}}.float-win{position:absolute;left:50%;top:44%;z-index:18;transform:translate(-50%,-50%);color:#fff3a3;font:900 clamp(26px,3.1vw,48px) ui-monospace,monospace;text-shadow:0 0 16px #ffb41f,0 4px 5px #000;pointer-events:none;animation:float-win .95s ease forwards}@keyframes float-win{0%{opacity:0;transform:translate(-50%,-35%) scale(.7)}22%{opacity:1;transform:translate(-50%,-50%) scale(1.08)}78%{opacity:1}to{opacity:0;transform:translate(-50%,-100%) scale(.96)}}.verdict-banner{position:absolute;left:50%;top:4%;z-index:24;transform:translate(-50%);min-width:45%;padding:7px 15px;border:2px solid #d1a03b;border-radius:8px;color:#fff0b4;background:#0b0808f0;text-align:center;font-size:clamp(10px,1vw,15px);font-weight:900;letter-spacing:.11em;box-shadow:0 6px 16px #000;animation:verdict .82s ease forwards}.verdict-red{border-color:#e3583d}.verdict-green{border-color:#52c97a}.verdict-white{border-color:#e7edf6}.verdict-gray{border-color:#77736a}@keyframes verdict{0%{opacity:0;transform:translate(-50%,-14px)}18%,82%{opacity:1;transform:translate(-50%)}to{opacity:0}}.toast{position:fixed;left:50%;bottom:13%;z-index:80;transform:translate(-50%);padding:9px 24px;border:2px solid #c39438;border-radius:24px;color:#ffe9ad;background:#0c0806f0;box-shadow:0 7px 19px #000;font-size:clamp(11px,1vw,15px);font-weight:900;letter-spacing:.14em;animation:toast .95s ease forwards}@keyframes toast{0%{opacity:0;transform:translate(-50%,16px)}18%,75%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-10px)}}.skill-stage{position:absolute;left:13%;right:13%;top:33%;z-index:30;height:27%;display:flex;align-items:center;gap:13px;padding:8px 20px;color:#fff1bf;background:#050609ed;border:2px solid #d4a43d;box-shadow:0 0 30px #000,inset 0 0 20px #dc9e282e;opacity:0;pointer-events:none;transform:scale(.82);transition:opacity .18s,transform .22s}.skill-stage.on{opacity:1;transform:scale(1)}.skill-stage img{height:100%;aspect-ratio:1;object-fit:cover;border:2px solid #d7ad54}.skill-stage span{display:flex;flex-direction:column;gap:6px}.skill-stage small{color:#bd8d43;font-size:clamp(8px,.8vw,12px);letter-spacing:.15em}.skill-stage strong{font-size:clamp(17px,1.8vw,28px);line-height:1.35;text-shadow:0 2px 3px #000}.skill-stage.ultimate{border-width:3px;box-shadow:0 0 34px #a95b10,inset 0 0 22px #ffb23133}.big-win{position:absolute;inset:29% 8% 20%;z-index:40;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:#fff1a1;background:#210e04e0;border:3px solid #e2af3f;box-shadow:0 0 48px 16px #d37b13,inset 0 0 35px #8b330c;opacity:0;pointer-events:none;transform:scale(.7);transition:opacity .2s,transform .26s cubic-bezier(.2,.85,.3,1.2)}.big-win.on{opacity:1;transform:scale(1)}.big-win span{font-size:clamp(18px,2vw,30px);font-weight:900;letter-spacing:.18em}.big-win strong{font:900 clamp(48px,6.2vw,96px) ui-monospace,monospace;text-shadow:0 0 22px #ffbd33,0 5px 7px #000}.big-win small{color:#f6c66b;font-size:clamp(13px,1.4vw,22px)}.overlay{position:fixed;inset:0;z-index:70;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:17px;padding:24px;color:#ffe8ae;background:#040407e0;backdrop-filter:blur(6px);text-align:center;animation:overlay-in .24s ease}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}.overlay h1{margin:0;color:#ffe59a;font-size:clamp(36px,5vw,72px);letter-spacing:.2em;text-shadow:0 0 25px #b86b14,0 4px 6px #000}.overlay h2{margin:0;color:#ffe59a;font-size:clamp(24px,3vw,42px);letter-spacing:.15em}.overlay .quote{max-width:680px;font-size:clamp(13px,1.25vw,19px);line-height:1.75}.overlay .sub{color:#c59d5c;font-size:12px}.overlay .amount{color:#fff09c;font:900 clamp(44px,6vw,88px) ui-monospace,monospace;text-shadow:0 0 23px #e59c1b,0 4px 6px #000}.btn-gold,.btn-ghost{padding:11px 30px;border:2px solid #e0b54e;border-radius:28px;color:#2a1605;background:#dfaf45;font-weight:900;letter-spacing:.16em;cursor:pointer;box-shadow:0 7px 16px #000}.btn-ghost{color:#ffe5a2;background:#24170c;border-color:#8e6428}.pick-row{display:flex;justify-content:center;gap:clamp(8px,1.2vw,18px)}.pick-el{width:clamp(105px,11vw,168px);height:clamp(180px,22vh,250px);padding:8px;display:grid;grid-template-rows:1fr 58px auto;justify-items:center;gap:6px;border:2px solid #9b6d25;border-radius:12px;color:#ffe6a2;background:#0e0b0af0;cursor:pointer;box-shadow:0 8px 18px #000;transition:transform .16s,border-color .16s,box-shadow .16s}.pick-el:hover{transform:translateY(-8px);border-color:#f0c962;box-shadow:0 14px 26px #000,0 0 19px #af6a12}.pick-portrait{width:100%;height:100%;object-fit:cover;border:1px solid #d0a343}.pick-el .seal{width:58px;height:58px;object-fit:contain;margin-top:-31px;filter:drop-shadow(0 3px 5px #000)}.pick-el .nm{font-size:clamp(11px,1.1vw,16px);font-weight:900;letter-spacing:.12em}.pick-hint{min-height:40px;color:#e7c888}.help-panel{width:min(900px,92vw);max-height:84vh;overflow:auto;padding:22px;color:#f3dfb6;background:#15100c;border:2px solid #b88530;text-align:left;line-height:1.7;box-shadow:0 16px 40px #000}.help-panel h3{margin:18px 0 5px;color:#f0bf55}.help-panel table{width:100%;border-collapse:collapse;font-size:12px}.help-panel th,.help-panel td{border:1px solid #5e4623;padding:5px 8px}.help-panel td:first-child{display:flex;align-items:center;gap:7px}.pay-icon{width:30px;height:30px;object-fit:contain}.rg{margin-top:14px;color:#b7a78a;font-size:11px}.cap-stamp,.egg-stamp{padding:7px 18px;border:2px solid #ffb477;color:#fff0cc;background:#8d2114;font-size:24px;font-weight:900;letter-spacing:.16em;transform:rotate(-4deg)}@media(max-height:700px){.logo-seal{padding:6px 12px}.logo-seal small{display:none}.banner-top{padding:6px 20px}.rtp-badge{padding:5px 12px}.controls{gap:5px;bottom:10px}.btn-sm{width:38px}.btn-spin{width:76px}.btn-plaque{width:82px;padding:5px}.dock{height:48px;padding:5px 15px}}@media(max-width:1100px){.scene{background-position:center}.logo-seal{width:155px}.logo-seal .t{font-size:21px}.banner-top{min-width:240px}.controls{right:12px}.gauges{left:-45px}.dock{width:min(560px,54vw,78vh)}}@media(orientation:portrait){.scene:before{content:"請旋轉裝置，橫屏進入赤壁";position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:24px;color:#ffe3a0;background:#08090d;font-size:22px;letter-spacing:.12em;text-align:center}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
