:root{--paper: #ece8df;--card: #f9f5eb;--cream: #fbf8f0;--ink: #222;--ink-2: #4a4a4a;--muted: #7a7468;--rule: #2a2a2a;--line: #d8d0bf;--accent: #b3372f;--green: #3f7d3a;--serif: "Libre Baskerville", Georgia, serif;--sans: "Inter", system-ui, sans-serif;--safe-bottom: env(safe-area-inset-bottom, 0px)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{font-family:var(--sans);color:var(--ink);background:var(--paper)}button{font:inherit;color:inherit}.muted{color:var(--muted)}.small{font-size:12px}.center-text{text-align:center}.warn{color:var(--accent);font-weight:600}.btn{border:1.5px solid var(--rule);border-radius:8px;background:var(--cream);padding:10px 16px;min-height:44px;font-weight:700;font-size:15px;cursor:pointer;box-shadow:0 2px 0 var(--rule);transition:transform .08s,box-shadow .08s,background .15s;touch-action:manipulation}.btn:hover:not(:disabled){background:#fff}.btn:active:not(:disabled){transform:translateY(2px);box-shadow:0 0 0 var(--rule)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:var(--green);color:#fff}.btn.primary:hover:not(:disabled){background:#356a31}.btn.danger{background:var(--accent);color:#fff}.btn.ghost{background:transparent}.btn.big{min-height:52px;font-size:16px;padding:12px 20px}.btn.small{min-height:36px;padding:6px 12px;font-size:13px}.btn.wide{flex:1}.seg{display:inline-flex;border:1.5px solid var(--rule);border-radius:8px;overflow:hidden}.seg.wrap{flex-wrap:wrap}.seg button{border:0;border-right:1px solid var(--line);background:var(--cream);padding:9px 16px;font-weight:700;cursor:pointer;min-height:42px}.seg button:last-child{border-right:0}.seg button.on{background:var(--ink);color:#fff}.tag{font-size:10px;text-transform:uppercase;letter-spacing:.04em;font-weight:700;border:1px solid var(--line);border-radius:999px;padding:0 6px;margin-left:6px;color:var(--muted)}.tag.jail{color:#fff;background:var(--ink);border-color:var(--ink)}.token{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;color:#fff;font-size:13px;font-weight:800;border:2.5px solid #fff;box-shadow:0 0 0 1.5px var(--rule),0 2px 4px #0000004d;flex-shrink:0;line-height:1}.token.big{width:54px;height:54px;font-size:26px}.token.huge{width:84px;height:84px;font-size:40px;border-width:4px}.setup{min-height:100vh;display:grid;place-items:center;padding:18px}.setup-card{width:min(760px,100%);background:var(--card);border:3px double var(--rule);outline:1.5px solid var(--rule);outline-offset:6px;padding:26px;display:flex;flex-direction:column;gap:16px;box-shadow:0 30px 60px #3c321e33}.setup-hero{position:relative;height:140px}.hero-deed{position:absolute;top:0;left:50%;width:92px;box-shadow:0 8px 18px #0003}.hero-deed.d1{transform:translate(-150%) rotate(-10deg)}.hero-deed.d2{transform:translate(-50%) rotate(0) translateY(-8px);z-index:1}.hero-deed.d3{transform:translate(50%) rotate(10deg)}.setup h1{font-family:var(--serif);text-align:center;font-size:44px;margin:0;letter-spacing:.02em;text-transform:uppercase}.setup-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.label{font-family:var(--serif);font-weight:700;min-width:100px}.seats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.seat{border:1.5px solid var(--rule);background:var(--cream);border-radius:8px;padding:8px;min-height:132px;display:flex;flex-direction:column;gap:8px;justify-content:center}.seat.off{border-style:dashed;border-color:#b9b09c;background:transparent}.seat .add{border:0;background:none;font-weight:700;color:var(--muted);cursor:pointer;height:100%}.token-pick{display:flex;gap:3px}.tp{flex:1;height:28px;padding:0;border:1.5px solid var(--line);border-radius:6px;background:#fff;color:var(--c);font-weight:800;cursor:pointer}.tp.on{background:var(--c);color:#fff;border-color:var(--rule)}.seat-row{display:flex;gap:6px;align-items:center}.seat-row input{flex:1;width:0;min-width:0;font:inherit;font-weight:600;border:1.5px solid var(--line);border-radius:6px;padding:7px 8px;background:#fff}.kind-pick{display:grid;grid-template-columns:1fr 1fr;border:1.5px solid var(--rule);border-radius:8px;overflow:hidden}.kind-pick button{border:0;background:#fff;color:var(--muted);font:inherit;font-size:13px;font-weight:700;padding:8px 4px;cursor:pointer;white-space:nowrap}.kind-pick button+button{border-left:1.5px solid var(--rule)}.kind-pick button.on{background:var(--green);color:#fff}.kind-pick button.on.bot{background:var(--ink)}.kind-pick button:focus-visible{outline:2px solid var(--ink);outline-offset:-3px}.seat-remove{border:0;background:none;color:var(--muted);font-size:14px;cursor:pointer;padding:4px 6px}.setup-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}.setup-actions small{display:block;font-weight:500;font-size:11px;color:var(--muted)}.top{position:relative;display:flex;justify-content:space-between;align-items:center;padding:10px 18px;gap:10px}.brand{font-family:var(--serif);font-weight:700;font-size:22px;text-transform:uppercase;letter-spacing:.04em}.top-actions{display:flex;gap:8px;align-items:center}.top-actions select{font:inherit;font-size:13px;border:1.5px solid var(--rule);border-radius:8px;padding:7px;background:var(--cream)}.main{--board: min( calc(100vh - 80px) , calc(100vw - 460px) );display:grid;grid-template-columns:var(--board) minmax(340px,420px);gap:18px;justify-content:center;padding:0 18px 18px;align-items:start}.board-wrap{width:var(--board);padding:calc(var(--board) * .05);box-sizing:border-box}.side{display:flex;flex-direction:column;gap:12px;height:var(--board);min-height:600px}.panel{background:var(--card);border:1.5px solid var(--rule);border-radius:10px;padding:12px}.panel h3{margin:0 0 6px;font-family:var(--serif);font-size:15px}.board{position:relative;display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(7,1fr);aspect-ratio:1;width:100%;background:var(--rule);gap:1.5px;border:4px double var(--rule);padding:2px;container-type:inline-size;box-shadow:0 20px 50px #3c321e40}.space{position:relative;border:0;margin:0;padding:2.6cqi .6cqi .8cqi;background:var(--cream);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:.5cqi;cursor:pointer;overflow:hidden;text-align:center}.space:hover{background:#fff}.space.selected{box-shadow:inset 0 0 0 .5cqi var(--ink)}.band{position:absolute;top:0;left:0;right:0;height:2.1cqi;border-bottom:1px solid var(--rule)}.sp-icon{font-size:2.4cqi;line-height:1;min-height:2.4cqi}.kind-property .sp-icon{display:none}.sp-name{font-family:var(--serif);font-weight:700;font-size:1.55cqi;line-height:1.1;text-transform:uppercase}.sp-sub{font-size:1.45cqi;font-weight:700;color:var(--ink-2);margin-top:auto;margin-bottom:.6cqi}.kind-go,.kind-free,.kind-gotojail,.kind-jail{background:#f1ecdf;justify-content:center;padding-top:.6cqi}.kind-go .sp-icon{font-size:5cqi;color:var(--accent)}.kind-go .sp-name{font-size:3.4cqi;color:var(--accent)}.kind-card .sp-icon{font-family:var(--serif);font-weight:700;font-size:5cqi;color:var(--accent)}.kind-card,.kind-tax{justify-content:center;padding-top:.6cqi}.kind-tax .sp-sub,.kind-go .sp-sub{margin-top:.4cqi}.kind-gotojail .sp-icon,.kind-free .sp-icon{font-size:4.4cqi}.jail-art{position:absolute;top:0;right:0;bottom:0;left:0}.jail-cell{position:absolute;top:0;right:0;width:68%;height:68%;background:repeating-linear-gradient(90deg,var(--rule) 0 .45cqi,transparent .45cqi 1.8cqi),#f2ae6c;border-left:2px solid var(--rule);border-bottom:2px solid var(--rule);display:grid;place-items:center}.jail-cell b{font-family:var(--serif);font-size:2.1cqi;background:var(--cream);padding:0 .6cqi;border:1px solid var(--rule)}.jail-art small{position:absolute;bottom:.5cqi;left:0;right:0;font-size:1.25cqi;font-weight:700;text-transform:uppercase}.bars{position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(90deg,rgba(20,20,20,.85) 0 .8cqi,transparent .8cqi 2.2cqi);animation:bars-down 1.62s ease-out forwards;z-index:2}@keyframes bars-down{0%{transform:translateY(-100%)}40%{transform:translateY(0)}to{transform:translateY(0);opacity:.2}}.space.mortgaged{background:repeating-linear-gradient(135deg,#efe9dc 0,#efe9dc 6px,#e4dccb 6px,#e4dccb 12px)}.space.mortgaged .band{opacity:.4}.sp-sub.two{display:flex;flex-direction:column;align-items:center;gap:.2cqi}.sp-sub small{font-size:1.25cqi;font-weight:600;color:var(--muted)}.space.mortgaged .sp-sub small{color:var(--accent);font-weight:700}.space.trail{background:#fff7d6;box-shadow:inset 0 0 0 .4cqi #e0b400}.space.offer{animation:offer 1.35s ease-in-out infinite}@keyframes offer{50%{box-shadow:inset 0 0 0 .6cqi var(--green)}}.space.pulse-go{animation:go-pulse 1.22s ease-out}@keyframes go-pulse{0%{box-shadow:inset 0 0 #e0b400;background:#fff3b0}50%{box-shadow:inset 0 0 0 1.4cqi #e0b400}}.improvement{position:absolute;bottom:.4cqi;left:.5cqi}.bld{display:block;stroke:var(--rule);stroke-width:1.4}.bld.house{width:3cqi;height:3cqi;fill:#5aa05a}.bld.house .door{fill:var(--cream)}.bld.hotel{width:4.2cqi;height:3.2cqi;fill:var(--accent)}.bld.hotel text{fill:#fff;stroke:none;font-size:11px;font-weight:800;font-family:var(--sans)}.bld.appear{animation:drop .81s cubic-bezier(.3,1.6,.5,1)}.bld.morph{animation:morph .88s ease-out}@keyframes drop{0%{transform:translateY(-4cqi) scale(1.6);opacity:0}}@keyframes morph{0%{transform:scale(.7);filter:hue-rotate(-110deg)}50%{transform:scale(1.5)}to{transform:scale(1)}}@keyframes pop{0%{transform:scale(.2);opacity:0}}.center{grid-row:2 / 7;grid-column:2 / 7;background:radial-gradient(circle at 50% 40%,#fbf8f0,#efe9dc);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2.4cqi;position:relative}.title-plate{text-align:center;border:3px double var(--rule);padding:1cqi 3cqi;background:var(--card);transform:rotate(-3deg)}.title-plate small{display:block;font-size:1.3cqi;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.title-plate b{font-family:var(--serif);font-size:5.6cqi;text-transform:uppercase;letter-spacing:.03em}.dice-row{display:flex;gap:4cqi;height:9cqi}.die3d{width:8cqi;height:8cqi;perspective:40cqi;transform:rotate(var(--wobble));transition:opacity .4s}.die3d.idle{opacity:.55}.die3d.rolling{animation:die-hop var(--roll-ms, 1.6s) cubic-bezier(.3,.6,.4,1)}@keyframes die-hop{0%{transform:rotate(var(--wobble)) translateY(0) scale(1)}22%{transform:rotate(var(--wobble)) translateY(-4cqi) scale(1.15)}52%{transform:rotate(var(--wobble)) translateY(0) scale(1)}66%{transform:rotate(var(--wobble)) translateY(-1cqi) scale(1.03)}80%,to{transform:rotate(var(--wobble)) translateY(0) scale(1)}}.cube{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .6s cubic-bezier(.16,.7,.24,1);will-change:transform}.face{position:absolute;top:0;right:0;bottom:0;left:0;-webkit-backface-visibility:hidden;background:#fff;border:.3cqi solid var(--rule);border-radius:1.4cqi;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);padding:.9cqi;backface-visibility:hidden}.face span{place-self:center}.face .pip{width:1.4cqi;height:1.4cqi;border-radius:50%;background:var(--ink)}.f1 .pip{background:var(--accent);width:1.9cqi;height:1.9cqi}.f1{transform:translateZ(4cqi)}.f6{transform:rotateY(180deg) translateZ(4cqi)}.f2{transform:rotateY(90deg) translateZ(4cqi)}.f5{transform:rotateY(-90deg) translateZ(4cqi)}.f3{transform:rotateX(90deg) translateZ(4cqi)}.f4{transform:rotateX(-90deg) translateZ(4cqi)}.piles{position:relative;display:flex;gap:6cqi;perspective:80cqi}.pile{width:11cqi;height:15cqi;position:relative}.pile.deck:before,.pile.deck:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid var(--rule);background:#d9cfb8;border-radius:.8cqi;transform:translate(.5cqi,.5cqi)}.pile.deck:after{transform:translate(.25cqi,.25cqi)}.rc-back,.rc-face{position:absolute;top:0;right:0;bottom:0;left:0;border:1.5px solid var(--rule);border-radius:.8cqi;z-index:1}.rc-back{background:repeating-linear-gradient(45deg,#b3372f 0,#b3372f .6cqi,#c9483f .6cqi,#c9483f 1.2cqi);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:inset 0 0 0 .6cqi #f9f5eb}.rc-back span{font-family:var(--serif);font-size:6cqi;font-weight:700;line-height:1}.rc-back small{font-size:1.1cqi;text-transform:uppercase;font-weight:700;letter-spacing:.06em}.rc-face{background:var(--card);box-shadow:inset 0 0 0 .4cqi var(--card),inset 0 0 0 .55cqi var(--rule);padding:1.2cqi .8cqi;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:.6cqi}.rc-kicker{font-size:.9cqi;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);font-weight:800}.rc-title{font-family:var(--serif);font-weight:700;font-size:1.5cqi;line-height:1.15}.rc-text{font-size:1.05cqi;line-height:1.3}.empty-pile{position:absolute;top:0;right:0;bottom:0;left:0;border:1.5px dashed #b9b09c;border-radius:.8cqi;display:grid;place-items:center;font-size:1.2cqi;color:var(--muted);text-transform:uppercase}.draw-card{position:absolute;left:0;top:0;width:11cqi;height:15cqi;z-index:5;animation:draw-path var(--card-ms, 3.6s) cubic-bezier(.45,.05,.3,1) forwards}.draw-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;animation:draw-flip var(--card-ms, 3.6s) ease-in-out forwards}.side-back,.side-front{position:absolute;top:0;right:0;bottom:0;left:0;backface-visibility:hidden}.side-front{transform:rotateY(180deg)}@keyframes draw-path{0%{transform:translate(0) scale(1)}10%{transform:translateY(-2.5cqi) scale(1.08)}30%,76%{transform:translate(8.5cqi,-11cqi) scale(2.2)}to{transform:translate(17cqi) scale(1)}}@keyframes draw-flip{0%,12%{transform:rotateY(0)}30%,to{transform:rotateY(180deg)}}.app.fast .draw-card,.app.fast .draw-inner{--card-ms: 1.75s}.bank{font-size:1.6cqi;font-weight:700;border:1.5px solid var(--rule);border-radius:999px;padding:.5cqi 1.8cqi;background:var(--card)}.whose{display:flex;align-items:center;gap:1cqi;font-family:var(--serif);font-weight:700;font-size:max(1.9cqi,12px);border-bottom:3px solid;padding-bottom:.4cqi}.flag-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:2}.owner-flag{--r: 0deg;position:absolute;width:1cqi;height:4.4cqi;transform:translate(-50%,-100%) rotate(var(--r));transform-origin:50% 100%;animation:flag-rise .68s cubic-bezier(.3,1.5,.5,1)}.flag-bottom{--r: 180deg}.flag-left{--r: -90deg}.flag-right{--r: 90deg}.flag-pole{position:absolute;left:50%;bottom:0;width:max(1.5px,.35cqi);height:100%;transform:translate(-50%);background:var(--ink);border-radius:1px}.flag-cloth{position:absolute;top:0;left:50%;width:3.3cqi;height:2.5cqi;min-width:15px;min-height:11px;background:var(--c);border:max(1px,.2cqi) solid var(--ink);border-left:0;clip-path:polygon(0 0,100% 0,82% 50%,100% 100%,0 100%);display:grid;place-items:center;padding-right:.5cqi;box-sizing:border-box;transform-origin:0 50%;animation:flag-wave 2.4s ease-in-out infinite}.flag-token{color:#fff;font-weight:800;font-size:max(1.5cqi,8px);line-height:1;transform:rotate(calc(-1 * var(--r)));text-shadow:0 0 2px rgba(0,0,0,.5)}@keyframes flag-rise{0%{transform:translate(-50%,-100%) rotate(var(--r)) scaleY(0)}}@keyframes flag-wave{50%{transform:skewY(-5deg) scaleX(.94)}}.sp-symbol{font-size:3.2cqi;line-height:1}.bank .pot{color:var(--green)}.token-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:3}.board-token{position:absolute;width:3.6cqi;height:3.6cqi;font-size:1.8cqi;border-width:max(1.5px,.35cqi);transform:translate(-50%,-50%);transition-property:left,top;transition-timing-function:cubic-bezier(.45,.05,.35,1)}.board-token{will-change:left,top}.board-token.moving{animation:hop .31s ease-in-out infinite;z-index:2}@keyframes hop{50%{transform:translate(-50%,-85%) scale(1.15)}}.board-token.current{animation:glow 2.16s ease-in-out infinite}@keyframes glow{50%{box-shadow:0 0 0 1.5px var(--rule),0 0 0 1.2cqi #e0b40073}}.turn-panel{display:flex;flex-direction:column;gap:10px;height:150px;flex-shrink:0}.status{display:flex;align-items:center;gap:8px;font-weight:600;border-left:5px solid;padding-left:8px;min-height:34px}.status span{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.controls{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.controls .btn.primary{flex:1}.waiting{flex:1;color:var(--muted);font-style:italic;min-height:52px;display:flex;align-items:center}.viewer{background:var(--card);border:1.5px solid var(--rule);border-radius:10px;padding:12px;display:grid;grid-template-columns:150px 1fr;gap:12px;height:250px;flex-shrink:0}.viewer.empty{display:grid;grid-template-columns:1fr;place-items:center}.viewer-placeholder{text-align:center;color:var(--muted);display:flex;flex-direction:column;gap:6px}.viewer-placeholder b{font-family:var(--serif);color:var(--ink)}.deed-stage{grid-row:1 / 3;perspective:900px}.deed-card{position:relative;width:150px;aspect-ratio:2 / 3;transform-style:preserve-3d;transition:transform 1.5s cubic-bezier(.45,.05,.3,1)}.app.fast .deed-card{transition-duration:.8s}.deed-card.flipping{animation:deed-lift 1.7s ease-in-out}.app.fast .deed-card.flipping{animation-duration:.95s}@keyframes deed-lift{50%{scale:1.12}}.deed-card.is-mortgaged{transform:rotateY(180deg)}.deed-face{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:rotateY(0) translateZ(.5px);box-shadow:0 6px 14px #0003}.deed-face.back{transform:rotateY(180deg) translateZ(.5px)}.deed-status{display:flex;flex-direction:column;gap:4px;font-size:13px}.deed-status em{color:var(--muted)}.deed-actions{display:flex;flex-direction:column;gap:6px;align-self:end}.deed-actions .btn{min-height:38px;font-size:13px;padding:6px 10px}.hint{margin:0;font-size:11.5px;color:var(--muted)}.prow{display:flex;align-items:center;gap:10px;padding:6px 8px;border-left:5px solid;border-radius:6px;background:var(--cream);height:56px;margin-bottom:5px}.prow:last-child{margin-bottom:0}.prow.active{box-shadow:0 0 0 2px var(--ink)}.prow.out{opacity:.4}.prow-main{flex:1;min-width:0}.prow-name{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.prow-deeds{display:flex;gap:2px;height:16px;overflow:hidden;margin-top:2px}.chip{width:14px;height:16px;border:1px solid var(--rule);border-radius:2px;padding:0;font-size:9px;font-weight:800;cursor:pointer;color:var(--ink)}.chip.mort{opacity:.4}.prow-cash{display:flex;flex-direction:column;align-items:flex-end;font-family:var(--serif);font-weight:700;font-size:17px}.prow-cash small{font-family:var(--sans);font-weight:500;font-size:11px}.cash{position:relative;font-variant-numeric:tabular-nums}.delta{position:absolute;right:0;top:-8px;font-family:var(--sans);font-size:13px;padding:0 6px;border-radius:6px;white-space:nowrap;animation:float 2.29s ease-out forwards}.delta.up{background:#dcefd6;color:#265a22}.delta.down{background:#f6d6d3;color:#8a241d}@keyframes float{0%{transform:translateY(6px);opacity:0}15%{transform:translateY(-14px);opacity:1}75%{opacity:1}to{transform:translateY(-30px);opacity:0}}.log{flex:1;min-height:120px;overflow-y:auto}.log ol{list-style:none;margin:0;padding:0;font-size:12.5px}.log li{display:flex;gap:6px;align-items:baseline;padding:2px 0}.log li.turn-line{font-weight:700;padding-top:6px}.dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.flight-layer{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:60}.flight{position:fixed;left:0;top:0}.note{position:relative;display:block}.note img{width:110px;display:block;box-shadow:0 6px 14px #0000004d}.note-extra{position:absolute;top:-8px;right:-8px;background:var(--ink);color:#fff;font-size:11px;border-radius:999px;padding:1px 6px}.deed-fly{width:90px;display:block;box-shadow:0 10px 24px #00000059}.overlay-banner{position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;display:grid;place-items:center;cursor:pointer;pointer-events:auto}.overlay-banner.kind-bankrupt{background:#280a0a8c}.overlay-banner.kind-turn,.overlay-banner.kind-release,.overlay-banner.kind-deal,.overlay-banner.kind-declined,.overlay-banner.kind-gavel,.overlay-banner.kind-jail{background:#2823192e}.ob-card{position:relative;background:var(--card);border:3px double var(--rule);outline:1.5px solid var(--rule);outline-offset:5px;padding:20px 34px;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;box-shadow:0 30px 60px #00000059;animation:card-in .54s cubic-bezier(.3,1.4,.5,1);overflow:hidden;min-width:280px}.kind-turn .ob-card{animation:slide-in .61s cubic-bezier(.3,1.2,.5,1)}.ob-text{font-family:var(--serif);font-weight:700;font-size:30px}.ob-sub{color:var(--muted)}.kind-bankrupt .ob-text{color:var(--accent)}.kind-release .ob-text{color:var(--green)}.gavel{font-size:54px;transform-origin:80% 80%;animation:gavel .94s ease-in}@keyframes gavel{0%{transform:rotate(-60deg)}60%{transform:rotate(20deg)}75%{transform:rotate(8deg)}to{transform:rotate(18deg)}}.ob-bars{position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(90deg,rgba(20,20,20,.85) 0 10px,transparent 10px 34px);animation:bars-down 1.62s ease-out forwards}.kind-jail .ob-text,.kind-jail .token{position:relative;z-index:1}@keyframes card-in{0%{transform:scale(.6) rotate(-4deg);opacity:0}}@keyframes slide-in{0%{transform:translate(-60vw);opacity:0}}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#28231973;display:grid;place-items:center;padding:16px;z-index:50}.modal{background:var(--card);border:3px double var(--rule);width:min(620px,100%);max-height:calc(100vh - 32px);overflow:auto;box-shadow:0 30px 70px #00000059;animation:card-in .41s ease-out}.modal.wide{width:min(880px,100%)}.modal.tone-danger{border-color:var(--accent)}.modal header{display:flex;justify-content:space-between;align-items:center;padding:14px 18px 0;gap:10px}.modal h2{margin:0;font-family:var(--serif);font-size:21px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.x{border:0;background:none;font-size:20px;cursor:pointer;width:40px;height:40px;color:var(--muted)}.modal-body{padding:12px 18px 18px}.who{display:inline-flex;align-items:center;gap:6px}.row{display:flex;gap:10px;justify-content:flex-end;align-items:center;flex-wrap:wrap;margin-top:12px}.row .warn{margin-right:auto}.buy{display:grid;grid-template-columns:180px 1fr;gap:18px;align-items:start}.deed-img{width:100%;box-shadow:0 8px 18px #0003}.buy-side p{margin:0 0 10px}.auction-top{display:flex;flex-direction:column}.big-num{font-family:var(--serif);font-size:32px}.bidders{list-style:none;padding:0;margin:8px 0}.bidders li{display:flex;align-items:center;gap:6px;padding:3px 0}.bidders li.out{opacity:.4;text-decoration:line-through}.bidders li.turn{font-weight:700}.bid-row{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.bid-row input,.cash-edit input{width:90px;font:inherit;font-weight:700;border:1.5px solid var(--rule);border-radius:6px;padding:8px;text-align:center;background:#fff}.mortgage-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.mortgage-item{display:flex;gap:8px;align-items:center;border:1.5px solid var(--rule);border-radius:8px;background:#fff;padding:6px;cursor:pointer;text-align:left;font-size:13px}.mortgage-item img{width:36px}.mortgage-item span{display:flex;flex-direction:column}.mortgage-item b{color:var(--green)}.partners{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.partner{display:flex;align-items:center;gap:6px;border:1.5px solid var(--line);background:#fff;border-radius:999px;padding:6px 12px;font-weight:700;cursor:pointer;min-height:42px}.partner.on{border-color:var(--rule);box-shadow:0 0 0 2px var(--rule)}.trade-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.trade-side{border:1.5px solid var(--rule);border-radius:8px;padding:10px;background:var(--cream)}.trade-side h4{margin:0 0 8px;display:flex;align-items:center;gap:6px;font-family:var(--serif)}.picks{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-height:80px}.deed-pick{position:relative;width:64px;padding:0;border:2px solid transparent;border-radius:4px;background:none;cursor:pointer}.deed-pick:disabled{cursor:default}.deed-pick img{width:100%;display:block}.deed-pick.on{border-color:var(--green);box-shadow:0 0 0 2px var(--green)}.pick-check{position:absolute;top:-8px;right:-8px;background:var(--green);color:#fff;border-radius:50%;width:20px;height:20px;font-size:12px;display:grid;place-items:center}.pick-bld{position:absolute;bottom:2px;left:2px;font-size:14px}.cash-edit{display:flex;align-items:center;gap:6px;margin-top:10px;flex-wrap:wrap;font-weight:700}.cash-edit .btn{width:40px;padding:0}.cash-chip{font-family:var(--serif);font-weight:700;border:1.5px solid var(--green);color:var(--green);border-radius:6px;padding:6px 10px;background:#fff}.rules{display:grid;grid-template-columns:1fr 1fr;gap:4px 18px}.rules h3{font-family:var(--serif);margin:8px 0 4px}.rules ul{margin:0;padding-left:18px;font-size:14px;line-height:1.5}.win-back{overflow:hidden}.modal.win{text-align:center;padding:26px;display:flex;flex-direction:column;align-items:center;gap:8px;position:relative;z-index:1}.modal.win h2{font-size:38px;justify-content:center}.standings{width:100%;padding:0;list-style:none;counter-reset:place}.standings li{display:flex;align-items:center;gap:8px;padding:6px 0;border-top:1px solid var(--line);counter-increment:place}.standings li:before{content:counter(place);font-family:var(--serif);font-weight:700;width:22px}.standings .muted{margin-left:auto}.confetti i{position:absolute;top:-20px;width:10px;height:16px;animation:fall 3.51s linear infinite}@keyframes fall{to{transform:translateY(110vh) rotate(720deg)}}.toast{position:fixed;left:50%;bottom:22px;transform:translate(-50%);background:var(--ink);color:#fff;padding:10px 18px;border-radius:8px;z-index:70;max-width:calc(100vw - 32px)}@media (max-width: 900px){.top{padding:8px 10px;position:sticky;top:0;z-index:20;background:#ece8dff2}.brand{font-size:17px}.top-actions select{width:118px}.main{--board: min(100vw - 16px, 640px);grid-template-columns:var(--board);padding:0 8px calc(150px + var(--safe-bottom));gap:8px}.players{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:6px}.players .prow{margin:0;height:50px;gap:6px}.players .token{width:22px;height:22px;font-size:11px}.players .prow-name{font-size:13px}.players .prow-name .tag{display:none}.players .prow-cash{font-size:14px}.players .prow-cash small{display:none}.sp-name{font-size:1.75cqi;letter-spacing:-.02em}.sp-sub{font-size:1.7cqi}.log{max-height:260px}.action-bar{position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--card);border-top:3px double var(--rule);padding:8px 10px calc(10px + var(--safe-bottom));display:flex;flex-direction:column;gap:6px}.action-bar .status{font-size:13px;min-height:26px}.action-bar .controls .btn{flex:1}.sheet-back{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#28231966;display:flex;align-items:flex-end}.sheet{position:relative;width:100%;background:var(--card);border-top:3px double var(--rule);padding:12px 12px calc(16px + var(--safe-bottom));animation:up .34s ease-out}.sheet .x{position:absolute;top:4px;right:4px;z-index:1}.sheet .viewer{border:0;height:auto;grid-template-columns:130px 1fr}.sheet .deed-card{width:130px}.modal-back{padding:0;align-items:end}.modal,.modal.wide{width:100%;max-height:92vh;animation:up .34s ease-out}.buy{grid-template-columns:110px 1fr;gap:12px}.trade-grid,.rules{grid-template-columns:1fr}.row .btn{flex:1}.seats{grid-template-columns:1fr 1fr}.setup h1{font-size:32px}.ob-text{font-size:22px}}@media (max-width: 520px){.kind-pick button{font-size:12px}}@media (min-width: 901px){.action-bar{display:none}}@keyframes up{0%{transform:translateY(100%)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (max-width: 900px){.brand{white-space:nowrap;font-size:15px}.top-actions{gap:5px}.top-actions select{width:auto;max-width:104px;padding:6px 4px}.top-actions .btn.small{padding:6px 9px}.sp-name{font-family:var(--sans);font-weight:800;font-size:1.55cqi;letter-spacing:-.03em}}.stats-toggle,.settings-toggle{white-space:nowrap}.btn.settings-toggle.on,.btn.stats-toggle.on{background:var(--ink);border-color:var(--ink);color:#fff}.space:has(.improvement) .sp-sub{margin-bottom:3.3cqi}.stats-drop{position:absolute;top:calc(100% - 4px);right:18px;z-index:35;width:min(560px,calc(100vw - 32px));max-height:min(78vh,720px);overflow:auto;background:var(--card);border:1.5px solid var(--rule);border-radius:12px;box-shadow:0 18px 40px #28231947;padding:12px 14px 14px;animation:drop-down .3s ease-out;transform-origin:top right}@keyframes drop-down{0%{opacity:0;transform:translateY(-8px) scale(.98)}}.stats-head{display:flex;gap:16px;align-items:center;font-size:13px;color:var(--muted)}.stats-head b{color:var(--ink)}.stats-head .x{margin-left:auto}.stats-drop h4{margin:10px 0 4px;font-family:var(--serif);font-size:14px}.worth-chart{position:relative}.worth-chart svg{width:100%;height:auto;display:block;cursor:crosshair}.worth-chart .grid{stroke:var(--rule);stroke-opacity:.15}.worth-chart .axis{font-size:9px;fill:var(--muted)}.worth-chart .end-label{font-size:10px;font-weight:800;fill:var(--ink)}.worth-chart .crosshair{stroke:var(--ink);stroke-opacity:.35;stroke-dasharray:3 3}.chart-tip{position:absolute;top:4px;transform:translate(-50%);background:var(--ink);color:#fff;font-size:11px;border-radius:8px;padding:6px 9px;display:flex;flex-direction:column;gap:2px;pointer-events:none;white-space:nowrap;z-index:1}.chart-tip i,.chart-legend i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:3px}.chart-tip em{font-style:normal;font-weight:700;margin-left:4px}.chart-legend{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12px;color:var(--ink-2);margin-top:4px}.stats-table-wrap{overflow-x:auto;margin-top:10px}.stats-table{width:100%;border-collapse:collapse;font-size:12.5px;font-variant-numeric:tabular-nums}.stats-table th,.stats-table td{padding:4px 6px;border-bottom:1px solid rgba(0,0,0,.08);text-align:right;white-space:nowrap}.stats-table thead th{vertical-align:bottom;font-size:12px}.stats-table thead th .token{width:20px;height:20px;font-size:10px;display:grid;margin:0 0 2px auto}.stats-table tbody th{text-align:left;font-weight:600;color:var(--ink-2)}.stats-table .out{opacity:.45}.stats-hot{font-size:12px;color:var(--muted);margin:8px 0 0}@media (max-width: 900px){.stats-drop{right:8px;left:8px;width:auto}}.house-rules{display:flex;flex-direction:column;gap:4px;margin:8px 0 14px}.hr-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:9px 4px;border-bottom:1px solid rgba(0,0,0,.08);cursor:pointer}.hr-row b{display:block;font-size:14px}.hr-row small{display:block;color:var(--muted);font-size:12px;margin-top:2px}.hr-row .seg{flex-shrink:0}.switch{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex-shrink:0;width:42px;height:24px;border-radius:999px;background:#cfc8b8;position:relative;cursor:pointer;transition:background .2s;margin:0}.switch:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0000004d;transition:left .2s}.switch:checked{background:var(--green)}.switch:checked:after{left:21px}.switch:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.house-in-play{grid-column:1 / -1;background:#fff7d6;border-radius:8px;padding:4px 12px}.modal.win{max-height:92vh;overflow-y:auto;width:min(620px,calc(100vw - 32px))}.win-stats{text-align:left;width:100%;margin:6px 0 14px}.win-stats h3{font-family:var(--serif);font-size:15px;margin:12px 0 4px}.round-count{display:flex;flex-direction:column;align-items:center;font-weight:800;font-size:max(1.7cqi,11px);color:var(--ink-2)}.round-count small{font-weight:600;font-size:max(1.2cqi,9px);color:var(--muted)}.round-count.final{color:var(--accent)}.settings-drop{position:absolute;top:calc(100% - 4px);right:18px;z-index:35;width:min(420px,calc(100vw - 32px));background:var(--card);border:1.5px solid var(--rule);border-radius:12px;box-shadow:0 18px 40px #28231947;padding:6px 14px;animation:drop-down .3s ease-out;transform-origin:top right}.settings-drop .hr-row:last-child{border-bottom:0}@media (max-width: 900px){.settings-drop{right:8px;left:8px;width:auto}}@media (min-width: 901px){.players .prow{height:68px;padding:8px 10px}.players .prow .token{width:30px;height:30px;font-size:15px}.prow-deeds{height:20px;gap:3px}.prow-deeds .chip{width:16px;height:20px}}@media (max-width: 900px){.players .prow{height:58px}.win-pct{display:none}}.win-pct{font-family:var(--sans);font-size:11px;font-weight:700;color:var(--green)}.log{flex:0 0 auto;min-height:0}.log.open{flex:1;min-height:160px}.log-toggle{display:flex;align-items:center;gap:10px;width:100%;border:0;background:none;padding:0;font:inherit;cursor:pointer;text-align:left;color:inherit}.log-toggle h3{margin:0;flex-shrink:0}.log.open .log-toggle{margin-bottom:6px}.log-peek{flex:1;min-width:0;font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.log-caret{margin-left:auto;color:var(--muted)}.log-toggle:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:4px}.sp-sub.late,.sp-sub.late small{color:var(--accent)}.notice-text{font-size:16px;line-height:1.5}.trend-head{display:flex;justify-content:flex-start;margin:8px 0 6px}.seg.small button{min-height:32px;padding:5px 12px;font-size:13px}.chart-legend b{font-weight:700;color:var(--ink)}.chart-note{font-size:11.5px;color:var(--muted);margin:6px 0 0;line-height:1.4}.space.danger{--d1: #b3261e;--d2: #5c0f0b;--d-edge: #1b0504;--d-glow: rgba(255, 60, 40, .55);--d-name: #ffe9a8;--d-text: #fff;background:repeating-linear-gradient(135deg,rgba(0,0,0,.22) 0 1.2cqi,transparent 1.2cqi 2.4cqi),radial-gradient(circle at 50% 45%,var(--d1),var(--d2));color:var(--d-text);box-shadow:inset 0 0 0 .5cqi var(--d-edge),inset 0 0 2.4cqi #0009;animation:danger-throb 2.6s ease-in-out infinite;gap:.3cqi}.space.danger-yellow{--d1: #f4c20d;--d2: #8a6400;--d-edge: #2a1d00;--d-glow: rgba(255, 210, 40, .6);--d-name: #1c1400;--d-text: #1c1400}.space.danger:hover{filter:brightness(1.08)}.space.danger .sp-icon{font-size:4cqi;line-height:5cqi;height:5cqi;min-height:5cqi;margin-bottom:.4cqi;color:inherit;filter:drop-shadow(0 .3cqi .4cqi rgba(0,0,0,.6));animation:skull-shake 2.6s ease-in-out infinite}.space.danger .sp-name,.space.kind-go.danger .sp-name{color:var(--d-name);font-size:2.1cqi;letter-spacing:.04em;text-shadow:0 .2cqi 0 rgba(0,0,0,.8)}.space.danger-yellow .sp-name{text-shadow:0 .15cqi 0 rgba(255,255,255,.5)}.space.danger .danger-was{font-size:1.2cqi;font-weight:700;text-transform:uppercase;text-decoration:line-through;color:inherit;opacity:.65}.space.danger .sp-sub,.space.danger .sp-sub small{color:var(--d-text);font-weight:800}.stage-badge{font-weight:800;font-size:max(1.6cqi,11px);padding:.4cqi 1.6cqi;border-radius:999px;border:2px solid var(--rule)}.stage-badge.stage-1{background:#f4c20d;color:#1c1400}.stage-badge.stage-2{background:#7d1510;color:#fff}@keyframes danger-throb{50%{box-shadow:inset 0 0 0 .5cqi var(--d-edge),inset 0 0 4cqi var(--d-glow)}}@keyframes skull-shake{0%,80%,to{transform:rotate(0)}84%{transform:rotate(-12deg)}88%{transform:rotate(10deg)}92%{transform:rotate(-6deg)}}.kind-declined .ob-text{color:var(--accent)}.kind-deal .ob-text{color:var(--green)}.ob-stamp{font-family:var(--serif);font-weight:700;font-size:22px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);border:3px solid var(--accent);border-radius:6px;padding:2px 12px;margin:8px 0 2px;transform:rotate(-8deg);animation:stamp .5s cubic-bezier(.3,1.6,.5,1) both}@keyframes stamp{0%{transform:rotate(-8deg) scale(2.2);opacity:0}}.dev-toggle{align-self:flex-start;border:1px dashed var(--line);background:none;border-radius:6px;font:inherit;font-size:12px;font-weight:700;color:var(--muted);padding:4px 10px;margin:0 0 12px;cursor:pointer}.dev-toggle:hover,.dev-toggle[aria-expanded=true]{color:var(--ink);border-color:var(--rule)}.dev-tools{border:1.5px dashed var(--rule);border-radius:8px;padding:8px 12px;margin-bottom:14px;background:repeating-linear-gradient(135deg,transparent 0 10px,rgba(0,0,0,.025) 10px 20px)}.dev-tools>p{margin:2px 0 6px}.dev-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:6px 0;border-bottom:1px solid rgba(0,0,0,.06)}.dev-row:last-child{border-bottom:0}.dev-row b{display:block;font-size:13px}.dev-row small{display:block;font-size:11px;color:var(--muted)}.dev-input{display:flex;align-items:center;border:1.5px solid var(--line);border-radius:6px;background:#fff;flex-shrink:0}.dev-input i{font-style:normal;font-weight:700;color:var(--muted);padding-left:8px}.dev-input input{width:72px;border:0;background:none;font:inherit;font-weight:700;padding:6px 8px 6px 4px;text-align:right;font-variant-numeric:tabular-nums}.dev-input:focus-within{outline:2px solid var(--ink);outline-offset:1px}kbd{font-family:var(--sans);font-size:10.5px;font-weight:700;border:1px solid var(--line);border-bottom-width:2px;border-radius:4px;padding:0 4px;background:#fff;color:var(--ink)}
