@font-face{font-family:Alfa;src:url(/cantina-brava/fonts/alfa-slab-one.ttf)format("truetype");font-display:swap}@font-face{font-family:Nunito;src:url(/cantina-brava/fonts/nunito.ttf)format("truetype");font-display:swap}:root{color:#283027;font-synthesis:none;--red:#dc4c20;--yellow:#dfad30;--lcd:#b7c4a0;--ink:#263329;--plastic:#f3eddc;--line:#65735b;background:#d8d1bd;font-family:Nunito,system-ui,sans-serif}*{box-sizing:border-box}html,body,#app{overscroll-behavior:none;width:100%;min-width:320px;height:100%;margin:0}body{background:radial-gradient(at 45% 20%,#efe9dc,#bfb8a5);overflow:hidden}button,input,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:var(--ink);touch-action:manipulation;background:#e0e5c8;border:1px solid #6f795e;border-radius:5px;min-height:40px;padding:9px 14px;font:800 13px Nunito,system-ui;transition:background .15s,transform 80ms}button:hover:not(:disabled){background:#f0f1d9}button:active:not(:disabled){transform:translateY(2px)}button:disabled{opacity:.42;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:3px;outline:3px solid #b15b21}button.primary{color:#f6f3dc;background:#2d3b2e;border-color:#263329;box-shadow:0 3px #19261e}button.primary:hover{background:#44553b}button.danger{color:#8c2d19}.text-button{box-shadow:none;background:0 0;border:0;padding:7px 9px;font-size:12px}.tiny-note{opacity:.8;margin:9px 0 0;font-size:10px;line-height:1.3}#app{padding:10px max(10px, env(safe-area-inset-right)) 10px max(10px, env(safe-area-inset-left));-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;display:flex}.machine{background:linear-gradient(118deg,#fffdf2,#e6dfca 35%,#f6f0e1 64%,#ded6bf);border:2px solid #f9f7ed;border-radius:30px;grid-template-columns:minmax(96px,16%) minmax(0,1fr) minmax(96px,16%);gap:13px;width:min(1200px,100%);height:min(700px,100%);padding:13px;display:grid;overflow:hidden;box-shadow:0 5px #aaa38e,0 16px 40px #554b3b45,inset 0 0 0 4px #ece5d3}.side{color:#f3ebce;background-color:#211e19;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='240' viewBox='0 0 200 240'%3E%3Cg fill='none' stroke='%23ded6bf' stroke-width='2' opacity='.65'%3E%3Cpath d='M-10 14Q40 28 120 10T230 28M-10 29Q60 44 113 24T230 42M-10 49Q70 69 135 40T230 54M-10 71Q50 55 90 77T230 68M-10 85Q10 110 63 89T230 97M-10 117Q40 89 90 113T230 116M-10 134Q45 150 120 128T230 145M-10 155Q90 175 140 149T230 159M-10 178Q60 156 120 181T230 172M-10 202Q40 181 90 201T230 210M-10 226Q60 239 130 217T230 232'/%3E%3C/g%3E%3C/svg%3E");border:3px solid #c9c0aa;border-radius:15px;flex-direction:column;align-items:center;min-height:0;padding:16px 10px;display:flex;box-shadow:inset 0 0 12px #0009}.wanted{aspect-ratio:.85;color:#29271d;background:#ded7b9;border:6px double #29271d;flex-direction:column;justify-content:center;align-items:center;width:90%;max-width:145px;padding:6px 5px;display:flex;transform:rotate(-1deg);box-shadow:0 0 0 2px #ddd2b1}.wanted>span{letter-spacing:.03em;font-family:Georgia,serif;font-size:clamp(12px,1.5vw,21px);font-weight:900}.wanted svg{fill:none;stroke:currentColor;stroke-width:3px;stroke-linejoin:round;width:83%;height:70%}.wanted small{font-size:clamp(6px,.8vw,10px);font-weight:900}.physical{color:#ece8d3;background:linear-gradient(150deg,#373937,#121512 55%,#222720);border:2px solid #050605;box-shadow:inset 0 2px 3px #8d8e7c,0 0 0 3px #847d66,0 4px 0 3px #0c100d}.physical:hover:not(:disabled){background:#30372e}.physical:active,.physical.pressed{transform:translateY(3px);box-shadow:inset 0 2px 7px #000,0 0 0 3px #847d66}.fire{aspect-ratio:1;border-radius:50%;width:min(110px,90%);min-height:60px;margin-top:auto;padding:6px}.fire span{background:radial-gradient(at 35% 15%,#454940,#171d17 80%);border:1px solid #4a4e42;border-radius:50%;width:100%;height:100%;display:block}.control-label{letter-spacing:.04em;color:#eee6c8;text-shadow:0 2px #000;margin-top:12px;font-size:clamp(11px,1.55vw,21px);font-weight:1000}.side-note{text-align:center;letter-spacing:.12em;opacity:.65;margin-top:15px;font-size:9px;line-height:1.3}.center-panel{grid-template-rows:clamp(40px,8vh,66px) minmax(0,1fr) 24px 48px;gap:0;min-width:0;min-height:0;display:grid}.title-plaque{color:#f3e8c8;background:linear-gradient(#22221d,#151914);border-radius:16px 16px 0 0;justify-content:center;align-items:center;padding:3px 8px 10px;display:flex;position:relative;box-shadow:inset 0 1px 2px #7f7c69}.title-plaque h1{letter-spacing:-.04em;white-space:nowrap;text-shadow:1px 2px #a99c79;margin:0;font-family:Alfa,Georgia,serif;font-size:clamp(20px,3.9vw,53px);font-weight:400;line-height:1}.title-plaque>span{letter-spacing:.13em;font-size:8px;font-weight:900;position:absolute;bottom:3px;right:12px}.bezel{background:linear-gradient(to bottom, var(--red) 0%, var(--red) 47%, var(--yellow) 47%, var(--yellow) 53%, var(--red) 53%, var(--red) 100%);border-bottom:8px solid #161c16;min-height:0;padding:13px 16px 14px;position:relative}.lcd{color:#33412e;background:linear-gradient(112deg,#b6c5a5,#c3cbb1 45%,#aab998);border:3px solid #303b2c;border-radius:10px;width:100%;height:100%;position:relative;overflow:hidden;box-shadow:inset 5px 7px 12px #27322557,0 1px #ffe4af}.printed-scene,#game-canvas{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.lcd-top,.lcd-bottom{color:#263729;z-index:1;justify-content:space-between;align-items:center;font-family:Courier New,monospace;display:flex;position:absolute;left:14px;right:14px}.lcd-top{letter-spacing:.06em;font-size:10px;font-weight:700;top:7px}.lcd-top #lives{letter-spacing:4px;font-size:14px}.lcd-bottom{align-items:flex-end;bottom:9px}.lcd-bottom small{letter-spacing:.08em;font:700 8px Nunito,sans-serif;display:block}.lcd-bottom b{letter-spacing:.02em;font-size:clamp(20px,3.2vw,35px);font-weight:400;line-height:1}.lcd-bottom #combo{align-self:center;font-size:10px}.lcd-bottom .record b{font-size:clamp(12px,2vw,22px)}.readout{color:#d9d7ba;text-align:center;white-space:nowrap;text-overflow:ellipsis;background:#181e16;justify-content:center;align-items:center;padding:2px 8px;font-size:clamp(9px,1.2vw,12px);font-weight:800;display:flex;overflow:hidden}.utility{background:linear-gradient(#e4b834,#d7a42b);border-radius:0 0 12px 12px;justify-content:space-around;align-items:center;padding:3px 5px;display:flex;box-shadow:inset 0 1px 2px #f9de73}.utility button{background:0 0;border:0;border-right:1px solid #967626;border-radius:0;justify-content:center;align-items:center;gap:8px;min-width:28%;min-height:42px;padding:3px 5px;display:flex}.utility button:last-child{border:0}.utility button b{color:#2d2b21;background:linear-gradient(#fff7da,#e5d4aa);border-radius:5px;min-width:31px;padding:3px 5px;font-size:17px;box-shadow:0 2px #54482d,0 0 0 2px #8f732b}.utility button span{color:#352e1c;font-size:clamp(8px,1vw,11px)}.brand-stamp{aspect-ratio:584/310;background:#fff;border:3px solid #c8b88e;border-radius:7px;width:100%;max-width:135px;position:relative;overflow:hidden;box-shadow:0 3px #080b08}.brand-stamp img{width:330.822%;max-width:none;height:auto;position:absolute;top:-36.4516%;left:-7.53425%}.edition{text-align:center;color:#e9e0bf;letter-spacing:.18em;background:#211f1bd9;border-block:1px solid #b5a786;width:90%;margin-top:25px;padding:12px 5px;font:10px Georgia,serif}.edition b{margin:5px;font-size:clamp(9px,1vw,15px);display:block}.edition span{opacity:.65;font-size:20px;display:block}.rocker{gap:3px;width:100%;max-width:135px;margin-top:auto;display:flex}.rocker button{border-radius:5px;width:50%;min-height:61px;padding:0;font-size:clamp(15px,2vw,26px)}.fullscreen{color:#e0d7ba;background:#191d16d9;border:0;min-height:30px;margin-top:12px;padding:2px 4px;font-size:21px}.fullscreen span{letter-spacing:.1em;font-size:7px;display:block}.overlay{z-index:3;pointer-events:none;scrollbar-width:thin;scrollbar-color:#758564 transparent;padding:14px 18px;display:none;position:absolute;inset:0}.overlay.visible{pointer-events:auto;overscroll-behavior:contain;background:linear-gradient(110deg,#dce3c8f7,#bccba5f7);display:block;overflow:auto}.overlay.live-countdown{pointer-events:none;background:#c5d3b85c;justify-content:center;align-items:center;display:flex}.sheet-heading{text-align:center;margin-bottom:10px}.sheet-heading>small{letter-spacing:.16em;font-size:9px;font-weight:1000}.sheet-heading h2{letter-spacing:-.04em;margin:4px 0 5px;font-size:clamp(17px,2.3vw,28px);font-weight:1000;line-height:1.1}.sheet-heading p{max-width:550px;margin:0 auto;font-size:11px;line-height:1.4}.home-buttons{gap:8px;max-width:430px;margin:auto;display:grid}.home-buttons>button{letter-spacing:.06em;font-size:15px}.button-row{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.button-row>button{flex:1;min-width:100px}.button-row.compact>button{min-width:95px;min-height:34px;padding:6px 8px;font-size:10px}.menu-links{flex-wrap:wrap;justify-content:center;gap:2px;margin-top:9px;display:flex}.menu-links button{text-underline-offset:3px;background:0 0;border:0;min-height:29px;padding:6px 8px;font-size:10px;text-decoration:underline}.tiny-note{text-align:center}.sheet-footer{justify-content:space-between;align-items:center;margin-top:11px;font-size:10px;font-weight:900;display:flex}.level-grid{grid-template-columns:repeat(5,1fr);gap:6px;max-width:500px;margin:auto;display:grid}.level-grid button{background:#dbe3c3;min-height:39px;padding:4px}.level-grid b{font-size:14px;display:block}.level-grid small{letter-spacing:2px;font-size:9px}.level-grid .boss-level{background:#bbc89e}.pager{justify-content:center;align-items:center;gap:20px;margin-top:8px;font-size:11px;display:flex}.pager button{min-height:31px;padding:5px 16px}.daily-mark{text-align:center;margin:12px;font:30px Courier New,monospace}.daily-mark small{letter-spacing:.16em;font:9px Nunito,sans-serif;display:block}.daily-gift{border:1px dashed #768567;flex-wrap:wrap;align-items:center;gap:7px;margin-top:18px;padding:10px;font-size:10px;display:flex}.daily-gift b{font-size:12px}.daily-gift span{flex:1}.daily-gift button{min-height:34px;font-size:10px}.lesson-symbol{text-align:center;letter-spacing:.25em;color:#344b32;padding:9px;font-size:35px}.skin-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.skin-tile{flex-direction:column;align-items:center;gap:7px;padding:8px 4px;font-size:11px;display:flex}.skin-tile small{font-size:9px}.skin-tile.selected{box-shadow:inset 0 0 0 2px #354931}.skin-swatch{aspect-ratio:1.25;border:6px solid #df5129;background:#a9bb96;border-bottom:12px solid #ddb034;border-radius:6px;width:80%;display:block;box-shadow:0 0 0 4px #ded5bb}.swatch-night{background:#adbdab;border-color:#283342 #283342 #738da1}.swatch-copper{background:#bebba0;border-color:#9f533c #9f533c #c38c5b}.swatch-sage{background:#cad6b9;border-color:#5f7565 #5f7565 #aab38a}.achievement-list{grid-template-columns:1fr 1fr;gap:8px;display:grid}.achievement-list article{opacity:.6;border:1px solid #929e7f;align-items:center;gap:8px;padding:8px;display:flex}.achievement-list article.earned{opacity:1;background:#e1e5c3}.achievement-list article>span{font-size:24px}.achievement-list b{font-size:11px;display:block}.achievement-list small{font-size:10px;line-height:1.2;display:block}.settings-list{gap:5px;max-width:450px;margin:auto auto 12px;display:grid}.settings-list label{border-bottom:1px solid #74816840;justify-content:space-between;align-items:center;gap:10px;min-height:31px;font-size:12px;display:flex}.settings-list input[type=range]{accent-color:#314a31;width:55%;height:30px}.settings-list input[type=checkbox]{accent-color:#314a31;width:21px;height:21px}.legal{-webkit-user-select:text;user-select:text;font-size:11px;line-height:1.5}.legal p{margin:8px 0}.legal a{color:#1f4e33}.result-score{text-align:center;letter-spacing:.1em;margin:3px 0 8px;font:clamp(25px,4vw,42px) Courier New,monospace}.result-stats{justify-content:center;gap:25px;margin:0 0 9px;display:flex}.result-stats>span{text-align:center;font-size:19px;font-weight:900}.result-stats small{letter-spacing:.05em;font-size:8px;display:block}.goal-result{text-align:center;margin:7px 0;font-size:10px}.stars{letter-spacing:6px;font-size:23px;display:block}.continue{text-align:center;margin-top:10px;font-size:10px}.continue summary{cursor:pointer;min-height:28px}.continue button{min-height:35px;font-size:10px}.countdown{color:#26372a;background:#c9d4b8c7;border:1px solid #536b4c;flex-direction:column;align-items:center;padding:14px 25px;display:flex}.countdown>b{font:80px/1 Courier New,monospace}.countdown>span{letter-spacing:.2em;font-size:10px;font-weight:900}.countdown>small{text-align:center;font-size:10px}.loading{padding:14px;font-size:12px}.skin-night{--red:#354653;--yellow:#8198a0;--plastic:#cbd2d1}.skin-copper{--red:#a55d42;--yellow:#c79862}.skin-sage{--red:#657a62;--yellow:#afb58a}.skin-night .side{background-color:#151d20}.skin-copper .side{background-color:#37291e}.skin-sage .side{background-color:#28352b}.lcd.contrast{color:#1c2d1d;background:#e0e6c9}.high-contrast .printed-scene{opacity:.5}.high-contrast #game-canvas{filter:contrast(1.5)}.reduced-motion *{transition:none!important;animation:none!important}#toast{color:#fff8e0;z-index:10001;text-align:center;opacity:0;pointer-events:none;background:#252e24;border-radius:9px;max-width:85vw;padding:10px 18px;font:700 12px Nunito,sans-serif;transition:opacity .2s,transform .2s;position:fixed;bottom:12px;left:50%;transform:translate(-50%,20px);box-shadow:0 3px 16px #0003}#toast.visible{opacity:1;transform:translate(-50%)}@media (height>=600px) and (orientation:landscape){.overlay{padding:24px 28px}.sheet-heading{margin-bottom:20px}.sheet-heading h2{font-size:31px}.sheet-heading p{font-size:13px}.home-buttons{gap:12px}.home-buttons button{min-height:48px}.menu-links{margin-top:22px}.menu-links button{font-size:12px}.tiny-note{margin-top:15px}.level-grid button{min-height:54px}.settings-list{gap:12px}.settings-list label{min-height:42px}.utility button span{font-size:12px}.wanted{margin-top:12px}.side-note{margin:22px 0}.readout{font-size:13px}.center-panel{grid-template-rows:70px minmax(0,1fr) 30px 60px}}@media (height<=365px) and (orientation:landscape){#app{padding:5px}.machine{border-radius:20px;grid-template-columns:minmax(112px,18%) minmax(0,1fr) minmax(112px,18%);gap:8px;padding:8px}.side{padding:8px 7px}.wanted{border-width:4px;max-width:85px;padding:2px}.side-note,.edition,.fullscreen{display:none}.brand-stamp{max-width:87px}.center-panel{grid-template-rows:36px minmax(0,1fr) 19px 40px}.title-plaque h1{font-size:25px}.title-plaque>span{font-size:6px}.bezel{border-bottom-width:5px;padding:7px 9px 8px}.overlay{padding:9px 12px}.sheet-heading{margin-bottom:7px}.sheet-heading h2{font-size:19px}.sheet-heading p{font-size:10px}.sheet-heading>small{font-size:8px}.home-buttons{gap:5px}.home-buttons button{min-height:34px;padding:5px}.menu-links{margin-top:4px}.menu-links button{min-height:25px;padding:4px;font-size:9px}.tiny-note{margin-top:4px;font-size:8px}.utility button{min-height:36px}.utility button b{font-size:13px}.utility button span{font-size:7px}.rocker button{min-height:53px}.control-label{margin-top:10px;font-size:13px}.fire{max-width:66px;min-height:58px}.lcd-top{font-size:8px;top:4px}.lcd-bottom{bottom:5px}.lcd-bottom b{font-size:24px}.level-grid{gap:4px}.level-grid button{min-height:30px;padding:2px}.level-grid b{font-size:11px}.level-grid small{font-size:7px}.pager{margin-top:5px}.pager button{min-height:25px}.sheet-footer{margin-top:4px}.settings-list label{min-height:29px}.achievement-list{gap:4px}.achievement-list article{padding:4px}.achievement-list small{font-size:8px}.skin-tile{padding:6px 2px}.skin-swatch{width:65%}}@media (orientation:portrait){#app{padding:12px}.machine{border-radius:23px;grid-template-rows:minmax(0,1fr) 112px;grid-template-columns:1fr 1fr;gap:10px;height:min(920px,100%);padding:12px}.center-panel{grid-area:1/1/auto/-1;grid-template-rows:54px minmax(0,1fr) 33px 54px}.left-panel,.right-panel{flex-direction:row;grid-row:2;justify-content:center;gap:10px;padding:8px}.wanted,.side-note,.edition,.brand-stamp,.fullscreen{display:none}.fire{width:66px;min-width:66px;min-height:66px;max-height:66px;margin:0}.control-label{margin:0;font-size:11px}.rocker{width:110px;margin:0}.rocker button{min-height:62px}.right-panel{flex-direction:column;gap:8px}.right-panel .control-label{font-size:9px}.bezel{padding:12px 10px}.title-plaque h1{font-size:30px}.overlay{padding:24px 15px}.sheet-heading h2{font-size:26px}.sheet-heading p{font-size:12px;line-height:1.5}.sheet-heading{margin-bottom:22px}.home-buttons{gap:12px}.home-buttons button{min-height:46px}.home-buttons .button-row{flex-direction:column}.menu-links{margin-top:22px}.menu-links button{min-height:37px;font-size:11px}.tiny-note{margin-top:17px;font-size:10px}.lcd-top{font-size:9px}.lcd-bottom b{font-size:27px}.level-grid button{min-height:50px}.achievement-list{grid-template-columns:1fr}.achievement-list article{min-height:43px}.skin-grid{grid-template-columns:1fr 1fr;gap:15px}.skin-swatch{width:60%}.settings-list{gap:16px}.settings-list label{min-height:39px}.settings-list input[type=range]{width:50%}.utility button span{font-size:9px}.legal{font-size:12px}.result-stats{gap:17px}.result-score{font-size:36px}.result-stats small{font-size:7px}.continue button{min-width:130px}.countdown>b{font-size:100px}}.arrow-left,.arrow-right{border-top:10px solid #0000;border-bottom:10px solid #0000;width:0;height:0;margin:auto;display:block}.arrow-left{border-right:15px solid #ede6ca}.arrow-right{border-left:15px solid #ede6ca}.pause-bars{vertical-align:middle;border-left:4px solid;border-right:4px solid;width:12px;height:14px;display:inline-block}#practice-duel{z-index:2;background:#dae2bf;min-height:24px;padding:4px 7px;font-size:8px;position:absolute;bottom:21px;right:25px}#practice-duel[hidden]{display:none}
