/* Revision audio: aset visual asli + prompt suara yang kompatibel dengan kebijakan autoplay browser. */
:root { color-scheme: dark; }
html,body { min-width: 320px; }
body.classic-theme { margin:0; min-height:100vh; background:#080000 url('original/RY5yWuzqQ8ZwF2136nSOo0l4kTYvRmEVVKx3fjhKtViwTiYPDY.png') center center / 100% 100% fixed no-repeat; color:white; font-family:Arial,Helvetica,sans-serif; }
.classic-theme .classic-page {max-width:1320px;min-height:100vh;margin:auto;display:flex;flex-direction:column;justify-content:center;padding:12px 20px 10px;}
.classic-theme .game-grid {display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:0;align-items:center;max-width:none;width:100%;margin:auto;}
.classic-theme .wheel-panel {padding:0;min-width:0;}
.classic-theme .wheel-stage {width:100%;max-width:760px;aspect-ratio:880 / 923;position:relative;margin:auto;display:block;isolation:isolate;overflow:visible;}
.classic-theme .wheel-rotor {position:absolute;z-index:1;left:4.5454545%;top:6.50054%;width:90.90909%;aspect-ratio:1;will-change:transform;transform:rotate(0deg);transform-origin:50% 50%;}
.classic-theme .wheel-rotor img, .classic-theme .wheel-rotor canvas {width:100%;height:100%;display:block;object-fit:contain;user-select:none;-webkit-user-drag:none;}
.classic-theme .wheel-rotor canvas[hidden],.classic-theme .wheel-rotor img[hidden] {display:none;}
.classic-theme .wheel-frame-original {position:absolute;z-index:2;top:0;left:0;width:100%;height:100%;object-fit:contain;pointer-events:none;user-select:none;-webkit-user-drag:none;}
.classic-theme .entry-panel {background:none!important;border:0!important;box-shadow:none!important;padding:0 clamp(15px,3vw,38px)!important;text-align:center!important;max-width:none;}
.classic-theme .logo-original {display:block;width:100%;height:auto;max-height:260px;object-fit:contain;margin:0 auto 16px;user-select:none;}
.classic-theme #headerTitle {font-size:clamp(18px,2vw,24px);color:#fff;text-shadow:-7px 4px 11px #000;margin:22px auto 22px;font-weight:800;line-height:1.35;}
.classic-theme .entry-panel form {text-align:center;}
.classic-theme .input-wrap {background:white;border:1px solid #ced4da;border-radius:4px;box-shadow:none;overflow:hidden;margin-bottom:15px;}
.classic-theme .input-wrap input {width:100%;height:49px;background:white;color:#272727;border:0;outline:0;font-size:18px;font-family:Arial,sans-serif;padding:11px 16px;}
.classic-theme .input-wrap input::placeholder{color:#757b80;opacity:1;}
.classic-theme .action-row {display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:25px;}
.classic-theme .action-row button {min-width:0;width:100%;min-height:48px;display:block;border:0;border-radius:30px;background:linear-gradient(to bottom,#ecad00 16%,#ffd563 44%,#ecad00 99%);color:black;font-size:clamp(16px,1.8vw,22px);font-weight:900;font-family:Arial,sans-serif;box-shadow:2px 2px 2px #666;cursor:pointer;padding:7px 9px;letter-spacing:0;}
.classic-theme .action-row button:hover:not(:disabled){filter:brightness(1.07)}
.classic-theme .action-row button:disabled {opacity:.7;cursor:not-allowed;}
.classic-theme .action-row button#spinBtn:only-child {grid-column:1/-1;}
.classic-theme .status {text-align:center;min-height:19px;color:#fff1b7;font-size:13px;text-shadow:1px 2px 4px #000;margin:15px 0 2px;}
.classic-theme .status.error {color:#ffd2d2;}
.classic-theme .rules-link {background:rgba(0,0,0,.55);border:1px solid #a58e65;color:#e9d4ac;font-size:12px;border-radius:20px;padding:8px 18px;cursor:pointer;margin:10px auto 0;}
.classic-theme footer {margin-top:12px;text-align:center;font-size:11px;color:#ded4c1;text-shadow:1px 2px 3px #000;}
.classic-theme footer a {color:#fff1a6;}
.classic-theme .modal {z-index:100;}
.classic-theme .modal-card {background:#313131;color:white;border:1px solid #b11c19;border-radius:5px;}
.classic-theme .modal-card h2 {font-size:24px;margin:0 0 12px;color:#fff;}
.classic-theme .modal-card .redeem {max-width:240px;margin:22px auto 0;justify-content:center;}
.classic-theme .sr-only {position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;}
.preview-banner {text-align:center;background:#3c1800eb;border:1px solid #e9a036;border-radius:5px;padding:9px;font-size:12px;letter-spacing:.4px;color:#ffedae;margin:0 0 12px;}
@media(max-width:760px){
 body.classic-theme {background-size:cover;background-position:center center;}
 .classic-theme .classic-page {padding:12px 10px 10px;justify-content:flex-start;}
 .classic-theme .game-grid {display:flex;flex-direction:column;gap:4px;margin:0;}
 .classic-theme .wheel-panel {width:100%;max-width:550px;}
 .classic-theme .wheel-stage {max-width:550px;}
 .classic-theme .entry-panel {width:100%;max-width:520px;padding:0 16px!important;margin:0 auto;}
 .classic-theme .logo-original {max-width:340px;max-height:175px;margin:0 auto 2px;}
 .classic-theme #headerTitle {margin:12px auto 14px;font-size:20px;}
 .classic-theme .input-wrap {margin-bottom:12px;}
 .classic-theme .action-row {gap:10px;margin-top:18px;}
 .classic-theme .action-row button {font-size:18px;}
 .classic-theme footer {margin:15px 0 6px;}
}
@media (prefers-reduced-motion:reduce) {.classic-theme .wheel-rotor{will-change:auto;}}


/* Welcome/audio permission prompt */
.sound-welcome[hidden] { display: none !important; }
.sound-welcome { position: fixed; inset: 0; z-index: 9999; display: grid; place-items: center; padding: 18px; background: rgba(0,0,0,.86); backdrop-filter: blur(5px); }
.sound-welcome-card { width: min(92vw, 520px); max-height: 90vh; overflow-y: auto; padding: clamp(22px,4vw,36px); border: 1px solid #d59b28; border-radius: 16px; background: linear-gradient(155deg,#341006,#100604 78%); box-shadow: 0 20px 80px #000e, inset 0 1px #ffffff18; text-align: center; color: #fff; }
.sound-welcome-note-icon { color: #ffd05a; font-size: 40px; line-height: 1; margin-bottom: 12px; text-shadow: 0 0 20px #ff9c18aa; }
.sound-welcome-card h2 { margin: 0 0 14px; color: #ffdc7b; font-size: clamp(20px,3vw,27px); line-height: 1.25; }
.sound-welcome-card p { color: #f6e8d4; font-size: 14px; line-height: 1.6; }
.sound-welcome-primary { margin: 20px auto 0; max-width: 320px; }
.sound-welcome-secondary { display: block; width: min(100%,320px); margin: 12px auto 0; border: 1px solid #a78b63; border-radius: 24px; padding: 12px 16px; background: #160a06; color: #fff1d4; font-weight: 800; cursor: pointer; }
.sound-welcome-secondary:hover { background: #2b1309; }
.sound-welcome-card .sound-welcome-status { margin: 15px 0 0; color: #d4c0a4; font-size: 11px; }
