*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--board-green:#1b4332;--board-green-light:#2d6a4f;--gold:#c9a84c;--gold-light:#f0d080;--parchment:#fbf3df;--parchment-dark:#ede0bc;--wood-dark:#3e1f00;--wood-mid:#5c3317;--text-dark:#1a0900;--text-light:#fbf3df;--active-glow:gold;--radius:8px;--shadow:0 2px 8px #00000059;--shadow-lg:0 4px 20px #00000080}html,body,#root{background:var(--board-green);width:100%;max-width:100vw;height:100%;color:var(--text-light);font-family:Open Sans,sans-serif;font-size:14px;line-height:1.4;overflow-x:hidden}.setup-screen{background:radial-gradient(#2d6a4f 0%,#1b4332 70%);justify-content:center;align-items:center;min-height:100vh;display:flex}.setup-card{background:var(--parchment);color:var(--text-dark);width:min(1180px,96vw);box-shadow:var(--shadow-lg);border:3px solid var(--gold);border-radius:16px;padding:40px 48px}.setup-title{text-align:center;color:var(--wood-dark);letter-spacing:2px;font-family:Cinzel,serif;font-size:2.4rem}.setup-subtitle{text-align:center;color:var(--wood-mid);margin-bottom:28px;font-size:.95rem}.setup-section{margin-bottom:24px}.setup-label{color:var(--wood-dark);text-transform:uppercase;letter-spacing:1px;margin-bottom:10px;font-size:.9rem;font-weight:600;display:block}.player-count-buttons{gap:10px;display:flex}.count-btn{border:2px solid var(--parchment-dark);border-radius:var(--radius);cursor:pointer;color:var(--wood-mid);background:#fff;flex:1;padding:10px;font-size:1.1rem;font-weight:600;transition:all .15s}.count-btn:hover{border-color:var(--gold)}.count-btn.active{background:var(--wood-dark);color:var(--gold);border-color:var(--wood-dark)}.players-list{flex-direction:column;gap:10px;display:flex}.player-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.player-number{color:var(--wood-mid);width:20px;font-weight:600}.player-name-input{border:2px solid var(--parchment-dark);border-radius:var(--radius);min-width:0;color:var(--text-dark);background:#fff;outline:none;flex:150px;padding:8px 12px;font-size:.95rem}.player-name-input:focus{border-color:var(--gold)}.type-toggle{gap:6px;display:flex}.type-btn{border:2px solid var(--parchment-dark);border-radius:var(--radius);cursor:pointer;color:var(--wood-mid);white-space:nowrap;background:#fff;padding:6px 12px;font-size:.82rem;transition:all .15s}.type-btn:hover{border-color:var(--gold)}.type-btn.active{background:var(--board-green);color:#fff;border-color:var(--board-green)}.diff-toggle{flex:1 0 100%;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding-left:28px;display:grid}.diff-option{align-items:center;gap:4px;min-width:0;display:flex}.diff-option>.diff-btn{flex:1;min-width:0;padding-inline:7px;font-size:max(11px,.76rem)}.neural-scope-note{color:#235049;background:#edf6ee;border-left:3px solid #176e69;margin:0 0 12px;padding:10px 12px;font-size:.9rem}@media (width>=1150px){.player-name-input{flex:0 0 140px}.diff-toggle{flex:1 1 0;min-width:0;padding-left:0}}@media (width<=860px){.diff-toggle{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=540px){.diff-toggle{grid-template-columns:repeat(2,minmax(0,1fr))}.type-toggle{flex-basis:calc(100% - 28px);margin-left:28px}}.diff-help-btn{border:1px solid var(--gold);width:26px;height:26px;color:var(--wood-mid);cursor:pointer;background:0 0;border-radius:50%;flex-shrink:0;font:700 .85rem Georgia,serif}.diff-help-btn:hover{background:var(--parchment-dark)}.diff-help-btn:focus-visible,.diff-help-close:focus-visible,.diff-btn:focus-visible{outline:2px solid var(--board-green);outline-offset:3px}.diff-help{border:2px solid var(--gold);background:var(--parchment);width:min(440px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--text-dark);box-shadow:var(--shadow-lg);border-radius:14px;margin:auto;padding:24px;font-size:.92rem;line-height:1.6;position:fixed;inset:0;overflow-y:auto}.diff-help::backdrop{background:#0000004d}.diff-help h2{color:var(--wood-dark);padding-right:30px;font-size:1.25rem}.diff-help p{margin-top:12px}.diff-help .diff-help-method{color:var(--wood-mid);margin-top:4px;font-weight:600}.diff-help-neural{border-top:1px solid var(--parchment-dark);padding-top:12px}.diff-help-close{width:32px;height:32px;color:var(--wood-mid);cursor:pointer;background:0 0;border:none;border-radius:50%;font-size:1.5rem;position:absolute;top:12px;right:12px}.diff-help-close:hover{background:var(--parchment-dark)}.bot-error{color:#722517;background:#fff0e9;border:1px solid #ad4731;border-radius:6px;margin:8px 16px;padding:12px}.bot-error button{cursor:pointer;margin-left:12px;padding:6px 12px}.diff-btn{border:2px solid var(--parchment-dark);border-radius:var(--radius);cursor:pointer;color:var(--wood-mid);white-space:nowrap;background:#fff;padding:5px 10px;font-size:.76rem;transition:all .15s}.diff-btn:hover{border-color:var(--gold)}.diff-btn--active-easy{color:#fff;background:#ff9800;border-color:#e65100}.diff-btn--active-hard{color:#fff;background:#1565c0;border-color:#0d47a1}.start-btn{background:var(--wood-dark);width:100%;color:var(--gold);border-radius:var(--radius);cursor:pointer;letter-spacing:1px;border:none;margin-top:8px;padding:14px;font-family:Cinzel,serif;font-size:1.1rem;font-weight:600;transition:all .15s}.start-btn:hover{background:var(--wood-mid)}.load-btn{width:100%;color:var(--wood-dark);border:1px dashed var(--parchment-dark);cursor:pointer;background:0 0;border-radius:6px;flex-direction:column;align-items:center;gap:2px;margin-top:6px;padding:10px 14px;font-size:.85rem;transition:all .15s;display:flex}.load-btn:hover{border-color:var(--gold);color:var(--gold)}.load-btn__label{font-weight:600}.load-btn__date{opacity:.7;font-size:.75rem}.expansion-list{flex-direction:column;gap:8px;display:flex}.expansion-toggle{cursor:pointer;border:2px solid var(--parchment-dark);border-radius:var(--radius);background:#fff;align-items:flex-start;gap:10px;padding:10px 12px;transition:border-color .15s;display:flex}.expansion-toggle:has(input:checked){border-color:var(--gold);background:#fffde7}.expansion-toggle input[type=checkbox]{accent-color:var(--wood-dark);flex-shrink:0;width:16px;height:16px;margin-top:2px}.expansion-toggle__name{color:var(--wood-dark);font-size:.88rem;font-weight:700;display:block}.expansion-toggle__desc{color:var(--wood-mid);margin-top:2px;font-size:.75rem;display:block}.festival-board-panel{border-radius:var(--radius);background:#ffc83214;border:1px solid #ffc83259;min-height:0;padding:8px;overflow-y:auto}.festival-board-title{color:var(--gold);letter-spacing:.04em;text-transform:uppercase;border-bottom:1px solid #ffc83240;margin-bottom:6px;padding-bottom:4px;font-family:Cinzel,serif;font-size:.7rem}.festival-board-quests{flex-direction:column;gap:4px;display:flex}.festival-quest{background:#ffffff0d;border:1px solid #ffffff1f;border-radius:5px;padding:5px 7px}.festival-quest--done{opacity:.75;background:#4caf501f;border-color:#4caf5066}.festival-quest__header{justify-content:space-between;align-items:center;margin-bottom:2px;display:flex}.festival-quest__type{text-transform:uppercase;letter-spacing:.8px;color:var(--gold-light);font-size:.65rem;font-weight:700}.festival-quest__reward{color:#ffffff8c;font-size:.62rem}.festival-quest__detail{color:var(--parchment);font-size:.75rem;font-weight:600}.festival-quest__winner{color:#81c784;margin-top:2px;font-size:.62rem}.game-screen{grid-template-rows:auto auto 1fr auto;height:100vh;display:grid;position:relative;overflow:hidden}.round-notice{z-index:100;background:var(--wood-dark);border:2px solid var(--gold);pointer-events:none;border-radius:20px;padding:10px 24px;animation:.3s noticeIn,.5s 3s forwards noticeOut;position:absolute;top:60px;left:50%;transform:translate(-50%)}.round-notice__text{color:var(--gold);letter-spacing:1px;white-space:nowrap;font-family:Cinzel,serif;font-size:.9rem}@keyframes noticeIn{0%{opacity:0;transform:translate(-50%)translateY(-10px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes noticeOut{to{opacity:0;transform:translate(-50%)translateY(-10px)}}.game-header{background:var(--wood-dark);border-bottom:2px solid var(--gold);align-items:center;gap:16px;padding:8px 16px;display:flex}.game-title{color:var(--gold);letter-spacing:2px;white-space:nowrap;font-family:Cinzel,serif;font-size:1.3rem}.game-meta{flex:1;align-items:center;gap:16px;display:flex}.round-info,.phase-info{color:var(--parchment-dark);font-size:.85rem}.governor-info{color:var(--gold);font-size:.85rem;font-weight:600}.current-player-info{background:var(--board-green);border-radius:20px;padding:3px 10px;font-size:.9rem;font-weight:600}.current-player-info.bot-turn{background:#3d2b8a}.header-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.save-btn{color:#4caf50;cursor:pointer;background:0 0;border:1px solid #4caf50;border-radius:4px;padding:5px 12px;font-size:.8rem;transition:all .15s}.save-btn:hover{color:#81c784;background:#4caf5026;border-color:#81c784}.save-flash{color:#81c784;font-size:.8rem;font-weight:600;animation:1.8s forwards saveFlashFade}@keyframes saveFlashFade{0%{opacity:1}60%{opacity:1}to{opacity:0}}.menu-btn{border:1px solid var(--parchment-dark);border-radius:var(--radius);color:var(--parchment-dark);cursor:pointer;background:0 0;padding:5px 14px;font-size:.8rem}.menu-btn:hover{border-color:var(--gold);color:var(--gold)}.role-cards-wrapper{background:#00000040;border-bottom:1px solid #ffffff1a;flex-direction:column;display:flex}.role-cards-bar{-webkit-overflow-scrolling:touch;cursor:pointer;flex-wrap:nowrap;gap:6px;padding:8px 12px;display:flex;overflow-x:auto}.role-card{border-radius:var(--radius);border:2px solid var(--role-color,#fff);cursor:pointer;-webkit-user-select:none;user-select:none;flex-direction:column;flex-shrink:0;align-items:center;gap:2px;min-width:80px;padding:6px 10px;transition:opacity .2s,transform .1s;display:flex;position:relative}.role-card:hover{transform:translateY(-1px)}.role-card--info-open{background:#ffffff1f!important}.role-card--available{background:#ffffff14}.role-card--taken{opacity:.5;background:#0000004d}.role-card--captured{outline-offset:-2px;outline:2px dashed #ffffffb3;animation:1.5s ease-in-out infinite captured-pulse}@keyframes captured-pulse{0%,to{outline-color:#ffffffb3}50%{outline-color:#ffc800e6}}.role-card__captured{font-size:.75rem;position:absolute;top:2px;right:2px}.role-card__icon{font-size:1.1rem}.role-card__label{white-space:nowrap;font-size:.72rem;font-weight:600}.role-card__doubloons{color:var(--gold);font-size:.7rem;font-weight:700}.role-card__owner{color:#ffffffb3;text-overflow:ellipsis;white-space:nowrap;max-width:80px;font-size:.65rem;overflow:hidden}.role-desc-panel{background:#00000073;border-top:2px solid #fff;padding:8px 14px;animation:.15s noticeIn}.role-desc-panel__header{color:var(--gold);justify-content:space-between;align-items:center;margin-bottom:6px;font-size:.85rem;display:flex}.role-desc-panel__close{color:#ffffff80;cursor:pointer;background:0 0;border:none;padding:0;font-size:.85rem;line-height:1}.role-desc-panel__close:hover{color:#fff}.role-desc-panel__body{flex-direction:column;gap:4px;display:flex}.role-desc-row{gap:6px;font-size:.78rem;line-height:1.4;display:flex}.role-desc-label{color:var(--gold);white-space:nowrap;flex-shrink:0;font-weight:700}.role-desc-text{color:var(--parchment-dark)}.game-main{grid-template-columns:1fr 210px;gap:8px;min-height:0;padding:8px;display:grid;position:relative;overflow:hidden}.game-right-column{flex-direction:column;gap:6px;min-height:0;display:flex;overflow:hidden}.players-area{gap:8px;min-height:0;display:flex;overflow-y:auto}.player-panel{background:var(--parchment);color:var(--text-dark);border-radius:var(--radius);border:2px solid #0000;flex:1;min-width:0;padding:8px;transition:border-color .2s,box-shadow .2s,outline-color .2s;position:relative;overflow:hidden auto}.player-panel--active{border-color:var(--gold);box-shadow:0 0 12px #c9a84c66}.player-panel--governor{border-top:3px solid var(--gold)}@keyframes selectorGlow{0%,to{box-shadow:0 0 0 3px #00c8dce6,0 0 10px 2px #00bcd48c,0 0 24px 6px #26c6da38}50%{box-shadow:0 0 0 4px #26c6da,0 0 16px 5px #26c6dab8,0 0 38px 10px #26c6da59}}@keyframes selectorGlowActive{0%,to{box-shadow:0 0 0 3px #00c8dce6,0 0 10px 2px #00bcd48c,0 0 24px 6px #26c6da38,0 0 18px #c9a84c73}50%{box-shadow:0 0 0 4px #26c6da,0 0 16px 5px #26c6dab8,0 0 38px 10px #26c6da59,0 0 24px #c9a84c8c}}.player-panel--selector{animation:2.2s ease-in-out infinite selectorGlow}.player-panel--active.player-panel--selector{animation:2.2s ease-in-out infinite selectorGlowActive}.player-panel__header{border-bottom:1px solid var(--parchment-dark);margin-bottom:4px;padding-bottom:4px}.player-name-row{align-items:center;gap:4px;display:flex}.player-name{color:var(--wood-dark);text-overflow:ellipsis;white-space:nowrap;flex:1;font-family:Cinzel,serif;font-size:.82rem;font-weight:700;overflow:hidden}.governor-crown{font-size:.85rem}.governor-label{color:#b8860b;text-transform:uppercase;letter-spacing:.8px;margin-top:1px;font-size:.6rem;font-weight:700}.player-type-badge{font-size:.78rem}.selector-badge{color:#26c6da;title:"Wybrał postać";font-size:.75rem;font-weight:700}.player-stats{align-items:center;gap:8px;margin-bottom:4px;display:flex}.stat{font-size:.8rem;font-weight:600}.stat--pending{color:var(--board-green)}.stat--held{color:#7b5ea7;font-weight:700}.stat--pending-noble{color:#c0392b;font-weight:700}.stat--held-noble{color:#922b21;font-weight:700}.token-noble{vertical-align:middle;background-color:#c0392b;border:1.5px solid #00000040;border-radius:50%;flex-shrink:0;width:12px;height:12px;display:inline-block}.stored-goods{flex-wrap:wrap;gap:3px;min-height:18px;margin-bottom:4px;display:flex}.good-badge{border-radius:10px;padding:1px 5px;font-size:.72rem;font-weight:600}.no-goods{color:#999;font-size:.75rem}.island-view{flex-direction:column;gap:4px;margin-top:4px;display:flex}.island-section{flex-direction:column;gap:2px;display:flex}.island-section-label{text-transform:uppercase;letter-spacing:.8px;color:var(--wood-mid);font-size:.62rem;font-weight:700}.plantation-grid{grid-template-columns:repeat(6,1fr);gap:2px;display:grid}.plantation-slot{border:1px solid #00000026;border-radius:4px;justify-content:center;align-items:center;height:38px;display:flex;position:relative}.plantation-slot--empty{background:#0000000a;border:1px dashed #0000001f}.plantation-slot--active{box-shadow:inset 0 0 0 2px #4caf50b3}.slot-icon{font-size:1.3rem;line-height:1}.slot-worker{font-size:.75rem;line-height:1;position:absolute;bottom:2px;left:2px}.slot-worker--filled{opacity:1}.slot-worker--empty{opacity:.38}.slot-worker--noble{opacity:1;justify-content:center;align-items:center;display:flex}.building-grid{grid-template-columns:repeat(4,1fr);gap:3px;display:grid}.building-tile{background:var(--parchment-dark);cursor:default;border:1px solid #00000024;border-radius:4px;flex-direction:column;justify-content:space-between;min-height:52px;padding:5px 5px 4px;display:flex}.building-tile--active{background:#e8f5e9;border-color:#66bb6a}.building-tile--empty{background:#0000000a;border:1px dashed #0000001f}.building-tile--large{background:#fffde7;border:2px solid #b8860b;grid-column:span 2}.building-tile--large.building-tile--active{background:#e8f5e9;border-color:#4caf50}.building-tile__header{align-items:flex-start;gap:4px;display:flex}.building-tile__icon{flex-shrink:0;margin-top:1px;font-size:1rem;line-height:1}.building-tile__name{color:var(--text-dark);word-break:break-word;font-size:.6rem;line-height:1.3}.building-tile__workers{flex-wrap:wrap;align-items:center;gap:2px;display:flex}.building-worker-icon{font-size:.8rem;line-height:1}.building-worker-icon--empty{opacity:.38}.building-worker-icon--noble{opacity:1;justify-content:center;align-items:center;display:inline-flex}.no-buildings{color:#aaa;font-size:.72rem}.supply-panel{border-radius:var(--radius);color:var(--text-light);background:#0000004d;flex:1 1 0;min-height:0;padding:10px;overflow-y:auto}.supply-title{color:var(--gold);letter-spacing:1px;margin-bottom:8px;font-family:Cinzel,serif;font-size:.85rem}.supply-subtitle{text-transform:uppercase;letter-spacing:1px;color:#fff9;margin:8px 0 4px;font-size:.72rem}.supply-row{flex-direction:column;gap:4px;display:flex}.supply-row--workers{flex-flow:wrap;gap:6px;margin-top:2px}.supply-item{font-size:.82rem}.supply-item__label{opacity:.65;margin-left:1px;font-size:.62rem}.supply-item--magistrate{opacity:.75}.goods-supply{flex-wrap:wrap;gap:4px;display:flex}.good-token{text-align:center;border-radius:4px;flex-direction:column;align-items:center;gap:1px;width:40px;padding:4px 2px;font-size:.7rem;font-weight:700;display:flex}.good-token__icon{font-size:1rem;line-height:1}.good-token__count{font-size:.85rem;font-weight:700}.icon-coin{vertical-align:middle;color:#5c3a00;-webkit-user-select:none;user-select:none;background:#d4a017;border:2px solid #8b6914;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:1.15em;height:1.15em;font-family:Georgia,serif;font-size:.8em;font-weight:900;line-height:1;display:inline-flex;box-shadow:inset 0 0 0 1.5px #ffdc508c}.icon-sugar{vertical-align:middle;background:radial-gradient(circle at 30% 30%,#fff 20%,#ddd 100%);border:1.5px solid #bbb;border-radius:3px;flex-shrink:0;width:.85em;height:.85em;display:inline-block;box-shadow:1px 1px 3px #0003,inset 0 1px #ffffffe6}.ships-list{flex-direction:column;gap:5px;display:flex}.ship{background:#ffffff0f;border:1px solid #ffffff1f;border-radius:5px;padding:5px 8px}.ship__header{justify-content:space-between;margin-bottom:5px;font-size:.72rem;display:flex}.ship__name{font-weight:600}.ship__capacity{opacity:.7;font-size:.68rem}.ship__slots{flex-wrap:wrap;gap:3px;display:flex}.ship-slot{border-radius:4px;justify-content:center;align-items:center;width:26px;height:26px;font-size:.95rem;line-height:1;display:flex}.ship-slot--filled{border:1px solid #0003}.ship-slot--empty{background:#ffffff0a;border:1px dashed #fff3}.trading-prices{gap:3px;margin-bottom:5px;display:flex}.trade-price{border:1px solid #00000026;border-radius:4px;flex-direction:column;flex:1;align-items:center;gap:1px;padding:3px 2px;display:flex}.trade-price__icon{font-size:.9rem;line-height:1}.trade-price__val{font-size:.65rem;font-weight:700}.trading-house{gap:4px;display:flex}.trading-slot{text-align:center;color:#fff6;background:#ffffff0f;border:1px solid #fff3;border-radius:4px;flex:1;padding:6px 2px;font-size:1rem;font-weight:600}.revealed-plantations{flex-wrap:wrap;gap:4px;display:flex}.revealed-plant{border:1px solid #fff3;border-radius:5px;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.1rem;display:flex}.available-buildings{flex-direction:column;gap:6px;display:flex}.avail-building{cursor:pointer;color:var(--text-light);text-align:left;background:#ffffff0f;border:1px solid #ffffff1a;border-left:3px solid #ffffff26;border-radius:4px;justify-content:space-between;align-items:center;gap:4px;width:100%;padding:4px 5px 4px 7px;font-size:.72rem;transition:background .15s;display:flex}.avail-building:hover,.avail-building--open{background:#ffffff21}.avail-building--large{border-top:2px solid var(--gold)}.avail-building__left{flex:1;align-items:center;gap:4px;min-width:0;display:flex}.avail-building__prod-icon{flex-shrink:0;font-size:.8rem}.avail-building__name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.avail-building__count{opacity:.65;flex-shrink:0;font-size:.62rem}.avail-building__right{flex-shrink:0;align-items:center;gap:4px;display:flex}.avail-b-cost,.avail-b-vp{white-space:nowrap;font-size:.68rem}.avail-b-discount{opacity:.7;white-space:nowrap;font-size:.62rem}.building-inline-desc{background:#00000059;border:1px solid #ffffff1f;border-top:none;border-radius:0 0 4px 4px;margin-top:-1px;padding:6px 8px}.building-inline-desc__stats{color:var(--gold);margin-bottom:4px;font-size:.67rem}.building-inline-desc__text{color:var(--parchment-dark);margin:0;font-size:.7rem;line-height:1.45}.supply-subtitle--section{border-top:1px solid #ffffff1a;margin-top:4px;padding-top:6px}.supply-empty{opacity:.5;font-size:.72rem;font-style:italic}.ships-trading-bar{border-radius:var(--radius);background:#00000038;border:1px solid #ffffff1a;flex-direction:column;gap:4px;min-width:0;padding:6px 8px;display:flex;overflow-y:auto}.stb-section-label{text-transform:uppercase;letter-spacing:.8px;color:#ffffff8c;font-size:.6rem;font-weight:700}.stb-section-label--trading{margin-top:auto;padding-top:4px}.stb-ships{flex-direction:column;gap:3px;display:flex}.stb-ship{align-items:center;gap:5px;display:flex}.stb-ship__label{color:#ffffffa6;white-space:nowrap;flex-shrink:0;min-width:22px;font-size:.65rem}.stb-ship__slots{flex-wrap:wrap;gap:2px;display:flex}.stb-slot{border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:.65rem;line-height:1;display:flex}.stb-slot--empty{background:#ffffff0a;border:1px dashed #fff3}.stb-slot--filled{border:1px solid #0003}.stb-trading__slots{gap:3px;display:flex}.stb-trading-slot{text-align:center;color:#ffffff59;background:#ffffff0d;border:1px solid #ffffff2e;border-radius:4px;flex:1;justify-content:center;align-items:center;min-height:32px;padding:5px 2px;font-size:1.05rem;display:flex}.stb-prices{flex-wrap:wrap;gap:2px;margin-top:2px;display:flex}.stb-price{white-space:nowrap;border-radius:3px;padding:1px 4px;font-size:.58rem;font-weight:600}.action-panel{background:var(--wood-dark);border-top:2px solid var(--gold);grid-template-columns:1fr 210px;gap:8px;min-height:120px;max-height:215px;padding:8px 12px;display:grid}.action-panel--festival{grid-template-columns:1fr 185px 210px;max-height:250px}.action-panel__left{flex-direction:column;gap:6px;min-height:0;display:flex;overflow:hidden}.action-panel__who{font-size:.85rem;font-weight:600}.bot-thinking{color:#bb86fc;animation:1s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.human-turn{color:var(--gold)}.action-buttons{-webkit-overflow-scrolling:touch;flex-wrap:wrap;flex:1;gap:5px;min-height:0;display:flex;overflow-y:auto}.action-btn{background:var(--board-green);color:var(--text-light);border:1px solid var(--board-green-light);border-radius:var(--radius);cursor:pointer;white-space:nowrap;padding:5px 12px;font-size:.8rem;transition:all .15s}.action-btn:hover{background:var(--board-green-light);border-color:var(--gold);color:var(--gold)}.no-actions{opacity:.5;font-size:.8rem}.log-btn{color:var(--gold-light);border-radius:var(--radius);cursor:pointer;background:0 0;border:1px solid #d4af3773;align-items:center;gap:5px;padding:4px 10px;font-size:.78rem;font-weight:600;transition:all .15s;display:inline-flex}.log-btn:hover{border-color:var(--gold);color:var(--gold);background:#d4af3726}.log-btn__count{background:var(--gold);color:var(--wood-dark);border-radius:8px;padding:0 6px;font-size:.7rem;font-weight:700}.log-modal-overlay{z-index:200;background:#000000a6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.log-modal{background:var(--wood-dark);border:1px solid var(--gold);border-radius:var(--radius);flex-direction:column;width:min(560px,92vw);max-height:80vh;display:flex;box-shadow:0 8px 32px #000000b3}.log-modal__header{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.log-modal__title{color:var(--gold);letter-spacing:1px;font-family:Cinzel,serif;font-size:.9rem}.log-modal__close{color:#fff9;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:1.1rem;line-height:1;transition:all .15s}.log-modal__close:hover{color:var(--text-light);background:#ffffff1a}.log-modal__entries{flex-direction:column;gap:2px;padding:8px 6px;display:flex;overflow-y:auto}.log-entry{border-radius:3px;gap:6px;padding:3px 8px;font-size:.78rem;display:flex}.log-entry--bot{background:#643cc833}.log-entry--human{background:#28784633}.log-player{white-space:nowrap;color:var(--gold-light);font-weight:600}.log-action{opacity:.85}.log-empty{opacity:.4;padding:6px 8px;font-size:.75rem}.gameover-screen{background:radial-gradient(#2d6a4f 0%,#1b4332 70%);justify-content:center;align-items:center;min-height:100vh;display:flex}.gameover-card{background:var(--parchment);color:var(--text-dark);width:min(600px,95vw);box-shadow:var(--shadow-lg);border:3px solid var(--gold);text-align:center;border-radius:16px;padding:40px 48px}.gameover-title{color:var(--wood-dark);margin-bottom:8px;font-family:Cinzel,serif;font-size:2rem}.gameover-winner{color:var(--wood-mid);margin-bottom:24px;font-size:1.1rem}.score-table{border-collapse:collapse;width:100%;margin-bottom:16px;font-size:.9rem}.score-table th,.score-table td{text-align:center;border-bottom:1px solid var(--parchment-dark);padding:8px 12px}.score-table th{color:var(--wood-mid);background:var(--parchment-dark);text-transform:uppercase;letter-spacing:.5px;font-size:.75rem;font-weight:700}.score-row--winner td{background:#c9a84c26;font-weight:600}.gameover-reason{color:var(--wood-mid);background:var(--parchment-dark);border-left:3px solid var(--gold);text-align:left;border-radius:4px;margin-bottom:12px;padding:8px 12px;font-size:.85rem}.gameover-rounds{color:var(--wood-mid);margin-bottom:24px;font-size:.8rem}@keyframes feedShow{0%{opacity:0;transform:translate(-50%,-50%)translateY(12px)scale(.95)}15%{opacity:1;transform:translate(-50%,-50%)translateY(0)scale(1)}70%{opacity:1;transform:translate(-50%,-50%)translateY(0)scale(1)}to{opacity:0;transform:translate(-50%,-50%)translateY(-8px)scale(.97)}}.action-feed-overlay{z-index:100;pointer-events:none;border:2px solid var(--gold);text-align:center;background:#1e0a00ed;border-radius:12px;min-width:260px;max-width:420px;padding:18px 32px;animation:linear forwards feedShow;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 8px 32px #000000b3}.action-feed__player{color:var(--gold-light);letter-spacing:.03em;margin-bottom:8px;font-size:1rem;font-weight:700}.action-feed__action{color:var(--parchment);font-size:.88rem;line-height:1.5}.round-log-panel{border-radius:var(--radius);background:#00000073;border:1px solid #c9a84c66;flex-direction:column;flex:0 0 185px;gap:4px;padding:8px;display:flex;overflow:hidden}.round-log-title{color:var(--gold);letter-spacing:.04em;text-transform:uppercase;border-bottom:1px solid #c9a84c40;flex-shrink:0;padding-bottom:4px;font-family:Cinzel,serif;font-size:.7rem}.round-log-entries{flex-direction:column;flex:1 1 0;gap:3px;min-height:0;display:flex;overflow-y:auto}.round-log-empty{color:#ffffff59;text-align:center;padding:6px 0;font-size:.68rem;font-style:italic}.round-log-entry{background:#ffffff0a;border-radius:5px;align-items:flex-start;gap:5px;padding:4px 6px;animation:.2s ease-out logEntryIn;display:flex}@keyframes logEntryIn{0%{opacity:0;transform:translate(6px)}to{opacity:1;transform:translate(0)}}.round-log-entry--bot{border-left:2px solid #ff963280}.round-log-entry--human{border-left:2px solid #64c86499}.round-log-icon{flex-shrink:0;font-size:.75rem;line-height:1.4}.round-log-content{flex-direction:column;gap:1px;min-width:0;display:flex}.round-log-player{color:var(--gold-light);white-space:nowrap;text-overflow:ellipsis;font-size:.65rem;font-weight:700;overflow:hidden}.round-log-action{color:#ffffffb3;font-size:.63rem;line-height:1.3}@media (width<=1400px){.game-main{grid-template-columns:1fr 190px}.action-panel{grid-template-columns:1fr 195px}.action-panel--festival{grid-template-columns:1fr 165px 195px}}@media (width<=1200px){html,body,#root{font-size:13px}.game-main{grid-template-columns:1fr 170px}.action-panel{grid-template-columns:1fr 180px;gap:6px}.action-panel--festival{grid-template-columns:1fr 155px 180px;gap:6px}.plantation-grid{grid-template-columns:repeat(4,1fr)}.building-grid{grid-template-columns:repeat(3,1fr)}.game-meta{gap:10px}}@media (width<=1024px){html,body,#root{font-size:12px}.game-main{grid-template-columns:1fr 155px;gap:6px}.action-panel{grid-template-columns:1fr 165px;min-height:110px;max-height:200px}.action-panel--festival{grid-template-columns:1fr 140px 165px;min-height:110px;max-height:235px}.round-log-panel{flex:0 0 160px}.players-area{gap:5px}.game-header{gap:10px;padding:6px 12px}.game-title{font-size:1.1rem}.plantation-grid{grid-template-columns:repeat(3,1fr)}.building-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){html,body,#root{font-size:12px;overflow-x:hidden}.game-screen{grid-template-rows:auto auto auto auto;width:100%;min-height:100dvh;overflow-y:auto;height:auto!important;overflow-x:hidden!important}.game-header,.role-cards-wrapper,.game-main,.action-panel,.action-panel--festival{box-sizing:border-box;width:100%!important;max-width:100vw!important}.game-main{gap:6px;height:auto;min-height:0;padding:6px;overflow:hidden visible;grid-template-columns:1fr!important}.players-area{flex-direction:column;gap:5px;height:auto;overflow:hidden visible}.game-right-column{flex-flow:wrap;gap:5px;height:auto;max-height:none;overflow:hidden visible}.round-log-panel{flex:45%;max-height:200px}.supply-panel{flex:45%;max-height:260px}.action-panel,.action-panel--festival{gap:6px;max-height:none;grid-template-columns:1fr!important}.ships-trading-bar{flex-flow:wrap;align-items:flex-start;gap:8px}.stb-ships{flex-flow:wrap;gap:6px}.stb-section-label--trading{margin-top:0}.game-header{flex-wrap:wrap;gap:6px;padding:6px 10px}.game-meta{flex-wrap:wrap;gap:6px}.plantation-grid{grid-template-columns:repeat(4,1fr)}.building-grid{grid-template-columns:repeat(3,1fr)}}.player-collapse-btn{color:#0006;flex-shrink:0;margin-left:auto;font-size:.6rem}.player-panel--collapsed{flex:none;min-width:0}.player-panel--collapsed .player-stats{margin-bottom:0}.player-panel--collapsed .stored-goods{min-height:0;margin-bottom:0}@media (width<=480px){html,body,#root{font-size:11px}.game-header{gap:6px;padding:5px 8px}.game-title{display:none}.game-meta{flex-wrap:wrap;gap:6px}.round-info,.phase-info,.governor-info{font-size:.75rem}.current-player-info{padding:2px 7px;font-size:.75rem}.save-btn,.log-btn,.menu-btn{padding:4px 8px;font-size:.75rem}.role-card{min-width:62px;padding:4px 6px}.role-cards-bar{gap:4px;padding:5px 8px}.players-area{flex-direction:column;gap:5px}.player-panel{padding:6px}.player-panel--collapsed{padding:4px 6px}.plantation-grid{grid-template-columns:repeat(4,1fr)}.plantation-slot{height:32px}.slot-icon{font-size:1.1rem}.building-grid{grid-template-columns:repeat(2,1fr)}.building-tile{min-height:44px;padding:4px}.building-tile--large{grid-column:span 2}.action-btn{min-height:44px;padding:8px 12px;font-size:.8rem}.action-buttons{gap:4px}.action-panel{min-height:100px;padding:6px 8px}.ships-trading-bar{flex-flow:wrap;align-items:flex-start;gap:6px}.stb-ships{flex-flow:wrap;gap:4px}.stb-section-label--trading{margin-top:0}.game-right-column{flex-flow:wrap}.round-log-panel{flex:140px;max-height:150px}.supply-panel{flex:140px;max-height:200px}.supply-section-label{font-size:.55rem}.setup-card{padding:24px 20px}}.diff-btn--active-neural{color:#fff;background:#176e69;border-color:#0e4c49}.diff-btn--active-hardcore{color:#fff0d4;background:#862d1b;border-color:#e9954b;box-shadow:0 0 0 1px #e9954b33}.diff-btn--active-ai{color:#fff;background:linear-gradient(135deg,#6c3483 0%,#1a5276 100%);border-color:#9b59b6}.multiplayer-btn{border-radius:var(--radius);width:100%;color:var(--board-green);cursor:pointer;background:0 0;border:1.5px solid #ffffff59;margin-top:.75rem;padding:.6rem 1rem;font-size:.9rem;transition:background .15s,border-color .15s;display:block}.multiplayer-btn:hover{background:#ffffff1a;border-color:#fff9}.multiplayer-status{text-align:center;color:#f5b7b1;background:#e74c3c40;border-radius:20px;margin-bottom:.75rem;padding:.4rem .8rem;font-size:.85rem}.multiplayer-status--ok{color:#a9dfbf;background:#27ae6040}.multiplayer-error{border-radius:var(--radius);cursor:pointer;background:#c0392b4d;border:1px solid #c0392b;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.75rem;padding:.5rem .75rem;font-size:.85rem;display:flex}.multiplayer-error__dismiss{opacity:.6;font-size:.75rem}.multiplayer-hint{text-align:center;opacity:.65;margin-top:.6rem;font-size:.78rem}.multiplayer-badge{white-space:nowrap;background:#ffffff1f;border-radius:12px;padding:2px 8px;font-size:.75rem}.multiplayer-inline-error{color:#f1948a;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:#c0392b33;border-radius:4px;max-width:200px;padding:2px 6px;font-size:.78rem;overflow:hidden}.pr-world{--ink:#193e40;--sea:#13656d;--cream:#faf3df;--line:#daceac;min-height:100dvh;color:var(--ink);isolation:isolate;background:radial-gradient(at 30% 40%,#22858a,#124951 85%);padding:18px 22px 20px;font-family:Trebuchet MS,sans-serif}.pr-world button{font:inherit;cursor:pointer;border-radius:8px;transition:background .15s,box-shadow .15s}.pr-world button:focus-visible{outline-offset:3px;outline:3px solid #e8a63e}.pr-world button:disabled{opacity:.45;cursor:default}.pr-header{color:#fff2d3;align-items:center;gap:24px;min-height:70px;margin-bottom:14px;display:flex}.pr-brand{flex:1;align-items:center;gap:12px;display:flex}.pr-brand-mark{color:#f8d68d;border:1px solid #e6ca88;border-radius:50%;place-items:center;width:48px;height:48px;font-family:Georgia,serif;font-size:21px;display:grid}.pr-brand h1{letter-spacing:-.5px;font-family:Georgia,serif;font-size:31px;font-weight:500;line-height:1.12}.pr-brand div>span{letter-spacing:2.4px;color:#aed8cf;margin-top:6px;font-size:9px;display:block}.pr-turn{border-left:1px solid #ffffff24;gap:3px;min-width:215px;padding-left:24px;display:grid}.pr-turn>span{letter-spacing:2px;color:#f2cd85;font-size:9px}.pr-turn strong{font-size:17px}.pr-turn small{color:#c2e6df;font-size:12px}.pr-tools{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.pr-tools button,.pr-map-nav button,.pr-zoom button{color:#e9f5e8;background:#0c3d4499;border:1px solid #ffffff25;padding:9px 12px;font-size:12px}.pr-tools button:hover,.pr-map-nav button:hover,.pr-zoom button:hover{background:#296b6b}.pr-role-strip{z-index:3;margin-bottom:12px;position:relative}.pr-players{gap:10px;margin-bottom:14px;padding:1px 1px 4px;display:flex;overflow-x:auto}.pr-players>button{color:#eef6e7;text-align:left;background:#113f4699;border:1px solid #ffffff20;flex:1;align-items:center;gap:10px;min-width:172px;padding:10px 14px;display:flex;position:relative}.pr-players>button.is-current{border-color:var(--player-color);background:#1a555a}.pr-avatar{background:var(--player-color);color:#234545;border-radius:50%;flex-shrink:0;place-items:center;width:29px;height:29px;font-size:12px;font-weight:700;display:grid}.pr-player-name{min-width:0}.pr-avatar:has(.pr-governor-marker){position:relative}.pr-governor-marker{color:#60401f;background:#ffe09a;border:1px solid #95611e;border-radius:50%;place-items:center;width:15px;height:15px;font:700 9px Trebuchet MS,sans-serif;display:grid;position:absolute;bottom:-4px;right:-5px;box-shadow:0 1px 2px #39251277}.pr-player-name strong{white-space:nowrap;text-overflow:ellipsis;font-size:13px;display:block;overflow:hidden}.pr-player-name small{color:#a2cec5;font-size:10px}.pr-player-values{text-align:right;white-space:nowrap;margin-left:auto}.pr-player-values b{color:#f6d387;font-size:13px}.pr-player-values small{color:#cae2d7;font-size:10px;display:block}.pr-layout{grid-template-columns:minmax(0,1fr) 348px;align-items:start;gap:16px;display:grid}.pr-explore{background:radial-gradient(at 55% 25%,#329c9a,#1b737b 60%,#165d69);border:1px solid #ffffff1f;border-radius:14px;position:sticky;top:14px;overflow:hidden;box-shadow:0 12px 50px #092c402e}.pr-map{height:calc(100dvh - 337px);min-height:440px;max-height:850px;position:relative;overflow:hidden}.pr-canvas{position:absolute;inset:0}.pr-canvas canvas{touch-action:none;display:block}.pr-map-nav{z-index:1;gap:6px;padding:12px 14px 0;display:flex;position:relative}.pr-map-nav button{padding:7px 12px}.pr-map-nav .is-active{color:#173f43;background:#edd9a6;border-color:#eeddb8}.pr-map-caption{pointer-events:none;color:#b6e3db;gap:5px;display:grid;position:absolute;top:18px;left:18px}.pr-map-caption>span{letter-spacing:2px;font-size:9px}.pr-map-caption small{opacity:.7;font-size:10px}.pr-zoom{gap:4px;display:flex;position:absolute;bottom:16px;right:16px}.pr-zoom button{width:36px;height:36px;padding:0;font-size:22px}.pr-map-status{color:#fff0ca;text-align:center;background:#124951ed;border:1px solid #c9dbbd55;border-radius:10px;padding:18px;font-size:13px;position:absolute;top:40%;left:15%;right:15%}.pr-live{color:#d9eee1;background:#134b5188;border:1px solid #ffffff1f;border-radius:8px;align-items:center;gap:12px;min-height:41px;margin:0 14px 12px;padding:10px 14px;font-size:12px;display:flex}.pr-live b,.pr-live strong{color:#f5d594}.pr-live span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.pr-destinations{background:#124b51ab;border-top:1px solid #ffffff1c;flex-wrap:wrap;gap:4px;padding:7px 10px;display:flex}.pr-destinations button{white-space:nowrap;color:#cbe6da;background:0 0;border:0;flex:1;padding:9px 8px;font-size:11px}.pr-destinations button:hover,.pr-destinations .is-active{color:#ffe1a4;background:#ffffff14}.pr-sidebar{gap:12px;min-width:0;display:grid}.pr-moves,.pr-inspector,.pr-reserves{background:var(--cream);border:1px solid #fff3d1;border-radius:12px;padding:19px;box-shadow:0 5px 20px #06363e20}.pr-moves{background:#fff6df;border-top:3px solid #e0b761}.pr-eyebrow{letter-spacing:1.8px;color:#8d7c57;font-size:9px;font-weight:700}.pr-world h2{margin:5px 0 15px;font-family:Georgia,serif;font-size:23px;font-weight:500;line-height:1.2}.pr-actions{gap:6px;max-height:267px;padding:2px;display:grid;overflow-y:auto}.pr-action{text-align:left;color:#254747;background:#f3e6c5;border:1px solid #d6c79f;justify-content:space-between;align-items:center;gap:8px;width:100%;min-height:38px;padding:10px 11px;display:flex;font-size:12px!important}.pr-action:hover:enabled{background:#e5cf98;border-color:#b89750}.pr-action--pass{color:#6d715f;background:0 0;border-style:dashed}.pr-action span{color:#927e45;font-size:19px;line-height:10px}.pr-nearby{border-top:1px solid #d7ccae;gap:6px;margin-top:18px;padding-top:12px;display:grid}.pr-section-title{justify-content:space-between;align-items:center;gap:8px;display:flex}.pr-section-title h2{margin-bottom:8px}.pr-section-title>button{color:#5c6954;background:#e9dfc8;border:0;align-self:start;width:25px;height:25px;font-size:20px}.pr-intro{color:#667362;margin:5px 0 12px;font-size:12px;line-height:1.7}.pr-muted{color:#727960;margin:9px 0;font-size:11px;line-height:1.6}.pr-world h3{color:#455b4e;margin:15px 0 9px;font-size:12px;font-weight:700}.pr-world h3 small{float:right;color:#827d62;font-size:10px;font-weight:400}.pr-art{vertical-align:middle;background-repeat:no-repeat;flex-shrink:0;width:54px;height:54px;display:inline-block}.pr-art--large{width:188px;height:188px}.pr-feature-art{background:radial-gradient(at 50% 78%,#dfe1b04d,#0000 60%);justify-content:center;margin:-2px 0 4px;display:flex}.pr-stat-grid{border:1px solid #ddd2b5;border-radius:8px;grid-template-columns:1fr 1fr;margin:8px 0 13px;display:grid;overflow:hidden}.pr-stat-grid span{color:#7d7f64;background:#f1e9d2;padding:10px 12px;font-size:10px}.pr-stat-grid strong{color:#39544a;margin-top:3px;font-size:17px;font-weight:500;display:block}.pr-catalog{gap:5px;display:grid}.pr-catalog>button,.pr-catalog>div{text-align:left;color:#365246;background:#f4ecd6;border:1px solid #ded2b2;border-radius:7px;align-items:center;gap:9px;width:100%;padding:5px 7px;font-size:12px;display:flex}.pr-catalog>button:hover{background:#e9ddb9}.pr-catalog span:not(.pr-art){flex:1;min-width:0}.pr-catalog small{color:#888366;margin-top:3px;font-size:10px;display:block}.pr-catalog b{white-space:nowrap;color:#9e7736;font-size:11px}.pr-goods{justify-content:space-around;gap:3px;display:flex}.pr-goods>span{color:#4b6554;justify-items:center;font-size:11px;display:grid}.pr-goods .pr-art{width:43px;height:43px}.pr-trade{gap:5px;display:flex}.pr-trade>span{color:#9a987c;border:1px dashed #b9bba1;border-radius:6px;flex:1;place-content:center;justify-items:center;min-height:64px;font-size:9px;display:grid}.pr-trade .pr-art{width:45px;height:45px}.pr-harbour{gap:7px;display:grid}.pr-harbour button{color:#34584e;text-align:left;background:#f3e9cc;border:1px solid #d7cba7;align-items:center;gap:8px;width:100%;padding:8px;display:flex}.pr-harbour .is-active{border-color:#9c7e38}.pr-harbour span:not(.pr-art){flex:1}.pr-harbour small{color:#75816b;margin:4px 0;font-size:10px;display:block}.pr-harbour progress{accent-color:#448b78;width:100%;height:5px}.pr-harbour b{font-size:12px}.pr-reserves{color:#61715c;padding:13px 18px;font-size:11px}.pr-reserves summary{cursor:pointer;color:#466052;font-size:12px;font-weight:700}.pr-reserves p{margin:10px 0}.pr-error{color:#fff0d0;background:#843f37;border-radius:8px;margin-bottom:8px;padding:10px 16px}.pr-error button{color:#653d30;background:#ffdfad;border:0;padding:5px 9px}.pr-world .festival-board-panel{background:#f4eace;border-color:#dbc88d}.pr-world .festival-quest{color:#4b6450;background:#fff7e1}.pr-world .log-modal{color:#345347;background:#fcf3dc;max-width:660px}.pr-world .log-modal h2{margin:0}.pr-world .log-modal__entries p{border-bottom:1px solid #d9ccb0;padding:8px 0;font-size:12px}.pr-world .log-modal__header button{color:#476452;background:0 0;border:0;font-size:25px}.setup-screen{background:radial-gradient(at 25% 20%,#2c9090,#124952 80%);padding:32px 0}.setup-card{background:#fcf4df;border:1px solid #ebd5a0;border-radius:18px;padding:35px 42px;box-shadow:0 24px 80px #06343866}.setup-title{color:#214f4e;letter-spacing:-1px;font-family:Georgia,serif;font-size:42px;font-weight:500}.setup-subtitle{color:#7f8567}.start-btn{color:#fff0c8!important;background:#236b66!important;border-color:#1d5a58!important}@media (width>=1700px){.pr-world{padding-left:3vw;padding-right:3vw}.pr-layout{grid-template-columns:minmax(0,1fr) 380px}.pr-map{min-height:530px}}@media (width<=1100px){.pr-world{padding:12px}.pr-layout{grid-template-columns:minmax(0,1fr) 310px;gap:10px}.pr-header{gap:14px}.pr-brand h1{font-size:27px}.pr-brand-mark{display:none}.pr-turn{min-width:170px;padding-left:12px}.pr-tools{max-width:240px}.pr-moves,.pr-inspector{padding:15px}.pr-map{min-height:405px}.pr-destinations button{font-size:10px}}@media (width<=760px){.pr-world{padding:10px}.pr-header{flex-wrap:wrap;gap:13px;margin-bottom:12px}.pr-brand{flex:1}.pr-brand h1{font-size:28px}.pr-turn{min-width:140px}.pr-turn strong{font-size:15px}.pr-tools{justify-content:stretch;width:100%;max-width:none}.pr-tools button{flex:1;padding:7px}.pr-layout{grid-template-columns:1fr}.pr-explore{position:relative;top:auto}.pr-map{height:48dvh;min-height:350px}.pr-map-caption small{display:none}.pr-players{gap:6px}.pr-players>button{min-width:160px;padding:8px}.pr-sidebar{grid-template-columns:1fr}.pr-moves{order:-1}.pr-actions{grid-template-columns:1fr 1fr;max-height:280px}.pr-action{font-size:11px!important}.pr-inspector{padding:18px}.pr-catalog{grid-template-columns:1fr 1fr}.pr-catalog>button{gap:5px}.pr-catalog .pr-art{width:40px;height:40px}.pr-catalog>button b{display:none}.pr-destinations{flex-wrap:nowrap;overflow:auto}.pr-map-nav button{font-size:11px}.setup-card{padding:25px 18px}.pr-live{margin:0 10px 10px;font-size:11px}.pr-world .role-card{min-width:104px}.pr-world .role-desc-panel{top:65px}}@media (prefers-reduced-motion:reduce){.pr-world *{scroll-behavior:auto!important;transition:none!important}.pr-world .role-card{animation:none!important}}.pr-world .festival-board-title{color:#526c50}.pr-world .festival-quest__type{color:#8c6b32}.pr-world .festival-quest__detail{color:#315447}.pr-world .festival-quest__reward{color:#886423}.pr-world .festival-quest__winner{color:#2c7454}.pr-world .festival-quest--done{opacity:1;background:#e3ead0}.pr-world .role-card:focus-visible{outline-offset:1px;outline:3px solid #e8a63e}.pr-catalog{max-height:480px;overflow-y:auto}.pr-world *{scrollbar-width:thin;scrollbar-color:#779c83 transparent}.pr-layout{display:block}.pr-explore{position:relative;top:auto}.pr-map{height:calc(100dvh - 360px);min-height:560px;max-height:1000px}.pr-deck{gap:10px;padding:6px 3px 8px;display:flex;overflow-x:auto}.pr-role{border:1px solid #c6bf95;border-top:3px solid var(--role-color);background:linear-gradient(#fcf5df,#dfdfbb);border-radius:12px;flex:1;min-width:120px;position:relative;box-shadow:0 4px #0c39485c,inset 0 0 0 3px #fff4cd66}.pr-role.is-taken{background:linear-gradient(#8dafa1,#799788)}.pr-role.is-active{background:linear-gradient(#fff4c9,#f0ce77);border-color:#ffdb7b;box-shadow:0 0 0 2px #f8d779,0 0 24px #ffd66838,0 4px #604f2a}.pr-role.is-playable:hover{border-color:#ffe29d;box-shadow:0 0 0 2px #ffe29d,0 0 20px #ffd66838}.pr-role-pick{color:#244b45;background:0 0;border:0;align-content:end;justify-items:center;gap:3px;width:100%;min-height:122px;padding:6px 5px 10px;display:grid}.pr-role-art{background-repeat:no-repeat;width:80px;height:72px;display:block}.pr-role-name{white-space:nowrap;font-size:13px;font-weight:700}.pr-role-name>span{font-size:12px}.pr-role-status{letter-spacing:.3px;color:#59735a;min-height:12px;font-size:9px;display:block}.pr-role.is-active .pr-role-status{color:#8b5d1b;font-weight:700}.pr-role-coins{color:#634919;background:#f5cf71;border:1px solid #d2ae59;border-radius:12px;padding:4px 6px;font-size:10px;position:absolute;top:8px;left:8px}.pr-role-help{color:#57765e;background:#fcf7e0c9;border:1px solid #657e6052;width:23px;height:23px;padding:0;position:absolute;top:7px;right:7px;border-radius:50%!important;font-size:12px!important}.pr-world button:hover:not(:disabled){box-shadow:0 0 0 2px #efd182a6}.pr-commandbar{align-items:center;gap:24px;margin-top:14px;padding:14px 20px;display:flex}.pr-commandbar h2{white-space:nowrap;margin:4px 0 0;font-size:21px}.pr-command-content{flex:1;min-width:0}.pr-commandbar .pr-actions{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));max-height:156px}.pr-commandbar .pr-intro{margin:0}.pr-dialog{width:min(1000px,100vw - 36px);max-height:min(88dvh,1000px);color:var(--ink);background:#fbf3de;border:1px solid #dccc9b;border-radius:19px;margin:auto;padding:0;overflow:hidden;box-shadow:0 30px 100px #022b3e80}.pr-dialog[open]{flex-direction:column;display:flex}.pr-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#072e3fa8}.pr-dialog-header{background:linear-gradient(110deg,#eee0b9,#faf2db);border-bottom:1px solid #d8c9a1;justify-content:space-between;align-items:center;gap:20px;padding:24px 28px 18px;display:flex}.pr-dialog-header h2{margin:5px 0 0;font-size:29px}.pr-dialog-header>button{color:#496658;background:#faf3de;border:1px solid #d7c79e;flex-shrink:0;width:38px;height:38px;font-size:25px}.pr-dialog-body{overscroll-behavior:contain;min-height:0;padding:22px 28px;overflow:auto}.pr-dialog-footer{background:#f0e6cc;border-top:1px solid #dfd2b2;justify-content:flex-end;gap:10px;padding:14px 28px;display:flex}.pr-dialog-footer button{color:#fff1ce;background:#266b61;border:1px solid #1b5a50;padding:10px 17px;font-size:12px}.pr-dialog-footer button:first-child:not(:last-child){color:#476553;background:#f9f0d7;border-color:#cdbc91;margin-right:auto}.pr-dialog .pr-catalog{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px;max-height:none;overflow:visible}.pr-dialog .pr-catalog>button{border-color:#d8c9a1;min-height:84px;padding:10px}.pr-dialog .pr-catalog .pr-art{width:64px;height:64px}.pr-dialog .pr-catalog b{display:block}.pr-dialog .pr-catalog .is-active,.pr-harbour .is-active{background:#eee1b9;border-color:#c39438;box-shadow:inset 0 0 0 1px #d5b253}.pr-dialog .pr-stat-grid{grid-template-columns:repeat(4,1fr)}.pr-dialog .pr-intro{font-size:14px;line-height:1.75}.pr-dialog .pr-feature-art{float:left;width:235px;margin:0 24px 15px 0}.pr-dialog .pr-feature-art .pr-art--large{width:220px;height:220px}.pr-dialog .pr-nearby{clear:both;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.pr-dialog .pr-nearby h3{grid-column:1/-1;margin:0 0 4px}.pr-dialog .pr-harbour{grid-template-columns:repeat(3,1fr)}.pr-dialog .pr-harbour button{flex-wrap:wrap;padding:15px}.pr-dialog .pr-harbour .pr-art{width:90px;height:90px}.pr-dialog .pr-trade{max-width:540px}.pr-dialog .pr-trade>span{font-size:11px}.pr-dialog h3{font-size:15px}.pr-dialog .pr-muted{clear:both}.pr-role-description{align-items:center;gap:25px;display:flex}.pr-supplies{font-size:15px;line-height:1.9}.pr-supplies .pr-goods{background:#eee6c9;border-radius:12px;margin-top:20px;padding:18px}.pr-supplies .pr-goods .pr-art{width:74px;height:74px}@media (width<=760px){.pr-map{height:60dvh;min-height:420px}.pr-map-nav{flex-wrap:wrap}.pr-role{min-width:116px}.pr-role-pick{min-height:118px}.pr-deck{gap:8px}.pr-commandbar{padding:15px;display:block}.pr-commandbar h2{margin-bottom:10px}.pr-commandbar .pr-actions{grid-template-columns:1fr;max-height:235px}.pr-dialog{border-radius:13px;width:calc(100vw - 20px);max-height:91dvh}.pr-dialog-header{padding:18px}.pr-dialog-header h2{font-size:24px}.pr-dialog-body{padding:18px}.pr-dialog-footer{padding:12px 18px}.pr-dialog .pr-catalog,.pr-dialog .pr-harbour{grid-template-columns:1fr}.pr-dialog .pr-stat-grid{grid-template-columns:1fr 1fr}.pr-dialog .pr-feature-art{float:none;width:auto;margin:0}.pr-role-description{display:block}.pr-role-description>.pr-art{margin:0 auto;display:block}.pr-supplies .pr-goods .pr-art{width:40px;height:40px}}.pr-next-step{color:#645024;text-align:left;background:#fff0ba;border:1px solid #e9c567;border-radius:10px;width:calc(100% - 32px);margin:0 16px 12px;padding:11px 16px;font-size:13px;display:block}.pr-next-step>span{vertical-align:middle;margin-right:8px;font-size:22px}.pr-crop-choices{grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:14px;display:grid}.pr-crop-choice{color:#345647;background:linear-gradient(#fff9e8,#ede5bf);border:1px solid #d1c093;border-radius:15px;flex-direction:column;align-items:center;gap:8px;padding:15px 10px 20px;display:flex}.pr-crop-choice .pr-art--large{width:148px;height:148px}.pr-crop-choice strong{font-size:17px}.pr-crop-choice small{color:#697657;font-size:11px}.pr-world .pr-crop-choice:disabled{opacity:.72;cursor:default;filter:saturate(.55)}.pr-crop-unavailable{color:#6d6652;font-size:10px}.pr-role-workforce{color:#59481e;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;height:63px;display:flex;position:absolute;top:22px;left:3px;right:3px}.pr-role-workforce>span{align-items:center;gap:3px;font-size:23px;display:flex}.pr-role-workforce i{background-repeat:no-repeat;width:30px;height:36px;display:inline-block}.pr-role-workforce small{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:9px;line-height:13px;overflow:hidden}.pr-role:has(.pr-role-workforce) .pr-role-art{visibility:hidden}.pr-player-workers{color:#ffdf85!important;font-size:10px!important}@media (width<=760px){.pr-crop-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.pr-crop-choice .pr-art--large{width:116px;height:116px}.pr-crop-choice{padding:10px 5px 14px}.pr-crop-choice strong{font-size:14px}.pr-next-step{width:calc(100% - 20px);margin:0 10px 10px;font-size:11px}}.pr-crop-choice .pr-art--large{clip-path:inset(0 0 8%)}.pr-audio{z-index:8;align-items:stretch;display:flex;position:relative}.pr-audio>button{white-space:nowrap;border-radius:8px 0 0 8px}.pr-audio-settings{position:relative}.pr-audio-settings>summary{box-sizing:border-box;cursor:pointer;color:#e9f5e8;background:#0c3d4499;border:1px solid #ffffff25;border-left:0;border-radius:0 8px 8px 0;place-items:center;min-width:27px;height:100%;font-size:17px;list-style:none;display:grid}.pr-audio-settings>summary::-webkit-details-marker{display:none}.pr-audio-settings>summary:focus-visible{outline-offset:2px;outline:3px solid #e8a63e}.pr-audio-panel{color:#284f47;box-sizing:border-box;background:#faf2d9;border:1px solid #d2ba7f;border-radius:12px;width:245px;padding:17px;position:absolute;top:calc(100% + 9px);right:0;box-shadow:0 12px 36px #062c4666}.pr-audio-panel label{justify-content:space-between;gap:8px;font-size:12px;display:flex}.pr-audio-panel output{color:#987223;font-weight:700}.pr-audio-panel input{accent-color:#397665;cursor:pointer;width:100%;margin:14px 0 10px}.pr-audio-panel small{color:#637861;font-size:11px;line-height:1.6;display:block}@media (width<=760px){.pr-tools .pr-audio{flex:1 0 150px}.pr-audio>button{flex:1}.pr-audio-panel{width:240px;left:-130px;right:auto}.pr-tools{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.pr-tools .pr-audio{grid-column:span 2}}.pr-value{white-space:nowrap;vertical-align:middle;font-variant-numeric:tabular-nums;justify-content:center;align-items:center;gap:4px;display:inline-flex}.pr-value svg{flex-shrink:0;width:1.25em;height:1.25em}.pr-value>span{font:inherit;color:inherit}.pr-player-values .pr-value{justify-content:flex-end}.pr-catalog-intro{color:#5c715a;margin:0 0 22px;font-size:13px}.pr-catalog-intro>span{color:#8f6728;margin-top:7px;display:block}.pr-price-groups{gap:18px;display:grid}.pr-price-group{border-bottom:1px solid #dfd1ab;grid-template-columns:72px minmax(0,1fr);gap:16px;padding-bottom:18px;display:grid}.pr-price-group:last-child{border-bottom:0;padding-bottom:0}.pr-price-heading{align-self:start;justify-items:center;gap:7px;margin:0;padding-top:16px;display:grid}.pr-price-heading .pr-value{color:#8c6528;font-size:26px}.pr-price-heading small{letter-spacing:.7px;white-space:nowrap;color:#7c8265;font-size:8px;font-weight:400}.pr-offers{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:10px;display:grid}.pr-offer{color:#365246;text-align:left;background:linear-gradient(120deg,#fff9e8,#eee3c5);border:1px solid #d8c9a1;border-radius:12px;align-items:center;gap:7px;min-width:0;padding:12px 8px;display:flex}.pr-offer .pr-art{flex-shrink:0;width:66px;height:76px}.pr-offer-info{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.pr-offer-info>strong{font-size:12px;line-height:1.35}.pr-offer-facts{flex-wrap:wrap;align-items:center;gap:8px;font-size:11px;display:flex}.pr-offer-facts small{color:#7c8165;font-size:10px}.pr-offer-price{color:#976e29;align-items:center;gap:7px;font-size:14px;font-weight:700;display:flex}.pr-offer-price small{color:#557652;font-size:9px;font-weight:400}.pr-trade-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.pr-trade-heading p{color:#668065;font-size:14px}.pr-trade-heading p strong{color:#385c4d;margin-right:6px;font-size:23px}.pr-wood-sign{color:#fff0c6;text-shadow:0 2px #694723;letter-spacing:1.4px;background:repeating-linear-gradient(0deg,#b78651 0 15px,#aa7948 16px,#c19560 17px);border:3px solid #805530;border-radius:7px;padding:14px 24px;font-size:15px;font-weight:700;box-shadow:0 4px #6e4b2c,inset 0 0 0 2px #ddba7b}.pr-dialog .pr-trading-house .pr-trade{gap:14px;max-width:none}.pr-trading-house .pr-trade>span{background:#f1e8ca;border-radius:13px;gap:7px;min-height:164px;padding:10px}.pr-trading-house .pr-trade>.is-occupied{background:#f8edcb;border-style:solid;border-color:#d3b574}.pr-trading-house .pr-trade small{color:#8a866a;font-size:10px;font-weight:400}.pr-trading-house .pr-trade strong{color:#4b6752;font-size:13px}.pr-trading-house .pr-art{width:83px;height:83px}.pr-empty-crate{color:#c6bca0;place-items:center;width:83px;height:83px;font-size:40px;display:grid}@media (width<=900px){.pr-offers{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.pr-price-group{grid-template-columns:minmax(0,1fr);gap:9px}.pr-price-heading{gap:12px;padding:0;display:flex}.pr-price-heading .pr-value{font-size:23px}.pr-offers{grid-template-columns:minmax(0,1fr)}.pr-offer{gap:14px;padding:10px 12px}.pr-offer-info>strong{font-size:14px}.pr-trade-heading{gap:10px}.pr-dialog .pr-trading-house .pr-trade{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.pr-trading-house .pr-trade>span{min-height:148px}}.pr-trading-house .pr-art{clip-path:inset(0 0 8%)}.pr-world{padding-bottom:140px}.pr-map{height:calc(100dvh - 285px)}.pr-action-launcher{z-index:40;pointer-events:none;flex-direction:column;align-items:center;gap:9px;display:flex;position:fixed;bottom:22px;right:26px}.pr-action-context{color:#fff0bf;text-align:center;background:#153f46ed;border:1px solid #e7cc8270;border-radius:20px;max-width:190px;padding:6px 12px;font-size:11px;box-shadow:0 3px 14px #062e423d}.pr-world .pr-action-fab{pointer-events:auto;color:#fff0bf;background:linear-gradient(145deg,#427c6b,#163f46);border:3px solid #e6c475;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:3px;width:94px;height:94px;padding:10px;display:flex;position:relative;box-shadow:0 6px #0d343bc9,0 12px 25px #062b4270,inset 0 0 0 3px #75948254}.pr-action-fab svg{width:44px;height:34px}.pr-action-fab strong{letter-spacing:.5px;font-size:14px}.pr-world .pr-action-fab.needs-choice{border-color:#ffe39a;box-shadow:0 0 0 5px #f4d47d26,0 0 30px #ffda7155,0 6px #0d343bc9,inset 0 0 0 3px #75948254}.pr-world .pr-action-fab:hover{background:linear-gradient(145deg,#55947c,#24544d);box-shadow:0 0 0 5px #ffe19f70,0 10px 25px #062b4270}.pr-fab-workers{color:#315344;background:#ffe2a0;border:2px solid #fff1c9;border-radius:18px;justify-content:center;align-items:center;gap:3px;min-width:34px;height:30px;padding:0 5px;font-size:12px;font-weight:700;display:flex;position:absolute;top:-6px;right:-5px;box-shadow:0 2px 8px #072e3f4d}.pr-fab-workers span{font-size:12px}.pr-dialog--actions{width:min(800px,100vw - 36px)}.pr-dialog--actions .pr-deck{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:4px 3px 10px;display:grid;overflow:visible}.pr-dialog--actions .pr-role{min-width:0}.pr-dialog--actions .pr-role-pick{min-height:142px;padding:13px 6px 14px}.pr-dialog--actions .pr-role-name{font-size:14px}.pr-weather-badge{color:#f4efce;pointer-events:none;background:#173e4abc;border:1px solid #dfebdf36;border-radius:20px;align-items:center;gap:7px;padding:6px 11px;font-size:11px;display:flex;position:absolute;top:15px;right:18px}.pr-weather-badge>span{color:#f0d18b;font-size:18px;line-height:1}.pr-trade-legend{background:#f4e9cb;border:1px solid #d8c899;border-radius:13px;margin-bottom:20px;padding:16px}.pr-dialog .pr-trade-legend h3{color:#50634b;margin:0 0 8px;font-size:14px}.pr-trade-legend h3 small{color:#7c8064;margin-left:8px;font-size:10px;font-weight:400;display:inline-block}.pr-trade-legend>div{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.pr-trade-price{background:#fff8e77a;border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:8px 2px;display:flex}.pr-trading-house .pr-trade-price .pr-art{width:65px;height:65px}.pr-trade-price strong{color:#45654e;font-size:12px}.pr-trade-price .pr-value{color:#8e6926;font-size:17px}.pr-shipping-legend{background:#f4e9cb;border:1px solid #d8c899;border-radius:13px;align-items:center;gap:22px;margin-bottom:20px;padding:16px 20px;display:flex}.pr-shipping-legend>strong{color:#426851;white-space:nowrap;flex-shrink:0;font-size:17px}.pr-shipping-legend>span{color:#6e795e;font-size:12px;line-height:1.6}@media (width<=760px){.pr-world{padding-bottom:126px}.pr-map{height:65dvh;min-height:460px}.pr-action-launcher{gap:7px;bottom:17px;right:17px}.pr-world .pr-action-fab{width:82px;height:82px}.pr-action-fab svg{width:37px;height:29px}.pr-action-fab strong{font-size:12px}.pr-action-context{max-width:155px;font-size:10px}.pr-weather-badge{padding:6px 9px;top:12px;right:12px}.pr-shipping-legend{flex-direction:column;align-items:flex-start;gap:9px;padding:14px}}@media (width<=560px){.pr-dialog--actions .pr-deck{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.pr-dialog--actions .pr-role-pick{min-height:134px}.pr-dialog--actions .pr-role-name{font-size:12px}.pr-trade-legend{padding:12px 8px}.pr-trade-legend h3 small{margin:5px 0 0;display:block}.pr-trade-legend>div{gap:4px}.pr-trading-house .pr-trade-price .pr-art{width:42px;height:42px}.pr-trade-price strong{font-size:9px}.pr-trade-price .pr-value{font-size:15px}}.pr-observer{z-index:4;border:1px solid #e5ce8e;border-left:4px solid var(--observer-color);color:#2b5148;background:linear-gradient(120deg,#fff6ddf7,#ece3c5f5);border-radius:15px;width:min(610px,100% - 120px);position:absolute;bottom:16px;left:16px;overflow:hidden;box-shadow:0 10px 35px #062e4655}.pr-observer-story{gap:12px;padding:16px 18px 10px;display:flex}.pr-observer-art{background-repeat:no-repeat;flex-shrink:0;align-self:center;width:76px;height:76px;display:block}.pr-observer-copy{flex:1;min-width:0}.pr-observer-kicker{flex-wrap:wrap;align-items:center;gap:9px;font-size:12px;display:flex}.pr-observer-kicker>b{color:#2f5d4b}.pr-observer-kicker>span{color:#6a512c;background:#f8dda0;border:1px solid #d8b260;border-radius:20px;padding:3px 9px;font-size:10px;font-weight:700;box-shadow:0 0 12px #ffd77b55}.pr-observer-kicker>small{color:#708066;margin-left:auto;font-size:10px}.pr-world .pr-observer h3{color:#244c43;margin:7px 0 4px;font-family:Trebuchet MS,sans-serif;font-size:17px;line-height:1.3}.pr-observer-copy p{color:#68745a;margin:4px 0;font-size:12px;line-height:1.5}.pr-observer-changes{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.pr-observer-changes>span{background:#fff9e4;border:1px solid #ddcca0;border-radius:7px;align-items:center;gap:3px;padding:2px 5px;font-size:12px;display:flex}.pr-observer-changes i{background-repeat:no-repeat;width:24px;height:26px;display:inline-block}.pr-observer-changes small{font-size:9px}.pr-observer-changes .pr-value{font-size:12px}.pr-observer-controls{border-top:1px solid #d8cba870;flex-wrap:wrap;align-items:center;gap:7px;padding:9px 12px;display:flex}.pr-observer-controls button,.pr-observer-controls select{color:#406452;font:inherit;background:#fff8e4;border:1px solid #b7b998;border-radius:7px;padding:6px 9px;font-size:11px}.pr-observer-controls button[aria-pressed=true]{color:#fff0c7;background:#29665c;border-color:#24594e}.pr-observer-controls label{align-items:center;gap:6px;margin-left:auto;font-size:10px;display:flex}.pr-observer-controls select{max-width:108px}.pr-observer-idle{padding:9px 13px 0;font-size:11px}.pr-observer-held{padding:0 12px 8px;font-size:10px;display:block}.pr-observer-progress{background:#c5c5a2;height:3px}.pr-observer-progress>span{transform-origin:0;background:#bd943f;width:100%;height:100%;animation:linear forwards pr-playback-progress;display:block}@keyframes pr-playback-progress{0%{transform:scaleX(var(--progress-from,0))}to{transform:scaleX(1)}}.pr-map.has-playback .pr-zoom{bottom:18px}@media (width<=760px){.pr-observer{width:calc(100% - 20px);bottom:10px;left:10px}.pr-observer-story{gap:8px;padding:12px 12px 8px}.pr-observer-art{width:46px;height:52px}.pr-world .pr-observer h3{font-size:14px}.pr-observer-copy p{font-size:11px}.pr-observer-controls{gap:5px;padding:8px}.pr-observer-controls button,.pr-observer-controls select{padding:6px;font-size:10px}.pr-observer-controls label{gap:0;font-size:0}.pr-observer-controls select{max-width:91px}.pr-map.has-playback .pr-zoom{top:54px;bottom:auto;right:12px}.pr-observer-changes small{display:none}}.pr-players>button{color:#fff3d4;background:radial-gradient(at 18% 20%,#efc8841c,#0000 50%),repeating-linear-gradient(2deg,#0000 0 7px,#32190c18 8px,#0000 9px 16px),linear-gradient(#986432,#764a2b 49%,#6d4228 51%,#895632);border:2px solid #6d4227;border-top-color:#bd8c51;border-bottom:4px solid #42271c;border-radius:9px 13px 11px 8px;box-shadow:inset 0 1px #edc58b66,inset 0 0 0 2px #30190c2e,0 4px 9px #052e3b55}.pr-players>button:before,.pr-players>button:after{content:"";pointer-events:none;background:#3c2920;border-radius:50%;width:4px;height:4px;position:absolute;top:6px;box-shadow:0 1px #e0ad6966}.pr-players>button:before{left:6px}.pr-players>button:after{right:6px}.pr-players>button.is-current{background:repeating-linear-gradient(2deg,#0000 0 7px,#32190c18 8px,#0000 9px 16px),linear-gradient(#ac7b40,#85582f 49%,#7b4e2a 51%,#9c6a37);border-color:#f4d27d #f4d27d #bc8b43;box-shadow:inset 0 1px #ffe5a9,0 0 0 2px #f4d27d30,0 5px 14px #032d3a55}.pr-players .pr-avatar{border:2px solid #fff1ca99;box-shadow:0 2px 5px #311c1370}.pr-player-name small,.pr-player-values small{color:#edd6af}.pr-player-values b{color:#ffe3a1}@media (width>=761px){.pr-world{grid-template:"header header""error error""map rail"minmax(0,1fr)"commands rail"/minmax(0,1fr) clamp(254px,22vw,320px);gap:8px 14px;height:100dvh;min-height:0;padding:10px 14px 12px;display:grid;overflow:hidden}.pr-header{grid-area:header;gap:18px;min-height:58px;margin:0}.pr-world>.pr-error{grid-area:error;margin:0}.pr-header .pr-brand{min-width:0}.pr-header .pr-tools{max-width:none}.pr-layout{grid-area:map;min-width:0;min-height:0}.pr-explore{flex-direction:column;height:100%;min-height:0;display:flex}.pr-map{flex:1 1 0;height:auto;min-height:0;max-height:none}.pr-map-nav{flex-shrink:0;padding:8px 10px 0}.pr-map-caption{top:12px;left:14px}.pr-destinations{flex-shrink:0;gap:2px;padding:4px 6px}.pr-destinations button{padding:7px 5px}.pr-live{flex-shrink:0;margin:0 10px 8px}.pr-world--playback .pr-live:not(.has-notice){display:none}.pr-next-step{flex-shrink:0;width:calc(100% - 20px);margin:0 10px 6px;padding:6px 10px;font-size:11px}.pr-next-step>span{font-size:17px}.pr-players{flex-direction:column;grid-area:players;align-self:stretch;gap:10px;min-height:0;margin:0;padding:3px 3px 6px;display:flex;overflow:visible}.pr-players>button{flex:0 90px;grid-template-rows:auto auto;grid-template-columns:30px minmax(0,1fr);gap:4px 9px;width:100%;min-width:0;min-height:0;padding:10px 12px;display:grid}.pr-players .pr-avatar{grid-row:1/3}.pr-player-name{grid-column:2;align-self:end}.pr-player-name strong{font-size:14px}.pr-player-name small{font-size:10px;line-height:1.2;display:block}.pr-player-values{text-align:left;flex-wrap:wrap;grid-column:2;align-self:start;align-items:center;gap:10px;margin:0;display:flex}.pr-player-values small{font-size:11px}.pr-player-values .pr-player-workers{flex-basis:100%;font-size:9px;line-height:1.1}.pr-commandbar{grid-area:commands;align-self:stretch;gap:18px;min-width:0;min-height:0;margin:0;padding:10px 14px}.pr-commandbar h2{font-size:18px}.pr-commandbar .pr-intro{font-size:12px;line-height:1.4}.pr-commandbar .pr-actions{grid-template-columns:repeat(auto-fit,minmax(185px,1fr));max-height:76px}.pr-commandbar .pr-action{padding:8px 10px}.pr-action-launcher{flex-direction:row;grid-area:launcher;justify-content:center;align-self:center;gap:10px;min-width:0;position:static}.pr-action-context{max-width:112px;padding:5px 8px;font-size:10px}.pr-world .pr-action-fab{flex-shrink:0;width:76px;height:76px;padding:7px}.pr-action-fab svg{width:34px;height:26px}.pr-action-fab strong{font-size:12px}}@media (width>=761px) and (width<=1100px){.pr-world{column-gap:10px;padding:8px 10px 10px}.pr-header{gap:12px}.pr-header .pr-turn{min-width:150px}.pr-header .pr-tools{gap:4px;max-width:280px}.pr-tools button{padding:6px 8px;font-size:11px}.pr-brand h1{font-size:25px}.pr-brand div>span{letter-spacing:1px;font-size:8px}.pr-players>button{column-gap:6px;padding:9px}.pr-commandbar{gap:12px}.pr-observer{width:calc(100% - 20px);bottom:10px;left:10px}.pr-observer-story{gap:8px;padding:10px 12px 6px}.pr-observer-art{width:48px;height:54px}.pr-world .pr-observer h3{font-size:14px}.pr-observer-controls{gap:5px;padding:7px}.pr-observer-controls button,.pr-observer-controls select{padding:5px 6px;font-size:10px}.pr-map.has-playback .pr-zoom{top:54px;bottom:auto;right:12px}.pr-map-caption small{max-width:245px;font-size:9px}}@media (width>=761px) and (height<=650px){.pr-header{min-height:48px}.pr-brand-mark{width:38px;height:38px}.pr-players{gap:7px}.pr-players>button{flex-basis:76px;row-gap:2px;padding:6px 10px}.pr-player-name strong{font-size:12px}.pr-player-name small{font-size:9px}.pr-player-values{gap:6px}.pr-observer-story{padding:8px 12px 4px}.pr-observer-art{width:42px;height:46px}.pr-observer-copy p{font-size:11px;line-height:1.3}.pr-observer-changes{margin-top:4px}}@media (width>=761px){.pr-player-values .pr-player-workers{flex-basis:auto}.pr-worker-caption{display:none}}@media (width<=760px){.pr-players>button{flex:0 0 224px;grid-template-columns:29px minmax(0,1fr);gap:4px 9px;min-width:224px;padding:10px 12px;display:grid}.pr-players .pr-avatar{grid-row:1/3}.pr-player-name{grid-column:2}.pr-player-name small{display:block}.pr-player-values{text-align:left;flex-wrap:wrap;grid-column:2;align-items:center;gap:5px 10px;margin:0;display:flex}.pr-player-workers{flex-basis:100%}}@media (width>=761px) and (height<=550px){.pr-player-name small{display:none}}.pr-player-rail{display:contents}.pr-player-rail .pr-observer{border:2px solid #6d4227;border-top-color:#bd8c51;border-bottom:4px solid #42271c;border-left:3px solid var(--observer-color);color:#fff3d4;background:repeating-linear-gradient(2deg,#0000 0 7px,#32190c18 8px,#0000 9px 16px),linear-gradient(#986432,#764a2b 49%,#6d4228 51%,#895632);border-radius:9px 13px 11px 8px;flex-direction:column;width:100%;min-width:0;min-height:0;max-height:100%;margin:0 0 14px;display:flex;position:relative;inset:auto;box-shadow:inset 0 1px #edc58b66,inset 0 0 0 2px #30190c2e,0 4px 9px #052e3b55}.pr-player-rail .pr-observer-story{overscroll-behavior:contain;min-height:0;padding:12px 12px 8px;display:flow-root;overflow-y:auto}.pr-player-rail .pr-observer-art{float:right;width:44px;height:48px;margin:0 0 5px 8px}.pr-player-rail .pr-observer-kicker{gap:5px;font-size:11px}.pr-player-rail .pr-observer-kicker>b{color:#ffedbf}.pr-player-rail .pr-observer-kicker>span{color:#ffe3a0;box-shadow:none;background:#4a2d1db3;border-color:#d7ab62;padding:2px 6px;font-size:9px}.pr-player-rail .pr-observer-kicker>small{color:#eed6af}.pr-world .pr-player-rail .pr-observer h3{color:#fff3d4;overflow-wrap:anywhere;margin:7px 0 4px;font-size:14px}.pr-player-rail .pr-observer-copy p{color:#f4dfbd;font-size:11px;line-height:1.4}.pr-player-rail .pr-observer-changes{gap:4px;margin-top:6px}.pr-player-rail .pr-observer-changes>span{color:#ffedbb;background:#422919b3;border-color:#ca9b5666;padding:1px 4px;font-size:11px}.pr-player-rail .pr-observer-changes i{width:22px;height:24px}.pr-player-rail .pr-observer-changes small{display:none}.pr-player-rail .pr-observer-controls{background:#41281833;border-top-color:#f1cf8833;flex-shrink:0;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px;padding:9px;display:grid}.pr-player-rail .pr-observer-controls button,.pr-player-rail .pr-observer-controls select{color:#fff0c7;background:#4f3221;border-color:#c99b6077;min-width:0;padding:6px;font-size:11px;box-shadow:inset 0 1px #e2b57322}.pr-player-rail .pr-observer-controls button[aria-pressed=true]{color:#3b2a1d;background:#d7b36b;border-color:#f1d89e}.pr-player-rail .pr-observer-controls label{margin:0;font-size:0;display:block}.pr-player-rail .pr-observer-controls select{width:100%;max-width:none}.pr-player-rail .pr-observer-controls option{color:#fff0c7;background:#4f3221}.pr-player-rail .pr-observer-idle{color:#ffedc5;padding:11px 12px 9px;font-size:11px}.pr-player-rail .pr-observer-held{color:#f8e2b6;flex-shrink:0;padding:5px 10px}.pr-player-rail .pr-observer-progress{background:#39251b;flex-shrink:0}.pr-player-rail .pr-observer-progress>span{background:#edcc7c}@media (width>=761px){.pr-player-rail{grid-area:rail;grid-template-rows:minmax(0,1fr) auto;gap:10px;min-width:0;min-height:0;display:grid}.pr-player-rail:has(.pr-observer){grid-template-rows:auto minmax(0,1fr) auto}.pr-player-rail .pr-players{grid-area:auto;gap:6px;padding:3px 3px 4px}.pr-player-rail .pr-players>button{flex:none;row-gap:2px;min-height:62px;padding:7px 12px}.pr-player-rail .pr-observer{align-self:start;margin:0}.pr-player-rail .pr-action-launcher{grid-area:auto}.pr-map.has-playback .pr-zoom{top:auto;bottom:16px}}@media (width>=761px) and (height<=750px){.pr-player-rail{gap:8px}.pr-player-rail .pr-players{gap:5px}.pr-player-rail .pr-players>button{grid-template-rows:auto;grid-template-columns:24px minmax(0,1fr) auto;column-gap:7px;min-height:44px;padding:6px 9px}.pr-player-rail .pr-avatar{grid-row:auto;width:24px;height:24px;font-size:10px}.pr-player-rail .pr-player-name{grid-column:2;align-self:center}.pr-player-rail .pr-player-name strong{font-size:12px}.pr-player-rail .pr-player-name small{display:none}.pr-player-rail .pr-player-values{flex-wrap:nowrap;grid-column:3;align-self:center;gap:6px}.pr-player-rail .pr-player-values .pr-value{font-size:11px}.pr-player-rail .pr-observer-story{padding:9px 10px 5px}.pr-world .pr-player-rail .pr-observer h3{font-size:13px}}@media (width>=761px) and (height<=650px){.pr-player-rail .pr-action-fab{width:62px;height:62px}.pr-player-rail .pr-action-fab svg{width:28px;height:22px}.pr-player-rail .pr-observer-art{width:34px;height:38px}.pr-player-rail .pr-observer-controls{gap:4px;padding:6px}.pr-player-rail .pr-observer-controls button,.pr-player-rail .pr-observer-controls select{padding:4px;font-size:10px}}@media (width>=761px) and (height<=550px){.pr-player-rail{gap:6px}.pr-player-rail .pr-players{gap:3px}.pr-player-rail .pr-players>button{min-height:34px;padding:2px 8px}.pr-player-rail .pr-action-fab{width:54px;height:54px}}.pr-stock-details .pr-goods{flex-wrap:wrap;gap:12px}.pr-stock-details .pr-goods>span{background:#e8dfc5;border-radius:12px;flex-direction:column;min-width:90px;padding:12px}.pr-stock-details .pr-goods strong{font-size:24px}.pr-stock-details .pr-goods small{font-size:12px}.pr-menu{isolation:isolate;position:relative}.pr-menu-scene{z-index:-1;pointer-events:none;background:#175e68;position:fixed;inset:0;overflow:hidden}.pr-menu-scene svg{width:100%;height:100%;display:block}.pr-menu-vignette{background:radial-gradient(at 50% 45%,#0000 40%,#062e3f65 100%);position:absolute;inset:0}.pr-menu-water{animation:9s ease-in-out infinite alternate pr-menu-tide}.pr-menu-surf{transform-box:fill-box;transform-origin:50%;animation:6s ease-in-out infinite alternate pr-menu-surf}.pr-menu-surf--late{animation-delay:-3s}.pr-menu-palm{transform-origin:0 0;animation:6.5s ease-in-out infinite alternate pr-menu-wind;animation-delay:var(--wind-delay)}.pr-menu-crown{transform-origin:8px -205px;animation:4.5s ease-in-out infinite alternate pr-menu-leaves;animation-delay:var(--wind-delay)}.pr-menu-clouds{animation:35s ease-in-out infinite alternate pr-menu-clouds}.pr-menu-sailing{animation:24s ease-in-out infinite alternate pr-menu-sail}.pr-menu-boat{transform-origin:0 25px;animation:4.5s ease-in-out infinite pr-menu-boat}.pr-menu-birds{animation:38s ease-in-out infinite alternate pr-menu-birds}.pr-menu .pr-menu-motion{z-index:3;color:#f9e4b5;cursor:pointer;background:#123f46e8;border:1px solid #f5d59c80;border-radius:20px;align-items:center;gap:7px;padding:7px 12px;font:11px Trebuchet MS,sans-serif;display:flex;position:absolute;top:14px;right:20px}.pr-menu-motion>span{font-size:20px;line-height:16px}.pr-menu button,.pr-menu .expansion-toggle{-webkit-tap-highlight-color:transparent;transition:transform .18s,box-shadow .18s,border-color .18s,background-color .18s,filter .18s}.pr-menu button:focus-visible,.pr-menu input:focus-visible,.pr-menu .expansion-toggle:focus-within{outline-offset:3px;outline:3px solid #d69728}.pr-menu button:active:not(:disabled){transform:translateY(2px)scale(.985);box-shadow:0 1px #523c2633}.pr-menu[data-menu-paused=true] *,.pr-menu[data-menu-paused=true] :before,.pr-menu[data-menu-paused=true] :after{animation-play-state:paused!important}.pr-menu[data-menu-paused=true] button,.pr-menu[data-menu-paused=true] .expansion-toggle{transform:none!important}@media (hover:hover){.pr-menu button:hover:not(:disabled),.pr-menu .expansion-toggle:hover{filter:brightness(1.055);transform:translateY(-2px);box-shadow:0 5px #543c2522,0 8px 16px #102f3424}.pr-menu button:active:not(:disabled){transform:translateY(2px)scale(.985);box-shadow:0 1px #523c2633}}.pr-menu.setup-screen{background:0 0;flex-direction:column;justify-content:flex-start;padding:32px 30px 36px}.pr-menu-brand{text-align:center;padding:0 170px 18px;animation:.5s ease-out both pr-menu-arrive;position:relative}.pr-menu-edition{color:#f5dfa4;letter-spacing:3px;font:10px Trebuchet MS,sans-serif;display:block}.pr-menu .setup-title{color:#ffe5a3;letter-spacing:1px;text-shadow:0 3px #164b4a,0 7px 20px #14392e99;margin:5px 0 7px;font:600 clamp(37px,4vw,55px)/1.15 Georgia,serif}.pr-menu-brand>p{letter-spacing:.6px;color:#d5ecdf;font:12px Trebuchet MS,sans-serif}.pr-menu .setup-card{background:linear-gradient(110deg,#ffefd5f5,#f5e5bef5 55%,#edd5a6f5);border:2px solid #d3b171;border-bottom:6px solid #795234;border-radius:18px;width:min(1180px,100%);padding:22px 32px 26px;animation:.55s ease-out 60ms both pr-menu-arrive;position:relative;box-shadow:0 0 0 5px #725030,0 0 0 7px #f0d49460,0 18px 55px #052d3d80,inset 0 0 45px #b5853433}.pr-menu .setup-card:before,.pr-menu .setup-card:after{content:"";background:radial-gradient(circle at 35% 30%,#fff0b5,#ba8e46 48%,#6f4c28 75%);border-radius:50%;width:8px;height:8px;position:absolute;top:12px;box-shadow:0 1px 2px #513a3070}.pr-menu .setup-card:before{left:12px}.pr-menu .setup-card:after{right:12px}.pr-menu-card-heading{align-items:center;gap:12px;margin-bottom:15px;display:flex}.pr-menu-card-heading>span{color:#eacc90;background:linear-gradient(140deg,#527a5c,#224e47);border:1px solid #b38745;border-radius:50%;place-items:center;width:41px;height:41px;font-size:24px;display:grid;box-shadow:inset 0 0 0 3px #ffffff14}.pr-menu-card-heading h2{color:#583b25;font:25px Georgia,serif}.pr-menu .setup-subtitle{text-align:left;color:#785635;margin:4px 0 0;font-size:11px}.pr-menu .setup-section{margin-bottom:17px}.pr-menu .setup-label{color:#795433;letter-spacing:1.6px;align-items:center;gap:12px;margin-bottom:8px;font-size:10px;display:flex}.pr-menu .setup-label:after{content:"";background:linear-gradient(90deg,#b48b4966,#0000);flex:1;height:1px}.pr-menu .pr-school-entry{color:#fff0c5;background:linear-gradient(120deg,#437862,#245a51);border:1px solid #356b58;border-bottom:4px solid #1b443b;margin-bottom:19px;padding:13px 18px 13px 24px;position:relative;box-shadow:inset 0 1px #c7e0a54d,0 3px 8px #33523c25}.pr-menu .pr-school-entry:after{content:"→";color:#e7c77e;font-size:26px;transition:transform .2s;position:absolute;top:15px;right:20px}.pr-menu .pr-school-entry:hover:after{transform:translate(4px)}.pr-menu .pr-school-entry strong{font:700 17px Georgia,serif}.pr-menu .pr-school-entry span{color:#d0e4cf;padding-right:30px;font-size:11px}.pr-menu .count-btn{color:#624b2d;background:linear-gradient(#fff7df,#e9d5a5);border:1px solid #b69a67;border-bottom-width:3px;border-radius:9px;padding:7px}.pr-menu .count-btn.active{color:#fff0c5;background:linear-gradient(#af783c,#805431);border-color:#b48748 #b48748 #553b27;box-shadow:inset 0 1px #ffe7a84d,0 2px 7px #71502e40}.pr-menu .players-list{gap:8px}.pr-menu .player-row{background:#fffae955;border:1px solid #c3a37177;border-radius:10px;padding:8px 10px}.pr-menu .player-number{color:#513b25;background:#dcb573;border:1px solid #ac8243;border-radius:50%;place-items:center;width:24px;height:24px;display:grid}.pr-menu .player-name-input{background:#fffcf0c9;border:1px solid #bba176;padding:7px 10px;box-shadow:inset 0 2px 4px #7e5a2021}.pr-menu .type-btn,.pr-menu .diff-btn{color:#725237;background:linear-gradient(#fff9e4,#edddba);border-width:1px 1px 3px;border-color:#c7ad7a;border-radius:7px}.pr-menu .type-btn.active{color:#fff1c9;background:linear-gradient(#517d65,#2c584b);border-color:#436953}.pr-menu .diff-btn[aria-pressed=true]{color:#fff3d6;box-shadow:inset 0 1px #fff3,0 2px 5px #3d352a30}.pr-menu .diff-btn--active-easy{background:linear-gradient(#ae8241,#88612f);border-color:#9c7339}.pr-menu .diff-btn--active-hard{background:linear-gradient(#4a7e89,#315c68);border-color:#3c6971}.pr-menu .diff-btn--active-ai{background:linear-gradient(#88628a,#61486f);border-color:#705276}.pr-menu .diff-btn--active-hardcore{background:linear-gradient(#b16842,#854331);border-color:#ad6b43}.pr-menu .diff-btn--active-neural{background:linear-gradient(#457f69,#285a4d);border-color:#376a55}.pr-menu .diff-help-btn{color:#77552f;background:#e6d0a2;border-color:#aa884f;box-shadow:inset 0 1px #fff5cf}.pr-menu .expansion-list{grid-template-columns:1fr 1fr;gap:8px;display:grid}.pr-menu .expansion-toggle{background:#fff8e4a8;border:1px solid #bfa06c;border-bottom:3px solid #c5a574;border-radius:9px;grid-template-columns:18px 1fr;gap:3px 10px;padding:10px 12px;display:grid}.pr-menu .expansion-toggle input{accent-color:#366653;grid-row:1/3}.pr-menu .expansion-toggle__name{font-size:12px}.pr-menu .expansion-toggle__desc{grid-column:2;font-size:10px;line-height:1.45}.pr-menu .expansion-toggle:has(input:checked){background:#dce6ba;border-color:#648c5e;box-shadow:inset 3px 0 #507a53}.pr-menu .start-btn{border:1px solid #e8c476;border-bottom:5px solid #9b662e;margin-top:0;padding:14px 42px;font:700 20px Georgia,serif;animation:5s ease-in-out infinite pr-menu-lantern;position:relative;overflow:hidden;box-shadow:inset 0 1px #fff3bb,0 4px 10px #9e6e393b;color:#50371e!important;background:linear-gradient(#eac176,#d49b49)!important;border-color:#e8c476 #e8c476 #9b662e!important}.pr-menu .start-btn:after{content:"";pointer-events:none;background:linear-gradient(105deg,#0000 42%,#fff4c766 49%,#0000 56%);animation:8s ease-in-out infinite pr-menu-glint;position:absolute;inset:-80% -50%;transform:translate(-80%)}.pr-menu .load-btn,.pr-menu .multiplayer-btn{color:#5b4930;background:#f4e6c5;border:1px solid #bb9d6e;margin-top:10px;box-shadow:0 2px #b99a6633}.pr-menu .diff-help{background:linear-gradient(140deg,#fff4db,#f1deb5);border-color:#c0934d;box-shadow:0 12px 55px #092f3d90}.pr-menu .diff-help::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#082e40aa}.pr-menu.pr-school{background:0 0;padding-top:64px}.pr-menu.pr-school .pr-menu-vignette{background:#0836437a}.pr-menu.pr-school .pr-school-heading{background:#103e48bf;border-left:3px solid #e9c77f;border-radius:0 12px 12px 0;padding:22px 25px;box-shadow:0 8px 30px #062a3733}.pr-menu.pr-school .pr-school-start,.pr-menu.pr-school .pr-school-practice{background:#103e48e6;box-shadow:0 6px 24px #072f3838,inset 0 1px #eddba424}.pr-menu.pr-school .pr-school-lessons>button{background:repeating-linear-gradient(0deg,#ffffff03 0 2px,#0000 2px 6px),linear-gradient(140deg,#a47a47,#735033);border:1px solid #d2ab69;border-bottom:4px solid #4b3426;position:relative;box-shadow:inset 0 1px #ffe8ac44,0 5px 10px #082f4245}.pr-menu.pr-school .pr-school-group>h2{text-shadow:0 2px 7px #052a38}.pr-menu.pr-school .pr-school-number{background:linear-gradient(#fbe2a4,#d4ac64);border:1px solid #f7db9b;box-shadow:0 2px 3px #372a2244}.pr-menu.pr-school .pr-school-primary{color:#503821;background:linear-gradient(#efd18f,#d9ac60);border-bottom:3px solid #996c36}.pr-menu.pr-school button:not(.pr-menu-motion):focus-visible{outline-color:#ffe59a}@keyframes pr-menu-tide{0%{transform:translate(-12px,-3px)}to{transform:translate(24px,7px)}}@keyframes pr-menu-surf{0%{opacity:.19;transform:scale(.98)}to{opacity:.4;transform:scale(1.04)}}@keyframes pr-menu-wind{0%{transform:rotate(-2deg)}to{transform:rotate(2deg)}}@keyframes pr-menu-leaves{0%{transform:rotate(-2deg)scaleX(.99)}to{transform:rotate(2.5deg)scaleX(1.015)}}@keyframes pr-menu-clouds{0%{transform:translate(-40px)}to{transform:translate(65px)}}@keyframes pr-menu-sail{0%{transform:translate(-35px)}to{transform:translate(65px)}}@keyframes pr-menu-boat{0%,to{transform:translateY(-2px)rotate(-2deg)}50%{transform:translateY(4px)rotate(2deg)}}@keyframes pr-menu-birds{0%{transform:translate(-110px)}to{transform:translate(210px,-30px)}}@keyframes pr-menu-arrive{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}@keyframes pr-menu-lantern{0%,to{box-shadow:inset 0 1px #fff3bb,0 4px 10px #9e6e393b}50%{box-shadow:inset 0 1px #fff3bb,0 4px 18px #c69a6566}}@keyframes pr-menu-glint{0%,65%{transform:translate(-80%)}90%,to{transform:translate(80%)}}@media (width<=1149px){.pr-menu .setup-card{padding-inline:24px}.pr-menu .diff-toggle{padding-left:32px}}@media (width<=760px){.pr-menu.setup-screen{padding:46px 15px 24px}.pr-menu-brand{padding:4px 0 23px}.pr-menu .setup-title{font-size:42px}.pr-menu .setup-card{border-radius:13px;padding:19px 17px 23px}.pr-menu-card-heading h2{font-size:23px}.pr-menu .pr-menu-motion{padding:5px 10px;font-size:10px;top:10px;right:14px}.pr-menu .expansion-list{grid-template-columns:1fr}.pr-menu .pr-school-entry{padding-left:16px}.pr-menu .pr-school-entry strong{font-size:17px}.pr-menu .pr-school-entry span{max-width:260px;font-size:10px}.pr-menu.pr-school{padding-top:49px}.pr-menu.pr-school .pr-school-heading{padding:18px}.pr-menu .player-row{gap:8px 6px;padding:9px 8px}.pr-menu .diff-toggle{gap:8px 5px;padding-left:0}}@media (prefers-reduced-motion:reduce){.pr-menu *,.pr-menu :after{transition-duration:0s!important}.pr-menu .setup-card,.pr-menu .pr-menu-brand{animation:none}}.pr-menu[data-menu-paused=true] .setup-card,.pr-menu[data-menu-paused=true] .pr-menu-brand{animation:none}.pr-menu-scene .pr-menu-mobile-palm{display:none}.pr-menu .pr-menu-intro{grid-template-columns:1fr 1.2fr;align-items:center;gap:24px;margin-bottom:20px;display:grid}.pr-menu .pr-menu-intro .pr-menu-card-heading,.pr-menu .pr-menu-intro .pr-school-entry{margin:0}.pr-menu .setup-section--count{align-items:center;gap:20px;display:flex}.pr-menu .setup-section--count .setup-label{flex:0 0 150px;margin:0}.pr-menu .setup-section--count .player-count-buttons{flex:1}.pr-menu .pr-menu-submit{flex-wrap:wrap;align-items:stretch;gap:12px;display:flex}.pr-menu .pr-menu-submit .start-btn{flex:280px;width:auto}.pr-menu .pr-menu-submit .load-btn{flex:0 230px;justify-content:center;width:auto;margin:0}.pr-menu .pr-menu-submit .multiplayer-btn{flex:0 0 100%}@media (width>=1150px) and (height<=850px){.pr-menu.setup-screen{padding-top:16px;padding-bottom:16px}.pr-menu .setup-title{font-size:43px}.pr-menu-brand{padding-bottom:12px}.pr-menu .setup-card{padding-top:19px;padding-bottom:21px}.pr-menu .pr-menu-intro{margin-bottom:16px}.pr-menu .player-row{padding-block:6px}.pr-menu .setup-section{margin-bottom:14px}}@media (width<=760px){.pr-menu .pr-menu-intro{flex-direction:column;align-items:stretch;gap:17px;display:flex}.pr-menu .setup-section--count{display:block}.pr-menu .setup-section--count .setup-label{margin-bottom:8px}.pr-menu .pr-menu-submit .load-btn{flex-basis:100%}.pr-menu-scene .pr-menu-mobile-palm{opacity:.6;width:290px;height:332px;display:block;position:absolute;top:30px;left:-115px}}.pr-school-entry{color:#4e3820;cursor:pointer;background:linear-gradient(135deg,#e5c484,#fff0c6);border:1px solid #a98346;border-radius:12px;flex-direction:column;align-items:flex-start;gap:5px;width:100%;margin:0 0 24px;padding:17px 20px;display:flex}.pr-school-entry strong{font-size:18px}.pr-school-entry span{font-size:12px}.pr-school{color:#fff1ce;background:radial-gradient(at 25% 20%,#287c76,#143f47);min-height:100dvh;padding:clamp(20px,4vw,60px);font-family:Trebuchet MS,sans-serif}.pr-school button{font:inherit;cursor:pointer;color:#fff0cd;background:#66432c;border:1px solid #cda260;border-radius:9px;padding:11px 16px}.pr-school button:focus-visible,.pr-tutor-panel button:focus-visible{outline-offset:3px;outline:3px solid #ffdf81}.pr-school-heading{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:28px;display:flex}.pr-school-heading span{letter-spacing:2px;color:#efd18e;font-size:10px}.pr-school h1{margin:8px 0 12px;font:clamp(28px,4vw,42px) Georgia,serif}.pr-school p{max-width:740px;font-size:14px;line-height:1.6}.pr-school h2{margin:0 0 9px;font:24px Georgia,serif}.pr-school-start,.pr-school-practice{background:#123f4280;border:1px solid #cea76288;border-radius:14px;justify-content:space-between;align-items:center;gap:24px;padding:24px;display:flex}.pr-school-start>div:last-child{flex-wrap:wrap;gap:10px;display:flex}.pr-school-start small{color:#c9ded0;margin-top:8px;font-size:12px;display:block}.pr-school-group{margin:30px 0}.pr-school-lessons{grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:12px;display:grid}.pr-school-lessons>button{text-align:left;background:linear-gradient(170deg,#916438,#69452c);align-items:flex-start;gap:14px;padding:18px;display:flex;box-shadow:0 4px #38271d55}.pr-school-lessons>button:hover{background:#946a3e;border-color:#ffe3a0}.pr-school-number{color:#503b24;background:#eed394;border-radius:50%;flex-shrink:0;place-items:center;width:30px;height:30px;font-size:13px;font-weight:700;display:grid}.pr-school-lessons strong{font-size:15px;display:block}.pr-school-lessons small{color:#f4dfbe;margin:7px 0;font-size:12px;line-height:1.5;display:block}.pr-school-lessons em{color:#e8c785;font-size:10px;font-style:normal}.pr-school .pr-school-primary,.pr-world .pr-school-primary{color:#403221;background:#ebce8c;border-color:#ffe2a3;font-weight:700}.pr-tutor-panel{color:#fff0ce;background:linear-gradient(150deg,#956637,#68442d);border:2px solid #ba8d4f;border-bottom:4px solid #432c20;border-radius:10px;flex-direction:column;align-self:start;min-height:0;max-height:100%;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #f0d09155,0 5px 12px #092f3955}.pr-tutor-scroll{overscroll-behavior:contain;min-height:0;padding:14px;overflow:auto}.pr-tutor-eyebrow{letter-spacing:1px;color:#f4d490;font-size:9px;font-weight:700}.pr-world .pr-tutor-panel h2,.pr-world .pr-coach-panel h2{color:#fff2cb;margin:8px 0;font-family:Trebuchet MS,sans-serif;font-size:17px;line-height:1.3}.pr-tutor-panel p,.pr-coach-panel p{margin:7px 0;font-size:12px;line-height:1.55}.pr-tutor-controls{background:#3c281d44;border-top:1px solid #e6bc7044;flex-wrap:wrap;flex-shrink:0;gap:6px;padding:10px;display:flex}.pr-tutor-panel button,.pr-coach-panel button{color:#fff0c9;background:#4e3526;border:1px solid #c39a6188;border-radius:7px;padding:7px 9px;font-size:11px}.pr-tutor-hint,.pr-tutor-note{background:#3c2b2155;border-left:2px solid #edcc83;padding:8px}.pr-tutor-success,.pr-tutor-checklist{color:#ffe5a1;font-weight:700}.pr-tutor-answers{gap:8px;margin-top:12px;display:grid}.pr-tutor-legend{color:#ffe1a0;margin:6px 0 10px;font-size:10px;line-height:1.5;display:block}.pr-tutor-legend>span{color:#f8d578}.pr-tutor-flow{margin:12px 0;padding-left:23px;font-size:12px}.pr-tutor-flow li{padding:4px 0 8px 4px}.pr-tutor-flow li::marker{color:#ffe2a1;font-weight:700}.pr-tutor-flow li+li{border-top:1px solid #e6bc7044}.pr-tutor-comparison table{border-collapse:collapse;width:100%;margin:12px 0;font-size:11px}.pr-tutor-comparison caption{color:#ffe1a0;text-align:left;margin-bottom:8px}.pr-tutor-comparison th,.pr-tutor-comparison td{text-align:left;border-bottom:1px solid #e6bc7044;padding:8px 4px}.pr-tutor-comparison .pr-value{white-space:nowrap}.pr-tutor-comparison tbody tr:last-child{background:#244e3f66}.pr-tutor-score small{color:#ecd6b1;font-size:10px;display:block}.pr-lesson-callout{color:#624720;background:#ffedb9;border:1px solid #d1aa57;border-radius:10px;margin-bottom:16px;padding:12px 15px;font-size:12px;line-height:1.5}.pr-lesson-callout strong{font-size:14px}.pr-lesson-callout p{margin:5px 0}.pr-lesson-callout button{color:#fff0c6;background:#32685c;border:1px solid #285747;margin-top:5px;padding:7px 12px}.pr-world .is-tutorial-target,.pr-world--tutorial.is-guided .pr-role.is-playable{outline-offset:2px;outline:3px solid #ffe393;box-shadow:0 0 22px #ffd97970}.pr-coach-stack{flex-direction:column;align-self:start;gap:8px;min-height:0;max-height:100%;display:flex}.pr-coach-panel{color:#ffefc9;background:linear-gradient(135deg,#8d6237,#65432d);border:2px solid #bb9259;border-radius:10px;min-height:0;padding:12px;overflow:auto}.pr-coach-panel small{color:#ead3a9;margin-top:7px;font-size:9px;display:block}.pr-player-rail .pr-coach-stack .pr-observer{flex-shrink:0}@media (width>=761px){:is(.pr-player-rail:has(.pr-tutor-panel),.pr-player-rail:has(.pr-coach-stack)){grid-template-rows:auto minmax(0,1fr) auto}}@media (width<=760px){.pr-school{padding:20px 14px}.pr-school-heading,.pr-school-start,.pr-school-practice{flex-direction:column;align-items:stretch}.pr-school-lessons{grid-template-columns:1fr}.pr-tutor-panel,.pr-coach-stack{max-height:460px;margin-bottom:14px}.pr-tutor-scroll{padding:13px}.pr-tutor-panel p{font-size:13px}}
