.bgen{--bg-ink: var(--parch-100);--bg-ink-2: var(--parch-200);--bg-ink-3: var(--parch-300);--bg-line: rgba(214, 170, 96, .22);--bg-panel: linear-gradient(180deg, rgba(255, 220, 160, .04), rgba(0, 0, 0, .18)), var(--walnut-800);display:grid;gap:24px;align-items:start;color:var(--bg-ink)}@media(min-width:1024px){.bgen{grid-template-columns:minmax(300px,360px) minmax(0,1fr);gap:32px}}@media(max-width:1023.98px){.bgen-stage{order:-1}}.bgen-panel{display:grid;gap:20px;padding:20px;border-radius:18px;background:var(--bg-panel);border:1px solid var(--walnut-line);box-shadow:0 18px 40px -22px #000000bf}@media(min-width:1024px){.bgen[data-compact=false] .bgen-panel{position:sticky;top:88px}}.bgen fieldset{margin:0;padding:0;border:0;min-width:0;display:grid;gap:10px}.bgen legend{padding:0;margin-bottom:10px;font:600 1.125rem/1.1 var(--font-display);color:var(--parch-50)}.bgen-seg{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:6px}.bgen-seg--small{grid-template-columns:repeat(auto-fill,minmax(56px,1fr))}.bgen-seg--games{grid-template-columns:repeat(6,minmax(0,1fr))}.bgen-game--base{grid-column:span 3}.bgen-game--sea{grid-column:span 2}.bgen-game--sea small{white-space:nowrap}.bgen-seg label{position:relative;display:block;cursor:pointer}.bgen-seg input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}.bgen-seg label>span{display:grid;gap:2px;min-height:48px;align-content:center;padding:8px 12px;border-radius:12px;background:#00000038;border:1px solid var(--walnut-line);transition:background .16s ease,border-color .16s ease}.bgen-seg--small label>span{text-align:center;font:700 1.0625rem/1 var(--font-ui);min-height:44px}.bgen-seg b{font:700 .98rem/1.15 var(--font-ui);color:var(--bg-ink)}.bgen-seg small{font:500 .82rem/1.2 var(--font-ui);color:var(--bg-ink-3)}.bgen-seg label:hover>span{border-color:#d6aa608c}.bgen-seg input:checked+span{background:linear-gradient(180deg,#f0cf7e38,#d9a8421f);border-color:var(--brass-400)}.bgen-seg input:checked+span b{color:var(--parch-50)}.bgen-seg input:focus-visible+span{outline:2px solid var(--brass-300);outline-offset:2px}.bgen-check{display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px;align-items:start;min-height:44px;padding-block:2px;cursor:pointer}.bgen-check input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--brass-400);cursor:pointer}.bgen-check b{display:block;font:600 .98rem/1.3 var(--font-ui);color:var(--bg-ink)}.bgen-check small{display:block;font:500 .86rem/1.35 var(--font-ui);color:var(--bg-ink-3)}.bgen-check.is-off{opacity:.5;cursor:not-allowed}.bgen-custom{margin:0;font:500 .88rem/1.35 var(--font-ui);color:var(--brass-300)}.bgen-rules{border-top:1px solid var(--bg-line);padding-top:14px}.bgen-rules summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;min-height:40px;font:600 1.125rem/1.1 var(--font-display);color:var(--parch-50)}.bgen-rules summary::-webkit-details-marker{display:none}.bgen-rules summary:after{content:"";width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;rotate:45deg;translate:0 -3px;transition:rotate .16s ease}.bgen-rules[open] summary:after{rotate:225deg;translate:0 2px}.bgen-rules__list{display:grid;gap:14px;padding-top:8px}.bgen-field{display:grid;gap:6px}.bgen-field span{font:600 .92rem/1.3 var(--font-ui);color:var(--bg-ink-2)}.bgen-field select{min-height:44px;padding:0 36px 0 12px;border-radius:10px;border:1px solid var(--walnut-line);color:var(--bg-ink);font:500 .98rem/1 var(--font-ui);appearance:none;cursor:pointer;background:#00000040 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e3d2ad' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 10px center / 18px}.bgen-field select:focus-visible{outline:2px solid var(--brass-300);outline-offset:2px}.bgen-field option{background:var(--walnut-900);color:var(--parch-100)}.bgen-deal{width:100%;justify-content:center;gap:10px}.bgen-deal .lp-icon{stroke:currentColor;fill:none}.bgen-more{display:inline-flex;align-items:center;gap:6px;justify-self:start;min-height:44px;font:600 .95rem/1.2 var(--font-ui);color:var(--brass-300);text-decoration:none}.bgen-more:hover{text-decoration:underline;text-underline-offset:3px}.bgen-stage{display:grid;gap:22px;min-width:0}.bgen-board{margin:0;display:grid;gap:12px}.bgen-felt{position:relative;padding:clamp(10px,2.4vw,22px);border-radius:22px;min-height:280px;display:grid;place-items:center;background:radial-gradient(55% 50% at 50% 48%,rgba(111,193,182,.35),transparent 75%),radial-gradient(120% 90% at 50% 40%,var(--sea-500),var(--sea-700) 55%,var(--sea-900));box-shadow:inset 0 0 0 1px #00000073,inset 0 10px 34px #0006,0 24px 60px -16px #020c0dcc}.bg-svg{width:100%;height:auto;max-height:min(78vh,760px);display:block}.bgen-felt .bg-svg{animation:bgen-in .42s cubic-bezier(.23,1,.32,1)}@keyframes bgen-in{0%{opacity:.35;transform:scale(.985)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.bgen-felt .bg-svg{animation:none}}.bgen-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.bgen-views{display:flex;flex-wrap:wrap;gap:6px}.bgen-again{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid rgba(214,170,96,.55);background:transparent;color:var(--brass-300);font:700 .92rem/1 var(--font-ui);cursor:pointer;transition:background .16s ease}.bgen-again:hover{background:#d9a8421f}.bgen-again:active{transform:scale(.97)}.bgen-again:focus-visible{outline:2px solid var(--brass-300);outline-offset:2px}.bgen-again .lp-icon{stroke:currentColor;fill:none}.bgen-views label{position:relative;cursor:pointer}.bgen-views input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}.bgen-views span{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--walnut-line);background:#00000038;font:600 .92rem/1 var(--font-ui);color:var(--bg-ink-2);transition:background .16s ease,border-color .16s ease}.bgen-views input:checked+span{border-color:var(--brass-400);color:var(--parch-50);background:#d9a84229}.bgen-views input:focus-visible+span{outline:2px solid var(--brass-300);outline-offset:2px}.bgen-caption{margin:0;font:500 .92rem/1.4 var(--font-ui);color:var(--bg-ink-3)}.bgen-code{font-variant-numeric:tabular-nums;letter-spacing:.04em;color:var(--bg-ink-2)}.bgen-report{display:grid;gap:22px}@media(min-width:760px){.bgen-report{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:32px}.bgen-facts,.bgen-warn{grid-column:1 / -1}}.bgen-h{margin:0 0 8px;font:600 1.375rem/1.15 var(--font-display);color:var(--parch-50)}.bgen-verdict p,.bgen-shares p,.bgen-sim p{margin:0 0 12px;font:400 1rem/1.5 var(--font-ui);color:var(--bg-ink-2);max-width:62ch}.bgen-fine{font-size:.86rem!important;color:var(--bg-ink-3)!important;margin-top:8px!important}.bgen-seats,.bgen-resources{list-style:none;margin:0;padding:0;display:grid;gap:8px}.bgen-seats li,.bgen-resources li{display:grid;grid-template-columns:64px minmax(0,1fr) 30px;grid-template-areas:"who bar n" ". note note";column-gap:10px;row-gap:2px;align-items:center}.bgen-seat,.bgen-resources li>span:first-child{grid-area:who;font:700 .9rem/1.2 var(--font-ui);color:var(--bg-ink-2)}.bgen-seats .bgen-seat:before{content:"";display:inline-block;width:10px;height:10px;margin-right:6px;border-radius:50%;background:var(--c);box-shadow:0 0 0 1.5px #f6ecd68c;vertical-align:0}.bgen-bar{grid-area:bar;position:relative;height:12px;border-radius:6px;background:#00000052;box-shadow:inset 0 0 0 1px #d6aa6024}.bgen-bar i{position:absolute;left:0;top:0;bottom:0;border-radius:6px;background:var(--c, var(--brass-400))}.bgen-bar em{position:absolute;top:-4px;bottom:-4px;width:2px;margin-left:-1px;background:var(--parch-100);border-radius:1px;opacity:.85}.bgen-seats b,.bgen-resources b{grid-area:n;text-align:right;font:700 1rem/1 var(--font-ui);font-variant-numeric:tabular-nums;color:var(--parch-50)}.bgen-seats small,.bgen-resources small{grid-area:note;font:500 .84rem/1.3 var(--font-ui);color:var(--bg-ink-3)}.bgen-res--wood{--c: #3f7d3a}.bgen-res--brick{--c: #c4562f}.bgen-res--wool{--c: #9cc75f}.bgen-res--grain{--c: #dcb043}.bgen-res--ore{--c: #8d97a4}.bgen-res--gold{--c: #e8b93c}.bgen-facts{margin:0;display:grid;gap:10px;padding-top:16px;border-top:1px solid var(--bg-line)}.bgen-facts div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px}.bgen-facts dt{font:700 .9rem/1.4 var(--font-ui);color:var(--bg-ink-3)}.bgen-facts dd{margin:0;font:500 .98rem/1.45 var(--font-ui);color:var(--bg-ink-2)}@media(max-width:520px){.bgen-facts div{grid-template-columns:1fr;gap:2px}}.bgen-warn{margin:0;padding:12px 14px;border-radius:12px;background:#b4462829;border:1px solid rgba(214,120,80,.4);font:500 .95rem/1.45 var(--font-ui);color:#f3d8c8}.bgen-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.bgen-actions .btn{min-height:48px}.bgen-play{gap:10px}.bgen-play .lp-icon{fill:currentColor;stroke:none}.bgen-nudge{margin:-6px 0 0;font:500 .98rem/1.45 var(--font-ui);color:var(--bg-ink-2);max-width:62ch}.bgen-note{margin:0;min-height:1.4em;font:500 .92rem/1.4 var(--font-ui);color:var(--brass-300);overflow-wrap:anywhere}.bgen-note:empty{display:none}.bgen-sim{display:grid;gap:4px;padding-top:20px;border-top:1px solid var(--bg-line)}.bgen-sim .btn{justify-self:start}.bgen-sim__out{display:grid;gap:12px;margin-top:12px}.bgen-sim__out:empty{display:none}.bgen-sim__out .btn{justify-self:start}.bgen-sim__run{color:var(--brass-300)!important}body.bgen-laying{overflow:hidden}.bgen-lay{position:fixed;inset:0;z-index:400;display:grid;place-items:stretch;background:linear-gradient(180deg,var(--walnut-950),#120b06)}body.bgen-laying .nudge{display:none!important}.bgen-lay__sheet{display:grid;grid-template-rows:auto minmax(0,.85fr) minmax(0,1fr) auto;gap:12px;width:min(980px,100%);margin:0 auto;height:100%;min-height:0;padding:max(14px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}@media(min-width:900px){.bgen-lay__sheet{grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.bgen-lay__top,.bgen-lay__nav{grid-column:1 / -1}.bgen-lay__step{align-self:center}}.bgen-lay__top{display:flex;align-items:center;justify-content:space-between;gap:12px}.bgen-lay__title{margin:0;font:600 clamp(1.6rem,1.2rem + 1.6vw,2.4rem)/1.1 var(--font-display);color:var(--parch-50)}.bgen-lay__x{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;border:1px solid var(--walnut-line);background:var(--walnut-800);cursor:pointer}.bgen-lay__x svg{width:22px;height:22px;fill:none;stroke:var(--parch-100);stroke-width:2;stroke-linecap:round}.bgen-lay__x:focus-visible{outline:2px solid var(--brass-300);outline-offset:2px}.bgen-lay__board{min-height:0;display:grid;place-items:center;padding:10px;border-radius:18px;background:radial-gradient(120% 90% at 50% 40%,var(--sea-500),var(--sea-700) 55%,var(--sea-900))}.bgen-lay__board .bg-svg{max-height:100%;height:100%}.bgen-lay__step{overflow:auto;min-height:0;overscroll-behavior:contain}.bgen-lay__step p{margin:0 0 12px;font:500 1.125rem/1.45 var(--font-ui);color:var(--parch-200)}.bgen-lay__rows,.bgen-lay__list{margin:0;padding:0;list-style:none;display:grid;gap:8px}.bgen-lay__rows li{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px;align-items:baseline}.bgen-lay__rows span{font:700 .92rem/1.3 var(--font-ui);color:var(--parch-300)}.bgen-lay__rows b,.bgen-lay__list li{font:600 1.2rem/1.35 var(--font-ui);color:var(--parch-50)}.bgen-lay__list{counter-reset:h}.bgen-lay__list li{counter-increment:h;display:grid;grid-template-columns:32px minmax(0,1fr)}.bgen-lay__list li:before{content:counter(h);color:var(--parch-300);font-size:.95rem}.bgen-lay__nav{display:flex;align-items:center;justify-content:space-between;gap:12px}.bgen-lay__nav span{font:600 .95rem/1 var(--font-ui);color:var(--parch-300);font-variant-numeric:tabular-nums}.bgen-lay__nav .btn{min-height:52px;min-width:120px;justify-content:center}@media print{body.bgen-printing>*:not(main),body.bgen-printing main>*:not(.bgen-section),body.bgen-printing .bgen-section>*:not(.lp-wrap),body.bgen-printing .bgen-panel,body.bgen-printing .bgen-actions,body.bgen-printing .bgen-views,body.bgen-printing .bgen-nudge,body.bgen-printing .bgen-sim,body.bgen-printing .bgen-head p{display:none!important}body.bgen-printing{background:#fff!important;color:#1b110a}body.bgen-printing .bgen{grid-template-columns:1fr}body.bgen-printing .bgen-felt{box-shadow:none;background:#fff;border:1px solid #999}body.bgen-printing .bgen-h,body.bgen-printing .bgen-verdict p,body.bgen-printing .bgen-shares p,body.bgen-printing .bgen-facts dd,body.bgen-printing .bgen-facts dt,body.bgen-printing .bgen-seats b,body.bgen-printing .bgen-resources b,body.bgen-printing .bgen-caption{color:#1b110a!important}}.bgen .lp-icon{width:24px;height:24px;flex:none;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.bgen .lp-icon--s{width:18px;height:18px}.bgen-felt:after{content:"Dealing…";position:absolute;inset:auto 0 18px;text-align:center;font:700 1rem/1 var(--font-ui);color:var(--parch-50);opacity:0;transition:opacity .2s ease;pointer-events:none}.bgen.is-dealing .bgen-felt:after{opacity:1}.bgen.is-dealing .bgen-felt .bg-svg{opacity:.45;filter:saturate(.6);transition:opacity .2s ease}.bgen button,.bgen a,.bgen label,.bgen-lay button{-webkit-tap-highlight-color:transparent}
