/* Three objects on the travelling table: a stamped pass, a supply bundle, a purse. */
.hud-stats>.camp-prop,.quiet-ui .hud-stats>.camp-prop{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:none;width:144px;min-width:144px;height:142px;padding:0;border:0;background:none;box-shadow:none;cursor:pointer;outline-offset:4px;touch-action:manipulation}
.camp-prop .prop-name{position:absolute;left:0;top:-3px;width:100%;text-align:center;font-size:12px!important;line-height:1.4;letter-spacing:3px!important;color:#6f7150;z-index:1}
.camp-prop .prop-figure{position:relative;width:100%;aspect-ratio:160/142;flex:none;filter:drop-shadow(0 4px 3px #6a6b3f20);transition:filter .18s}
.prop-figure>svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.camp-prop:hover .prop-figure{filter:drop-shadow(0 5px 5px #6a6b3f33) brightness(1.04)}
.travel-pass .prop-figure>strong{position:absolute;top:33%;left:27%;width:49%;text-align:left;font-size:29px;line-height:1.2;font-weight:900;color:#47735b;font-variant-numeric:tabular-nums}
.travel-pass .prop-figure>strong>small{font-size:12px;font-weight:500;margin-left:2px;color:#8d9a73}
.camp-prop #attempt-dots{position:absolute;left:25%;top:62%;width:54%;display:flex;flex-wrap:wrap;justify-content:center;gap:4px;margin:0}
.camp-prop #attempt-dots i,.quiet-ui .camp-prop #attempt-dots i{display:grid;place-items:center;flex:none;width:17px;height:17px;border-radius:50%;border:1px dashed #b9a279;background:#fff6dd;box-shadow:none;font-style:normal;color:#d5b46a;line-height:1}
.camp-prop #attempt-dots i:before{content:'✦';font-size:13px}.camp-prop #attempt-dots i.spent,.quiet-ui .camp-prop #attempt-dots i.spent{background:#b5cbaa;border-color:#8fa589;color:#fff8e6;box-shadow:inset 0 0 0 2px #d1dfbd}.camp-prop #attempt-dots i.spent:before{content:'✓';font-size:12px}
.travel-pass[data-empty=true] .prop-figure>strong{color:#a89079}
.camp-prop #attempt-dots i.spent.loss,.quiet-ui .camp-prop #attempt-dots i.spent.loss{background:#d6a798;border-color:#b47c6d;box-shadow:inset 0 0 0 2px #ead0bd}
.camp-prop #attempt-dots i.spent.loss:before{content:'×'}
.camp-prop #attempt-dots i.spent.even{background:#c8bea2;border-color:#a89d7e;box-shadow:inset 0 0 0 2px #e2dac1}
.camp-prop #attempt-dots i.spent.even:before{content:'−'}
.camp-prop #attempt-dots i.pending:before{content:'·'}
.travel-pass .pass-total{grid-column:1 / -1;display:block;width:100%;margin-top:2px;text-align:center;color:#6c7250;font-size:11px;line-height:1.2;white-space:nowrap}
.camp-prop #attempt-dots{display:grid;grid-template-columns:repeat(3,17px)}.camp-prop[data-total="4"] #attempt-dots{grid-template-columns:repeat(2,17px)}
.supply-pack #toll-amount{position:absolute;left:24%;top:68%;width:54%;font-size:23px;font-weight:900;line-height:1.2;text-align:center;color:#8a6436;transform:rotate(6deg);white-space:nowrap;letter-spacing:-1px;font-variant-numeric:tabular-nums}
.supply-pack #toll-amount small{font-size:11px;letter-spacing:0;margin-left:1px}
.supply-pack[data-large=true] #toll-amount{font-size:20px}
.supply-pack #toll-status{position:absolute;left:0;bottom:-7px;width:100%;text-align:center;font-size:12px;line-height:1.4;color:#6b805b;letter-spacing:1px}
.supply-pack[data-ready=true] .prop-figure{animation:camp-ready 2s ease-in-out infinite}.supply-pack[data-ready=true] #toll-status{color:#38835a;font-weight:800}
/* Turn the existing preparation controls into the contents of a canvas backpack. */
.bet-panel,.quiet-ui .bet-panel{isolation:isolate;border:2px solid #b79665;border-radius:35px 35px 27px 27px;background:linear-gradient(90deg,#bd9d6e 0 7px,transparent 7px calc(100% - 7px),#bd9d6e calc(100% - 7px)),repeating-linear-gradient(45deg,#fff4da 0 3px,#fcf0d3 3px 6px);padding:17px 22px 18px;box-shadow:0 6px 0 #9b7c53,0 14px 24px #5b684528,inset 0 0 0 4px #f9e8be;overflow:visible}
.bet-panel:before{content:'';position:absolute;top:-14px;left:calc(50% - 29px);width:58px;height:26px;border:5px solid #a38056;border-radius:27px 27px 5px 5px;background:#e9cf9e;z-index:-1}
.bet-panel>.panel-title,.quiet-ui .bet-panel>.panel-title{display:block;position:relative;margin:0 -9px 18px;padding:0;border-bottom:1px dashed #b9986880}
.pack-toggle{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:4px 0 11px;border:0;border-radius:22px 22px 14px 14px;background:linear-gradient(#f2d8a7,#e5c493);color:#735635;box-shadow:0 3px 0 #ae8d6060,inset 0 1px 0 #fff0c9;cursor:pointer;transform:none}
.pack-toggle:hover{filter:brightness(1.035)}.pack-toggle:active:not(:disabled){transform:translateY(1px)}
.pack-toggle-art{display:block;width:67px;height:74px;flex:none;filter:drop-shadow(0 3px 2px #8f6d4530)}.pack-toggle-art>svg{width:100%;height:100%;display:block}.pack-toggle-label{display:block;text-align:left;font-size:17px;letter-spacing:2px;font-weight:800;text-shadow:0 1px #fff1cf}
.pack-toggle-label>small{display:block;margin-top:7px;font-size:12px;letter-spacing:2px;font-weight:500;color:#7d805d}.pack-toggle>i{font-size:17px;color:#fff2b3;font-style:normal;position:absolute;right:13px;top:14px;text-shadow:0 1px #c09b61}
.pack-in-use .pack-toggle{background:linear-gradient(#dfdfb7,#bed1a5)}.pack-in-use .pack-toggle-label>small{color:#4e785b}.bet-panel .bet-input{background:#fffbea;border-color:#c7b685}.bet-panel .quick-bets button{background:#f8f2da;border-color:#cbbb8f}.bet-panel #keypad button{background:#fff9e6;border-color:#d1c59c}.bet-panel .bet-divider{border-color:#bbab7a66}
.camp-prop-tip{position:fixed;inset:auto;margin:0;padding:16px 32px 15px 17px;width:min(270px,calc(100vw - 24px));max-height:200px;overflow:auto;border:2px solid #e0d2aa;border-radius:18px 18px 18px 5px;background:#fffbed;color:#4d674f;box-shadow:0 5px 0 #b6bd9155,0 8px 25px #45623d2b;font-family:inherit}
.camp-prop-tip::backdrop{background:transparent;pointer-events:none}.camp-prop-tip>strong{display:block;font-size:15px;letter-spacing:2px;color:#6b8058}.camp-prop-tip>strong:before{content:'✦';margin-right:6px;color:#c29e50}.camp-prop-tip>p{font-size:14px;line-height:1.8;margin:8px 0 0}.camp-prop-tip>button{position:absolute;top:8px;right:9px;border:0;background:none;color:#8da17f;font-size:20px;line-height:1;padding:3px}
@keyframes camp-ready{0%,100%{filter:drop-shadow(0 4px 3px #6a6b3f20);transform:translateY(0)}50%{filter:drop-shadow(0 0 9px #f7dc86);transform:translateY(-3px)}}
@media(max-width:1150px){.hud-stats>.camp-prop,.quiet-ui .hud-stats>.camp-prop{width:123px;min-width:123px;height:125px}.camp-prop #attempt-dots i,.quiet-ui .camp-prop #attempt-dots i{width:15px;height:15px}.camp-prop #attempt-dots{gap:3px}.travel-pass .prop-figure>strong{font-size:26px}.supply-pack #toll-amount{font-size:21px}.pack-toggle-art{width:59px;height:67px}.pack-toggle-label{font-size:16px}}
@media(max-width:700px){.hud-stats,.quiet-ui .hud-stats{gap:5px;align-items:center;justify-content:space-between;min-height:115px;margin-top:2px}.hud-stats>.camp-prop,.quiet-ui .hud-stats>.camp-prop{width:0;min-width:0;flex:1;height:111px}.hud-stats>.wallet{width:98px;min-width:98px;height:107px;flex:none}.wallet>#balance{left:10px;width:78px;font-size:20px}.wallet[data-digits=long]>#balance{font-size:14px}.camp-prop .prop-name{font-size:12px!important;letter-spacing:1px!important;top:1px}.travel-pass .prop-figure>strong{font-size:23px;top:32%}.travel-pass .prop-figure>strong>small{font-size:11px}.camp-prop #attempt-dots{gap:2px;top:62%;width:56%;left:24%}.camp-prop #attempt-dots i,.quiet-ui .camp-prop #attempt-dots i{width:12px;height:12px}.camp-prop #attempt-dots i:before{font-size:11px}.camp-prop #attempt-dots i.spent:before{font-size:11px}.supply-pack #toll-amount{font-size:18px;top:68%}.supply-pack #toll-amount small{font-size:10px}.supply-pack #toll-status{bottom:-8px;font-size:11px;letter-spacing:0}.bet-panel,.quiet-ui .bet-panel{padding:15px 19px 18px;border-radius:31px 31px 23px 23px}.pack-toggle-art{width:68px;height:72px}.pack-toggle-label{font-size:17px}.pack-toggle-label>small{font-size:12px}.camp-prop-tip{padding:13px 29px 12px 14px}.camp-prop-tip>p{font-size:13px}.camp-prop-tip>strong{font-size:14px}}
@media(prefers-reduced-motion:reduce){.supply-pack[data-ready=true] .prop-figure{animation:none}}
@media(max-width:1150px){.camp-prop #attempt-dots{grid-template-columns:repeat(3,15px)}.camp-prop[data-total="4"] #attempt-dots{grid-template-columns:repeat(2,15px)}}
@media(max-width:700px){.camp-prop #attempt-dots{grid-template-columns:repeat(3,12px)}.camp-prop[data-total="4"] #attempt-dots{grid-template-columns:repeat(2,12px)}}
@media(max-width:700px){.supply-pack[data-large=true] #toll-amount{font-size:15px}}

/* Labels belong to the objects: paper tabs, a stitched badge and a payment ribbon. */
.hud-stats>.camp-prop .prop-name{left:50%;top:5px;transform:translateX(-50%);width:max-content;max-width:95%;padding:4px 9px;border:1px solid #8b9c6c;border-radius:5px;background:#fff8dd;box-shadow:0 2px 0 #6d795f33,inset 0 0 0 2px #fffdf0;color:#294c39;font-size:14px!important;line-height:1.25;letter-spacing:1px!important;font-weight:800;white-space:nowrap;text-shadow:none}
.hud-stats>.travel-pass .prop-name{top:11%;border-color:#aa8955;background:#f1e5c5;color:#4e633f;transform:translateX(-50%) rotate(1deg)}
.hud-stats>.supply-pack .prop-name{top:0;background:#e5efcf;border-color:#759366;color:#2e513c}
.hud-stats>.supply-pack .prop-name:after{content:'';position:absolute;left:50%;top:100%;height:6px;border-left:2px solid #8b7750}
.travel-pass .prop-figure>strong{color:#28563e;font-size:32px}.travel-pass .prop-figure>strong>small{color:#4f6043;font-size:14px;font-weight:700}
.supply-pack #toll-amount{display:flex;align-items:center;justify-content:center;gap:4px;color:#70461e;text-shadow:0 1px #fff7e1;letter-spacing:-.6px}
.supply-pack #toll-amount small{display:inline-grid;place-items:center;flex:none;width:15px;height:15px;margin:0;border:1px solid #ae7e31;border-radius:50%;background:linear-gradient(135deg,#fff0a8,#edc76b);box-shadow:inset 0 0 0 1px #fff2ba;color:#78501c;font-size:0;line-height:1;letter-spacing:0}
.supply-pack #toll-amount small:before{content:'G';font-size:12px;font-weight:900;text-shadow:0 1px #fff4c9}
.supply-pack #toll-status{left:50%;bottom:-8px;transform:translateX(-50%);width:max-content;max-width:100%;padding:3px 7px;border:1px solid #77916a;border-radius:5px;background:#eff5de;box-shadow:0 2px 0 #71856429;color:#34573e;font-size:12px;line-height:1.2;font-weight:700;letter-spacing:1px;white-space:nowrap}
.hud-stats>.wallet>.wallet-name{left:50%;top:34%;width:max-content;max-width:90%;transform:translateX(-50%) rotate(-2deg);padding:3px 8px;border:1px dashed #5f8a6c;border-radius:5px;background:#edf6d8;box-shadow:0 1px 0 #99744744,0 0 0 2px #a5c3a0;color:#28543c;font-size:13px;line-height:1.15;font-weight:800;letter-spacing:1px;text-shadow:none}
@media(max-width:1150px){.hud-stats>.camp-prop .prop-name{font-size:13px!important;padding:3px 7px}.travel-pass .prop-figure>strong{font-size:28px}.travel-pass .prop-figure>strong>small{font-size:13px}.hud-stats>.wallet>.wallet-name{font-size:12px;padding:2px 7px}}
@media(max-width:700px){.hud-stats>.camp-prop .prop-name{font-size:12px!important;letter-spacing:.5px!important;padding:3px 5px}.hud-stats>.travel-pass .prop-name{top:12%}.hud-stats>.supply-pack .prop-name{top:4px}.travel-pass .prop-figure>strong{font-size:24px;top:35%}.travel-pass .prop-figure>strong>small{font-size:12px}.supply-pack #toll-amount{gap:2px;font-size:19px}.supply-pack #toll-amount small{width:12px;height:12px}.supply-pack #toll-amount small:before{font-size:11px}.supply-pack #toll-status{font-size:12px;letter-spacing:.5px;padding:3px 5px;bottom:-10px}.hud-stats>.wallet>.wallet-name{top:34%;font-size:12px;padding:2px 5px}.hud-stats>.wallet>#balance{top:57px;font-size:19px}.hud-stats>.wallet[data-digits=long]>#balance{top:58px;font-size:14px}}
.camp-prop[data-total="10"] #attempt-dots{grid-template-columns:repeat(5,12px)}.camp-prop[data-total="10"] #attempt-dots i{width:12px;height:12px}.camp-prop[data-total="10"] #attempt-dots i:before{font-size:11px}
@media(max-width:1150px){.camp-prop[data-total="10"] #attempt-dots{grid-template-columns:repeat(5,10px);gap:3px}.camp-prop[data-total="10"] #attempt-dots i{width:10px;height:10px}}
@media(max-width:700px){.camp-prop[data-total="10"] #attempt-dots{grid-template-columns:repeat(5,9px);gap:2px}.camp-prop[data-total="10"] #attempt-dots i{width:9px;height:9px}.camp-prop[data-total="10"] #attempt-dots i:before{font-size:10px}}
.camp-prop #attempt-dots{height:auto;grid-auto-rows:max-content;align-content:start}
