:root{color-scheme:dark;--paper:#f1d5a1;--gold:#e6b85e;--amber:#ce8b39;--ink:#251308;--panel:#24170f;--line:#6d4a29}
*{box-sizing:border-box}
html{font-family:Georgia,'Times New Roman',serif;background:#1a120e}
body{margin:0;min-height:100vh;color:#f5e5c5;background:radial-gradient(ellipse at 40% 8%,#473021 0%,#241711 45%,#120d0a 100%)}
button{font:inherit;cursor:pointer}
button:disabled{opacity:.5;cursor:not-allowed}
.workshop{max-width:1320px;margin:auto;padding:28px 25px 65px}
.workshop-header{text-align:center;margin-bottom:17px}
.edition{display:block;font:700 11px/1.5 Arial,sans-serif;letter-spacing:.25em;color:#d7ab62}
h1{font-weight:700;letter-spacing:.02em;line-height:1.05;font-size:clamp(30px,4vw,47px);margin:8px 0 8px;color:#ffdc94;text-shadow:0 2px 12px #110a06}
h1 span{font-weight:400;font-style:italic;color:#ead4aa}
.workshop-header p{font:14px/1.5 system-ui,sans-serif;color:#dbcbba;margin:0 auto;max-width:650px}
.demo-layout{display:grid;grid-template-columns:minmax(0,700px) minmax(280px,360px);align-items:start;justify-content:center;gap:24px}
.machine-section{min-width:0}
.machine-shell{position:relative;width:100%;overflow:hidden;line-height:0;user-select:none;-webkit-user-select:none}
.cabinet-art{display:block;width:100%;height:auto;pointer-events:none}
.reel-layer,.hit-zones{position:absolute;inset:0;width:100%;height:100%}
.reel-layer{pointer-events:none}
.hit-zone{position:absolute;border:0;background:transparent;padding:0;border-radius:9px;color:transparent;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.hit-zone:focus-visible{outline:4px solid #fff8bf;outline-offset:-2px;box-shadow:0 0 16px #ffd46a}
.hit-zone:active{background:rgba(255,255,255,.13)}
.machine-caption{text-align:center;margin:0;color:#baa588;font:12px/1.4 system-ui,sans-serif}
.console{position:sticky;top:15px;background:linear-gradient(170deg,#362218,#1e1713 80%);border:1px solid #77502d;border-radius:11px;box-shadow:0 8px 35px #09060499;padding:18px 18px 17px}
.console-head{font:700 12px/1.5 Arial,sans-serif;letter-spacing:.1em;color:#f7d58d;border-bottom:1px solid #79522d;padding-bottom:12px;display:flex;align-items:center;gap:9px}
.live-dot{width:9px;height:9px;flex:none;background:#6fd590;border-radius:50%;box-shadow:0 0 9px #75c88e}
.console-version{margin-left:auto;color:#c2a17e;font-weight:400;letter-spacing:0}
.message{background:#0e100d;color:#efdcaa;min-height:75px;margin:15px 0 10px;border:1px solid #806130;border-radius:5px;padding:13px 11px;text-align:center;display:flex;justify-content:center;align-items:center;font:700 15px/1.35 Arial,sans-serif;letter-spacing:.035em}
.message.winner{color:#fae08d;border-color:#cba455;background:#28200e}
.reel-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:14px;text-align:center}
.reel-summary span{background:#4a3020;border:1px solid #694a30;color:#f5e0b6;border-radius:3px;display:flex;min-height:42px;align-items:center;justify-content:center;font:700 11px/1.3 system-ui,sans-serif;padding:5px 4px}
.controls{display:grid;gap:9px}
.controls button,.test-controls button{border:1px solid #9d743f;min-height:45px;border-radius:5px;background:#503020;color:#f4daa5;font:700 13px/1.1 system-ui,sans-serif;transition:filter .15s ease,background .15s ease}
.controls button:hover,.test-controls button:hover{filter:brightness(1.16)}
.controls button:focus-visible,.test-controls button:focus-visible{outline:3px solid #f3d68c;outline-offset:2px}
.controls .action-primary{min-height:61px;background:#22552d;color:#f8ffdf;border:1px solid #61a569;font-size:18px;letter-spacing:.04em}
.hold-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.hold-row button[aria-pressed=true]{background:#aa481e;border-color:#fac467;color:#fff2bd;box-shadow:inset 0 0 8px #c66d22}
.utility-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.info-section{margin-top:17px;border-top:1px solid #6d4a29;padding-top:9px}
.info-section h2{margin:12px 0 4px;font-size:14px;color:#f0c886}
.info-section p{margin:0;font:13px/1.48 system-ui,sans-serif;color:#d7c5ab}
.test-panel{margin-top:17px;border-top:1px solid #6d4a29;padding-top:11px;font:13px/1.45 system-ui,sans-serif;color:#d7c5ab}
.test-panel summary{color:#e9bc6f;cursor:pointer;font-weight:700}
.test-controls{display:flex;flex-wrap:wrap;gap:6px}
.test-controls button{font-size:11px;min-height:40px;padding:0 10px}
.small-print{border-top:1px solid #62442d;padding-top:13px;font:11px/1.5 system-ui,sans-serif;color:#c7a98b;margin:16px 0 0}
.key-hint{font:11px/1.5 system-ui,sans-serif;color:#a9937e;margin:12px 0 0}
kbd{border:1px solid #7d6249;border-radius:3px;padding:2px 4px;background:#22170e;color:#e5c8a1}
@media(max-width:950px){.demo-layout{grid-template-columns:minmax(0,660px);gap:15px}.console{position:static;width:100%;max-width:660px;margin:auto}.machine-section{max-width:660px}}
@media(max-width:560px){.workshop{padding:16px 6px 40px}.workshop-header{padding:0 8px}.workshop-header p{font-size:12px}.console{border-radius:8px;padding:15px 13px}.machine-caption{font-size:10px;margin:2px 0 6px}.hit-zone{border-radius:3px}}
@media(prefers-reduced-motion:reduce){.controls button{transition:none}}

/* Audio lab controls: CSS is for layout only; all artwork and audio use assets. */
.volume-control{display:flex;gap:15px;align-items:center;margin-top:13px;padding:8px 0 1px}
.volume-control label{font:700 11px/1.3 system-ui,sans-serif;color:#f0c886;white-space:nowrap}
.volume-control input{width:100%;accent-color:#dfa44c;cursor:pointer}
.sound-tests{margin-top:20px;border-top:1px solid #6d4a29;padding-top:14px}
.sound-tests summary{font:700 15px/1.35 Georgia,serif;color:#ffcf7a;cursor:pointer}
.sound-tests p{font:12px/1.5 system-ui,sans-serif;color:#cfbaa0;margin:8px 0 12px}
.sound-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.sound-buttons button{min-height:37px;border:1px solid #986a36;border-radius:5px;background:#3c281c;color:#f4daa5;font:700 11px system-ui,sans-serif;padding:7px 5px;cursor:pointer}
.sound-buttons button:hover{background:#664126}
.sound-buttons button:focus-visible{outline:3px solid #f3d68c;outline-offset:1px}

.feature-console{border:2px solid #b98a45;border-radius:9px;padding:12px;background:linear-gradient(#542114,#270e0a);color:#ffe4a1;text-align:center}.feature-heading{font:700 15px Georgia,serif;letter-spacing:.07em}.dice-pair{display:flex;justify-content:center;gap:9px;margin:8px 0}.dice-pair canvas{width:82px;height:82px}.trail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:5px}.trail-grid span{font:700 10px/1.35 Arial,sans-serif;padding:8px 3px;border:1px solid #92662c;background:#32160c;border-radius:5px}.trail-grid span.lit{background:#ffc44a;color:#391200;box-shadow:0 0 15px #ffb624}.feature-controls{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}.credit-row{display:flex;align-items:center;gap:10px;justify-content:center;font:700 11px Arial,sans-serif;margin-top:9px}.credit-row button{padding:7px 9px;min-height:30px;font-size:10px}

/* Painted-metal cabinet feature glass. Dice are animated canvas drawings, not emoji or CSS dice. */
.cabinet-feature{position:absolute;left:60.0%;top:22.1%;width:31.0%;height:28.5%;z-index:3;box-sizing:border-box;border:3px ridge #a56c23;border-radius:3%;background:radial-gradient(ellipse at 50% 20%,#6c241a,#270e1b 65%,#0e0815);box-shadow:inset 0 0 12px #e5a44a,0 2px 8px #100705;line-height:1.1;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:3% 2% 1%;color:#ffda72;pointer-events:none}
.cabinet-feature-title{font:bold clamp(8px,1.5vw,21px)/1.1 Georgia,serif;text-shadow:0 0 7px #e97e18;white-space:nowrap}
.cabinet-dice{width:100%;display:flex;justify-content:center;align-items:center;gap:3%;height:34%}
.cabinet-dice canvas{width:40%;height:auto;max-height:100%;aspect-ratio:1}
.cabinet-trail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2%;width:100%;height:40%;margin-top:2%}
.cabinet-trail span{display:flex;align-items:center;justify-content:center;background:linear-gradient(#672012,#310c09);border:1px solid #aa732b;border-radius:3px;color:#ffdc8d;font:bold clamp(5px,.82vw,11px)/1.05 Arial,sans-serif;text-shadow:0 1px 2px #000;padding:1px}
.cabinet-trail span.lit{color:#231000;background:linear-gradient(#ffec94,#f7a626);box-shadow:0 0 11px #ffae25;text-shadow:none}
.cabinet-roll-label{margin-top:3%;font:bold clamp(6px,.85vw,12px)/1.1 Georgia,serif;letter-spacing:.02em;color:#ffe5aa}
@media(max-width:950px){.cabinet-feature-title{font-size:clamp(9px,2.5vw,20px)}.cabinet-trail span{font-size:clamp(6px,1.3vw,10px)}.cabinet-roll-label{font-size:clamp(7px,1.6vw,11px)}}
.hit-zones{pointer-events:none;z-index:6}.hit-zone{pointer-events:auto}.cabinet-feature{pointer-events:auto;cursor:pointer}.cabinet-feature:active{filter:brightness(1.12)}

/* HOLD is a randomly offered next-spin feature. All three physical keys illuminate together. */
.hold-status{text-align:center;color:#ffd88a;font:700 11px/1.3 Arial,sans-serif;letter-spacing:.07em;padding-top:3px}
@keyframes inn-hold-flash{0%,49%{filter:brightness(1);box-shadow:none}50%,100%{filter:brightness(2.1);box-shadow:0 0 16px 6px #ffe080, inset 0 0 18px #ffd16b}}
.hold-row button.hold-offered{animation:inn-hold-flash .65s steps(1,end) infinite;background:#cd6b19;color:white;border-color:#ffde70}
.hit-zone.hold-offered{background:rgba(255,190,40,.27);animation:inn-hold-flash .65s steps(1,end) infinite;border:2px solid rgba(255,227,130,.9)}
.hit-zone.hold-selected{background:rgba(255,206,46,.46);box-shadow:0 0 16px 4px #ffd85a}
.hit-zone:disabled{cursor:default}

/* A selected HOLD is STEADY ON; only available, unselected keys flash. */
.hold-row button.hold-selected, .hold-row button.hold-selected[aria-pressed=true]{
 animation:none!important;background:#ffc243!important;color:#351306!important;
 border-color:#fff1a3!important;box-shadow:0 0 17px 6px #ffbd37,inset 0 0 10px #fff7be!important;
 opacity:1;
}
.hit-zone.hold-selected{animation:none!important;background:rgba(255,213,57,.55)!important;
 box-shadow:0 0 18px 6px #ffd75a,inset 0 0 12px #fff3ac!important;border:2px solid #fff3b5!important;filter:brightness(1.3)!important;}

/* v0.6: make feature gamble buttons visibly live only when feature offered */
.gamble-status{font:700 12px/1.4 Georgia,serif;color:#ffe2a1;background:#25100b;border:1px solid #ad7739;border-radius:5px;padding:9px;margin:9px 0;text-align:center}
.hit-zone.gamble-ready{background:rgba(255,214,64,.19);box-shadow:inset 0 0 14px rgba(255,214,64,.6);animation:inn-hold-flash 1s steps(1,end) infinite}

.hit-zone[data-control="nudge"]{z-index:7}
.hit-zone[data-control="nudge"]:not(:disabled){box-shadow:inset 0 0 11px 3px #ffd3577a}
.hit-zone.collect-ready{box-shadow:inset 0 0 17px #ffeb638a;animation:inn-hold-flash 1s steps(1,end) infinite}

.gamble-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}.gamble-buttons button{font-size:15px;background:#7a2715;border:2px solid #d99840}.gamble-buttons button:not(:disabled){background:#b04313;color:#fff2bc;box-shadow:0 0 10px #e1a03b88}.gamble-status{min-height:42px}

/* v0.9: Hit targets follow the pictured physical buttons, scaling with the PNG. */
.hit-zone{
 left:calc(var(--x) * 1%);top:calc(var(--y) * 1%);
 width:calc(var(--w) * 1%);height:calc(var(--h) * 1%);
 display:block;z-index:1;
}
.hit-zone[data-control="nudge"].nudge-ready{
 background:rgba(255,197,53,.25);box-shadow:inset 0 0 13px #ffe291,0 0 12px #ffbb3c;
 animation:inn-nudge-pulse 1s ease-in-out infinite;
}
@keyframes inn-nudge-pulse{50%{filter:brightness(1.7)}}
.nudge-status{min-height:20px;color:#f6cc81;text-align:center;font:700 10px/1.35 Arial,sans-serif;margin-top:6px;letter-spacing:.04em}
.feature-console .feature-controls button:disabled{opacity:.48}
.gamble-buttons button:disabled{opacity:.45}
/* Dice retain a visible minimum size even on portrait/mobile screens. */
.cabinet-dice canvas{display:block;flex:0 0 41%;width:41%;height:auto;max-height:100%;aspect-ratio:1/1}

/* v1.0: Three dual-function cabinet keys, plus illuminated momentary/latching NUDGE UP. */
.hit-zone.nudge-reel-ready{background:rgba(247,166,32,.15);box-shadow:inset 0 0 13px rgba(255,223,123,.65);border:1px solid rgba(255,229,130,.55)}
.hold-row button.nudge-reel-ready{background:#a96214;color:#fff0be;box-shadow:0 0 10px 2px rgba(252,193,49,.45);border-color:#ffd36b}
.hit-zone[data-control="nudge"].nudge-ready{animation:inn-hold-flash .75s steps(1,end) infinite;background:rgba(255,193,35,.25);border:2px solid #ffe183}
.hit-zone[data-control="nudge"].nudge-up-active{animation:none!important;background:rgba(255,232,116,.50)!important;box-shadow:0 0 18px #ffe287,inset 0 0 13px #fff9cb!important}
.feature-controls button.nudge-ready{animation:inn-hold-flash .75s steps(1,end) infinite;border:2px solid #f9cf58}
.feature-controls button.nudge-up-active{animation:none!important;background:#ffd066!important;color:#442006!important;box-shadow:0 0 17px #ffbf5c!important}
.hit-zone[data-control="higher"].gamble-ready,.hit-zone[data-control="lower"].gamble-ready{animation:inn-hold-flash .9s steps(1,end) infinite}
@media(prefers-reduced-motion:reduce){.hit-zone.nudge-ready,.hit-zone.gamble-ready,.hold-row button.hold-offered{animation:none!important}}

/* v1.1: classic seven-rung prize ladder; each successful H/L visibly moves a lit prize rung. */
.prize-ladder-box{border:2px solid #bd8744;border-radius:9px;background:linear-gradient(120deg,#3f160e,#1c0d08);padding:10px 11px;color:#ffe8ae}
.prize-ladder-title{text-align:center;font:700 13px Georgia,serif;letter-spacing:.07em;color:#ffdb7e;margin-bottom:7px}
.prize-ladder{display:flex;flex-direction:column;gap:3px}
.prize-rung{min-height:20px;border:1px solid #754826;border-radius:3px;background:linear-gradient(#3a2014,#25120c);color:#886c51;text-align:center;font:700 11px/19px Arial,sans-serif;letter-spacing:.055em}
.prize-rung.future{color:#d1a46a}
.prize-rung.lit{color:#381706;border-color:#fff0ae;background:linear-gradient(#fff4aa,#ffbc48);box-shadow:0 0 14px #ffc555,inset 0 0 6px #ffe688;font-weight:900;animation:prize-glow .7s ease-in-out 2}
@keyframes prize-glow{50%{filter:brightness(1.23)}}
.prize-current{font:700 12px/1.4 Arial,sans-serif;text-align:center;color:#e7bb74;margin-top:9px}
.prize-current strong{color:#ffeb92;font-size:15px}
.prize-next{text-align:center;font:700 10px/1.45 Arial,sans-serif;color:#c9aa7e;margin-top:3px}
.cabinet-trail span.stepping{outline:2px solid #fff6b0;outline-offset:-2px;box-shadow:0 0 17px 5px #ffbc42, inset 0 0 11px #fff0ac;filter:brightness(1.3)}
@media(prefers-reduced-motion:reduce){.prize-rung.lit{animation:none}}

/* Integrated into The Inn website: keep the embedded game at its content height. */
body.inn-public-fruit{min-height:0}
.inn-public-fruit .workshop{padding-top:15px;padding-bottom:24px}
@media(max-width:560px){.inn-public-fruit .workshop{padding-top:9px;padding-bottom:18px}}

/* v19.5.1 — unmistakable jackpot collect prompt over payline: no graphics replaced. */
.inn-jackpot-collect[hidden]{display:none!important}
.inn-jackpot-collect{position:absolute;z-index:8;left:20%;top:29%;width:37%;min-height:12%;border:3px double #ffe4a7;border-radius:10px;background:linear-gradient(155deg,#84230c,#371107 72%);box-shadow:0 0 0 4px #3b160c,0 0 22px 8px rgba(236,150,38,.68);color:#fff4b7;padding:1%;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8%;line-height:1.1;cursor:pointer;white-space:normal}
.inn-jackpot-collect strong{display:block;font:700 clamp(8px,1.45vw,20px)/1.05 Georgia,serif;color:#ffdf83}
.inn-jackpot-collect span{display:block;font:900 clamp(9px,1.50vw,21px)/1.05 Georgia,serif;color:white}
.inn-jackpot-collect em{display:block;font:700 clamp(8px,1.2vw,16px)/1.1 Arial,sans-serif;color:#ffda75;font-style:normal}
.inn-jackpot-qa{background:#381b13;border:2px solid #cda04e;border-radius:10px;padding:13px;margin:0 0 12px;text-align:center;line-height:1.4;color:#ffe09b;font:700 12px/1.5 Arial,sans-serif}
.inn-jackpot-qa-row{display:flex;gap:10px;margin:10px 0}
.inn-jackpot-qa button{flex:1;cursor:pointer;border:1px solid #ebbd67;background:#633012;color:#fff3d5;border-radius:6px;padding:10px 5px;font:700 12px Arial,sans-serif}
.inn-jackpot-qa small{font-size:11px;font-weight:400}


/* V19.5.5 — credit glass in the intended LEFT decorative cabinet panel.
   Nothing on the base artwork, button hit areas or prize logic is moved. */
.cabinet-credit-panel {
  box-sizing:border-box;position:absolute;
  left:7.25%;top:23.15%;width:8.15%;height:18.0%;z-index:5;
  display:flex;flex-direction:column;align-items:stretch;justify-content:space-around;
  gap:2%;padding:6px 5px 6px;
  background:linear-gradient(105deg,#281009 0%,#170b09 48%,#32140c 100%);
  border:2px ridge #b98235;border-radius:7px;
  box-shadow:inset 0 0 13px #090402,0 0 4px #100402;
  pointer-events:auto;
}
.cabinet-coin-slot {
  appearance:none;border:1px solid #b78a48;border-radius:5px;
  background:linear-gradient(150deg,#866143,#241710 24%,#160a06 78%,#a17543);
  color:#f2d19a;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:9%;
  flex:0 0 50%;min-width:0;padding:7% 3%;cursor:pointer;
  box-shadow:inset 0 0 3px 1px #b28e56,0 2px 4px #090301;
}
.cabinet-coin-slot:hover,.cabinet-coin-slot:focus-visible {
  outline:1px solid #ffdf95;outline-offset:1px;filter:brightness(1.25);
}
.coin-slot-caption {font:800 clamp(4px,.50vw,8px)/1 Arial,sans-serif;letter-spacing:.01em;white-space:nowrap;text-shadow:0 1px 2px #000}
.coin-slot-aperture {width:66%;height:20%;min-height:2px;border:1px solid #946b45;border-radius:3px;background:linear-gradient(#2b211e 0 18%,#020101 25% 70%,#554437 100%);box-shadow:0 1px 3px #dab27a4a}
.coin-slot-value {font:900 clamp(6px,.7vw,11px)/1 Georgia,serif;color:#ecc57e;white-space:nowrap}
.cabinet-credit-label {color:#f2cb89;font:800 clamp(5px,.60vw,9px)/1 Arial,sans-serif;letter-spacing:.03em;text-align:center;text-shadow:0 1px 2px #000}
.cabinet-credit-display {box-sizing:border-box;width:100%;height:26%;min-height:0;border:1px solid #75442c;border-radius:4px;background:linear-gradient(#060000,#190201 70%,#090000);display:flex;align-items:center;justify-content:center;gap:3%;padding:8% 5%;box-shadow:inset 0 0 5px #000,0 0 5px #5e1511;}
.cabinet-credit-display.flash{animation:inn-credit-flash .3s linear 2}
@keyframes inn-credit-flash{50%{box-shadow:inset 0 0 7px #cb1717,0 0 10px #ff3b1f;filter:brightness(1.35)}}
.credit-digit{height:100%;aspect-ratio:0.66;position:relative;flex:0 1 auto;min-width:0}
.credit-segment{position:absolute;border-radius:2px;background:#3d0805;opacity:.55}
.credit-segment.lit{background:#ff3323;opacity:1;box-shadow:0 0 4px 1px #ff321c,0 0 8px #ed1b13}
.credit-segment[data-segment=a]{top:0;left:18%;width:64%;height:10%}
.credit-segment[data-segment=g]{top:45%;left:18%;width:64%;height:10%}
.credit-segment[data-segment=d]{bottom:0;left:18%;width:64%;height:10%}
.credit-segment[data-segment=f]{top:6%;left:4%;width:12%;height:39%}
.credit-segment[data-segment=b]{top:6%;right:4%;width:12%;height:39%}
.credit-segment[data-segment=e]{bottom:6%;left:4%;width:12%;height:39%}
.credit-segment[data-segment=c]{bottom:6%;right:4%;width:12%;height:39%}
.credit-row strong{display:inline-block;min-width:2ch;text-align:center;font-size:1.15em;color:#ffea9d}
/* Proportionate placement is tied to the 1086×1448 cabinet graphic. */
@media(max-width:600px){.cabinet-credit-panel{border-width:1px;border-radius:3px;padding:3px 2px;gap:0}.cabinet-coin-slot{border-radius:2px}.cabinet-credit-display{border-radius:2px}.coin-slot-caption{font-size:4px}.coin-slot-value{font-size:6px}.cabinet-credit-label{font-size:4px}}
@media(prefers-reduced-motion:reduce){.cabinet-credit-display.flash{animation:none}}

/* V19.5.8 FINAL — move INSERT COIN legend above the actual coin aperture,
   avoiding the tiny lettering squeezed inside the button; maintain original artwork. */
.cabinet-credit-panel{justify-content:flex-start;gap:3%;padding:6px 4px 5px}
.coin-slot-caption{flex:0 0 11%;display:flex;align-items:center;justify-content:center;text-align:center;width:100%;color:#f6da9f;font:900 clamp(6px,.75vw,11px)/1.05 Arial,sans-serif;letter-spacing:.02em;white-space:nowrap;text-shadow:0 1px 3px #000}
.cabinet-coin-slot{flex:0 0 38%;padding:4% 6%;gap:9%}
.cabinet-credit-label{flex:0 0 12%;display:flex;align-items:center;justify-content:center;margin:0}
.cabinet-credit-display{flex:0 0 25%;height:auto;margin:0}
@media(max-width:600px){.cabinet-credit-panel{padding:3px 2px;gap:2%}.coin-slot-caption{font-size:clamp(4px,1.05vw,7px);letter-spacing:0}.cabinet-coin-slot{padding:1px}.cabinet-credit-display{flex-basis:29%}}

/* Final caption width guard on wide and narrow cabinets. */
.coin-slot-caption{align-self:stretch;min-width:0;width:auto;overflow:visible}

/* V19.6.0 — upright two-line vintage coin legend; no more overflow on narrow screens.
   Keep all machine, button, reel and display coordinates unchanged. */
.coin-slot-caption {
  display:flex!important;flex-direction:column!important;align-items:center!important;
  justify-content:center!important;gap:0!important;text-align:center!important;
  white-space:normal!important;overflow:hidden!important;
  flex:0 0 22%!important;line-height:1.06!important;
  font-family:Arial,Helvetica,sans-serif!important;font-weight:900!important;
  font-size:clamp(5.8px,.73vw,10px)!important;
  letter-spacing:0!important;padding:1px 0!important;
}
.coin-slot-caption span {display:block;width:100%;text-align:center;white-space:nowrap;line-height:1.05}
.cabinet-credit-panel{gap:2.4%!important}
.cabinet-coin-slot{flex:0 0 32%!important}
.cabinet-credit-label{flex:0 0 12%!important}
.cabinet-credit-display{flex:0 0 24%!important}
@media(max-width:600px){
  .coin-slot-caption{font-size:clamp(5.2px,1.52vw,7px)!important;flex-basis:25%!important}
  .cabinet-coin-slot{flex-basis:30%!important}
  .cabinet-credit-panel{padding:2px 1.5px!important}
}
