@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-thai-thai-400-normal-BEOmKAI1.woff2) format("woff2"),url(/assets/noto-sans-thai-thai-400-normal-Dxb_unuU.woff) format("woff");unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-thai-latin-ext-400-normal-nBP59pVw.woff2) format("woff2"),url(/assets/noto-sans-thai-latin-ext-400-normal-B-1H0YkH.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-sans-thai-latin-400-normal-BaWBrqFP.woff2) format("woff2"),url(/assets/noto-sans-thai-latin-400-normal-Dh_FJjOB.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-sans-thai-thai-700-normal-Cm52XUnT.woff2) format("woff2"),url(/assets/noto-sans-thai-thai-700-normal-C9ISMlQq.woff) format("woff");unicode-range:U+02D7,U+0303,U+0331,U+0E01-0E5B,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-sans-thai-latin-ext-700-normal-uJk63onE.woff2) format("woff2"),url(/assets/noto-sans-thai-latin-ext-700-normal-xdwl2Xg6.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Sans Thai;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/noto-sans-thai-latin-700-normal-_dn-40wb.woff2) format("woff2"),url(/assets/noto-sans-thai-latin-700-normal-C4AMFKt5.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}html,body{margin:0;height:100%;background:#1b1033;overflow:hidden}#app{width:100vw;height:100vh}#app canvas{width:100vw!important;height:100vh!important;image-rendering:pixelated}#rotate{display:none;position:fixed;inset:0;z-index:10;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#1b1033;color:#ffd966;text-align:center;padding:16px;font:600 18px Noto Sans Thai,sans-serif}#rotate span{font-size:48px}@media(orientation:portrait)and (pointer:coarse)and (max-width:600px){#rotate{display:flex}}button:disabled{opacity:.45;cursor:not-allowed;filter:grayscale(.6)}:root{--ui-text: #f4e7c6;--ui-soft: #bfae8c;--ui-gold: #d4a03c;--ui-gold-hi: #ffe08a;--ui-gold-deep: #5c3a10;--ui-body: #1c1730;--ui-inset: #0f0c1a;--ui-outline: #0b0912;--ui-gem: #2dd4bf;--ui-good: #5fe0a4;--ui-bad: #ff7a6b;--ui-font: "Noto Sans Thai", sans-serif;--ui-ease: cubic-bezier(.2, .8, .2, 1)}.pp-backdrop{position:fixed;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;padding:16px;background:radial-gradient(ellipse at center,#0c081a8c,#04030adb);animation:pp-fade .16s var(--ui-ease)}.pp-window{position:relative;box-sizing:border-box;width:100%;max-height:100%;overflow-y:auto;display:grid;gap:14px;padding:10px 12px 14px;color:var(--ui-text);font:15px var(--ui-font);border-style:solid;border-width:24px;border-image:url(/assets/ui/window.png) 16 / 32px / 0 stretch;background:var(--ui-body) url(/assets/ui/body.png) repeat;background-size:32px 32px;background-clip:padding-box;image-rendering:pixelated;box-shadow:0 18px 40px #0000008c,0 0 0 1px #ffe08a0d;scrollbar-color:var(--ui-gold) var(--ui-inset);animation:pp-rise .2s var(--ui-ease)}.pp-title{margin:-6px auto 0;padding:2px 22px;min-width:60%;box-sizing:border-box;text-align:center;font:700 18px/1.6 var(--ui-font);letter-spacing:.02em;color:var(--ui-gold-hi);text-shadow:0 1px 0 var(--ui-gold-deep),0 2px 0 var(--ui-outline),0 0 10px rgba(255,196,92,.35);border-style:solid;border-width:8px 10px;border-image:url(/assets/ui/title.png) 10 12 fill / 20px 24px stretch;image-rendering:pixelated}.pp-section{display:grid;gap:8px}.pp-section>h3{margin:0;padding-bottom:10px;font:700 15px var(--ui-font);color:var(--ui-gold);text-shadow:0 1px 0 var(--ui-outline);background:url(/assets/ui/divider.png) repeat-x left bottom / 96px 14px;image-rendering:pixelated}.pp-window p,.pp-window output,.pp-window li{color:var(--ui-text)}.pp-window small,.pp-soft{color:var(--ui-soft)}.pp-btn{font:600 15px var(--ui-font);color:var(--ui-text);min-height:44px;padding:6px 14px;border-style:solid;border-width:6px;border-image:url(/assets/ui/btn.png) 8 fill / 16px stretch;background:none;image-rendering:pixelated;cursor:pointer;text-shadow:0 1px 0 var(--ui-outline);transition:transform 90ms var(--ui-ease),filter 90ms var(--ui-ease)}.pp-btn:disabled,.pp-btn--primary:disabled{border-image-source:url(/assets/ui/btn-down.png);color:var(--ui-soft);text-shadow:none;opacity:.55;filter:grayscale(.7);cursor:not-allowed}.pp-btn:hover:not(:disabled),.pp-btn:focus-visible:not(:disabled){border-image-source:url(/assets/ui/btn-hover.png);filter:drop-shadow(0 0 6px rgba(255,210,120,.35))}.pp-btn:active:not(:disabled){border-image-source:url(/assets/ui/btn-down.png);transform:translateY(1px)}.pp-btn--primary:not(:disabled),.pp-btn.is-on,.pp-btn[aria-pressed=true]{border-image-source:url(/assets/ui/btn-primary.png);color:#2a1606;text-shadow:0 1px 0 rgba(255,246,208,.6)}.pp-btn--primary:hover:not(:disabled),.pp-btn--primary:focus-visible:not(:disabled){border-image-source:url(/assets/ui/btn-primary.png);filter:brightness(1.1) drop-shadow(0 0 8px rgba(255,210,120,.5))}.pp-window :focus-visible{outline:2px solid var(--ui-gem);outline-offset:2px}.pp-window input{font:16px var(--ui-font);color:var(--ui-text);background:var(--ui-inset);padding:8px 10px;border:2px solid var(--ui-gold-deep);box-shadow:inset 0 2px #0009,0 1px #ffe08a26;border-radius:0}.pp-window input::placeholder{color:var(--ui-soft)}.pp-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:6px 8px;background:#0a081473;box-shadow:inset 0 0 0 1px #d4a03c2e}.pp-chip{display:inline-flex;align-items:center;gap:4px;color:var(--ui-soft)}.pp-chip--ok{color:var(--ui-good)}.pp-icon{display:inline-block;flex:none;vertical-align:middle;background-image:url(/assets/ui/items.png);background-repeat:no-repeat;image-rendering:pixelated}.pp-slot{display:inline-grid;place-items:center;flex:none;border-style:solid;border-width:4px;border-image:url(/assets/ui/cell.png) 4 fill / 8px stretch;image-rendering:pixelated}.pp-meter{height:10px;overflow:hidden;background:var(--ui-inset);border:2px solid var(--ui-gold-deep);box-shadow:inset 0 2px #0009}.pp-meter>span{display:block;height:100%;background:linear-gradient(180deg,#7cf0c0,#2aa57a);box-shadow:inset 0 1px #ffffff59}@media(max-height:500px){.pp-backdrop{padding:6px}.pp-window{gap:8px;padding:4px 8px 8px;border-width:12px;border-image-width:16px}.pp-title{margin-top:0;padding:0 16px;font-size:15px;line-height:1.4;border-width:5px 8px;border-image-width:10px 12px}.pp-section>h3{padding-bottom:7px;background-size:48px 7px}}@keyframes pp-fade{0%{opacity:0}}@keyframes pp-rise{0%{opacity:0;transform:translateY(8px) scale(.98)}}@media(prefers-reduced-motion:reduce){.pp-backdrop,.pp-window{animation:none}.pp-btn{transition:none}}
