@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: #3b2412;--ui-soft: #6b4f30;--ui-gold: #7a4810;--ui-gold-hi: #ffe08a;--ui-gold-deep: #6b4214;--ui-body: #f3e4c1;--ui-inset: #e6d1a2;--ui-title-body: #7a3420;--ui-outline: #2b1a0c;--ui-gem: #0f766e;--ui-good: #155c39;--ui-bad: #9e1f18;--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,#28180840,#1e120699);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 #1e120673;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 #3a1408,0 2px 0 var(--ui-outline);border-style:solid;border-width:8px 10px;border-image:url(/assets/ui/title.png) 10 12 fill / 20px 24px stretch;background:var(--ui-title-body);background-clip:padding-box;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);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 rgba(255,250,235,.7);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 5px rgba(201,158,69,.55))}.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),.pp-btn.is-on:hover:not(:disabled),.pp-btn.is-on:focus-visible:not(:disabled),.pp-btn[aria-pressed=true]:hover:not(:disabled),.pp-btn[aria-pressed=true]:focus-visible:not(:disabled){border-image-source:url(/assets/ui/btn-primary.png);filter:brightness(1.08) drop-shadow(0 0 6px rgba(201,158,69,.7))}.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:#fffaf0;padding:8px 10px;border:2px solid var(--ui-gold-deep);box-shadow:inset 0 2px #78501e40,0 1px #fffaeb99;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:#8c602814;box-shadow:inset 0 0 0 1px #9a6a264d}.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 #78501e4d}.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}}
