:root{color-scheme:light;--bp-ink:#27251e;--bp-paper:#fff9e9;--bp-red:#a83c31;--bp-gold:#d59f43;--bp-green:#355d44}
*{box-sizing:border-box}
html,body{width:100%;height:100%;margin:0;overflow:hidden;background:#e9dcc0;color:var(--bp-ink);font-family:Arial,Helvetica,sans-serif}
body{padding:clamp(4px,1.5vh,14px)}
button{font:inherit}
.bp-app{width:min(1120px,100%);height:100%;margin:0 auto;padding:clamp(5px,1.4vh,14px);display:flex;flex-direction:column;overflow:hidden;background:#f6eddb;border:1px solid #3d3428;box-shadow:7px 7px 0 rgba(50,38,25,.16)}
.bp-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex:0 0 auto;padding:2px 2px 8px}
.bp-title>span,.bp-card-kicker{font-size:9px;font-weight:900;letter-spacing:.17em;color:#87663b}
.bp-title h1{margin:5px 0 0;font:900 clamp(20px,3vw,30px)/1 Georgia,'Times New Roman',serif;letter-spacing:-.035em}
.bp-actions{display:flex;gap:7px}.bp-actions button{border:1px solid #38352b;background:#fffaf0;padding:8px 10px;font-size:9px;font-weight:900;letter-spacing:.09em;color:#302b20;cursor:pointer}.bp-actions button:hover,.bp-actions button:focus-visible{background:#302b20;color:white;outline:2px solid #302b20;outline-offset:2px}.bp-actions i{font-style:normal;font-size:12px;margin-right:3px}
.bp-hud{display:flex;align-items:center;gap:0;min-height:38px;padding:5px 10px;flex:0 0 auto;background:#303830;color:#f8edcf;border:1px solid #20251f;font-size:9px;font-weight:800;letter-spacing:.1em}.bp-hud>span{padding:3px 12px;border-right:1px solid rgba(248,237,207,.2)}.bp-hud>span:first-child{padding-left:0}.bp-hud b{display:inline-block;margin-left:4px;color:#f0c76a}.bp-hud .bp-brand{margin-left:auto;border:0;padding-right:0;color:#d8c395;font-size:8px}
.bp-stage{position:relative;flex:1 1 auto;min-height:0;overflow:hidden;margin-top:7px;background:#e9d4a6;border:1px solid #41372a}.bp-phaser{position:absolute;inset:0}.bp-phaser canvas{display:block;width:100%;height:100%;object-fit:contain}
.bp-start,.bp-pause,.bp-result{position:absolute;inset:0;display:grid;place-items:center;padding:16px;background:rgba(27,31,27,.58)}.bp-start[hidden],.bp-pause[hidden],.bp-result[hidden],.bp-error[hidden]{display:none!important}.bp-card{width:min(420px,92%);padding:24px;background:#fff9e9;border:1px solid #28281f;box-shadow:7px 7px 0 rgba(24,26,22,.35);text-align:center}.bp-card h2{margin:9px 0 10px;font:900 clamp(26px,4.5vw,42px)/.99 Georgia,'Times New Roman',serif;letter-spacing:-.045em}.bp-card p{max-width:340px;margin:0 auto 18px;font-size:13px;line-height:1.55;color:#665d4d}.bp-card p strong{color:#8c3a2f}.bp-card button,.bp-pause button{border:1px solid #242820;background:#355d44;color:#fff9e9;padding:12px 18px;font-size:10px;font-weight:900;letter-spacing:.12em;cursor:pointer}.bp-card button:hover,.bp-card button:focus-visible,.bp-pause button:hover{background:#263c2d;outline:2px solid #263c2d;outline-offset:2px}.bp-card button span{padding-left:12px}.bp-card>small{display:block;margin-top:13px;font-size:8px;font-weight:900;letter-spacing:.1em;color:#897650}
.bp-pause>div{display:grid;gap:10px;justify-items:center;padding:25px 35px;background:#fff9e9;border:1px solid #28281f}.bp-pause small{font-size:9px;font-weight:900;letter-spacing:.16em;color:#87663b}.bp-pause strong{font:900 26px Georgia,serif}.bp-result-card{max-height:100%;overflow:hidden}.bp-coupon{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0 8px;padding:11px 14px;background:#f5e8c8;border:1px dashed #9f7940;text-align:left}.bp-coupon[hidden]{display:none}.bp-coupon small{display:block;margin:0 0 5px;font-size:8px;font-weight:900;letter-spacing:.12em;color:#776243}.bp-coupon code{font:900 18px/1.2 'Courier New',monospace;letter-spacing:.08em}.bp-coupon span{display:block;margin-top:4px;font-size:8px;color:#776243}.bp-coupon button{padding:6px 10px;background:#fff9e9;color:#302b20;font-size:20px}.bp-copy-status{min-height:12px}.bp-result-replay{margin-top:10px}
.bp-error{position:absolute;inset:0;display:grid;place-items:center;padding:30px;background:#fff9e9;color:#8c3a2f;font-weight:800;text-align:center}
.bp-controls{display:flex;align-items:center;justify-content:space-between;gap:15px;flex:0 0 auto;padding:8px 2px 1px}.bp-controls p{margin:0;font-size:11px;line-height:1.45;color:#655d4e}.bp-controls p b{color:#302b20}.bp-touch{display:flex;gap:5px;flex-shrink:0}.bp-touch button{min-width:61px;min-height:35px;border:1px solid #3c392f;background:#fff9e9;color:#383328;padding:7px 9px;font-size:9px;font-weight:900;letter-spacing:.07em;cursor:pointer;touch-action:manipulation}.bp-touch button:hover,.bp-touch button:focus-visible,.bp-touch button.is-selected{background:#d6ae62;color:#2d291e;outline:2px solid #3c392f;outline-offset:1px}.bp-touch .bp-fire{background:#9d3d31;color:white;border-color:#713025}.bp-touch .bp-fire:hover,.bp-touch .bp-fire:focus-visible{background:#762d25}
@media(max-width:680px){body{padding:4px}.bp-app{padding:6px;box-shadow:3px 3px 0 rgba(50,38,25,.16)}.bp-topbar{align-items:flex-start;padding-bottom:6px}.bp-actions button{padding:7px 6px;font-size:8px}.bp-hud{flex-wrap:wrap;padding:4px;font-size:8px}.bp-hud>span{padding:3px 6px}.bp-hud .bp-brand{display:none}.bp-controls{display:block;padding-top:6px}.bp-controls p{font-size:10px;margin-bottom:6px}.bp-touch{display:grid;grid-template-columns:repeat(4,1fr)}.bp-touch button{min-width:0;min-height:32px}.bp-card{padding:16px}.bp-card p{font-size:11px}}
@media(max-width:420px){.bp-title>span{font-size:7px}.bp-title h1{font-size:21px}.bp-hud>span{font-size:7px}.bp-card h2{font-size:28px}.bp-actions{gap:4px}.bp-actions button{font-size:7px}}
@media(max-height:520px){body{padding:3px}.bp-app{padding:4px}.bp-topbar{padding-bottom:4px}.bp-title h1{font-size:20px}.bp-hud{min-height:30px;padding:3px 7px}.bp-hud>span{padding:2px 7px}.bp-controls{padding-top:4px}.bp-controls p{font-size:9px;line-height:1.2}.bp-touch button{min-height:28px;padding:4px 7px}.bp-stage{margin-top:4px}.bp-start,.bp-pause,.bp-result{position:fixed;z-index:100;inset:0;padding:8px}.bp-card{padding:10px 14px}.bp-card h2{font-size:25px;margin:5px 0}.bp-card p{font-size:11px;line-height:1.3;margin-bottom:9px}.bp-card button{padding:8px 12px;font-size:9px}.bp-card>small{margin-top:6px;font-size:7px}.bp-coupon{margin:8px 0 4px;padding:7px 9px}.bp-coupon code{font-size:15px}.bp-result-replay{margin-top:5px}}
