@font-face{font-family:Noto Sans Khmer;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2df0f432c3c27475-s.p.woff2) format("woff2");unicode-range:u+1780-17ff,u+19e0-19ff,u+200c-200d,u+25cc}@font-face{font-family:Noto Sans Khmer;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/e1fc9bb079dc1c14-s.woff2) format("woff2");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 Khmer;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/1dff1dd9db4a44fb-s.p.woff2) format("woff2");unicode-range:u+00??,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 Khmer;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2df0f432c3c27475-s.p.woff2) format("woff2");unicode-range:u+1780-17ff,u+19e0-19ff,u+200c-200d,u+25cc}@font-face{font-family:Noto Sans Khmer;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/e1fc9bb079dc1c14-s.woff2) format("woff2");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 Khmer;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/1dff1dd9db4a44fb-s.p.woff2) format("woff2");unicode-range:u+00??,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 Khmer;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2df0f432c3c27475-s.p.woff2) format("woff2");unicode-range:u+1780-17ff,u+19e0-19ff,u+200c-200d,u+25cc}@font-face{font-family:Noto Sans Khmer;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/e1fc9bb079dc1c14-s.woff2) format("woff2");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 Khmer;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/1dff1dd9db4a44fb-s.p.woff2) format("woff2");unicode-range:u+00??,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 Khmer;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2df0f432c3c27475-s.p.woff2) format("woff2");unicode-range:u+1780-17ff,u+19e0-19ff,u+200c-200d,u+25cc}@font-face{font-family:Noto Sans Khmer;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/e1fc9bb079dc1c14-s.woff2) format("woff2");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 Khmer;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/1dff1dd9db4a44fb-s.p.woff2) format("woff2");unicode-range:u+00??,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 Khmer;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2df0f432c3c27475-s.p.woff2) format("woff2");unicode-range:u+1780-17ff,u+19e0-19ff,u+200c-200d,u+25cc}@font-face{font-family:Noto Sans Khmer;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/e1fc9bb079dc1c14-s.woff2) format("woff2");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 Khmer;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/1dff1dd9db4a44fb-s.p.woff2) format("woff2");unicode-range:u+00??,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 Khmer;font-style:normal;font-weight:900;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2df0f432c3c27475-s.p.woff2) format("woff2");unicode-range:u+1780-17ff,u+19e0-19ff,u+200c-200d,u+25cc}@font-face{font-family:Noto Sans Khmer;font-style:normal;font-weight:900;font-stretch:100%;font-display:swap;src:url(/_next/static/media/e1fc9bb079dc1c14-s.woff2) format("woff2");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 Khmer;font-style:normal;font-weight:900;font-stretch:100%;font-display:swap;src:url(/_next/static/media/1dff1dd9db4a44fb-s.p.woff2) format("woff2");unicode-range:u+00??,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 Khmer Fallback;src:local("Arial");ascent-override:100.54%;descent-override:27.56%;line-gap-override:0.00%;size-adjust:106.33%}.__className_15ce80{font-family:Noto Sans Khmer,Noto Sans Khmer Fallback;font-style:normal}.__variable_15ce80{--font-khmer:"Noto Sans Khmer","Noto Sans Khmer Fallback"}:root{--night:#003c70;--ink:#102737;--pitch:#075261;--sky:#12a6e5;--gold:#f3c653;--bronze:#b77a1d;--paper:#fff5cf;--sky-deep:#00548e;--sky-light:#5bc4ed;--charcoal:#0b202b;--line:rgba(255,255,255,0.18);--danger:#ff5f57;--success:#40d889}*{box-sizing:border-box}body,html{min-height:100%;margin:0;overscroll-behavior:none}body{background:var(--sky-deep);color:var(--paper);font-family:var(--font-khmer),"Noto Sans Khmer","Khmer OS System",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,textarea{font:inherit}button{min-height:44px;border:0;border-radius:8px;background:var(--gold);color:#09111d;cursor:pointer;font-weight:900;transition:transform .18s ease,opacity .18s ease,box-shadow .18s ease}button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 12px 34px rgba(248,200,78,.22)}button:disabled{cursor:not-allowed;opacity:.5}input{min-height:40px;padding:0 10px}input,textarea{width:100%;border:1px solid rgba(255,255,255,.22);border-radius:8px;background:rgba(255,255,255,.08);color:inherit}textarea{min-height:44px;resize:vertical;padding:10px}input[type=color]{padding:2px}input[type=checkbox]{width:18px;min-height:18px;accent-color:var(--gold)}input[type=range]{padding:0;accent-color:var(--gold)}.game-shell{min-height:100svh;position:relative;overflow:hidden;display:grid;place-items:center;padding:max(clamp(18px,3vw,44px),env(safe-area-inset-top)) max(clamp(18px,3vw,44px),env(safe-area-inset-right)) max(clamp(18px,3vw,44px),env(safe-area-inset-bottom)) max(clamp(18px,3vw,44px),env(safe-area-inset-left))}.game-shell.is-celebrating .poster-backdrop{filter:blur(6px) saturate(1.2) brightness(1.08)}.win-burst{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}.win-burst span{--delay:0s;--x:0vw;--spin:240deg;position:absolute;left:50%;top:44%;width:9px;height:22px;border-radius:999px;background:radial-gradient(circle,#fff9bf,var(--gold) 48%,rgba(184,130,31,.2) 70%);box-shadow:0 0 12px rgba(248,200,78,.82),0 0 30px rgba(248,200,78,.32);opacity:0;transform:translate(-50%,-50%) rotate(0deg);animation:prizeConfetti 2.7s ease-out var(--delay) forwards}.win-burst span:nth-child(3n){width:12px;height:12px;background:var(--sky)}.win-burst span:nth-child(4n){background:#fff7d6}.win-burst span:nth-child(5n){height:16px;background:#d8a728}.poster-backdrop{position:absolute;inset:0;background:radial-gradient(circle at 50% 32%,rgba(255,229,135,.22),transparent 28%),linear-gradient(90deg,rgba(0,49,94,.56),rgba(0,132,203,.08) 49%,rgba(0,55,96,.42)),linear-gradient(0deg,rgba(0,42,76,.48),transparent 48%,rgba(0,74,128,.12)),url(/visakha-poster.png) center 42% /cover;filter:blur(6px) saturate(.94) brightness(.92);transform:scale(1.06)}.poster-backdrop:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 86%,rgba(1,23,39,.58),transparent 37%),radial-gradient(ellipse at 50% 8%,transparent 0 27%,rgba(255,248,211,.42) 27.15% 27.3%,transparent 27.45% 100%),radial-gradient(ellipse at 50% 8%,transparent 0 42%,rgba(255,248,211,.28) 42.15% 42.28%,transparent 42.42% 100%);opacity:.9}.orientation-hint{display:none;position:fixed;top:max(18px,env(safe-area-inset-top));left:50%;z-index:8;transform:translateX(-50%);width:min(440px,calc(100vw - 32px));padding:10px 14px;border:1px solid rgba(248,200,78,.54);border-radius:999px;background:rgba(7,17,31,.82);color:#fff7d6;box-shadow:0 18px 50px rgba(0,0,0,.28);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);text-align:center}.orientation-hint strong{margin-right:8px;color:var(--gold);font-weight:1000;text-transform:uppercase}.orientation-hint span{font-size:.92rem;font-weight:800}.language-toggle{position:fixed;top:max(18px,env(safe-area-inset-top));right:max(18px,env(safe-area-inset-right));z-index:8;min-height:38px;padding:6px 13px;border:1px solid rgba(255,245,207,.68);border-radius:999px;background:rgba(0,56,100,.78);color:var(--paper);font-size:.85rem;font-weight:900;line-height:1.2;box-shadow:0 10px 26px rgba(0,22,43,.28);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.game-shell[data-language=km] .event-copy h1{max-width:10ch;font-size:clamp(2.5rem,5.5vw,5.75rem);font-weight:800;line-height:1.22;text-transform:none}.game-shell[data-language=km] .event-copy p,.game-shell[data-language=km] .power-caption,.game-shell[data-language=km] .spin-button,.win-dialog[lang=km]{font-family:inherit}.game-shell[data-language=km] .spin-button{font-size:clamp(.78rem,1.6vw,1rem)}.game-stage{width:min(1180px,100%);min-height:min(720px,calc(100vh - 48px));position:relative;z-index:1;display:grid;grid-template-columns:minmax(200px,.68fr) minmax(380px,1.45fr) minmax(220px,.68fr);grid-gap:clamp(18px,3vw,36px);gap:clamp(18px,3vw,36px);align-items:center}.event-copy{align-self:end;padding-bottom:clamp(20px,8vh,96px)}.kicker,.panel-label{display:inline-flex;align-items:center;width:-moz-fit-content;width:fit-content;min-height:26px;padding:4px 10px;border:1px solid rgba(248,200,78,.55);border-radius:999px;color:var(--gold);font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.event-copy h1{margin:0 0 14px;max-width:8ch;color:#fff7d6;font-size:clamp(3rem,8vw,7.5rem);line-height:.86;font-weight:1000;text-transform:uppercase}.event-copy p{max-width:31ch;margin:0;color:rgba(247,243,229,.82);font-size:1.05rem;line-height:1.6}.wheel-area{position:relative;display:grid;place-items:center;aspect-ratio:1;width:min(96vw,680px);margin:auto;translate:0 clamp(12px,2vh,24px)}.wheel-area:before{inset:5%;background:radial-gradient(circle,rgba(255,247,205,.3),transparent 58%),conic-gradient(from 0deg,rgba(243,198,83,.3),rgba(18,166,229,.34),rgba(243,198,83,.3));filter:blur(22px)}.wheel-area:after,.wheel-area:before{content:"";position:absolute;border-radius:50%}.wheel-area:after{z-index:0;left:10%;right:10%;bottom:-7%;height:16%;background:radial-gradient(ellipse,rgba(0,0,0,.72),transparent 72%);filter:blur(14px)}.wheel-area.wheel-won:before{animation:winnerHalo 1.25s ease-in-out 3}.wheel-area.wheel-won .wheel-canvas{animation:winnerWheelPulse 1.15s ease-in-out 3}.wheel-canvas{position:relative;width:100%;aspect-ratio:1;touch-action:none;will-change:transform;contain:paint;backface-visibility:hidden;-webkit-backface-visibility:hidden;transform-origin:center center;border:8px solid rgba(248,200,78,.9);border-radius:50%;background:radial-gradient(circle at 35% 25%,rgba(255,255,255,.18),transparent 20%),rgba(4,45,74,.84);box-shadow:0 0 0 6px rgba(255,255,255,.08),inset 0 0 0 8px rgba(255,255,255,.08)}.game-shell.is-spinning .wheel-area:after,.game-shell.is-spinning .wheel-area:before{display:none}.game-shell.is-spinning .pointer{filter:none}.pointer{position:absolute;top:-22px;z-index:4;width:0;height:0;border-left:28px solid transparent;border-right:28px solid transparent;border-top:66px solid #fff7d6;filter:drop-shadow(0 8px 0 rgba(79,47,5,.78)) drop-shadow(0 16px 18px rgba(0,0,0,.45))}.pointer:before{content:"";position:absolute;left:-18px;top:-75px;width:36px;height:24px;border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.86),transparent 45%),url(/texture-brushed-gold.png) 50% /cover,#d8a728;box-shadow:inset 0 -4px 7px rgba(79,47,5,.42),0 7px 16px rgba(0,0,0,.38)}.pointer:after{content:"";position:absolute;left:-6px;top:-69px;width:12px;height:12px;border-radius:50%;background:#101820;box-shadow:inset 0 2px 2px rgba(255,255,255,.28)}.spin-button{position:absolute;z-index:5;width:clamp(72px,15vw,104px);aspect-ratio:1;border:7px solid #101820;border-radius:50%;background:radial-gradient(circle at 32% 24%,rgba(255,255,255,.7),transparent 23%),url(/texture-brushed-gold.png) 50% /cover,var(--gold);font-size:clamp(1.15rem,3vw,1.8rem);display:grid;place-content:center;grid-gap:1px;gap:1px;text-transform:uppercase;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;box-shadow:inset 0 8px 16px rgba(255,255,255,.22),inset 0 -10px 16px rgba(94,58,7,.4),0 12px 22px rgba(0,0,0,.38)}.spin-button span{line-height:1}.spin-button small{color:rgba(9,17,29,.72);font-size:.64rem;font-weight:1000;line-height:1}.spin-button.is-charging{transform:scale(.94);box-shadow:0 0 0 10px rgba(248,200,78,.16),0 18px 44px rgba(248,200,78,.26)}.power-ring{--power:0;position:absolute;z-index:4;width:clamp(104px,22vw,148px);aspect-ratio:1;display:grid;place-items:center;border-radius:50%;background:conic-gradient(#fff2a6 calc(var(--power) * 72deg),var(--gold) calc(var(--power) * 1turn),rgba(255,255,255,.12) 0),rgba(7,17,31,.32);box-shadow:0 14px 34px rgba(0,0,0,.38);pointer-events:none}.power-ring:before{content:"";inset:12px;border-radius:50%}.power-caption,.power-ring:before{position:absolute;background:rgba(7,17,31,.72)}.power-caption{z-index:5;bottom:8%;min-height:28px;padding:5px 10px;border:1px solid rgba(248,200,78,.36);border-radius:999px;color:#fff7d6;font-size:.82rem;font-weight:900;pointer-events:none}@media (pointer:coarse){button{min-height:52px}.spin-button{width:clamp(96px,13vw,124px);font-size:clamp(1.1rem,1.8vw,1.6rem)}.power-ring{width:clamp(136px,18vw,172px)}.power-caption{min-height:34px;padding:7px 13px;font-size:.92rem}}.win-dialog-backdrop{position:fixed;inset:0;z-index:10;display:grid;place-items:center;padding:max(20px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));background:rgba(3,8,15,.68);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.win-dialog{position:relative;width:min(100%,440px);max-height:min(720px,calc(100svh - 40px));overflow-y:auto;padding:26px;border:1px solid var(--line);border-radius:8px;background:linear-gradient(145deg,rgba(255,255,255,.08),transparent 36%),rgba(7,17,31,.78);text-align:center;box-shadow:0 24px 80px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.12);animation:winDialogIn .24s ease-out both}.win-dialog:before{content:"";position:absolute;inset:0;border:1px solid rgba(248,200,78,.5);border-radius:inherit;pointer-events:none}.win-dialog-close{position:absolute;top:12px;right:12px;z-index:1;width:40px;min-height:40px;padding:0;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:rgba(255,255,255,.08);color:var(--paper);font-size:1.6rem;line-height:1}.win-dialog .panel-label{justify-content:center}.win-dialog h2{margin:18px 0 10px;color:#fff7d6;font-size:clamp(2rem,6vw,3.4rem);line-height:.95}.win-dialog p{margin:0;color:rgba(247,243,229,.78);line-height:1.5}.win-dialog-image{display:block;width:min(100%,240px);aspect-ratio:4/3;margin:18px auto 0;border:1px solid rgba(248,200,78,.48);border-radius:8px;object-fit:cover;background:rgba(255,255,255,.08)}.win-dialog-actions{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px;margin-top:22px}.win-dialog-actions button{width:100%}.win-dialog .notice{margin-top:14px;text-align:left}@keyframes winDialogIn{0%{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes prizeConfetti{0%{opacity:0;transform:translate(-50%,-50%) translateY(0) rotate(0deg)}12%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--x)),52vh) rotate(var(--spin)) scale(.2)}}@keyframes winnerHalo{0%,to{filter:blur(22px);opacity:.9;transform:scale(1)}50%{filter:blur(12px);opacity:1;transform:scale(1.06)}}@keyframes winnerWheelPulse{0%,to{box-shadow:0 28px 90px rgba(0,0,0,.45),inset 0 0 0 8px rgba(255,255,255,.08)}50%{box-shadow:0 34px 110px rgba(248,200,78,.3),0 0 0 16px rgba(248,200,78,.2),inset 0 0 0 8px rgba(255,255,255,.16)}}.admin-error,.admin-success,.notice{border-radius:8px;padding:10px 12px;font-weight:800}.admin-error,.notice{background:rgba(255,95,87,.14);color:#ffd5d2;border:1px solid rgba(255,95,87,.32)}.admin-success{background:rgba(64,216,137,.14);color:#c3ffde;border:1px solid rgba(64,216,137,.32)}.ghost-button,.secondary-action{width:100%;background:rgba(255,255,255,.08);color:var(--paper);border:1px solid rgba(255,255,255,.16)}.admin-shell{min-height:100vh;padding:clamp(18px,3vw,34px);background:linear-gradient(135deg,rgba(14,165,216,.16),transparent 38%),linear-gradient(315deg,rgba(248,200,78,.12),transparent 34%),#07111f}.admin-login-shell{display:grid;place-items:center;position:relative;overflow:hidden}.admin-login-shell:before{content:"VFC";position:absolute;right:clamp(24px,8vw,140px);bottom:clamp(16px,6vw,90px);color:rgba(248,200,78,.08);font-size:clamp(9rem,22vw,22rem);font-weight:1000;line-height:.8;letter-spacing:-.12em;pointer-events:none}.admin-card,.dashboard,.login-card{border:1px solid var(--line);border-radius:8px;background:rgba(16,24,32,.78);box-shadow:0 24px 80px rgba(0,0,0,.28);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.login-card{width:min(460px,100%);margin:0;padding:clamp(28px,5vw,44px);position:relative;z-index:1;background:linear-gradient(145deg,rgba(248,200,78,.13),transparent 38%),rgba(16,24,32,.88)}.admin-card h2,.dashboard h1,.login-card h1{margin:10px 0 18px}.controls-card label,.login-card label{display:grid;grid-gap:8px;gap:8px;color:rgba(247,243,229,.82);font-weight:800}.login-intro{max-width:34ch;margin:-6px 0 24px;color:rgba(247,243,229,.72);line-height:1.55}.login-card input{min-height:48px;border-color:rgba(248,200,78,.32);background:rgba(255,255,255,.1)}.login-card input:focus-visible{outline:3px solid rgba(248,200,78,.36);outline-offset:2px}.login-card button{width:100%;margin-top:16px}.dashboard{width:min(1220px,100%);margin:0 auto;padding:clamp(18px,2.5vw,28px)}.dashboard-header,.header-actions,.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.dashboard-header{margin-bottom:24px}.dashboard-header h1{color:#fff7d6;font-size:clamp(2rem,4vw,4rem);line-height:.98}.header-actions{flex-wrap:wrap}.header-actions button,.section-heading button{min-width:132px;padding:0 16px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,.75fr);grid-gap:18px;gap:18px}.admin-card{padding:18px}.section-heading p,.status-stack p{margin:0;color:rgba(247,243,229,.64)}.prize-table{display:grid;grid-gap:8px;gap:8px;margin-top:16px}.prize-row{display:grid;grid-template-columns:minmax(150px,1.2fr) minmax(190px,1fr) 76px 92px 66px 42px 42px;grid-gap:8px;gap:8px;align-items:center;min-width:0}.table-head{color:rgba(247,243,229,.58);font-size:.8rem;font-weight:900;text-transform:uppercase}.prize-row strong{color:var(--gold);text-align:right}.image-field{display:grid;grid-template-columns:42px minmax(0,1fr);grid-gap:8px;gap:8px;align-items:center}.empty-thumb,.prize-thumb{width:42px;aspect-ratio:1;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:rgba(255,255,255,.08)}.prize-thumb{object-fit:cover}.empty-thumb{display:block;background:linear-gradient(135deg,transparent 47%,rgba(255,255,255,.2) 48%,rgba(255,255,255,.2) 52%,transparent 53%),rgba(255,255,255,.08)}.icon-action{min-height:40px;width:40px;background:rgba(255,95,87,.12);color:#ffd5d2;border:1px solid rgba(255,95,87,.24)}.controls-card{display:grid;align-content:start;grid-gap:18px;gap:18px}.language-card{grid-column:1/-1}.copy-heading{align-items:flex-start}.language-tabs{display:inline-flex;gap:6px;padding:4px;border:1px solid rgba(248,200,78,.3);border-radius:999px;background:rgba(0,41,76,.36)}.language-tab{min-height:34px;padding:4px 13px;border:1px solid transparent;border-radius:999px;background:transparent;color:rgba(247,243,229,.74)}.language-tab,.language-tab:hover:not(:disabled){box-shadow:none}.language-tab.is-active{border-color:rgba(255,245,207,.42);background:var(--gold);color:#09111d}.copy-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px;margin-top:18px}.copy-field{display:grid;grid-gap:7px;gap:7px;color:rgba(247,243,229,.82);font-size:.88rem;font-weight:800}.copy-field.is-multiline{grid-column:span 2}.copy-editor[lang=km]{font-family:var(--font-khmer),"Noto Sans Khmer",sans-serif}.toggle-line{display:flex!important;grid-template-columns:none!important;align-items:center}.status-stack{display:grid;grid-gap:10px;gap:10px;margin-top:10px}@media (max-width:960px){.dashboard-grid,.game-stage{grid-template-columns:1fr}.event-copy{align-self:auto;margin:0;padding-bottom:0}.event-copy h1{max-width:10ch}.dashboard-header,.section-heading{align-items:flex-start;flex-direction:column}.copy-editor{grid-template-columns:1fr}.copy-field.is-multiline{grid-column:auto}.header-actions{width:100%}.header-actions button{flex:1 1}}@media (min-width:760px) and (max-width:1180px){.game-shell{place-items:start center;overflow-y:auto}.poster-backdrop{background-position:top}.game-stage{width:min(900px,100%);min-height:auto;grid-template-columns:1fr;gap:22px;align-items:center;padding:8px 0 20px}.event-copy{align-self:auto;width:100%;padding-bottom:0;text-align:center}.event-copy h1{max-width:none;margin:14px auto 10px;font-size:clamp(4rem,8vw,5.8rem);line-height:.88}.game-shell[data-language=km] .event-copy h1{max-width:none;font-size:clamp(2.35rem,5vw,4.6rem);line-height:1.2;white-space:nowrap}.event-copy p{max-width:42ch;margin-inline:auto;font-size:1.12rem}.wheel-area{width:min(88vw,700px)}}@media (orientation:landscape) and (pointer:coarse) and (min-width:760px) and (max-width:1400px) and (max-height:1100px){.orientation-hint{display:block}}@media (min-width:1181px) and (max-height:1100px){.game-shell{padding:clamp(20px,2.2vw,34px)}.game-stage{width:min(1280px,100%);min-height:min(900px,calc(100svh - 40px));grid-template-columns:minmax(210px,.72fr) minmax(500px,1.16fr) minmax(240px,.72fr);gap:clamp(18px,2vw,28px)}.event-copy{padding-bottom:clamp(16px,5vh,58px)}.event-copy h1{font-size:clamp(3.25rem,5.3vw,5.8rem)}.wheel-area{width:min(54vw,700px)}}@media (max-width:680px){.game-shell{display:block}.game-stage{min-height:auto}.event-copy h1{font-size:3.15rem}.prize-table{overflow-x:auto;padding-bottom:6px}.prize-row{min-width:810px}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important}.win-burst{display:none}}