/* MONARCH Originals — Counterweight and Crown Circuit. */
.game-logo-counterweight{background-image:url('assets/game-counterweight-v20.png')}.game-logo-circuit{background-image:url('assets/game-circuit-v20.png')}.game-logo-counterweight,.game-logo-circuit{background-size:contain;background-position:center;background-repeat:no-repeat;animation:none;mix-blend-mode:normal}
[data-live="feature-counterweight"] .feature-copy h2,[data-live="feature-circuit"] .feature-copy h2{font-size:clamp(37px,5.1vw,75px)}
.game-counterweight .table-wrap{background:radial-gradient(ellipse at 50% 36%,#214e43,transparent 85%),#11252b}.game-circuit .table-wrap{background:radial-gradient(ellipse at 50% 36%,#233c5b,transparent 85%),#11202f}.game-counterweight .table-wrap,.game-circuit .table-wrap{min-width:0;box-shadow:inset 0 0 110px color-mix(in srgb,var(--table-color) 12%,transparent)}
.game-counterweight .table-topline,.game-circuit .table-topline{min-height:64px;height:auto}.game-counterweight{--expansion-accent:#88eed0}.game-circuit{--expansion-accent:#8ad7ff}
.expansion-room{position:relative;display:flex;flex-direction:column;align-items:center;padding:25px 26px 30px;min-height:675px;isolation:isolate;overflow:hidden}.expansion-heading{text-align:center;margin-bottom:12px}.expansion-heading>span{font-size:9px;letter-spacing:.22em;color:var(--expansion-accent);font-weight:700}.expansion-heading h2{color:#f5f9ff;font-size:clamp(28px,3vw,38px);line-height:1.2;letter-spacing:-.04em;margin:9px 0 10px}.expansion-room .table-instruction{text-align:center;margin:25px 0 0;line-height:1.6}
.balance-controls{margin-top:27px}.balance-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.balance-options button{appearance:none;display:flex;align-items:center;justify-content:space-between;gap:5px;padding:14px 10px;border:1px solid #496575;border-radius:9px;background:#102531;color:#b8ceda;font-size:12px;min-height:53px;cursor:pointer}.balance-options button b{font-size:13px;color:#e4f3ef}.balance-options button.selected{border-color:#7bedc5;background:linear-gradient(130deg,#2b5749,#173f38);box-shadow:inset 0 0 0 1px #9ffbd622}.balance-options button.selected span{color:#b1ffda}.balance-options button:disabled{cursor:default;opacity:.55}.expansion-odds{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0 0}.expansion-odds>div{border:1px solid #466070;border-radius:9px;background:#0d202a77;padding:14px 12px;color:#82ffa8;min-width:0}.expansion-odds span{font-size:10px;display:block;white-space:nowrap}.expansion-odds b{display:block;font-size:24px;margin-top:8px;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.balance-instrument{width:min(100%,720px);margin:-18px 0 -6px}.balance-instrument svg{display:block;width:100%;height:auto;overflow:visible}.scale-beam{transform-box:view-box;transform-origin:400px 151px;transform:rotate(var(--beam-angle))}.scale-suspension{transform-box:view-box;transform-origin:0 0;transform:rotate(var(--counter-angle))}.scale-ingot{opacity:0;transform-box:view-box}.scale-ingot.ingot-visible{opacity:1}.is-weighing .scale-ingot{animation:goldDrop20 450ms cubic-bezier(.35,0,.7,1) var(--drop-delay) both}.is-weighing .scale-beam{animation:scaleSettle20 3600ms cubic-bezier(.45,0,.3,1) both;will-change:transform}.is-weighing .scale-suspension{animation:panSettle20 3600ms cubic-bezier(.45,0,.3,1) both;will-change:transform}
.weight-readings{display:flex;justify-content:center;gap:44px;width:min(92%,500px);text-align:center;margin:4px 0 22px}.weight-readings>div{flex:1}.weight-readings span{display:block;font-size:9px;letter-spacing:.12em;color:#aac2bf;white-space:nowrap}.weight-readings b{display:block;font-size:32px;line-height:1;margin-top:12px;color:#f5fbf8;font-variant-numeric:tabular-nums}.weight-difference{border-left:1px solid #76978e40;border-right:1px solid #76978e40}.weight-readings b.positive{color:#97ffc1}.weight-readings b.negative,.circuit-readout b.negative{color:#ff8294}.balance-range{width:min(94%,620px)}.balance-range-track{height:8px;position:relative;border-radius:3px;background:linear-gradient(90deg,#ff5779 0 var(--range-left),#79e8b5 var(--range-left) var(--range-right),#ff5779 var(--range-right) 100%)}.balance-range-track:after{content:'';position:absolute;left:50%;top:-3px;width:2px;height:14px;background:#a3ffda;transform:translateX(-50%)}.balance-range-track i{position:absolute;top:-5px;width:3px;height:18px;background:#fff;z-index:1;transform:translateX(-50%);box-shadow:0 0 6px #fff5}.balance-range-labels{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:14px;font-size:8px;color:#a8c3c0;letter-spacing:.06em}.balance-range-labels b{font-size:9px;color:#b2fad3;text-align:center;white-space:nowrap}
@keyframes goldDrop20{0%{opacity:0;transform:translateY(-70px)}15%{opacity:1}80%{transform:translateY(1px)}100%{opacity:1;transform:translateY(0)}}
@keyframes scaleSettle20{0%,10%{transform:rotate(0deg)}24%{transform:rotate(-3deg)}39%{transform:rotate(3deg)}58%{transform:rotate(calc(var(--beam-angle)*.6))}77%{transform:rotate(calc(var(--beam-angle)*1.14))}91%{transform:rotate(calc(var(--beam-angle)*.97))}100%{transform:rotate(var(--beam-angle))}}
@keyframes panSettle20{0%,10%{transform:rotate(0deg)}24%{transform:rotate(3deg)}39%{transform:rotate(-3deg)}58%{transform:rotate(calc(var(--counter-angle)*.6))}77%{transform:rotate(calc(var(--counter-angle)*1.14))}91%{transform:rotate(calc(var(--counter-angle)*.97))}100%{transform:rotate(var(--counter-angle))}}
/* A miniature city, with actual route paths and a car fixed for the journey. */
.circuit-room{padding-left:22px;padding-right:22px}.circuit-controls{margin-top:27px}.route-control-label{font-size:9px;letter-spacing:.12em;color:#b0c7d9;display:block;margin-bottom:12px}.circuit-route-options{display:flex;flex-direction:column;gap:10px}.route-choice{display:flex;align-items:center;text-align:left;gap:9px;min-height:77px;width:100%;border:1px solid color-mix(in srgb,var(--route-color) 38%,#203346);background:linear-gradient(120deg,color-mix(in srgb,var(--route-color) 10%,#142430),#122231);border-radius:11px;padding:13px 11px;color:#eff8ff;cursor:pointer;transition:background .15s,border-color .15s}.route-choice:hover:not(:disabled){border-color:var(--route-color);background:color-mix(in srgb,var(--route-color) 16%,#142430)}.route-choice i{display:grid;place-items:center;width:29px;height:34px;color:var(--route-color);flex-shrink:0}.route-choice .icon{width:23px;height:23px}.route-choice>span{flex:1;min-width:0}.route-choice b{display:block;font-size:12px;white-space:nowrap}.route-choice small{display:block;font-size:9px;margin-top:6px;white-space:nowrap;color:#b2c6d4}.route-choice>strong{color:#a4ffc6;font-size:16px;font-variant-numeric:tabular-nums;white-space:nowrap}.route-choice:disabled{cursor:default;opacity:.45}
.circuit-dashboard{display:flex;justify-content:space-between;align-items:center;width:min(100%,830px);padding:0 12px;margin:5px 0 15px;gap:10px}.circuit-car-badge{display:flex;gap:11px;align-items:center;min-width:0}.circuit-car-badge>svg{width:75px;height:40px;flex-shrink:0}.circuit-car-badge small{font-size:8px;color:#89abc4;letter-spacing:.12em}.circuit-car-badge b{font-size:13px;color:#e1effb;display:block;margin-top:4px;white-space:nowrap}.circuit-checkpoints{display:flex;align-items:center}.circuit-checkpoints>span{display:grid;place-items:center;width:29px;height:29px;border:1px solid #617f9966;border-radius:50%;background:#173149;color:#9db8cd;font-size:10px}.circuit-checkpoints>i{width:20px;height:1px;background:#4b718c}.circuit-checkpoints>span.cleared{border-color:#7af0c2;color:#a4fbd0;background:#20524d}.circuit-checkpoints>span.closed{border-color:#fc6784;color:#fc9caf;background:#552b41}.circuit-checkpoints>span.next{border-color:#acdfff;color:#fff;box-shadow:0 0 12px #8acaff16}.circuit-checkpoints .icon{width:15px;height:15px}
.circuit-city{width:min(100%,850px);position:relative;margin:0 auto;isolation:isolate}.circuit-map{width:100%;height:auto;display:block;overflow:visible;filter:drop-shadow(0 14px 20px #05102144)}.road-edge{fill:none;stroke:#496279;stroke-width:27;stroke-linecap:round}.road-asphalt{fill:none;stroke:#0d1729;stroke-width:22;stroke-linecap:round}.road-dashes{fill:none;stroke:#7f96ad;stroke-opacity:.4;stroke-width:1;stroke-dasharray:7 9}.road-highlight{fill:none;stroke:var(--road-color);stroke-width:2;stroke-dasharray:3 8;opacity:.8}.road-selected .road-edge{stroke:var(--road-color);stroke-opacity:.65}.road-passed .road-edge{stroke:#67dcae}.road-failed .road-highlight{stroke:#ff5e80}.circuit-readout{text-align:center;margin:16px 0 0}.circuit-readout>span{color:#aec8dc;font-size:9px;letter-spacing:.12em}.circuit-readout>b{color:#eef6ff;font-size:32px;line-height:1;letter-spacing:-.035em;display:block;margin-top:8px;font-variant-numeric:tabular-nums}.circuit-readout>b.positive{color:#a4ffcb}.circuit-readout>p{font-size:13px;color:#b2cbdc;margin:14px 0 0}.circuit-map-controls{display:none}
@media(min-width:761px) and (max-height:900px){.balance-instrument{max-width:610px}.expansion-room{min-height:610px}.circuit-city{max-width:670px}}
@media(max-width:1150px){.route-choice{flex-wrap:wrap}.route-choice>strong{font-size:14px}.route-choice i{width:20px}.circuit-room{padding-left:15px;padding-right:15px}.circuit-car-badge>svg{width:58px}.circuit-car-badge{gap:7px}.circuit-checkpoints>i{width:10px}}
@media(max-width:760px){.game-counterweight .bet-panel,.game-circuit .bet-panel{display:block;padding:22px}.game-counterweight .bet-panel-bottom,.game-circuit .bet-panel-bottom{margin-top:24px}.game-counterweight .table-wrap,.game-circuit .table-wrap{scroll-margin-top:170px}.expansion-room{padding:24px 15px 30px;min-height:0}.expansion-heading h2{font-size:29px}.expansion-heading>span{font-size:8px}.balance-instrument{width:calc(100% + 12px);margin:0 -6px 0}.weight-readings{gap:10px;width:100%;margin:12px 0 24px}.weight-readings span{font-size:8px}.weight-readings b{font-size:27px}.balance-range{width:100%}.balance-range-labels{font-size:6px;gap:4px}.balance-range-labels b{font-size:7px}.expansion-room .table-instruction{font-size:12px;margin-top:20px}.circuit-dashboard{padding:0;margin:6px 0 13px;gap:5px}.circuit-car-badge b{font-size:11px}.circuit-car-badge>svg{width:52px}.circuit-checkpoints>span{width:22px;height:22px;font-size:8px}.circuit-checkpoints>i{width:9px}.circuit-checkpoints .icon{width:12px;height:12px}.circuit-map-controls{display:block;width:100%;margin-top:24px}.circuit-map-controls .circuit-route-options{gap:8px}.circuit-map-controls .route-choice{min-height:65px;flex-wrap:nowrap;padding:11px 14px}.circuit-map-controls .route-choice>strong{font-size:18px}.circuit-controls .original-side-note{font-size:11px}.circuit-readout>p{font-size:12px;line-height:1.5}.circuit-readout>b{font-size:29px}.circuit-readout>span{font-size:8px}.game-circuit .game-hint{display:none}.game-circuit .bet-panel>.circuit-controls{display:none}[data-live="feature-counterweight"] .feature-copy h2,[data-live="feature-circuit"] .feature-copy h2{font-size:clamp(32px,8.7vw,56px)}}
@media(prefers-reduced-motion:reduce){.is-weighing .scale-ingot,.is-weighing .scale-beam,.is-weighing .scale-suspension{animation:none;will-change:auto}.route-choice{transition:none}}
.circuit-city{max-width:720px}.circuit-road .road-edge{stroke:var(--road-color);stroke-opacity:.26}.circuit-road.road-selected .road-edge{stroke-opacity:.8}.circuit-road.road-passed .road-edge{stroke:#67dcae;stroke-opacity:.65}.circuit-building{filter:drop-shadow(3px 5px 3px #07132244)}
