/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.\!transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events!important;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function))!important;transition-duration:var(--tw-duration,var(--default-transition-duration))!important}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--ink:#2f2a22;--ink-soft:#6d6457;--muted:#9c9282;--paper:#f7f1e5;--paper-raised:#fffaf0;--sand:#ded1b9;--line:#cbbda3;--line-soft:#e4dac8;--wood-ui:#4d4133;--wood-ui-dark:#372e24;--ocean:#78b9d0;--ocean-dark:#5597b0;--accent:#cc7b24;--success:#4f8a57;--player-1:#168de2;--player-2:#ef821f;--player-3:#20bb3f;--player-4:#ed2424;--wood:#477854;--brick:#ad5748;--sheep:#8ebf69;--wheat:#d7ad4d;--ore:#7b8790;--desert:#c9a970;--chrome:#24292d;--chrome-raised:#2d3338;--chrome-line:#454c51;--panel:#f6f7f6;--panel-raised:#fbfcfb;--panel-line:#d9dddf;--panel-ink:#202629;--panel-muted:#687177;--replay-accent:#327e9c;--font-sans:var(--font-geist-sans);--font-mono:var(--font-geist-mono)}*{box-sizing:border-box}html,body{min-width:320px;min-height:100%;margin:0}body{background:var(--wood-ui-dark);color:var(--ink);font-family:var(--font-sans), Arial, Helvetica, sans-serif;text-rendering:optimizelegibility;font-size:14px;line-height:1.4;overflow:hidden}button,input,select{font:inherit}button,select{color:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #fff}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.replay-app{background:var(--panel);grid-template-rows:46px minmax(0,1fr);width:100%;height:100dvh;display:grid;overflow:hidden}.topbar{z-index:20;background:var(--chrome);color:#f5f7f7;border-bottom:1px solid #111518;grid-template-columns:minmax(190px,1fr) auto minmax(190px,1fr);align-items:center;gap:16px;padding:0 14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:grid}.brand,.topbar-actions,.game-title{align-items:center;display:flex}.brand{gap:10px}.brand-mark{color:#fff;clip-path:polygon(25% 4%,75% 4%,100% 50%,75% 96%,25% 96%,0 50%);background:#d88c30;place-items:center;width:27px;height:27px;font-size:9px;font-weight:800;display:grid}.brand strong{letter-spacing:-.025em;font-size:14px;font-weight:720}.brand>span{color:#aeb6bb;border-left:1px solid #51585d;padding-left:10px;font-size:10px;font-weight:500}.game-title{justify-items:center;min-width:0;line-height:1.15;display:grid}.game-title strong{text-overflow:ellipsis;white-space:nowrap;max-width:390px;font-size:11px;font-weight:650;overflow:hidden}.game-title span{color:#9fa8ad;text-overflow:ellipsis;white-space:nowrap;max-width:470px;margin-top:3px;font-size:8px;overflow:hidden}.topbar-actions{justify-content:flex-end;gap:14px}.verified{color:#c5d8ca;align-items:center;gap:5px;font-size:9px;display:flex}.perspective-label{color:#aeb6bb;font-size:9px}.verified i{background:#72b27b;border-radius:50%;width:6px;height:6px}.topbar-actions button{color:#dce1e3;background:0 0;border:0;border-left:1px solid #51585d;padding:2px 0 2px 13px;font-size:9px}.topbar-actions button:hover{color:#fff;text-underline-offset:3px;text-decoration:underline}.game-layout{grid-template-columns:minmax(0,1fr) 360px;min-height:0;display:grid;overflow:hidden}.board-column{border-right:1px solid #aeb7bb;grid-template-rows:minmax(0,1fr) 108px;min-width:0;min-height:0;display:grid}.board-stage{background-color:#69b4d0;background-image:radial-gradient(at 50% 45%,#ffffff1a,#0000 56%),linear-gradient(#72bbd4 0%,#5faac7 100%);background-position:0 0;background-repeat:repeat;background-size:auto;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;place-items:center;min-width:0;min-height:0;display:grid;position:relative;overflow:hidden}.board-stage:after{content:"";pointer-events:none;border:8px solid #372e2421;position:absolute;inset:0}.turn-pill,.current-action{z-index:5;background:#fffaf0f0;border:1px solid #463e3047;border-radius:4px;position:absolute;box-shadow:0 2px 6px #2b3b412e}.turn-pill{align-items:center;gap:9px;padding:5px 7px 5px 9px;display:flex;top:12px;left:50%;transform:translate(-50%)}.turn-copy{align-items:baseline;gap:7px;display:flex}.turn-copy>span{font-size:11px;font-weight:700}.turn-copy>strong{color:var(--ink-soft);text-transform:uppercase;font-size:9px;font-weight:500}.dice-roll{align-items:center;gap:3px;display:flex}.dice-roll img{filter:drop-shadow(0 1px 1px #2f271e47);width:23px;height:23px;display:block}.catan-board{z-index:1;aspect-ratio:480/440;filter:drop-shadow(0 7px 10px #26383c3d);width:min(86%,760px);height:auto;max-height:78%;position:relative;overflow:visible}.board-caption{z-index:6;max-width:min(420px,46%);color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;background:#fffaf0f0;border:1px solid #463e3047;border-radius:4px;padding:5px 9px;font-size:10px;position:absolute;bottom:10px;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 2px 6px #2b3b412e}.hex-art,.hex-foreground,.number-token,.piece-art,.port image,.robber image{pointer-events:none}.hex-art{transition:filter .16s}.hex-foreground{filter:drop-shadow(0 1px #2932201f)}.hex.is-producing .hex-art{filter:brightness(1.18)saturate(1.08)drop-shadow(0 0 7px #fff4a9f2)}.number-token{filter:drop-shadow(0 1px 1.5px #1d2e3361)}.roads .piece-art,.building .piece-art,.robber image{filter:url(#piece-shadow)}.roads .is-new .piece-art,.building.is-new .piece-art,.robber.is-new image{filter:drop-shadow(0 0 5px #fff8b3)drop-shadow(0 2px 2px #1f282a73)}.building.is-new,.robber.is-new{animation:.7s ease-out piece-pulse}.port-pier{filter:drop-shadow(0 1px 1px #2a363757)}.port-boat{filter:drop-shadow(0 2px 2px #1f32375c)}@keyframes piece-pulse{0%{opacity:.25}65%{opacity:1}to{opacity:1}}.playback{z-index:50;background:var(--chrome);color:#d8dde0;border-top:1px solid #121619;grid-template-rows:29px 20px 32px;grid-template-columns:auto minmax(120px,1fr) auto;align-items:center;gap:5px 16px;min-width:0;padding:6px 13px 7px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:grid;position:relative;overflow:visible}.transport{grid-area:3/1;align-items:center;gap:2px;display:flex}.transport button{color:#b9c1c5;background:0 0;border:0;border-radius:3px;place-items:center;width:29px;height:29px;padding:0;display:grid}.transport button:hover{color:#fff;background:#ffffff12}.transport .play-button{color:#20262a;background:#f3f5f5;border-radius:50%;width:32px;height:32px;margin:0 3px}.transport .play-button:hover{color:#111619;background:#fff}.timeline-wrap{grid-area:2/1/auto/-1;height:20px;position:relative}.turn-beat-strip{border-bottom:1px solid #ffffff17;grid-area:1/1/auto/-1;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;min-width:0;display:grid}.turn-beat-count{white-space:nowrap;align-items:baseline;gap:7px;display:flex}.turn-beat-count strong{color:#f0f2f3;font-size:9px;font-weight:700}.turn-beat-count small{color:#8f999e;font-size:7px}.turn-beat-list{overscroll-behavior-x:contain;scrollbar-width:none;align-items:center;gap:1px;min-width:0;height:28px;display:flex;overflow-x:auto}.turn-beat-list::-webkit-scrollbar{display:none}.turn-beat-list button{color:#8f999e;white-space:nowrap;background:0 0;border:0;border-radius:2px;flex:none;align-items:center;gap:5px;height:23px;padding:0 7px;font-size:8px;display:flex}.turn-beat-list button i{background:#687278;border-radius:50%;width:4px;height:4px}.turn-beat-list button:hover{color:#e5e9ea;background:#ffffff0f}.turn-beat-list button.is-active{color:#fff;background:#3a4247}.turn-beat-list button.is-active i{background:#efb64c;box-shadow:0 0 0 2px #efb64c2e}.timeline{appearance:none;cursor:pointer;background:0 0;width:100%;height:20px;margin:0}.timeline::-webkit-slider-runnable-track{background:linear-gradient(90deg, #eef1f2 0, #eef1f2 var(--progress), #596167 var(--progress), #596167 100%);height:3px}.timeline::-moz-range-track{background:#596167;height:3px}.timeline::-moz-range-progress{background:#eef1f2;height:3px}.timeline::-webkit-slider-thumb{border:2px solid var(--chrome);appearance:none;background:#fff;border-radius:50%;width:11px;height:11px;margin-top:-4px;box-shadow:0 0 0 1px #fff}.timeline::-moz-range-thumb{border:2px solid var(--chrome);background:#fff;border-radius:50%;width:9px;height:9px}.timeline-markers{pointer-events:none;height:10px;position:absolute;top:5px;left:5px;right:5px}.timeline-markers button{pointer-events:auto;background:#d69a3c;border:0;border-radius:0;width:4px;height:9px;padding:0;position:absolute;transform:translate(-50%)}.timeline-markers button:hover,.timeline-markers button.is-selected{background:#ffc35f;width:6px}.playback-meta{color:#949da2;white-space:nowrap;grid-area:3/3;align-items:center;gap:9px;font-size:9px;display:flex}.playback-meta strong{color:#e4e8ea;font-size:10px;font-weight:600}.playback-meta select{background:var(--chrome-raised);color:#e5e9ea;border:1px solid #4d555a;border-radius:3px;height:26px;padding:0 5px;font-size:9px}.right-sidebar{background:var(--panel);grid-template-rows:minmax(0,1fr);min-width:0;min-height:0;display:grid}.activity-panel{min-height:0;color:var(--panel-ink);grid-template-rows:44px 39px minmax(0,1fr);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:grid;overflow:hidden}.activity-tabs{border-bottom:1px solid var(--panel-line);background:var(--panel-raised);grid-template-columns:1fr 1fr;display:grid}.activity-tabs button{color:var(--panel-muted);background:0 0;border:0;font-size:10px;font-weight:560;position:relative}.activity-tabs button:hover{color:var(--panel-ink)}.activity-tabs button[aria-selected=true]{color:var(--panel-ink);font-weight:700}.activity-tabs button[aria-selected=true]:after{background:var(--panel-ink);content:"";height:2px;position:absolute;bottom:-1px;left:18px;right:18px}.activity-tabs button span{color:#929a9f;font-family:var(--font-mono), monospace;margin-left:4px;font-size:8px}.log-toolbar{border-bottom:1px solid var(--panel-line);background:var(--panel);justify-content:space-between;align-items:center;padding:0 12px;display:flex}.log-toolbar>strong{font-size:10px;font-weight:650}.filter-switch{align-self:stretch;gap:13px;display:flex}.filter-switch button{color:var(--panel-muted);background:0 0;border:0;padding:0;font-size:9px;position:relative}.filter-switch button[aria-pressed=true]{color:var(--panel-ink);font-weight:700}.filter-switch button[aria-pressed=true]:after{background:var(--replay-accent);content:"";height:2px;position:absolute;bottom:0;left:0;right:0}.game-log{overscroll-behavior:contain;scrollbar-color:#b7bdc0 transparent;scrollbar-width:thin;background:var(--panel-raised);min-height:0;padding:4px 0 16px;overflow-y:auto}.turn-divider{color:#8c9499;font-family:var(--font-mono), monospace;align-items:center;gap:8px;margin:10px 12px 5px;font-size:8px;font-weight:600;display:flex}.turn-divider:after{content:"";background:#e1e4e5;flex:1;height:1px}.log-entry{width:100%;color:var(--panel-muted);text-align:left;border:0;border-bottom:1px solid #edf0f0}.log-entry:hover{color:var(--panel-ink);background:#f1f4f4}.log-entry.is-future{opacity:.5}.log-entry.is-current{opacity:1}.log-entry.is-chat{border-left:2px solid var(--event-color);background:0 0;gap:3px;margin:0;padding:8px 12px 9px 14px;display:grid}.log-entry.is-chat:hover{background:#f1f4f4}.log-entry.is-chat.is-current{border-left-color:var(--event-color);background:#eaf2f5}.chat-author{color:var(--event-color)}@supports (color:color-mix(in lab, red, red)){.chat-author{color:color-mix(in srgb, var(--event-color) 68%, #202629)}}.chat-author{font-size:9px;font-weight:750}.chat-copy{color:#4d565b;font-size:10px;line-height:1.42}.log-entry.is-action{background:0 0;grid-template-columns:2px minmax(0,1fr);align-items:flex-start;gap:9px;padding:6px 12px;font-size:10px;display:grid}.log-entry.is-action.is-current{color:var(--panel-ink);background:#eaf2f5}.action-mark{background:var(--event-color);width:2px;height:13px;margin-top:1px}.highlights-pane{grid-row:2/4;grid-template-rows:39px minmax(0,1fr);min-height:0;display:grid}.highlight-toolbar{border-bottom:1px solid var(--panel-line);background:var(--panel);justify-content:space-between;align-items:center;padding:0 12px;display:flex}.highlight-toolbar strong{font-size:10px;font-weight:650}.highlight-toolbar span{color:var(--panel-muted);font-size:8px}.highlight-list{background:var(--panel-raised);scrollbar-color:#b7bdc0 transparent;scrollbar-width:thin;min-height:0;padding:0 0 16px;overflow-y:auto}.highlight-list>button{width:100%;color:var(--panel-ink);text-align:left;background:0 0;border-top:0;border-bottom:1px solid #e4e7e8;border-left:3px solid #0000;border-right:0;grid-template-columns:26px minmax(0,1fr);gap:10px;padding:13px 13px 13px 11px;display:grid}.highlight-list>button:hover{background:#f1f4f4}.highlight-list>button.is-selected{border-left-color:var(--replay-accent);background:#eaf2f5}.highlight-number{color:#9ba2a6;font-family:var(--font-mono), monospace;padding-top:1px;font-size:9px;font-weight:600}.highlight-list>button.is-selected .highlight-number{color:var(--replay-accent)}.highlight-copy{display:block}.highlight-meta{color:#778187;margin-bottom:3px;font-size:8px;font-weight:600;display:block}.highlight-list strong{font-size:11px;font-weight:680;line-height:1.3;display:block}.highlight-list p,.highlight-list em{color:#60696e;margin:4px 0 0;font-size:10px;font-style:normal;line-height:1.42;display:block}.highlight-list em{color:#385d6c;border-top:1px solid #cfdadd;margin-top:9px;padding-top:8px}.board-players{z-index:5;pointer-events:none;position:absolute;inset:clamp(12px,15vh,220px) 0}.player-corner{pointer-events:auto;width:clamp(200px,17vw,224px);position:absolute}.player-corner-1{top:12px;left:12px}.player-corner-2{top:12px;right:12px}.player-corner-3{bottom:12px;left:12px}.player-corner-4{bottom:12px;right:12px}.speech-bubble{width:calc(100% - 8px);color:var(--ink-soft);background:#fffdf7;border:1px solid #473b2d47;border-radius:12px;gap:2px;margin:0 0 8px 4px;padding:8px 10px 9px;display:grid;position:relative;box-shadow:0 2px #493b2b1f,0 5px 14px #2a383b24}.speech-bubble:after{content:"";background:#fffdf7;border-bottom:1px solid #473b2d4d;border-right:1px solid #473b2d4d;width:12px;height:12px;position:absolute;bottom:-7px;left:25px;transform:rotate(45deg)}.player-corner-2 .speech-bubble,.player-corner-4 .speech-bubble{margin-left:auto;margin-right:4px}.player-corner-2 .speech-bubble:after,.player-corner-4 .speech-bubble:after{left:auto;right:25px}.speech-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.speech-bubble strong{color:var(--player-color);letter-spacing:.07em;text-transform:uppercase;font-size:8px}.speech-bubble small{color:#9a8e7e;letter-spacing:.03em;text-transform:uppercase;font-size:7px;font-weight:700}.speech-message{color:#514a40;-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:9px;line-height:1.35;display:-webkit-box;overflow:hidden}.speech-bubble.is-expanded .speech-message{-webkit-line-clamp:unset;display:block;overflow:visible}.speech-toggle{color:var(--player-color);background:0 0;border:0;grid-row:3;justify-self:end;margin-top:1px;padding:0}@supports (color:color-mix(in lab, red, red)){.speech-toggle{color:color-mix(in srgb, var(--player-color) 78%, #44382c)}}.speech-toggle{cursor:pointer;letter-spacing:.02em;text-decoration:underline;-webkit-text-decoration-color:var(--player-color);-webkit-text-decoration-color:var(--player-color);-webkit-text-decoration-color:var(--player-color);text-decoration-color:var(--player-color);font-size:7px;font-weight:800;line-height:1.2}@supports (color:color-mix(in lab, red, red)){.speech-toggle{-webkit-text-decoration-color:color-mix(in srgb, var(--player-color) 35%, transparent);-webkit-text-decoration-color:color-mix(in srgb, var(--player-color) 35%, transparent);-webkit-text-decoration-color:color-mix(in srgb, var(--player-color) 35%, transparent);text-decoration-color:color-mix(in srgb, var(--player-color) 35%, transparent)}}.speech-toggle{text-underline-offset:2px}.speech-toggle:hover{color:var(--player-color)}.player-panel{border:2px solid #fff9ebf0;border-top-color:var(--player-color);background:#fffaf0;border-radius:12px;position:relative;overflow:hidden;box-shadow:0 2px #44372961,0 7px 18px #25343738}.player-corner.is-active .player-panel{box-shadow:0 0 0 3px var(--player-color), 0 2px 0 #44372961, 0 8px 20px #25343747}@supports (color:color-mix(in lab, red, red)){.player-corner.is-active .player-panel{box-shadow:0 0 0 3px color-mix(in srgb, var(--player-color) 62%, white), 0 2px 0 #44372961, 0 8px 20px #25343747}}.player-corner.is-winner .player-panel{background:#fff1c8}.player-heading{border-bottom:1px solid var(--line-soft);background:#fffdf7;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:8px;min-width:0;min-height:58px;padding:3px 8px 4px 5px;display:grid}.player-crest{width:58px;height:51px;position:relative}.crest-card{z-index:1;color:#ffffffe6;border:1px solid #ffffffbf;border-radius:4px;place-items:start center;width:20px;height:29px;padding-top:3px;font-size:7px;font-weight:900;line-height:1;display:grid;position:absolute;top:4px;box-shadow:0 0 0 1px #3a2f2352,0 2px 3px #342a1f38}.crest-card-left{transform-origin:bottom;background:#3287bf;left:5px;transform:rotate(-14deg)}.crest-card-center{background:#7556a2;top:1px;left:19px}.crest-card-right{transform-origin:bottom;background:#5aa14d;right:5px;transform:rotate(14deg)}.player-avatar{z-index:2;background:var(--player-color);width:38px;height:38px;box-shadow:0 0 0 2px var(--player-color), 0 2px 4px #372d2140;border:3px solid #fffaf0;border-radius:50%;place-items:center;display:grid;position:absolute;top:5px;left:50%;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.player-avatar{box-shadow:0 0 0 2px color-mix(in srgb, var(--player-color) 70%, #413526), 0 2px 4px #372d2140}}.player-avatar{transform:translate(-50%)}.player-avatar img{object-fit:contain;width:31px;height:31px;display:block}.player-identity{min-width:0}.player-identity strong,.player-identity span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.player-identity strong{color:#342f28;letter-spacing:-.01em;font-size:11px}.player-identity span{color:var(--ink-soft);text-transform:capitalize;font-size:6.5px}.player-vp{z-index:4;text-align:center;background:#fff8e8;border:1px solid #6d6253;border-radius:3px;grid-template-columns:auto auto;place-content:center;align-items:baseline;gap:2px;width:41px;height:16px;display:grid;position:absolute;bottom:0;left:50%;transform:translate(-50%);box-shadow:inset 0 1px #ffffffbf,0 1px 2px #3e31223d}.player-vp:before,.player-vp:after{z-index:-1;content:"";background:#e9dcc4;border:1px solid #827561;width:9px;height:12px;position:absolute;top:2px}.player-vp:before{clip-path:polygon(0 0,100% 12%,100% 88%,0 100%,32% 50%);right:calc(100% - 2px)}.player-vp:after{clip-path:polygon(100% 0,0 12%,0 88%,100% 100%,68% 50%);left:calc(100% - 2px)}.player-vp strong{color:#3c3429;font-size:10px;line-height:1}.player-vp small{color:#7a6748;letter-spacing:.06em;font-size:5px;font-weight:800;line-height:1}.player-hand-tray{background:#eadfc9;border-bottom:1px solid #d6c8af;grid-template-columns:minmax(0,1fr) 38px;gap:6px;padding:5px 7px 6px;display:grid;box-shadow:inset 0 1px 2px #4d3e2b17}.hand-group,.development-group{min-width:0}.development-group{border-left:1px solid #cdbd9f;padding-left:6px}.tray-heading{color:#786b58;letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:5px;min-height:12px;font-size:6px;font-weight:800;line-height:1;display:flex}.tray-heading b{color:#534838;background:#4d41331f;border-radius:7px;place-items:center;min-width:13px;height:12px;font-size:7px;display:grid}.resource-hand,.development-hand{align-items:flex-end;height:36px;padding-top:2px;display:flex}.resource-hand{padding-left:1px}.hand-card{transform-origin:bottom;border:1px solid #fff8e9bf;border-radius:4px;flex:none;width:27px;height:36px;display:block;position:relative;overflow:hidden;box-shadow:0 1px #3c312547,0 2px 4px #31281e33}.hand-card+.hand-card{margin-left:-2px}.hand-card:first-child{transform:rotate(-4deg)translateY(1px)}.hand-card:nth-child(2){transform:rotate(-2deg)}.hand-card:nth-child(4){transform:rotate(2deg)}.hand-card:nth-child(5){transform:rotate(4deg)translateY(1px)}.hand-card:hover,.dev-card:hover{z-index:2;transform:translateY(-3px)}.card-art{object-fit:cover;width:100%;height:100%;display:block}.hand-card b{color:#fff;background:#221c16e0;border:1px solid #fffc;border-radius:8px;place-items:center;min-width:14px;height:14px;font-size:8px;display:grid;position:absolute;bottom:1px;right:1px;box-shadow:0 1px 2px #231d164d}.hand-card.is-empty{filter:grayscale(.75);opacity:.22}.development-hand{justify-content:center}.dev-card{color:#fff;background:0 0;border:1px solid #fff8e9bf;border-radius:4px;flex:none;align-items:center;width:27px;height:36px;padding:0;display:grid;position:relative;overflow:hidden;box-shadow:0 1px #3c312547,0 2px 4px #31281e33}.dev-card+.dev-card{margin-left:-18px}.dev-card img{object-fit:cover;width:100%;height:100%;display:block}.dev-card b{background:#2b1f2fe0;border:1px solid #fffc;border-radius:7px;place-items:center;min-width:14px;height:14px;font-size:7px;display:grid;position:absolute;bottom:1px;right:1px}.dev-card small{clip:rect(0, 0, 0, 0);width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.no-dev-cards{color:#9d907e;border:1px dashed #61523f47;border-radius:4px;place-items:center;width:27px;height:36px;font-size:11px;display:grid}.player-footer{min-height:26px;color:var(--ink-soft);background:#fffaf0;justify-content:space-between;align-items:center;gap:6px;padding:3px 7px 4px;font-size:7px;display:flex}.piece-bank{align-items:center;gap:3px;display:flex}.piece-counter{background:#f4ebdb;border:1px solid #e0d4bf;border-radius:9px;justify-content:center;align-items:center;gap:1px;min-width:28px;height:19px;padding:1px 3px;display:inline-flex}.piece-counter img{object-fit:contain;width:17px;height:15px;display:block}.piece-counter:first-child img{width:19px}.piece-counter b{color:#554a3d;font-size:7px}.player-awards{flex-wrap:wrap;justify-content:flex-end;gap:3px;display:flex}.player-awards b{background:var(--player-color);border-radius:9px;align-items:center;min-height:18px;padding:1px 4px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.player-awards b{background:color-mix(in srgb, var(--player-color) 18%, #efe3cf)}}.player-awards b{color:var(--player-color)}@supports (color:color-mix(in lab, red, red)){.player-awards b{color:color-mix(in srgb, var(--player-color) 75%, #3b3125)}}.player-awards b{white-space:nowrap;font-size:6px}.player-awards .award-badge{align-items:center;gap:2px;display:inline-flex}.award-badge img{object-fit:contain;width:16px;height:16px;display:block}.player-awards .turn-badge{background:var(--player-color);color:#fff;letter-spacing:.03em;text-transform:uppercase}.about-backdrop{z-index:100;background:#261f18a3;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.about-panel{background:var(--paper-raised);border:1px solid #8f7f65;border-radius:5px;width:min(520px,100%);max-height:min(680px,100dvh - 36px);padding:20px;overflow-y:auto;box-shadow:0 16px 50px #251d1466}.about-heading{justify-content:space-between;align-items:start;gap:20px;display:flex}.about-heading span{color:var(--ink-soft);text-transform:uppercase;font-size:9px;font-weight:700}.about-heading h2{letter-spacing:-.035em;margin:4px 0 0;font-size:23px}.about-heading button{border:1px solid var(--line);background:#f1e6d3;border-radius:3px;width:30px;height:30px;padding:0;font-size:20px}.about-panel>p{color:var(--ink-soft);margin:12px 0;font-size:12px}.about-notice{border-left:3px solid var(--accent);background:#f3e4c9;padding:9px 10px;font-size:11px}.about-stats{border-top:1px solid var(--line);border-left:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin:16px 0 0;display:grid}.about-stats div{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px}.about-stats dt,.about-hashes dt{color:var(--ink-soft);text-transform:uppercase;font-size:8px}.about-stats dd{margin:3px 0 0;font-size:16px;font-weight:700}.about-hashes{gap:7px;margin:16px 0 0;display:grid}.about-hashes div{grid-template-columns:120px minmax(0,1fr);gap:10px;display:grid}.about-hashes dd{font-family:var(--font-mono), monospace;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:9px;overflow:hidden}.loading-shell{color:#fff5e4;text-align:center;align-content:center;justify-items:center;width:min(430px,100% - 40px);min-height:100dvh;margin:0 auto;display:grid}.loading-shell .brand-mark{width:48px;height:48px;margin-bottom:16px;font-size:12px}.loading-shell h1{margin:0;font-size:22px}.loading-shell p{color:#cfc2af;margin:8px 0 0}@media (width<=980px){body{overflow:auto}.replay-app{height:auto;min-height:100dvh;overflow:visible}.topbar{grid-template-columns:1fr auto;position:sticky;top:0}.game-title{display:none}.game-layout{display:block;overflow:visible}.board-column{border-right:0;grid-template-rows:clamp(520px,95vw,720px) 108px}.right-sidebar{border-top:1px solid var(--panel-line);grid-template-rows:560px}.player-corner{width:184px}.board-players{inset:8px 0}.catan-board{width:min(72%,540px);max-height:62%}.player-heading{grid-template-columns:52px minmax(0,1fr);gap:5px;min-height:54px;padding:3px 6px 4px 4px}.player-crest{width:52px;height:48px}.crest-card{width:18px;height:27px}.crest-card-left{left:4px}.crest-card-center{left:17px}.crest-card-right{right:4px}.player-avatar{width:35px;height:35px}.player-avatar img{width:29px;height:29px}.player-vp{width:38px;height:15px}.player-vp strong{font-size:9px}.player-hand-tray{grid-template-columns:minmax(0,1fr) 34px;gap:4px;padding:4px 5px 5px}.development-group{padding-left:4px}.resource-hand,.development-hand{height:33px}.hand-card,.dev-card,.no-dev-cards{width:24px;height:32px}.board-caption{max-width:42%}}@media (width<=620px){.verified,.perspective-label,.brand>span{display:none}.board-column{grid-template-rows:clamp(420px,105vw,620px) 126px}.catan-board{width:100%;height:94%;min-height:330px}.playback{grid-template-rows:29px 20px 32px;grid-template-columns:auto 1fr;gap:5px 10px}.turn-beat-strip{grid-row:1}.timeline-wrap{grid-area:2/1/auto/-1}.transport{grid-area:3/1}.playback-meta{grid-area:3/2;justify-content:flex-end}.player-corner{width:154px}.player-corner-1,.player-corner-2{top:8px}.player-corner-1,.player-corner-3{left:8px}.player-corner-2,.player-corner-4{right:8px}.player-corner-3,.player-corner-4{bottom:8px}.player-heading{grid-template-columns:46px minmax(0,1fr);gap:4px;min-height:49px;padding:4px}.player-crest{width:46px;height:43px}.crest-card{width:16px;height:23px;padding-top:2px;top:4px}.crest-card-left{left:4px}.crest-card-center{top:2px;left:15px}.crest-card-right{right:4px}.player-avatar{border-width:2px;width:31px;height:31px}.player-avatar img{width:26px;height:26px}.player-identity span{display:none}.player-identity strong{font-size:9px}.player-vp{width:27px;height:27px}.player-vp strong{font-size:8px}.player-hand-tray{grid-template-columns:minmax(0,1fr) 30px;gap:3px;padding:3px 4px 4px}.development-group{padding-left:3px}.tray-heading{font-size:5px}.resource-hand,.development-hand{height:29px}.hand-card,.dev-card{width:20px;height:28px}.hand-card+.hand-card{margin-left:-2px}.no-dev-cards{width:20px;height:28px}.piece-counter{min-width:22px;height:17px;padding:1px 2px}.piece-counter img,.piece-counter:first-child img{width:14px;height:13px}.player-awards .award-badge span{display:none}.player-footer{gap:3px;padding:3px 4px}.speech-bubble{padding:6px 7px 7px}.speech-message{-webkit-line-clamp:2;font-size:8px}.board-caption{display:none}.about-stats{grid-template-columns:repeat(2,1fr)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body:has(.about-page){background:#f7f5ef}.about-page{--about-ink:#181816;--about-muted:#66645e;--about-line:#d7d3c8;--about-red:#a74732;min-height:100dvh;color:var(--about-ink);font-family:var(--font-sans), Arial, Helvetica, sans-serif;background:#f7f5ef;overflow:visible}.about-page a{color:inherit;text-underline-offset:4px}.about-page a:hover{color:var(--about-red)}.about-page a:focus-visible,.about-page button:focus-visible,.about-page input:focus-visible{outline:2px solid var(--about-red);outline-offset:4px}.about-header,.about-hero,.about-game,.about-copy,.about-footer{width:min(760px,100% - 40px);margin-inline:auto}.about-header{border-bottom:1px solid var(--about-line);justify-content:space-between;align-items:center;padding:26px 0;font-size:14px;display:flex}.about-header a{text-decoration:none}.about-header a:first-child{letter-spacing:-.02em;font-weight:750}.about-hero{padding:clamp(72px,13vw,126px) 0 clamp(56px,9vw,88px)}.about-hero h1{letter-spacing:-.045em;max-width:720px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(43px,7.6vw,70px);font-weight:500;line-height:1.02}.about-hero>p{max-width:610px;color:var(--about-muted);margin:30px 0 0;font-size:clamp(18px,2.2vw,22px);line-height:1.5}.about-links{flex-wrap:wrap;gap:24px;margin-top:34px;font-size:14px;font-weight:650;display:flex}.about-game{padding-bottom:clamp(86px,14vw,138px)}.about-replay{border:1px solid var(--about-line);background:#fffdf8;border-radius:4px;margin:0;overflow:hidden}.about-board{border-bottom:1px solid var(--about-line);background:#e8eee9;place-items:center;min-height:480px;padding:22px;display:grid}.about-board .catan-board{width:min(100%,580px);max-height:520px}.about-replay figcaption{padding:19px 22px 22px}.about-replay-meta{color:var(--about-muted);text-transform:capitalize;justify-content:space-between;gap:20px;font-size:12px;display:flex}.about-replay input[type=range]{width:100%;accent-color:var(--about-red);margin:20px 0 15px}.about-replay-controls{justify-content:center;align-items:center;gap:9px;display:flex}.about-replay-controls button{border:1px solid var(--about-line);min-width:38px;min-height:34px;color:var(--about-ink);cursor:pointer;background:0 0;border-radius:3px}.about-replay-controls button:hover:not(:disabled){border-color:var(--about-ink)}.about-replay-controls button:disabled{cursor:default;opacity:.35}.about-replay-controls .about-play{background:var(--about-ink);color:#fff;min-width:74px;font-size:12px;font-weight:700}.about-replay-note{min-height:44px;color:var(--about-muted);text-align:center;margin:18px 0 0;font-size:13px;line-height:1.55}.about-replay-note.is-message{color:var(--about-ink)}.about-replay-loading{border:1px solid var(--about-line);min-height:480px;color:var(--about-muted);place-items:center;font-size:14px;display:grid}.about-full-replay{width:fit-content;margin:16px 0 0 auto;font-size:13px;display:block}.about-copy{border-top:1px solid var(--about-line);padding:clamp(78px,12vw,112px) 0}.about-copy h2{letter-spacing:-.035em;margin:0 0 27px;font-family:Georgia,Times New Roman,serif;font-size:clamp(32px,5vw,45px);font-weight:500}.about-copy p{max-width:680px;margin:0;font-size:clamp(17px,2vw,20px);line-height:1.62}.about-copy p+p{color:var(--about-muted);margin-top:24px}.about-ask a{background:var(--about-ink);color:#fff;border-radius:3px;margin-top:32px;padding:12px 16px;font-size:14px;font-weight:700;text-decoration:none;display:inline-block}.about-ask a:hover{background:var(--about-red);color:#fff}.about-footer{border-top:1px solid var(--about-line);color:var(--about-muted);justify-content:space-between;align-items:baseline;gap:30px;padding:28px 0 42px;font-size:11px;display:flex}.about-footer span{color:var(--about-ink);font-size:13px;font-weight:700}.about-footer p{text-align:right;margin:0}@media (width<=620px){.about-header,.about-hero,.about-game,.about-copy,.about-footer{width:min(100% - 30px,760px)}.about-hero{padding-top:64px}.about-board{min-height:350px;padding:8px}.about-replay figcaption{padding:16px}.about-replay-meta{flex-direction:column;align-items:flex-start;gap:4px}.about-replay-note{text-align:left}.about-footer{flex-direction:column;align-items:flex-start;gap:10px}.about-footer p{text-align:left}}.animation-anchors{opacity:0;pointer-events:none}.replay-animation-layer{z-index:30;pointer-events:none;position:absolute;inset:0;overflow:hidden}.animation-float{z-index:4;object-fit:contain;pointer-events:none;transform-origin:50%;will-change:transform, opacity;filter:drop-shadow(0 2px #31271c52)drop-shadow(0 5px 7px #20343938);display:block;position:absolute;top:0;left:0}.flying-card{border-radius:4px}.flying-card.is-face-down,.stolen-card.is-mystery{filter:saturate(.8)drop-shadow(0 2px #31271c52)drop-shadow(0 5px 7px #20343938);background:radial-gradient(circle at 50% 42%,#fff4c9 0 12%,#0000 13%),repeating-linear-gradient(45deg,#315b8c 0 4px,#4473a6 4px 8px);border:2px solid #ffffffdb;padding:3px}.stolen-card.is-mystery{content:""}.flying-die{z-index:8;filter:drop-shadow(0 2px #372f266b)drop-shadow(0 7px 8px #1c333a47)}.flying-piece,.flying-robber,.flying-award{z-index:7}.flying-road{object-fit:contain}.presented-dev-card{z-index:10;background:#76519a;border:2px solid #f8edcf;border-radius:5px;box-shadow:0 0 0 2px #503a2a6b,0 12px 25px #202a2f59;height:auto!important}.animation-badge{z-index:12;color:#40372b;letter-spacing:.01em;text-align:center;text-transform:uppercase;white-space:nowrap;transform-origin:50%;background:#fff9ea;border:1px solid #4f402d6b;border-radius:5px;min-width:62px;padding:7px 11px;font-size:11px;font-weight:800;position:absolute;transform:translate(-50%,-50%);box-shadow:0 2px #46362540,0 7px 16px #2334393d}.animation-badge.is-dice-total{color:#24552c;background:#fffef7;border-radius:4px;min-width:36px;padding:3px 7px;font-size:18px}.animation-badge.is-danger{color:#a32923;background:#fff0e9;border-color:#9f4033}.animation-badge.is-muted{color:#756b5e;background:#fffaefeb}.animation-badge.is-robber{color:#3b3934;background:#eee9df;border-color:#4d4a43}.animation-badge.is-port-ratio{color:#7b4814;background:#fff1c9;border-color:#a86a21}.animation-badge.is-dev-title{color:#583a78;background:#f2e8ff;border-color:#725291}.animation-badge.is-game-start{color:#2d6478;background:#edfaff;border-color:#4a7f91}.animation-badge.is-winner{color:#6b430b;background:linear-gradient(#fff7bd,#f5c85c);border-color:#a66c15;padding:8px 14px;font-size:13px;box-shadow:0 2px #8f5b13,0 0 0 4px #ffed8557,0 9px 22px #342b1d52}.animation-badge.is-resource{color:#fff;text-shadow:0 1px 1px #201e185c}.animation-badge.is-resource.is-wood{background:var(--wood)}.animation-badge.is-resource.is-brick{background:var(--brick)}.animation-badge.is-resource.is-sheep{background:var(--sheep)}.animation-badge.is-resource.is-wheat{background:var(--wheat)}.animation-badge.is-resource.is-ore{background:var(--ore)}.animation-conversation-focus{z-index:14;border:1px solid var(--speaker-color);width:min(410px,100% - 360px);min-width:300px;display:grid;position:absolute;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.animation-conversation-focus{border:1px solid color-mix(in srgb, var(--speaker-color) 58%, #665640)}}.animation-conversation-focus{border-top:5px solid var(--speaker-color);background:#fffdf6fa;border-radius:12px;transform:translate(-50%,-50%);box-shadow:0 3px #3e30203d,0 16px 38px #182c3357}.animation-conversation-focus header{background:linear-gradient(90deg, var(--speaker-color), #fffdf6fa 65%);border-bottom:1px solid #64523926;grid-template-columns:47px minmax(0,1fr);align-items:center;gap:10px;padding:11px 14px 9px;display:grid}@supports (color:color-mix(in lab, red, red)){.animation-conversation-focus header{background:linear-gradient(90deg, color-mix(in srgb, var(--speaker-color) 13%, white), #fffdf6fa 65%)}}.animation-conversation-focus header>img{border:2px solid var(--speaker-color);object-fit:contain;background:#fff9e9;border-radius:50%;width:43px;height:43px;padding:3px}.animation-conversation-focus header>div{min-width:0;display:grid}.animation-conversation-focus header small,.animation-trade-tray header small{color:#776957;letter-spacing:.11em;text-transform:uppercase;font-size:8px;font-weight:800}.animation-conversation-focus header strong{color:#342d25;font-size:16px;line-height:1.1}.animation-conversation-focus header span{color:#7c7164;text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.animation-conversation-focus p{color:#302b25;margin:0;padding:14px 16px 17px;font-size:14px;font-weight:600;line-height:1.48}.animation-trade-tray{z-index:14;border:1px solid var(--trade-color);gap:11px;width:min(380px,100% - 390px);min-width:310px;padding:13px 15px 14px;display:grid;position:absolute}@supports (color:color-mix(in lab, red, red)){.animation-trade-tray{border:1px solid color-mix(in srgb, var(--trade-color) 46%, #756653)}}.animation-trade-tray{border-top:5px solid var(--trade-color);background:#fff9ecfa;border-radius:12px;transform:translate(-50%,-50%);box-shadow:0 2px #3e302047,0 16px 38px #182c3357}.animation-trade-tray>header{text-align:center;gap:2px;display:grid}.animation-trade-tray>header strong{color:#3b332a;font-size:15px;line-height:1.2}.trade-tray-cards{grid-template-columns:minmax(108px,1fr) 32px minmax(108px,1fr);align-items:center;gap:8px;display:grid}.trade-tray-cards>section{background:#ffffff8f;border:1px solid #715b3e2e;border-radius:8px;align-self:stretch;gap:5px;padding:8px;display:grid}.trade-tray-cards>section>small{color:#665a4b;text-align:center;text-transform:uppercase;font-size:8px;font-weight:800}.trade-card-list{justify-content:center;align-items:center;gap:5px;min-height:64px;display:flex}.trade-tray-cards>span{color:var(--trade-color);text-align:center;font-size:24px;font-weight:900}.animation-trade-tray.is-accepted{background:#eff9e9fa;border-color:#4d8953}.animation-trade-tray.is-rejected{background:#fff0e9fa;border-color:#aa5145}.animation-trade-tray.is-withdrawn{border-top-color:#8b8175}.animation-trade-tray.is-completed{background:#eff9e9fa;border-color:#4d8953}.beat-hold-overlay{z-index:14;pointer-events:none;position:absolute;inset:0}.beat-hold-message,.beat-hold-trade{pointer-events:auto;animation:.18s ease-out beat-hold-arrive;top:50%;left:50%}@keyframes beat-hold-arrive{0%{opacity:0}to{opacity:1}}.trade-result{color:#3f7a43;letter-spacing:.04em;text-align:center;text-transform:uppercase;background:#5d925324;border-radius:7px;padding:7px 10px;font-size:12px;font-weight:900}.is-rejected .trade-result{color:#a33c31;background:#b54b3c1f}.is-withdrawn .trade-result{color:#695f54;background:#73685a1f}.trade-card-chip{justify-items:center;gap:2px;width:45px;display:grid;position:relative}.trade-card-chip img{object-fit:cover;border-radius:4px;width:34px;height:46px;display:block;box-shadow:0 2px 3px #31261a47}.trade-card-chip b{color:#fff;background:#43392e;border:2px solid #fff;border-radius:50%;place-items:center;width:18px;height:18px;font-size:10px;line-height:1;display:grid;position:absolute;top:-4px;right:0;box-shadow:0 1px 3px #271f164d}.trade-card-chip small{color:#54493e;text-transform:capitalize;font-size:7px;font-weight:800;line-height:1}.trade-card-chip.is-give img{box-shadow:0 0 0 2px #c85e4f,0 2px 3px #31261a47}.trade-card-chip.is-receive img{box-shadow:0 0 0 2px #5da267,0 2px 3px #31261a47}.game-bank{z-index:9;background:linear-gradient(#fffbeffa,#eaddc4fa);border:1px solid #43392c70;border-radius:8px;align-items:center;gap:5px;height:55px;padding:5px 7px 5px 6px;transition:filter .18s,transform .18s;display:flex;position:absolute;bottom:9px;left:50%;transform:translate(-50%);box-shadow:0 2px #3f312147,0 7px 16px #24383d38}.board-stage.is-animating .game-bank{filter:brightness(1.03)}.bank-mark{color:#315768;border-right:1px solid #cbbb9e;place-items:center;width:40px;height:43px;display:grid}.bank-mark svg{width:31px;height:31px;display:block}.bank-mark span{color:#6e6558;letter-spacing:.07em;text-transform:uppercase;margin-top:-4px;font-size:6px;font-weight:800}.bank-resource-stacks{align-items:center;gap:2px;display:flex}.bank-card-stack{flex:none;width:27px;height:39px;display:block;position:relative}.bank-card-stack i{background:#ede2cd;border:1px solid #483c2d4d;border-radius:3px;position:absolute;inset:2px -2px -2px 2px}.bank-card-stack img{object-fit:cover;border:1px solid #fff9ebd6;border-radius:3px;width:27px;height:36px;display:block;position:absolute;box-shadow:0 1px 2px #33291d47}.bank-card-stack b{z-index:2;color:#fff;background:#30271de6;border:1px solid #fff4db;border-radius:8px;place-items:center;min-width:14px;height:14px;font-size:7px;display:grid;position:absolute;bottom:0;right:-2px}.bank-development{border-left:1px solid #cbbb9e;margin-left:3px;padding-left:3px}.bank-development img{left:3px}.bank-development i{left:5px}.bank-development b{right:-5px}.bank-discard{color:#8b7a62;background:#fffaef85;border:1px dashed #b8a88c;border-radius:4px;place-items:center;width:34px;height:39px;display:grid}.bank-discard i{font-size:13px;font-style:normal;line-height:1}.bank-discard small{text-transform:uppercase;margin-top:-7px;font-size:5px;font-weight:700}.board-caption{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:7px;max-width:min(430px,48%);display:grid;bottom:70px}.board-caption strong{color:#6f4b22;letter-spacing:.04em;text-transform:uppercase;font-size:8px}.board-caption span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.highlight-announcement{z-index:42;color:#fff;pointer-events:none;text-align:center;text-shadow:0 2px 10px #071014b8;background:#1422276e;place-items:center;padding:160px 240px;animation:.28s ease-out highlight-announcement-in;display:grid;position:absolute;inset:0}.highlight-announcement>div{justify-items:center;max-width:580px;display:grid}.highlight-announcement>div:before{content:"";background:#f0b84f;width:56px;height:2px;margin-bottom:13px}.highlight-announcement span{color:#ffd47e;letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:6px;font-size:9px;font-weight:760;display:flex}.highlight-announcement strong{text-wrap:balance;margin-top:8px;font-family:Georgia,Times New Roman,serif;font-size:clamp(24px,2.6vw,38px);font-weight:600;line-height:1.08}.highlight-announcement p{color:#ffffffe6;max-width:540px;margin:12px 0 0;font-size:clamp(11px,1vw,14px);line-height:1.5}.board-caption.is-highlight{z-index:36;color:#f5f7f7;pointer-events:auto;white-space:normal;background:#1e2a2ff5;border:1px solid #ffd57e70;border-left:3px solid #efb64c;border-radius:4px;grid-template-columns:22px minmax(0,1fr) auto;gap:8px;width:min(590px,100% - 470px);max-width:none;min-height:48px;padding:7px 9px 7px 8px;overflow:visible;box-shadow:0 4px 14px #0d191e4d}.board-caption.is-highlight .board-highlight-mark{color:#efb64c;place-items:center;width:22px;height:22px;display:grid;overflow:visible}.board-caption.is-highlight .board-highlight-copy{white-space:normal;gap:1px;min-width:0;display:grid;overflow:visible}.board-caption.is-highlight .board-highlight-copy small{color:#e9bd68;letter-spacing:.07em;text-transform:uppercase;font-size:7px;font-weight:700}.board-caption.is-highlight .board-highlight-copy>strong{color:#fff;letter-spacing:0;text-overflow:ellipsis;text-transform:none;white-space:nowrap;font-size:10px;font-weight:720;line-height:1.3;overflow:hidden}.board-caption.is-highlight .board-highlight-copy>span{color:#cbd2d5;font-size:8px}.board-caption.is-highlight .board-highlight-copy>em{color:#f1d7a4;border-top:1px solid #ffffff24;margin-top:5px;padding-top:5px;font-size:8px;font-style:normal;line-height:1.45}.board-caption.is-highlight.is-expanded{min-height:68px}.board-caption.is-highlight.is-expanded .board-highlight-copy>strong,.board-caption.is-highlight.is-expanded .board-highlight-copy>span{text-overflow:clip;white-space:normal;overflow:visible}.board-caption.is-highlight>button{color:#ffd47e;white-space:nowrap;background:0 0;border:1px solid #ffd37e6b;border-radius:3px;align-self:center;padding:5px 7px;font-size:7px;font-weight:700}.board-caption.is-highlight>button:hover{background:#ffd47e1a;border-color:#ffd47e}.timeline-key{color:#d5a54c;white-space:nowrap;grid-area:3/2;justify-self:center;align-items:center;gap:4px;font-size:8px;display:flex}.timeline-markers{height:10px;top:5px;overflow:visible}.timeline-markers button{color:#dba847;background:#24292d;border:0;border-radius:50%;place-items:center;width:14px;height:14px;transition:color .12s,transform .12s;display:grid;top:-2px;overflow:visible;transform:translate(-50%)}.timeline-markers button:hover,.timeline-markers button:focus-visible,.timeline-markers button.is-selected,.timeline-markers button.is-active{color:#ffd16f;background:#24292d;width:14px;transform:translate(-50%)scale(1.2)}.timeline-markers button.is-active:after{content:"";border:1px solid #ffd16fd6;border-radius:50%;animation:.72s ease-out both highlight-marker-arrive;position:absolute;inset:-3px}.timeline-marker-tooltip{z-index:60;color:#f3f5f5;text-align:left;background:#1b2023;border:1px solid #596167;border-radius:4px;width:220px;padding:8px 9px 9px;display:none;position:absolute;bottom:18px;left:50%;transform:translate(-50%)scale(.833333);box-shadow:0 6px 18px #05090b57}.timeline-marker-tooltip small{color:#d6a74d;letter-spacing:.05em;text-transform:uppercase;margin-bottom:3px;font-size:7px;font-weight:700;display:block}.timeline-marker-tooltip strong{color:#f3f5f5;font-size:10px;font-weight:650;line-height:1.35;display:block}.timeline-markers button:hover .timeline-marker-tooltip,.timeline-markers button:focus-visible .timeline-marker-tooltip{display:block}.timeline-markers button.is-edge-start .timeline-marker-tooltip{left:2px;transform:scale(.833333)}.timeline-markers button.is-edge-end .timeline-marker-tooltip{transform-origin:100% 100%;left:auto;right:2px;transform:scale(.833333)}.highlight-list>button.is-active{background:#fff8e7;border-left-color:#d49a34}.highlight-list>button.is-active .highlight-number{color:#a86e13}.highlight-meta b{color:#a86e13;letter-spacing:.05em;text-transform:uppercase;border-left:1px solid #d9b772;margin-left:7px;padding-left:7px;font-size:7px;display:inline-block}@keyframes highlight-announcement-in{0%{opacity:0}to{opacity:1}}@keyframes highlight-marker-arrive{0%{opacity:1;transform:scale(.45)}to{opacity:0;transform:scale(1.75)}}.turn-copy>strong{animation:.21s ease-out phase-arrive}.player-vp strong,.tray-heading b,.hand-card b{animation:.23s ease-out counter-arrive}.speech-bubble{transform-origin:28px calc(100% + 5px);max-height:116px;transition:max-height .22s,box-shadow .18s;animation:.24s cubic-bezier(.2,.8,.22,1) speech-arrive}.player-corner-2 .speech-bubble,.player-corner-4 .speech-bubble{transform-origin:calc(100% - 28px) calc(100% + 5px)}.speech-bubble.is-expanded{z-index:12;max-height:420px;box-shadow:0 2px #493b2b1f,0 9px 24px #2a383b3d}.speech-bubble.is-acceptance{background:#f3fbe9;border-color:#5c9a63;width:132px;max-height:74px;padding:7px 9px 8px;box-shadow:0 2px #3e6c4333,0 6px 16px #264b2b2e}.speech-bubble.is-acceptance:after{background:#f3fbe9;border-color:#5c9a63}.speech-bubble.is-acceptance .speech-heading strong{color:#3f8147}.speech-bubble.is-acceptance .speech-message{color:#326c3a;-webkit-line-clamp:unset;align-items:center;gap:5px;font-size:12px;font-weight:800;line-height:1.2;display:flex;overflow:visible}.speech-bubble.is-acceptance .speech-message:before{color:#fff;content:"✓";background:#5b9b63;border-radius:50%;place-items:center;width:16px;height:16px;font-size:10px;display:grid}.player-panel,.player-crest,.turn-pill,.port,.hex{transition:filter .18s,opacity .18s,box-shadow .18s}.player-corner.is-active .player-avatar{animation:1.5s ease-in-out infinite active-avatar}.player-corner.is-winner .player-panel{animation:.9s ease-out winner-panel}.board-players:has(.player-corner.is-winner) .player-corner:not(.is-winner){filter:saturate(.72);opacity:.72;transition:filter .48s,opacity .48s}.board-stage.is-focus-jump .catan-board{animation:.34s ease-out board-focus}.board-stage.is-paused *,.board-stage.is-paused :before,.board-stage.is-paused :after{animation-play-state:paused!important}.playback.is-busy .timeline{cursor:progress}.transport button:disabled{cursor:wait;filter:grayscale(.55);opacity:.48}@keyframes phase-arrive{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}@keyframes counter-arrive{0%{opacity:.35;transform:scale(.72)}70%{opacity:1;transform:scale(1.14)}to{opacity:1;transform:scale(1)}}@keyframes speech-arrive{0%{opacity:0;transform:scale(.86)translateY(5px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes active-avatar{0%,to{box-shadow:0 0 0 2px color-mix(in srgb, var(--player-color) 70%, #413526), 0 2px 4px #372d2140}50%{box-shadow:0 0 0 4px color-mix(in srgb, var(--player-color) 35%, white), 0 3px 7px #372d2147}}@keyframes winner-panel{0%{filter:brightness()}42%{filter:brightness(1.18)saturate(1.12)}to{filter:brightness()}}@keyframes board-focus{0%{filter:drop-shadow(0 7px 10px #26383c3d);transform:scale(.992)}48%{filter:brightness(1.05)drop-shadow(0 9px 13px #26383c4d);transform:scale(1.012)}to{filter:drop-shadow(0 7px 10px #26383c3d);transform:scale(1)}}@media (width<=900px){.highlight-announcement{padding:140px 200px}.game-bank{gap:3px;height:48px;padding:4px 5px}.bank-mark{width:32px;height:38px}.bank-mark svg{width:25px;height:25px}.bank-card-stack{width:23px;height:34px}.bank-card-stack img{width:23px;height:31px}.bank-discard{width:28px;height:34px}.board-caption{bottom:61px}.board-caption.is-highlight{width:min(520px,100% - 400px)}}@media (width<=620px){.highlight-announcement{padding:120px 30px}.highlight-announcement strong{font-size:23px}.game-bank{bottom:6px}.bank-mark,.bank-discard,.board-caption,.timeline-key{display:none}}body:has(.season-page){color:#1f211e;background:#f1eee5;overflow:auto}.season-page{--season-ink:#1d201d;--season-muted:#65675f;--season-paper:#f1eee5;--season-paper-bright:#faf8f2;--season-rule:#c9c6bb;--season-night:#171b19;--season-night-soft:#222824;--season-wheat:#e4ad32;--season-wheat-dark:#a65e16;--season-blue:#168de2;--season-orange:#ef821f;--season-green:#20a93a;background:var(--season-paper);width:100%;min-height:100dvh;color:var(--season-ink);font-family:var(--font-sans), Arial, Helvetica, sans-serif;overflow:clip}.season-page a{color:inherit;text-decoration:none}.season-page button:focus-visible,.season-page a:focus-visible{outline:3px solid var(--season-wheat-dark);outline-offset:4px}.season-nav{z-index:100;border-bottom:1px solid var(--season-rule);background:#f1eee5;grid-template-columns:1fr auto 1fr;align-items:center;gap:28px;min-height:68px;padding:0 clamp(22px,4vw,72px);display:grid;position:sticky;top:0}.season-brand{justify-self:start;align-items:center;gap:11px;display:inline-flex}.season-hex-mark{background:var(--season-wheat-dark);clip-path:polygon(25% 4%,75% 4%,100% 50%,75% 96%,25% 96%,0 50%);color:#fffaf0;width:34px;height:38px;font-family:var(--font-mono), monospace;letter-spacing:-.03em;flex:none;place-items:center;font-size:9px;font-weight:760;display:grid}.season-brand>span:last-child{line-height:1.08;display:grid}.season-brand strong{letter-spacing:-.025em;font-size:14px;font-weight:760}.season-brand small{color:var(--season-muted);font-family:var(--font-mono), monospace;letter-spacing:.08em;text-transform:uppercase;margin-top:3px;font-size:8px}.season-nav-links,.season-nav-actions{align-items:center;gap:24px;font-size:12px;font-weight:600;display:flex}.season-nav-links a,.season-nav-actions>a:not(.season-nav-cta){color:#4d5049;padding:9px 0}.season-nav-links a:hover,.season-nav-actions>a:not(.season-nav-cta):hover{color:#000}.season-nav-actions{justify-self:end}.season-nav-cta{background:var(--season-ink);color:#fff;padding:10px 15px;font-size:11px}.season-hero{width:min(1440px,100%);margin:0 auto;padding:clamp(72px,9vw,132px) clamp(22px,5vw,80px) clamp(62px,8vw,110px)}.season-hero-kicker{font-family:var(--font-mono), monospace;letter-spacing:.09em;align-items:center;gap:12px;margin-bottom:clamp(50px,7vw,90px);font-size:9px;font-weight:650;display:flex}.season-hero-kicker span{border:1px solid var(--season-rule);padding:6px 9px 5px}.season-hero-kicker span:first-child{border-color:var(--season-wheat-dark);background:var(--season-wheat-dark);color:#fff}.season-hero-grid{grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);align-items:end;gap:clamp(44px,7vw,118px);display:grid}.season-hero h1{letter-spacing:-.062em;max-width:900px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(54px,6.7vw,106px);font-weight:500;line-height:.94}.season-hero h1>span{color:var(--season-wheat-dark);margin-top:.25em;display:block}.season-hero-intro{padding-bottom:4px}.season-hero-intro>p{color:#42453f;margin:0;font-size:clamp(16px,1.45vw,21px);line-height:1.55}.season-hero-actions{flex-wrap:wrap;align-items:center;gap:24px;margin-top:34px;display:flex}.season-primary-button{background:var(--season-ink);justify-content:space-between;align-items:center;gap:24px;min-width:245px;padding:14px 16px;font-size:12px;font-weight:670;display:inline-flex;color:#fff!important}.season-primary-button:hover{background:var(--season-wheat-dark)}.season-text-link{border-bottom:1px solid;padding:6px 0;font-size:12px;font-weight:650}.season-decision-section{background:var(--season-paper);padding:0 clamp(12px,2.1vw,34px)}.season-decision-lab,.season-decision-loading{background:var(--season-night);color:#f7f4e9;border:1px solid #2d332f;width:min(1530px,100%);margin:0 auto;box-shadow:0 26px 70px #1f231e26}.season-decision-loading{text-align:center;place-content:center;justify-items:center;gap:9px;min-height:620px;display:grid}.season-decision-loading .season-hex-mark{width:48px;height:54px;margin-bottom:10px}.season-decision-loading strong{font-family:Georgia,Times New Roman,serif;font-size:26px;font-weight:500}.season-decision-loading>span:last-child{color:#a8afa7;font-size:12px}.season-lab-bar{color:#c2c9c2;min-height:48px;font-family:var(--font-mono), monospace;letter-spacing:.07em;text-transform:uppercase;border-bottom:1px solid #3e4741;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;padding:0 18px;font-size:8px;display:grid}.season-lab-bar>div{color:#f1f2ec;align-items:center;gap:8px;display:flex}.season-lab-bar>span:last-child{color:#9cc6a4;justify-self:end}.season-live-dot{background:#65a975;border-radius:50%;width:7px;height:7px;display:inline-block;box-shadow:0 0 0 3px #65a97521}.season-lab-grid{grid-template-columns:minmax(0,1.25fr) minmax(430px,.75fr);min-height:720px;display:grid}.season-board-shell{background:#26312f;border-right:1px solid #3e4741;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;display:grid}.season-board-status{color:#bec6bf;font-family:var(--font-mono), monospace;border-bottom:1px solid #42504d;grid-template-columns:auto auto 1fr;align-items:baseline;gap:10px;padding:16px 20px;font-size:9px;display:grid}.season-board-status span{color:#89948c;letter-spacing:.08em}.season-board-status strong{color:#f4f3ea;font-size:12px}.season-board-status small{color:#bec6bf;justify-self:end;font-size:9px}.season-board{background:#579db3;place-items:center;min-height:0;display:grid;position:relative;overflow:hidden}.season-board:after{content:"";pointer-events:none;border:10px solid #152a2e1f;position:absolute;inset:0}.season-board .catan-board{filter:drop-shadow(0 9px 12px #17303447);width:min(91%,760px);max-height:90%;transition:transform .4s}.season-decision-lab.is-revealed .season-board .catan-board{transform:scale(1.015)}.season-turn-chip,.season-recorded-marker{z-index:7;color:#30352f;font-family:var(--font-mono), monospace;background:#f8f5eb;border:1px solid #1823224d;position:absolute}.season-turn-chip{letter-spacing:.08em;padding:7px 10px 6px;font-size:9px;font-weight:760;top:15px;left:50%;transform:translate(-50%)}.season-recorded-marker{justify-items:center;min-width:210px;padding:10px 17px;animation:.38s ease-out season-result-in;display:grid;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 7px 20px #1d2d2a2e}.season-recorded-marker span{color:#8a5b23;letter-spacing:.12em;font-size:7px}.season-recorded-marker strong{font-family:var(--font-sans), sans-serif;margin-top:3px;font-size:12px}.season-board-footnote{color:#9ea9a1;font-family:var(--font-mono), monospace;border-top:1px solid #42504d;justify-content:space-between;gap:20px;padding:12px 18px;font-size:8px;display:flex}.season-choice-panel{background:var(--season-night);flex-direction:column;min-width:0;padding:clamp(24px,3vw,46px);display:flex}.season-choice-heading>span,.season-outcome>span,.season-outcome-placeholder>span{color:var(--season-wheat);font-family:var(--font-mono), monospace;letter-spacing:.11em;font-size:8px;font-weight:700}.season-choice-heading h2{letter-spacing:-.037em;max-width:540px;margin:12px 0 13px;font-family:Georgia,Times New Roman,serif;font-size:clamp(30px,3vw,45px);font-weight:500;line-height:1.02}.season-choice-heading p{color:#aab2aa;max-width:520px;margin:0;font-size:12px;line-height:1.58}.season-target-list{border-top:1px solid #404841;margin-top:28px}.season-target{color:#f1f1e9;text-align:left;background:0 0;border:0;border-bottom:1px solid #404841;grid-template-columns:36px minmax(0,1fr) auto;align-items:start;gap:13px;width:100%;padding:17px 0;display:grid;position:relative}.season-target:not(:disabled):hover{background:#202622;padding-left:8px;padding-right:8px}.season-target:disabled{cursor:default}.season-target:disabled:not(.is-selected):not(.is-recorded){opacity:.48}.season-target.is-selected,.season-target.is-recorded{background:#242a26;margin-left:-9px;margin-right:-9px;padding-left:9px;padding-right:9px}.season-target.is-recorded{box-shadow:inset 3px 0 var(--season-wheat)}.season-target>img{background:#303832;border:2px solid #58635b;border-radius:50%;width:34px;height:34px;padding:3px}.season-target.player-1>img{border-color:var(--season-blue)}.season-target.player-2>img{border-color:var(--season-orange)}.season-target.player-3>img{border-color:var(--season-green)}.season-target-copy{gap:8px;display:grid}.season-target-copy>span{flex-wrap:wrap;align-items:baseline;gap:9px;display:flex}.season-target-copy strong{font-size:13px}.season-target-copy small,.season-target-copy em{color:#8f9990;font-size:8px}.season-target-copy small{font-family:var(--font-mono), monospace;text-transform:uppercase}.season-target-copy q{color:#cbd0ca;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-family:Georgia,Times New Roman,serif;font-size:11px;font-style:normal;line-height:1.38;display:-webkit-box;overflow:hidden}.season-target-copy q:before,.season-target-copy q:after{color:var(--season-wheat)}.season-target-copy em{font-style:normal;line-height:1.4;display:none}.season-target-action{color:#afb6af;font-family:var(--font-mono), monospace;letter-spacing:.08em;border:1px solid #4d574f;align-self:center;padding:5px 7px;font-size:7px;font-weight:700}.season-target.is-recorded .season-target-action{border-color:var(--season-wheat);color:var(--season-wheat)}.season-outcome,.season-outcome-placeholder{margin-top:auto;padding-top:25px}.season-outcome{animation:.36s ease-out season-result-in}.season-outcome h3{color:#f6f3e8;margin:8px 0;font-family:Georgia,Times New Roman,serif;font-size:23px;font-weight:500}.season-outcome p,.season-outcome-placeholder p{color:#aab2aa;margin:0;font-size:11px;line-height:1.55}.season-outcome-actions{align-items:center;gap:19px;margin:16px 0 13px;display:flex}.season-outcome-actions button,.season-outcome-actions a{border:0;font-size:10px;font-weight:670}.season-outcome-actions button{color:#20251f;background:#f4f1e7;padding:9px 12px}.season-outcome-actions a{color:#e7e9e4;border-bottom:1px solid #aab2aa}.season-outcome>small{color:#7d887f;font-family:var(--font-mono), monospace;font-size:7px}.season-outcome-placeholder{border-top:1px solid #404841}.season-outcome-placeholder>span{color:#798279}.season-outcome-placeholder p{margin-top:5px}@keyframes season-result-in{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}.season-proof-strip{border-right:1px solid var(--season-rule);border-bottom:1px solid var(--season-rule);border-left:1px solid var(--season-rule);background:#e8e4d9;grid-template-columns:1.5fr repeat(4,.7fr) .85fr;align-items:stretch;width:min(1440px,100% - 44px);min-height:126px;margin:0 auto;display:grid}.season-proof-strip>div{border-right:1px solid var(--season-rule);justify-content:center;align-items:center;gap:11px;min-width:0;padding:19px;display:flex}.season-proof-strip>div:last-child{border-right:0}.season-proof-strip>div:first-child{justify-content:flex-start}.season-proof-strip>div:not(:first-child){flex-direction:column;gap:2px}.season-proof-strip strong{letter-spacing:-.03em;font-family:Georgia,Times New Roman,serif;font-size:24px;font-weight:500}.season-proof-strip span,.season-proof-strip small{color:#707268;font-family:var(--font-mono), monospace;letter-spacing:.06em;text-transform:uppercase;font-size:7px}.season-proof-strip>div:first-child strong{font-family:var(--font-sans), sans-serif;letter-spacing:0;font-size:11px;font-weight:700}.season-proof-strip>div:first-child span:last-child{display:grid}.season-proof-strip>div:first-child small{margin-top:3px}.season-proof-check{background:#477654;border-radius:50%;flex:none;place-items:center;width:32px;height:32px;display:grid;color:#fff!important;font-family:var(--font-sans), sans-serif!important;font-size:13px!important}.season-proof-strip .season-hash strong{font-family:var(--font-mono), monospace;letter-spacing:.08em;font-size:8px}.season-why,.season-story-section,.season-fund{width:min(1440px,100%);margin:0 auto;padding:clamp(90px,11vw,164px) clamp(22px,5vw,80px)}.season-section-label{font-family:var(--font-mono), monospace;letter-spacing:.09em;align-items:center;gap:12px;font-size:8px;display:flex}.season-section-label span{border:1px solid var(--season-rule);place-items:center;width:28px;height:28px;display:grid}.season-section-label.is-dark span{border-color:#455047}.season-why-grid{grid-template-columns:minmax(0,.95fr) minmax(480px,1.05fr);gap:clamp(60px,10vw,160px);margin-top:74px;display:grid}.season-why-thesis>span{color:var(--season-wheat-dark);font-family:var(--font-mono), monospace;letter-spacing:.11em;font-size:8px;font-weight:700}.season-why-thesis h2,.season-story-heading h2,.season-evidence-heading h2,.season-fund-heading h2{letter-spacing:-.052em;margin:18px 0 25px;font-family:Georgia,Times New Roman,serif;font-size:clamp(46px,5vw,76px);font-weight:500;line-height:.98}.season-why-thesis p{max-width:570px;color:var(--season-muted);margin:0;font-size:15px;line-height:1.65}.season-capability-list{border-top:1px solid var(--season-rule)}.season-capability-list article{border-bottom:1px solid var(--season-rule);grid-template-columns:40px 120px minmax(0,1fr);gap:16px;padding:25px 0;display:grid}.season-capability-list article>span{color:#92938b;font-family:var(--font-mono), monospace;font-size:8px}.season-capability-list h3{margin:0;font-family:Georgia,Times New Roman,serif;font-size:22px;font-weight:500}.season-capability-list p{color:var(--season-muted);margin:0;font-size:12px;line-height:1.55}.season-story-section{border-top:1px solid var(--season-rule);background:var(--season-paper-bright)}.season-story-heading{grid-template-columns:minmax(0,1.1fr) minmax(280px,.55fr);align-items:end;gap:80px;margin-top:66px;display:grid}.season-story-heading h2{max-width:800px;margin:0}.season-story-heading p{color:var(--season-muted);margin:0 0 6px;font-size:13px;line-height:1.65}.season-story-browser{border:1px solid var(--season-rule);margin-top:80px}.season-story-tabs{border-bottom:1px solid var(--season-rule);grid-template-columns:repeat(8,1fr);display:grid}.season-story-tabs button{border:0;border-right:1px solid var(--season-rule);color:#777970;text-align:left;background:#e9e5da;gap:10px;min-width:0;padding:17px 15px;display:grid}.season-story-tabs button:last-child{border-right:0}.season-story-tabs button:hover,.season-story-tabs button.is-active{background:var(--season-night);color:#f7f4ea}.season-story-tabs button.is-active{box-shadow:inset 0 -3px var(--season-wheat)}.season-story-tabs span{font-family:Georgia,Times New Roman,serif;font-size:20px}.season-story-tabs small{font-family:var(--font-mono), monospace;letter-spacing:.06em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:7px;overflow:hidden}.season-story-copy{background:#f4f1e8;grid-template-columns:minmax(190px,.38fr) minmax(0,1fr);align-items:center;min-height:390px;display:grid}.season-story-number{border-right:1px solid var(--season-rule);color:#d0cabd;letter-spacing:-.09em;align-self:stretch;place-items:center;font-family:Georgia,Times New Roman,serif;font-size:clamp(110px,14vw,210px);line-height:1;display:grid}.season-story-copy>div:last-child{max-width:770px;padding:clamp(36px,6vw,85px);display:grid}.season-story-copy>div:last-child>span{color:var(--season-wheat-dark);font-family:var(--font-mono), monospace;letter-spacing:.1em;text-transform:uppercase;font-size:8px;font-weight:700}.season-story-copy h3{letter-spacing:-.04em;margin:12px 0 13px;font-family:Georgia,Times New Roman,serif;font-size:clamp(30px,3.5vw,48px);font-weight:500;line-height:1.03}.season-story-copy p{max-width:690px;color:var(--season-muted);margin:0;font-size:13px;line-height:1.63}.season-story-copy strong{max-width:650px;margin-top:18px;font-size:11px;line-height:1.5}.season-story-copy a{border-bottom:1px solid;width:fit-content;margin-top:28px;font-size:10px;font-weight:700}.season-evidence{background:var(--season-night);color:#f4f2e9;padding:clamp(90px,11vw,164px) max(clamp(22px,5vw,80px),50vw - 640px)}.season-evidence-topline{justify-content:space-between;align-items:center;gap:30px;display:flex}.season-evidence-topline>span{color:#8d978e;font-family:var(--font-mono), monospace;letter-spacing:.08em;font-size:8px}.season-evidence-heading{grid-template-columns:minmax(0,1.1fr) minmax(280px,.45fr);align-items:end;gap:80px;margin-top:70px;display:grid}.season-evidence-heading h2{max-width:820px;margin:0}.season-evidence-heading p{color:#a7afa7;margin:0 0 7px;font-size:13px;line-height:1.65}.season-release-grid{border-top:1px solid #444c46;border-left:1px solid #444c46;grid-template-columns:repeat(3,1fr);margin-top:90px;display:grid}.season-release-grid>div{border-bottom:1px solid #444c46;border-right:1px solid #444c46;justify-content:space-between;align-items:flex-end;gap:20px;min-height:122px;padding:23px;display:flex}.season-release-grid span{color:#9ba39c;font-family:var(--font-mono), monospace;letter-spacing:.07em;text-transform:uppercase;font-size:8px}.season-release-grid strong{letter-spacing:-.04em;white-space:nowrap;font-family:Georgia,Times New Roman,serif;font-size:clamp(25px,3vw,41px);font-weight:500}.season-release-grid strong.is-ready{color:#85c390}.season-rehearsal-proof{border-top:1px solid #444c46;grid-template-columns:190px minmax(0,1fr) auto;align-items:center;gap:clamp(30px,5vw,74px);margin-top:68px;padding-top:50px;display:grid}.season-pass-stamp{color:#8ac694;width:166px;height:108px;font-family:var(--font-mono), monospace;border:2px solid #77b982;place-content:center;justify-items:center;display:grid;transform:rotate(-2deg)}.season-pass-stamp span{letter-spacing:.09em;font-size:8px}.season-pass-stamp strong{letter-spacing:.04em;margin-top:6px;font-size:17px}.season-rehearsal-proof p{color:#abb2ab;margin:0;font-size:12px;line-height:1.65}.season-rehearsal-proof>a{white-space:nowrap;border-bottom:1px solid #8e9890;padding-bottom:5px;font-size:10px;font-weight:700}.season-fund{background:var(--season-paper)}.season-fund-heading{grid-template-columns:minmax(0,1.2fr) minmax(300px,.5fr);align-items:end;gap:90px;margin-top:70px;display:grid}.season-fund-heading h2{max-width:850px;margin:0}.season-fund-heading p{color:var(--season-muted);margin:0 0 8px;font-size:14px;line-height:1.65}.season-funding-scale{background:var(--season-wheat);border-top:1px solid #9e7938;border-left:1px solid #9e7938;grid-template-columns:.8fr 1fr 1.35fr;margin-top:84px;display:grid}.season-funding-scale>div{border-bottom:1px solid #9e7938;border-right:1px solid #9e7938;align-content:end;min-height:240px;padding:clamp(24px,3vw,43px);display:grid}.season-funding-scale span{font-family:var(--font-mono), monospace;letter-spacing:.09em;font-size:8px;font-weight:700}.season-funding-scale strong{letter-spacing:-.06em;margin:14px 0 5px;font-family:Georgia,Times New Roman,serif;font-size:clamp(53px,6vw,91px);font-weight:500;line-height:.88}.season-funding-scale small{color:#624817;font-size:9px}.season-funding-scale .is-season-total{background:var(--season-ink);color:#f6f2e7}.season-funding-scale .is-season-total small{color:#b6b8af}.season-fund-bottom{grid-template-columns:minmax(0,.8fr) minmax(420px,1.2fr);gap:clamp(45px,8vw,120px);margin-top:74px;display:grid}.season-independence,.season-contact{border-top:1px solid var(--season-rule);padding-top:25px}.season-independence>span,.season-contact>span{color:var(--season-wheat-dark);font-family:var(--font-mono), monospace;letter-spacing:.1em;font-size:8px;font-weight:700}.season-independence p{color:var(--season-muted);margin:16px 0 0;font-size:12px;line-height:1.65}.season-contact h3{letter-spacing:-.035em;max-width:650px;margin:16px 0 28px;font-family:Georgia,Times New Roman,serif;font-size:clamp(27px,3.2vw,43px);font-weight:500;line-height:1.05}.season-contact>div{flex-wrap:wrap;align-items:center;gap:25px;display:flex}.season-contact a{font-size:11px;font-weight:700}.season-contact-primary{background:var(--season-ink);justify-content:space-between;gap:28px;min-width:238px;padding:14px 16px;display:inline-flex;color:#fff!important}.season-contact>div>a:last-child{border-bottom:1px solid}.season-footer{border-top:1px solid var(--season-rule);background:#e8e4d9;grid-template-columns:1fr minmax(300px,.8fr) 1fr;align-items:center;gap:50px;padding:40px clamp(22px,5vw,80px);display:grid}.season-footer p{color:#777970;text-align:center;margin:0;font-size:9px;line-height:1.55}.season-footer>div{justify-content:flex-end;gap:24px;font-size:10px;font-weight:650;display:flex}@media (width<=1120px){.season-nav{grid-template-columns:1fr auto}.season-nav-links{display:none}.season-hero-grid,.season-why-grid,.season-story-heading,.season-evidence-heading,.season-fund-heading{grid-template-columns:1fr}.season-hero-intro{max-width:650px}.season-lab-grid{grid-template-columns:minmax(0,1.05fr) minmax(390px,.95fr)}.season-proof-strip{grid-template-columns:repeat(3,1fr)}.season-proof-strip>div{border-bottom:1px solid var(--season-rule)}.season-proof-strip>div:first-child{grid-column:span 2}.season-story-heading,.season-evidence-heading,.season-fund-heading{gap:28px}.season-story-heading p,.season-evidence-heading p,.season-fund-heading p{max-width:650px}.season-story-tabs{grid-template-columns:repeat(8,minmax(105px,1fr));overflow-x:auto}.season-footer{grid-template-columns:1fr 1fr}.season-footer p{text-align:left;grid-area:2/1/auto/-1;max-width:640px}}@media (width<=860px){.season-nav-actions>a:not(.season-nav-cta),.season-hero-kicker span:last-child{display:none}.season-lab-bar{grid-template-columns:1fr auto}.season-lab-bar>span:nth-child(2){display:none}.season-lab-grid{grid-template-columns:1fr}.season-board-shell{border-bottom:1px solid #3e4741;border-right:0;min-height:590px}.season-choice-panel{min-height:660px}.season-release-grid{grid-template-columns:repeat(2,1fr)}.season-rehearsal-proof{grid-template-columns:160px 1fr}.season-rehearsal-proof>a{grid-column:2;width:fit-content}.season-funding-scale{grid-template-columns:1fr 1fr}.season-funding-scale .is-season-total{grid-column:1/-1}.season-fund-bottom{grid-template-columns:1fr}}@media (width<=620px){.season-nav{min-height:60px;padding:0 15px}.season-nav-cta{padding:9px 10px;font-size:9px}.season-brand small{display:none}.season-brand .season-hex-mark{width:29px;height:32px}.season-hero{padding-top:57px}.season-hero-kicker{margin-bottom:40px}.season-hero-kicker span:nth-child(2){display:none}.season-hero h1{font-size:clamp(45px,13.7vw,68px);line-height:.98}.season-hero-grid{gap:37px}.season-hero-actions{flex-direction:column;align-items:flex-start}.season-decision-section{padding:0}.season-decision-lab{border-left:0;border-right:0}.season-lab-bar{padding:0 12px}.season-board-shell{min-height:450px}.season-board-status{grid-template-columns:auto auto}.season-board-status small{display:none}.season-board .catan-board{width:100%;max-height:93%}.season-board-footnote{line-height:1.5;display:block}.season-board-footnote span:last-child{display:none}.season-choice-panel{min-height:720px;padding:30px 20px}.season-target-copy q{font-size:10px}.season-target-action{display:none}.season-target{grid-template-columns:34px minmax(0,1fr)}.season-proof-strip{border-left:0;border-right:0;grid-template-columns:1fr 1fr;width:100%}.season-proof-strip>div:first-child{grid-column:1/-1}.season-proof-strip>div{min-height:100px}.season-why,.season-story-section,.season-fund{padding-top:90px;padding-bottom:90px}.season-why-grid{gap:50px;margin-top:48px}.season-why-thesis h2,.season-story-heading h2,.season-evidence-heading h2,.season-fund-heading h2{font-size:clamp(39px,12vw,55px)}.season-capability-list article{grid-template-columns:30px 78px minmax(0,1fr);gap:10px}.season-capability-list h3{font-size:19px}.season-story-heading,.season-evidence-heading,.season-fund-heading{margin-top:48px}.season-story-browser{margin-top:52px}.season-story-copy{min-height:510px;display:block}.season-story-number{display:none}.season-story-copy>div:last-child{padding:40px 25px}.season-evidence{padding:90px 22px}.season-evidence-topline>span{display:none}.season-release-grid{grid-template-columns:1fr;margin-top:58px}.season-release-grid>div{min-height:95px}.season-rehearsal-proof{grid-template-columns:1fr;margin-top:48px}.season-rehearsal-proof>a{grid-column:1}.season-funding-scale{grid-template-columns:1fr;margin-top:56px}.season-funding-scale .is-season-total{grid-column:1}.season-funding-scale>div{min-height:205px}.season-footer{grid-template-columns:1fr;gap:28px;padding:34px 22px}.season-footer p{grid-area:auto/1}.season-footer>div{justify-content:flex-start}}@media (prefers-reduced-motion:reduce){.season-page *,.season-page :before,.season-page :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body:has(.season-page.about-page){color:#181816;background:#f7f5ef}.season-page.about-page{color:#181816;background:#f7f5ef;min-height:100dvh;overflow:visible}.season-page.about-page a{color:inherit;text-underline-offset:4px}.season-page.about-page a:hover{color:var(--about-red)}.season-page.about-page .about-header a,.season-page.about-page .about-ask a{text-decoration:none}.season-page.about-page .about-ask a{color:#fff}.season-page.about-page .about-header{color:var(--about-muted);padding-block:20px;font-size:12px}.season-page.about-page .about-header a{color:var(--about-ink);font-size:14px}.season-page.about-page .about-hero{padding-block:clamp(54px,8vw,82px) clamp(42px,6vw,60px)}.season-page.about-page .about-hero h1{font-size:clamp(41px,6.7vw,64px)}.season-page.about-page .about-hero h1 em{color:var(--about-red);font-style:normal}.season-page.about-page .about-hero>p{margin-top:23px}.season-page.about-page .about-hero strong,.season-page.about-page .about-copy strong{color:var(--about-ink);font-weight:700}.about-watch{color:var(--about-ink);margin-top:25px;font-size:14px;font-weight:700;display:inline-block}.season-page.about-page .about-game{width:min(1180px,100% - 32px);padding-bottom:clamp(64px,8vw,88px)}.about-viewer{background:#252a2d;border:1px solid #b8b5ac;border-radius:4px;overflow:hidden;box-shadow:0 12px 34px #2625211a}.about-viewer .replay-app{height:min(760px,82vh);min-height:640px}.about-viewer .board-players{top:12px;bottom:12px}.about-viewer .loading-shell.is-embedded{min-height:640px}.season-page.about-page .about-copy{padding-block:clamp(58px,8vw,78px)}.season-page.about-page .about-copy h2{margin-bottom:21px}.season-page.about-page .about-copy p{line-height:1.55}.season-page.about-page .about-copy p+p{margin-top:20px}.about-emergence{color:var(--about-red);text-decoration:underline;-webkit-text-decoration-color:var(--about-red);-webkit-text-decoration-color:var(--about-red);-webkit-text-decoration-color:var(--about-red);text-decoration-color:var(--about-red)}@supports (color:color-mix(in lab, red, red)){.about-emergence{-webkit-text-decoration-color:color-mix(in srgb, var(--about-red) 35%, transparent);-webkit-text-decoration-color:color-mix(in srgb, var(--about-red) 35%, transparent);-webkit-text-decoration-color:color-mix(in srgb, var(--about-red) 35%, transparent);text-decoration-color:color-mix(in srgb, var(--about-red) 35%, transparent)}}.about-emergence{text-underline-offset:3px;text-decoration-thickness:2px}.about-credit{color:var(--about-red);font-weight:750}.about-contact{border-left:3px solid var(--about-red);margin-top:26px;padding-left:14px;font-size:15px;line-height:1.5;display:block}.about-contact a{color:var(--about-red);text-decoration:underline}.season-page.about-page .about-footer{padding-block:24px 34px}@media (width<=980px){.about-viewer .replay-app{height:auto;min-height:0;overflow:visible}.about-viewer .loading-shell.is-embedded{min-height:520px}}@media (width<=620px){.season-page.about-page .about-game{width:100%}.about-viewer{border-left:0;border-right:0;border-radius:0}.board-column{grid-template-rows:auto 126px}.board-stage{flex-direction:column;justify-content:flex-start;align-items:center;min-height:0;padding:58px 0 10px;display:flex;overflow:hidden}.catan-board{flex:none;order:1;width:min(100%,520px);height:auto;min-height:0;max-height:none}.game-bank{z-index:7;flex:none;order:2;margin:-7px auto 8px;position:relative;bottom:auto;left:auto;right:auto;transform:none}.board-players,.about-viewer .board-players{z-index:8;pointer-events:auto;scroll-snap-type:x mandatory;scrollbar-width:none;order:3;align-items:flex-end;gap:8px;width:100%;padding:4px 10px 10px;scroll-padding-inline:10px;display:flex;position:relative;inset:auto;overflow:auto hidden}.board-players::-webkit-scrollbar{display:none}.player-corner,.player-corner-1,.player-corner-2,.player-corner-3,.player-corner-4{scroll-snap-align:start;flex:0 0 min(68vw,240px);width:min(68vw,240px);min-width:min(68vw,240px);position:relative;inset:auto}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
