:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#15191d;background:#f3f4f2;font-synthesis:none;--ink: #15191d;--page: #f3f4f2;--surface: #ffffff;--primary: #156064;--primary-hover: #0e4d50;--primary-tint: #e4f1ef;--primary-tint-hover: #d2e8e5;--secondary: #853149;--secondary-hover: #6f273d;--secondary-tint: #f9eef1;--muted: #4f5b57;--subtle: #64706c;--border: #d8ddda;--divider: #e6e9e7;--field-border: #aeb8b4;--danger: #7a2418;--danger-bg: #f9edeb;--font-city-state: Georgia, "Times New Roman", serif;--radius-control: 7px;--radius-panel: 8px;--z-sticky: 10}*{box-sizing:border-box}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}html{min-width:320px;background:var(--page)}body{min-width:320px;min-height:100vh;margin:0;background:var(--page)}button,input,select,textarea{font:inherit}button{min-height:44px;border:0;border-radius:var(--radius-control);padding:10px 14px;color:#fff;background:var(--primary);font-weight:800;cursor:pointer;transition:background-color .18s ease-out,color .18s ease-out}button:hover:not(:disabled){background:var(--primary-hover)}button:disabled{cursor:not-allowed;opacity:.52}input,select,textarea{width:100%;min-height:44px;border:1px solid var(--field-border);border-radius:var(--radius-control);padding:10px 12px;color:var(--ink);background:var(--surface)}input::placeholder,textarea::placeholder{color:#5d6864;opacity:1}input[type=color]{padding:4px}textarea{min-height:104px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--primary);outline:3px solid rgb(21 96 100 / 20%)}button:focus-visible,summary:focus-visible{outline:3px solid rgb(21 96 100 / 24%);outline-offset:2px}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--ink);letter-spacing:0;text-wrap:balance}h1,h2{line-height:1.08}h3{line-height:1.2}.city-state-name{font-family:var(--font-city-state);font-weight:700;letter-spacing:0}p{color:var(--muted);line-height:1.5;text-wrap:pretty}.login-screen{display:grid;min-height:100vh;place-items:center;padding:18px;background:var(--ink)}.login-panel{width:min(100%,410px);border-radius:var(--radius-panel);padding:26px;background:var(--surface);box-shadow:0 4px 8px #0000003d}.login-panel h1{margin-bottom:24px;font-size:2.35rem}.login-form,.setup-form,.transfer-form{display:grid;gap:16px}label,fieldset{display:grid;gap:7px;min-width:0;margin:0;border:0;padding:0;color:#313a37;font-size:.92rem;font-weight:750}legend{margin-bottom:10px;padding:0}.app-shell{width:min(100%,1040px);margin:0 auto;padding:14px 16px 48px}.topbar{display:flex;min-height:56px;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--border)}.topbar h1{margin:0;font-size:1.2rem;font-weight:850}.account{display:flex;min-width:0;align-items:center;gap:10px;color:var(--muted);font-size:.88rem;font-weight:750}.account span{max-width:11rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-action{flex:0 0 auto;min-height:44px;padding-inline:8px 0;color:var(--secondary);background:transparent;white-space:nowrap}.account-action:hover:not(:disabled){color:var(--secondary-hover);background:transparent}.banner,.screen-status,.form-error{border-radius:var(--radius-panel);padding:12px}.banner{margin:16px 0 0}.connection-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#563f09;background:#fff4cf}.connection-banner button{flex:0 0 auto;min-height:36px;padding:6px 10px}.banner.error,.form-error{margin-bottom:0;color:var(--danger);background:var(--danger-bg)}.screen-status{margin:16px auto;color:var(--muted);background:var(--surface)}.setup-flow,.active-game{display:grid;gap:22px;padding-top:24px}.page-heading,.game-heading,.section-heading,.waiting-panel{display:flex;align-items:center;justify-content:space-between;gap:16px}.page-heading h2,.game-heading h2{margin-bottom:5px;font-size:1.75rem}.page-heading p,.game-heading p,.waiting-panel p{margin-bottom:0}.city-preview{position:sticky;z-index:var(--z-sticky);top:8px;align-self:start}.city-state-card{display:block;min-width:0;border:1px solid var(--border);border-radius:var(--radius-panel);overflow:hidden;background:var(--surface)}.city-state-card>.city-state-flag{margin-bottom:0;border-radius:0}.city-state-card-copy{padding:8px 12px;text-align:center}.city-state-card-copy>.city-state-name{padding-block:8px;font-size:2rem}.city-state-flag{position:relative;display:grid;width:100%;min-height:96px;place-items:center;overflow:hidden;margin-bottom:12px;border-radius:var(--radius-panel);color:var(--symbol);background:linear-gradient(90deg,var(--primary) 0 50%,var(--secondary) 50% 100%);box-shadow:inset 0 0 0 1px #00000024}.city-state-flag>svg{position:relative;z-index:1;width:64px;height:64px;transform:scale(2.5);filter:drop-shadow(0 2px 3px rgb(0 0 0 / 32%));stroke-width:2.4}.banner-pattern{position:absolute;inset:0}.pattern-left-diagonal{background-image:linear-gradient(135deg,transparent 0 43%,var(--accent) 43% 57%,transparent 57% 100%)}.pattern-cross{background-image:linear-gradient(90deg,transparent 0 43%,var(--accent) 43% 57%,transparent 57% 100%),linear-gradient(0deg,transparent 0 40%,var(--accent) 40% 60%,transparent 60% 100%)}.pattern-x{background-image:linear-gradient(135deg,transparent 0 45%,var(--accent) 45% 55%,transparent 55% 100%),linear-gradient(45deg,transparent 0 45%,var(--accent) 45% 55%,transparent 55% 100%)}.pattern-vertical-stripes{background-image:linear-gradient(90deg,transparent 0 12%,var(--accent) 12% 22%,transparent 22% 45%,var(--accent) 45% 55%,transparent 55% 78%,var(--accent) 78% 88%,transparent 88% 100%)}.pattern-horizontal-stripe{background-image:linear-gradient(0deg,transparent 0 39%,var(--accent) 39% 61%,transparent 61% 100%)}.pattern-circle{background-image:radial-gradient(circle at center,var(--accent) 0 29%,transparent 30% 100%)}.pattern-triangle{inset:10% 20%;clip-path:polygon(50% 4%,96% 92%,4% 92%);background:var(--accent)}.city-state-card h2,.city-state-card h3{margin-bottom:0;font-size:1.5rem}.city-state-card h2:not(:last-child),.city-state-card h3:not(:last-child){margin-bottom:8px}.ruler,.motto{line-height:1.5}.ruler{margin-bottom:8px;color:#313a37;font-weight:800}.motto{margin-bottom:4px!important;color:var(--secondary);font-size:.94rem;font-weight:500;font-style:italic;line-height:1.35}.city-state-card .ruler{margin-bottom:2px;line-height:1.25}.city-state-card .motto{line-height:1.25;text-wrap:balance}.field-grid{display:grid;gap:14px}.field-group{display:grid;gap:7px}.field-with-action{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px}.quote-actions{display:flex;flex-direction:column;gap:8px}.icon-button{display:grid;width:44px;min-height:44px;place-items:center;padding:0;color:var(--primary);background:var(--primary-tint)}.icon-button:hover:not(:disabled){color:var(--primary-hover);background:var(--primary-tint-hover)}.icon-button svg{width:22px;height:22px}button>*{pointer-events:none}.portrait-button{overflow:hidden;padding:2px;background:var(--ink)}.portrait-button:hover:not(:disabled){background:var(--secondary)}.portrait-button img{width:100%;height:40px;border-radius:5px;object-fit:cover}.ayn-rand-button img{object-position:center 24%}.cycle-field{gap:0}.cycle-control{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:4px;width:100%;border-radius:var(--radius-control);padding:4px;background:#e5e9e7}.cycle-selection{display:flex;min-width:0;min-height:44px;align-items:center;justify-content:center;gap:9px;padding:6px 10px;color:var(--ink);background:var(--surface);font-size:.9rem;font-weight:800;text-align:center}.cycle-selection>svg{flex:0 0 auto;width:23px;height:23px;color:var(--secondary)}.cycle-selection>span:last-child{min-width:0;overflow-wrap:anywhere}.pattern-swatch{position:relative;flex:0 0 auto;width:34px;height:26px;overflow:hidden;border-radius:4px;background-color:var(--primary-banner);box-shadow:inset 0 0 0 1px #0000002e}.pattern-swatch.pattern-triangle{inset:auto;clip-path:polygon(50% 4%,96% 92%,4% 92%);background:var(--accent);box-shadow:none}.color-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.color-field input{height:auto;aspect-ratio:1}.primary-action{background:var(--secondary)}.primary-action:hover:not(:disabled){background:var(--secondary-hover)}.setup-submit{display:grid}.ghost-action{color:var(--primary);background:var(--primary-tint)}.ghost-action:hover:not(:disabled){color:var(--primary-hover);background:var(--primary-tint-hover)}.waiting-panel{align-items:flex-start;border-block:1px solid var(--border);padding:16px 0}.waiting-panel h3{margin-bottom:5px}.disclosure{min-width:0;border-block:1px solid var(--border);background:transparent}.disclosure+.disclosure{border-top:0}.disclosure summary{min-height:52px;padding:15px 2px;color:var(--ink);font-weight:800;line-height:1.35;cursor:pointer}.disclosure summary::marker{color:var(--primary)}.disclosure-content{padding:0 2px 18px}.secret-goal-disclosure{border-block:0}.secret-goal-disclosure+.disclosure{border-bottom:0;margin-top:-12px}.customization-fields{padding-top:4px}.game-heading{position:relative;align-items:flex-start}.endgame-trigger{position:absolute;z-index:2;top:10px;right:10px;color:var(--ink);background:#ffffffe5;box-shadow:0 2px 7px #15191d2e}.endgame-trigger:hover:not(:disabled){color:var(--secondary);background:var(--surface)}.endgame-trigger span{position:absolute;top:-5px;right:-5px;display:grid;width:20px;height:20px;place-items:center;border:2px solid var(--surface);border-radius:50%;color:#fff;background:var(--secondary);font-size:.7rem;line-height:1}.approval-panel{--approval-color: #81701b;display:grid;grid-template-columns:84px minmax(0,1fr);grid-template-areas:"speech speech" "character label" "character bar" "character taxes";align-items:center;gap:7px 8px;min-width:0}.approval-speech{grid-area:speech;position:relative;display:grid;width:min(280px,100%);height:64px;place-items:center;margin:0 0 4px;border:2px solid var(--ink);border-radius:var(--radius-panel);padding:7px 12px;background:var(--surface);box-shadow:0 2px 4px #15191d1f;font-size:.85rem;font-weight:750;line-height:1.25;overflow-wrap:anywhere;text-align:center}.approval-speech:before,.approval-speech:after{position:absolute;top:100%;left:42px;width:0;height:0;border:solid transparent;content:"";pointer-events:none}.approval-speech:before{margin-left:-10px;border-width:10px;border-top-color:var(--ink)}.approval-speech:after{top:calc(100% - 2px);margin-left:-8px;border-width:10px 8px 0;border-top-color:var(--surface)}.approval-speech-content{max-width:100%}.approval-crying{--approval-color: #8a2635}.approval-upset{--approval-color: #a3471f}.approval-neutral{--approval-color: #81701b}.approval-positive{--approval-color: #156064}.approval-happy{--approval-color: #2f6f45}.approval-character{grid-area:character;display:block;width:84px;height:104px;object-fit:contain;object-position:center bottom}.approval-heading{grid-area:label;display:flex;min-width:0;align-items:center;justify-content:space-between;gap:10px}.approval-label{align-self:flex-end;padding-inline-start:8px;color:var(--subtle);font-size:1rem;font-weight:850;line-height:1;text-transform:uppercase}.approval-boost-trigger{flex:0 0 44px;color:#fff;background:var(--primary)}.approval-boost-trigger:hover:not(:disabled){color:#fff;background:var(--primary-hover)}.approval-bar{grid-area:bar;position:relative;width:100%;height:28px;overflow:hidden;border:2px solid var(--approval-color);border-radius:999px;background:#525b57}.approval-fill{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:var(--approval-color);transition:width .18s ease-out}.approval-breakpoint{position:absolute;z-index:1;inset-block:0;width:2px;background:#ffffffb8;box-shadow:1px 0 #15191d59;transform:translate(-1px)}.approval-bar strong{position:absolute;z-index:2;inset:0;display:grid;place-items:center;color:#fff;font-size:.86rem;line-height:1;text-shadow:0 1px 2px rgb(0 0 0 / 70%)}.approval-taxes{grid-area:taxes;align-self:start;display:flex;align-items:center;gap:3px;margin:0;padding-inline-start:8px;color:var(--muted);font-size:.9rem}.approval-taxes svg{width:17px;height:17px;color:var(--approval-color)}.approval-taxes strong{color:var(--ink)}.approval-boost-modal{display:flex;min-height:calc(100dvh - 120px);width:min(100%,520px);flex-direction:column;gap:20px;margin:0 auto;border-top:1px solid var(--border);padding-top:20px}.approval-boost-balance{display:flex;align-items:center;gap:3px;margin:0;color:var(--ink);font-size:1rem;font-weight:800}.approval-boost-balance svg{width:18px;height:18px;color:var(--secondary)}.approval-boost-balance strong{color:var(--ink)}.approval-boost-explainer{margin:0}.approval-tax-schedule{border-block:1px solid var(--border);padding-block:12px}.approval-tax-schedule h3{margin:0 0 9px;color:var(--subtle);font-size:.76rem;text-transform:uppercase}.approval-tax-schedule dl{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:0}.approval-tax-schedule dl>div{min-width:0;padding-inline:6px;text-align:center}.approval-tax-schedule dl>div+div{border-left:1px solid var(--divider)}.approval-tax-schedule dt{color:var(--subtle);font-size:.68rem;font-weight:750;white-space:nowrap}.approval-tax-schedule dd{display:flex;align-items:center;justify-content:center;margin:3px 0 0;color:var(--ink);font-size:.86rem;font-weight:850}.approval-tax-schedule dd svg{flex:0 0 auto;width:14px;height:14px;color:var(--secondary)}.approval-boost-change{display:grid;flex:1;place-items:center;margin:0;color:var(--ink);font-size:3rem;font-weight:800;line-height:1.1;text-align:center}.approval-boost-change strong{color:#2f6f45}.approval-boost-change-content{display:grid;justify-items:center;gap:8px}.approval-boost-eyebrow{justify-self:start;color:var(--subtle);font-size:.76rem;font-weight:850;line-height:1;text-transform:uppercase}.approval-boost-footer{display:grid;gap:12px;margin-top:auto}.approval-boost-note{margin:0;color:var(--subtle);font-size:.85rem;line-height:1.4}.approval-boost-note svg{width:16px;height:16px;margin-inline:3px 1px;vertical-align:-3px}.approval-boost-footer button{display:flex;width:100%;min-width:0;align-items:center;justify-content:center;gap:6px;overflow-wrap:anywhere}.approval-boost-footer button svg{flex:0 0 auto;width:18px;height:18px}.approval-boost-price{display:inline-flex;align-items:center}.wallet-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-block:1px solid var(--border)}.wallet-summary div{display:grid;gap:5px;min-width:0;padding:16px 0}.wallet-summary div+div{border-left:1px solid var(--border)}.wallet-summary span{color:var(--subtle);font-size:.76rem;font-weight:850;text-align:center}.wallet-summary strong{display:flex;align-items:center;justify-content:center;font-size:1.65rem;line-height:1;white-space:nowrap}.wallet-summary strong svg{width:1em;height:1em}.wallet-market-trigger{justify-self:center;min-height:44px;padding:4px 0;color:var(--primary);background:transparent;font-size:1.65rem;font-weight:850;line-height:1;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px;white-space:nowrap}.wallet-market-trigger:hover:not(:disabled){color:var(--primary-hover);background:transparent}.mining-panel{display:grid;justify-items:center;gap:16px;border-bottom:1px solid var(--border);padding-bottom:22px}.mining-heading{justify-content:flex-start;width:100%}.mining-heading h3{margin:0;color:var(--secondary);font-size:1.15rem}.mining-heading .mining-yield{display:flex;width:100%;align-items:center;justify-content:center;gap:.16em;white-space:nowrap}.mining-yield svg{width:1.1em;height:1.1em}.mining-yield-amount{display:inline-block;width:4ch;font-variant-numeric:tabular-nums;text-align:left}.mining-heading .mining-complete-summary{display:flex;width:100%;flex-wrap:wrap;justify-content:center;gap:2px 8px;color:var(--ink);font-size:.86rem;line-height:1.4;text-align:center}.mining-complete-summary span{display:inline-flex;align-items:center;white-space:nowrap}.mining-complete-summary span+span:before{margin-right:8px;content:"|";color:var(--subtle)}.mining-complete-summary svg{width:17px;height:17px;color:var(--secondary)}.mining-complete-summary time{margin-left:4px}.mining-button{--mining-progress: 0deg;--mining-segment: 15deg;--mining-gap: 2deg;display:grid;width:min(176px,52vw);min-height:0;aspect-ratio:1;place-items:stretch;border-radius:50%;padding:8px;background:repeating-conic-gradient(transparent 0 calc(var(--mining-segment) - var(--mining-gap)),var(--page) 0 var(--mining-segment)),conic-gradient(var(--secondary) var(--mining-progress),var(--divider) 0);box-shadow:inset 0 0 0 1px #15191d1a;-webkit-user-select:none;user-select:none}.mining-button:hover:not(:disabled){background:repeating-conic-gradient(transparent 0 calc(var(--mining-segment) - var(--mining-gap)),var(--page) 0 var(--mining-segment)),conic-gradient(var(--secondary-hover) var(--mining-progress),#d8ddda 0)}.mining-button:disabled{cursor:default;opacity:.7;background:conic-gradient(var(--secondary) var(--mining-progress),var(--divider) 0)}.mining-button-face{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;border-radius:50%;color:#fff}.mining-button-pulse{position:absolute;inset:0;border-radius:inherit;background:var(--primary);box-shadow:0 2px 6px #15191d3d;transition:transform .1s ease-out}.mining-button:active:not(:disabled) .mining-button-pulse{transform:scale(.96)}.mining-button:disabled .mining-button-pulse{background:var(--secondary)}.mining-button-face strong{position:relative;font-size:1.45rem;line-height:1.05;text-align:center}.mining-button-face strong span{display:block}.mining-countdown{position:relative;font-size:1.55rem;font-variant-numeric:tabular-nums;font-weight:800}.mining-panel .form-error{width:100%}.mining-footer{display:flex;width:100%;min-height:44px;align-items:center;justify-content:flex-start}.mining-labor-trigger{position:relative}.mining-labor-trigger.active{color:var(--secondary);background:var(--secondary-tint)}.mining-labor-status{position:absolute;right:5px;bottom:5px;width:9px;height:9px;border:2px solid var(--surface);border-radius:50%;background:var(--primary)}.mining-labor-manager{display:grid;gap:0;width:min(100%,680px);margin:0 auto}.mining-labor-help{border-bottom:1px solid var(--border);padding:12px 8px}.mining-labor-help summary{font-weight:850;cursor:pointer}.mining-labor-help p{margin:8px 0 0;color:var(--muted);font-size:.86rem}.mining-labor-summary{display:grid;grid-template-columns:.9fr 1fr 1.2fr;margin:0;border-block:1px solid var(--border)}.mining-labor-summary>div{display:grid;gap:3px;min-width:0;padding:13px 8px;text-align:center}.mining-labor-summary dt{color:var(--subtle);font-size:.76rem;font-weight:800}.mining-labor-summary dd{margin:0;font-weight:850;overflow-wrap:anywhere}.mining-labor-balance{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:0;border-bottom:1px solid var(--border);padding:14px 8px;color:var(--subtle);font-size:.86rem;font-weight:800}.mining-labor-balance strong{color:var(--ink);font-size:1rem}.mining-labor-summary+.mining-labor-balance{border-bottom:0;padding-bottom:6px}.mining-labor-balance+.mining-labor-balance{padding-top:6px}.mining-labor-section{display:grid;gap:14px;border-bottom:1px solid var(--border);padding:22px 0}.mining-labor-worker{justify-self:center;width:min(52%,180px);aspect-ratio:1;object-fit:contain}.mining-labor-heading{display:flex;align-items:start;justify-content:space-between;gap:16px}.mining-labor-heading h3,.mining-labor-heading p,.mining-overdrive-active{margin:0}.mining-labor-heading h3{font-size:1rem}.mining-labor-section>.mining-labor-heading{justify-content:center;text-align:center}.mining-labor-section>.mining-labor-heading h3{font-size:1.1rem}.mining-labor-heading p{color:var(--muted);font-size:.86rem}.mining-labor-heading strong{flex:0 0 auto;font-size:.88rem;text-align:right}.mining-labor-action-row{display:grid;gap:10px}.mining-labor-hours{display:grid;justify-items:center;gap:8px}.mining-labor-action-row .quantity-stepper{grid-template-columns:55px 45px 55px;justify-content:center}.mining-labor-action-row .quantity-stepper .icon-button{width:55px;min-width:55px;height:55px;border:2px solid var(--primary);border-radius:50%;background:transparent}.mining-labor-action-row .quantity-stepper .icon-button svg{width:25px;height:25px}.mining-labor-action-row .quantity-stepper>strong{font-size:1.25rem}.mining-labor-rate{display:flex;align-items:center;justify-content:center;margin:0;color:var(--muted);font-size:.86rem}.mining-labor-rate svg{width:16px;height:16px}.mining-labor-section>button,.mining-labor-action-row>button{width:100%}.mining-labor-power-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;width:min(100%,430px);border-bottom:1px solid var(--border);padding:22px 0}.mining-labor-power-section{display:grid;align-content:start;justify-items:center;min-width:0;gap:10px}.mining-labor-power-section .mining-labor-heading{display:grid;align-content:start;justify-items:center;gap:3px;min-width:0;min-height:72px;text-align:center}.mining-labor-power-section .mining-labor-heading strong{text-align:center}.mining-labor-power-action{display:grid;width:50%;min-height:0;aspect-ratio:1;place-items:center;padding:10px}.mining-labor-power-action svg{width:42px;height:42px}.mining-labor-power-label{margin:0;color:var(--ink);font-size:.86rem;font-weight:850;line-height:1.2;text-align:center;overflow-wrap:anywhere}.mining-labor-power-action:disabled~.mining-labor-power-label{color:var(--muted)}.mining-labor-overtime-action{background:var(--danger)}.mining-labor-overtime-action:hover:not(:disabled){background:#621b12}.mining-overdrive-active{color:var(--secondary);font-size:.86rem;font-weight:850;line-height:1.2;text-align:center}.game-actions{display:flex;flex-wrap:wrap;gap:8px}.game-actions button{flex:1 1 120px}.game-actions .challenge-action{display:inline-flex;align-items:center;justify-content:center;gap:7px}.game-actions .tournaments-action{flex-basis:100%}.challenge-action.has-pending-votes{outline:2px solid rgb(255 255 255 / 45%);outline-offset:-3px;animation:pending-vote-pulse 1.8s ease-in-out infinite}@keyframes pending-vote-pulse{50%{outline-color:#fff;outline-offset:-6px}}.challenge-vote-count{display:grid;width:28px;height:28px;place-items:center;border:2px solid currentcolor;border-radius:50%;font-size:1.15rem;font-weight:900;line-height:1}.endgame-declaration-panel{display:grid;gap:18px}.endgame-consequence{margin-bottom:0}.endgame-declaration-list{display:grid;gap:0;margin:0;padding:0;list-style:none}.endgame-declaration-list li{display:grid;grid-template-columns:58px minmax(0,1fr) 24px;align-items:center;gap:12px;min-height:60px;border-top:1px solid var(--divider)}.endgame-declaration-list li>svg{width:23px;height:23px;color:var(--subtle)}.endgame-declaration-list li>svg[aria-label=Ready]{color:var(--primary)}.endgame-mini-flag,.goal-result-flag,.final-ranking-flag{width:58px;min-height:38px;aspect-ratio:3 / 2;margin:0;border-radius:4px}.endgame-mini-flag>svg,.goal-result-flag>svg,.final-ranking-flag>svg{width:24px;height:24px;transform:none}.endgame-toggle{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:12px;min-height:56px;cursor:pointer}.endgame-toggle input{position:absolute;width:1px;height:1px;min-height:0;opacity:0}.endgame-toggle>span{position:relative;width:48px;height:28px;border-radius:14px;background:#c8cfcc;transition:background-color .18s ease-out}.endgame-toggle>span:after{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:var(--surface);box-shadow:0 1px 3px #15191d3d;content:"";transition:transform .22s cubic-bezier(.32,.72,0,1)}.endgame-toggle input:checked+span{background:var(--secondary)}.endgame-toggle input:checked+span:after{transform:translate(20px)}.endgame-toggle input:focus-visible+span{outline:3px solid rgb(21 96 100 / 24%);outline-offset:2px}.endgame-toggle:has(input:disabled){cursor:wait;opacity:.62}.goal-scoring,.final-standings{padding-top:12px}.goal-scoring-heading,.final-heading{padding:22px 2px 20px}.goal-scoring-heading p,.final-heading p{margin-bottom:5px;color:var(--secondary);font-size:.76rem;font-weight:850;text-transform:uppercase}.goal-scoring-heading h1,.final-heading h1{margin-bottom:8px;font-family:var(--font-city-state);font-size:2rem}.goal-scoring-heading span{color:var(--muted);font-size:.9rem;font-weight:750}.physical-token-scoring{display:grid;gap:14px;margin-bottom:22px;border-bottom:1px solid var(--border);padding-bottom:22px}.physical-token-scoring>header{display:flex;align-items:end;justify-content:space-between;gap:12px}.physical-token-scoring h2,.physical-token-scoring p{margin-bottom:3px}.physical-token-scoring h2{font-size:1.25rem}.physical-token-scoring p,.physical-token-scoring>header>strong{color:var(--muted);font-size:.82rem}.physical-token-scoring>header>strong{flex:0 0 auto}.token-count-picker{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:3px;width:100%;border-radius:var(--radius-control);padding:3px;background:#e5e9e7}.token-count-picker button{min-width:0;min-height:48px;border-radius:4px;padding:0;color:#3e4945;background:transparent}.token-count-picker button:hover:not(:disabled){color:var(--ink);background:#ffffffa3}.token-count-picker button.active{color:var(--primary);background:var(--surface);box-shadow:0 1px 2px #15191d24}.token-count-list{display:grid;gap:0;margin:0;padding:0;list-style:none}.token-count-list li{display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:60px;border-top:1px solid var(--divider)}.token-count-list li>strong{color:var(--secondary);font-size:.82rem;text-align:right}.goal-result-list{display:grid;gap:12px;margin:0;padding:0;list-style:none}.goal-result-list>li{display:grid;gap:14px;min-width:0;border:1px solid var(--border);border-radius:var(--radius-panel);padding:14px;background:var(--surface)}.goal-result-player{display:grid;grid-template-columns:58px minmax(0,1fr) 28px;align-items:center;gap:12px}.goal-result-player>div{display:grid;min-width:0;gap:2px}.goal-result-player>div span{overflow-wrap:anywhere;color:var(--subtle);font-size:.82rem}.goal-result-player>svg{width:27px;height:27px;color:var(--subtle)}.goal-result-succeeded .goal-result-player>svg{color:#2f6f45}.goal-result-failed .goal-result-player>svg{color:var(--danger)}.goal-result-copy h2{margin-bottom:5px;font-size:1.08rem}.goal-result-copy p{margin-bottom:8px}.goal-result-copy .goal-evidence{margin-bottom:0;color:var(--ink);font-weight:750}.goal-award{display:block;margin-top:8px;color:#2f6f45}.goal-vote{max-width:420px}.final-heading{text-align:center}.winner-list{display:grid;gap:26px}.final-winner{display:grid;gap:18px;padding-bottom:30px;animation:final-rise .7s cubic-bezier(.32,.72,0,1) both}.champion-flag-stage{position:relative;width:min(92%,700px);margin:0 auto;padding-left:13px;perspective:800px}.flagpole{position:absolute;z-index:2;top:-9px;bottom:-16px;left:4px;width:8px;border-radius:4px;background:linear-gradient(90deg,#8d7555,#e0c18d 48%,#6e583e);box-shadow:2px 2px 4px #15191d3d}.champion-flag{min-height:0;aspect-ratio:3 / 1.45;margin:0;border-radius:2px 7px 7px 2px;transform-origin:left center;animation:champion-flag-wave 2.7s cubic-bezier(.37,0,.63,1) infinite;box-shadow:inset 0 0 0 1px #00000029,0 12px 22px #15191d2e}.champion-flag:after{position:absolute;z-index:2;inset:0;background:linear-gradient(100deg,transparent 0 32%,rgb(255 255 255 / 18%) 43%,rgb(0 0 0 / 12%) 55%,transparent 68%);content:"";transform:translate(-55%);animation:flag-light 2.7s cubic-bezier(.37,0,.63,1) infinite;pointer-events:none}.champion-flag>svg{width:clamp(72px,18%,120px);height:auto;aspect-ratio:1}.final-winner-copy{display:grid;justify-items:center;text-align:center}.final-winner-copy>svg{width:38px;height:38px;margin-bottom:6px;color:#b78a16}.final-winner-copy h2{margin-bottom:3px;font-size:2rem}.final-winner-copy p{margin-bottom:7px}.final-winner-copy blockquote{max-width:620px;margin:8px 0 14px;color:var(--muted);font-family:var(--font-city-state);font-size:1.1rem;font-style:italic;line-height:1.45}.final-winner-copy>strong{color:var(--ink);font-size:1.65rem}.final-winner-copy>span{color:#2f6f45;font-size:.86rem;font-weight:800}.final-ranking{display:grid;margin:0;border-top:1px solid var(--border);padding:0;list-style:none}.final-ranking li{display:grid;grid-template-columns:36px 58px minmax(0,1fr);gap:8px 10px;align-items:center;min-width:0;border-bottom:1px solid var(--divider);padding:14px 2px}.rank-medal,.rank-number{display:grid;width:32px;place-items:center;color:var(--subtle)}.rank-medal svg{width:30px;height:30px}.rank-1{color:#b78a16}.rank-2{color:#7b858b}.rank-3{color:#a55b2d}.final-ranking-identity,.final-ranking-score{display:grid;min-width:0;gap:2px}.final-ranking-identity span,.final-ranking-identity small,.final-ranking-score span,.final-ranking-score small{color:var(--subtle);font-size:.78rem;line-height:1.35;overflow-wrap:anywhere}.final-ranking-score{grid-column:3 / -1;padding-left:0}.final-ranking-score strong{font-size:1.05rem}@keyframes champion-flag-wave{0%,to{transform:rotateY(1deg) skewY(0) scaleX(.995)}35%{transform:rotateY(-5deg) skewY(.7deg) scaleX(1)}70%{transform:rotateY(4deg) skewY(-.5deg) scaleX(.985)}}@keyframes flag-light{0%,to{opacity:.52;transform:translate(-52%)}50%{opacity:.9;transform:translate(48%)}}@keyframes final-rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}html:has(.full-screen-modal[open]){overflow:hidden}.full-screen-modal{position:fixed;inset:0;width:100dvw;max-width:none;height:100dvh;max-height:none;margin:0;border:0;padding:0;overflow-y:auto;scrollbar-gutter:stable;color:var(--ink);background:var(--page)}.full-screen-modal::backdrop{background:#15191d9e}.modal-shell{min-height:100%}.modal-toolbar{position:sticky;z-index:var(--z-sticky);top:0;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 16px;background:var(--page)}.modal-toolbar h2{margin:0;font-size:1.2rem}.modal-content{width:min(100%,1040px);margin:0 auto;padding:8px 16px 48px}.tournaments-panel{display:grid;gap:18px}.tournament-tabs{width:100%}.tournament-tabs button{min-height:48px}.tournament-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-panel);background:var(--surface)}.tournament-summary>div{display:grid;gap:4px;padding:14px}.tournament-summary>div+div{border-left:1px solid var(--divider)}.tournament-summary span,.tournament-match-label{color:var(--subtle);font-size:.72rem;font-weight:850;text-transform:uppercase}.tournament-summary strong{display:flex;align-items:center;gap:5px;font-size:1.02rem}.tournament-summary svg{width:18px;height:18px}.tournament-rules{border-top:0}.tournament-rules-list{display:grid;gap:8px;margin:0;padding-left:22px;color:var(--muted);line-height:1.5}.tournament-section{display:grid;gap:12px;border-top:1px solid var(--border);padding-top:18px}.tournament-section h3{margin:0}.tournament-section h3{font-size:1rem}.advantage-shop-list,.tournament-purchase-list,.tournament-ready-list,.loadout-allocation-list,.tournament-match ul{margin:0;padding:0;list-style:none}.advantage-shop-list{display:grid}.advantage-balance{display:flex;align-items:center;gap:5px;margin:0;color:var(--muted);font-size:.82rem;font-weight:750}.advantage-balance strong{display:inline-flex;align-items:center;gap:3px;color:var(--ink);font-size:.92rem}.advantage-balance svg{width:17px;height:17px}.advantage-shop-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;min-height:82px;border-top:1px solid var(--divider);padding-block:12px}.advantage-shop-list li>div{display:grid;gap:3px}.advantage-shop-list p{margin:0;color:var(--muted);font-size:.86rem}.advantage-shop-list span,.loadout-allocation-list span,.tournament-purchase-list span,.tournament-match li span{color:var(--subtle);font-size:.78rem}.advantage-shop-list button{display:inline-flex;min-width:92px;align-items:center;justify-content:center;gap:5px}.advantage-shop-list button svg{width:18px;height:18px}.tournament-purchases{border-top:1px solid var(--border)}.tournament-purchase-list,.tournament-ready-list{display:grid}.tournament-purchase-list li{display:grid;grid-template-columns:48px minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:10px;min-height:58px;border-top:1px solid var(--divider)}.city-state-flag.tournament-mini-flag{width:48px;min-height:32px;aspect-ratio:3 / 2;margin:0;border-radius:4px}.city-state-flag.tournament-mini-flag>svg{width:21px;height:21px;transform:none}.tournament-ready-list li{display:grid;grid-template-columns:48px minmax(0,1fr) 24px;align-items:center;gap:10px;min-height:58px;border-top:1px solid var(--divider)}.tournament-ready-list li>svg{width:23px;height:23px;color:var(--subtle)}.tournament-ready-list li>svg[aria-label=Ready]{color:var(--primary)}.tournament-ready-toggle{border-top:1px solid var(--divider);padding-top:10px}.tournament-bracket-scroll{max-width:100%;overflow-x:auto;overflow-y:hidden;padding:4px 2px 14px;overscroll-behavior-inline:contain;scrollbar-color:var(--field-border) transparent;scrollbar-width:thin}.tournament-bracket-scroll:focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 34%,transparent);outline-offset:2px}.tournament-bracket-canvas{position:relative;width:920px;height:550px;margin-inline:auto;isolation:isolate}.bracket-connectors{position:absolute;z-index:0;inset:0;width:920px;height:550px;overflow:visible;pointer-events:none}.bracket-connector{fill:none;stroke:#7d9f98;stroke-linecap:square;stroke-linejoin:round;stroke-width:2;vector-effect:non-scaling-stroke}.bracket-connector-loser{stroke:#ac7887;stroke-dasharray:6 6}.bracket-connectors marker path{fill:var(--field-border)}.bracket-connector-label{fill:var(--subtle);font-size:9px;font-weight:850;letter-spacing:0;paint-order:stroke;stroke:var(--page);stroke-width:5px;text-transform:uppercase}.tournament-match{position:absolute;z-index:1;display:grid;grid-template-rows:34px repeat(2,56px);width:250px;height:146px;overflow:hidden;border:0;border-radius:var(--radius-panel);background:var(--surface);box-shadow:inset 0 0 0 1px #5869633d,0 2px 8px #15191d0d}.bracket-match-quarterfinal-1,.bracket-match-semifinal-1{top:20px}.bracket-match-quarterfinal-2,.bracket-match-semifinal-2{top:244px}.bracket-match-quarterfinal-1,.bracket-match-quarterfinal-2{left:0}.bracket-match-semifinal-1,.bracket-match-semifinal-2{left:335px}.bracket-match-final,.bracket-match-third-place{left:670px}.bracket-match-final{top:132px}.bracket-match-third-place{top:390px}.tournament-match.current{background:#fff8fa;box-shadow:inset 4px 0 0 var(--secondary),inset 0 0 0 1px #8531494d,0 5px 16px #5d25351a}.tournament-match.settled{background:#f0f8f6;box-shadow:inset 0 0 0 1px #41776d61,0 2px 8px #15191d0a}.tournament-match>header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;border-bottom:1px solid var(--divider);padding-inline:10px;background:#f6f8f7e0}.tournament-match.current>header{padding-left:13px;background:#fceff3}.tournament-match-status{color:var(--subtle);font-size:.66rem;font-weight:800;text-align:right}.tournament-match[data-status="Reports disagree"] .tournament-match-status{color:var(--secondary)}.tournament-match ul{display:grid;grid-template-rows:repeat(2,56px)}.tournament-match li{display:grid;grid-template-columns:20px 36px minmax(0,1fr) 18px;align-items:center;gap:7px;border-top:1px solid var(--divider);padding-inline:9px}.tournament-match li:first-child{border-top:0}.tournament-match li.current-player{background:#f9eef1b8}.tournament-match .tournament-seed{display:grid;width:20px;height:20px;place-items:center;border-radius:4px;color:var(--muted);background:var(--page);font-size:.67rem;font-weight:900;font-variant-numeric:tabular-nums}.tournament-match .city-state-flag.bracket-player-flag{width:36px;min-width:36px;height:24px;min-height:24px;margin:0;border-radius:4px}.tournament-match .city-state-flag.bracket-player-flag>svg{width:14px;height:14px}.tournament-match li>.city-state-name{max-height:3.15em;overflow:hidden;color:var(--ink);font-size:.84rem;line-height:1.05;overflow-wrap:anywhere}.tournament-match li>.city-state-name.compact{font-size:.72rem}.tournament-match li>.city-state-name.dense{font-size:.58rem}.tournament-match li>svg{width:18px;height:18px;color:var(--subtle)}.tournament-match li.winner>svg,.tournament-match li.winner strong{color:var(--primary)}.tournament-match li.winner{background:#eaf5f2}.tournament-match li.tournament-slot-placeholder{grid-template-columns:20px 28px minmax(0,1fr);color:var(--subtle)}.tournament-placeholder-mark{display:grid;width:26px;height:26px;place-items:center;border:1px dashed var(--field-border);border-radius:4px;color:var(--subtle);font-weight:850}.tournament-slot-placeholder>span:last-child{font-size:.72rem;font-style:italic;line-height:1.2}.current-tournament-match{border:1px solid var(--border);border-radius:var(--radius-panel);padding:16px;background:var(--secondary-tint)}.current-tournament-match>h3{text-align:center}.matchup-versus{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px}.matchup-versus>div{display:grid;justify-items:center;gap:7px;min-width:0;text-align:center}.matchup-versus>span{padding:7px 5px 5px;border-top:2px solid var(--secondary);border-bottom:2px solid var(--secondary);color:var(--secondary);font-family:var(--font-city-state);font-size:1.75rem;font-style:italic;font-weight:900;line-height:.9;text-transform:uppercase;transform:translateY(-35%) rotate(-5deg)}.matchup-versus strong{max-width:100%;overflow-wrap:anywhere}.city-state-flag.matchup-flag{width:64px;height:42px;min-width:64px}.city-state-flag.matchup-flag>svg{width:20px;height:20px}.loadout-allocation-list{display:grid}.loadout-allocation-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:64px;border-top:1px solid #e2cfad}.loadout-allocation-list li>div:first-child{display:grid;gap:2px}.quantity-stepper{display:grid;grid-template-columns:44px 36px 44px;align-items:center}.quantity-stepper .icon-button{width:44px;min-width:44px;height:44px;padding:0;color:var(--primary);background:var(--primary-tint)}.quantity-stepper>strong{text-align:center;font-variant-numeric:tabular-nums}.lock-loadout-action{display:inline-flex;align-items:center;justify-content:center;gap:7px}.matchup-ready-copy{margin:0;color:var(--muted);line-height:1.45}.locked-loadout{display:flex;align-items:center;gap:8px;margin:0;font-weight:750}.locked-loadout svg{flex:0 0 auto;color:var(--primary)}.tournament-result-report{display:grid;gap:8px;border-top:1px solid #e2cfad;padding-top:12px}.tournament-result-report>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.tournament-result-report button{color:var(--primary);background:var(--primary-tint)}.tournament-result-report button.active{color:var(--surface);background:var(--secondary)}.tournament-podium{display:grid;gap:14px;scroll-margin-top:76px;border:1px solid var(--border);border-radius:var(--radius-panel);padding:16px;background:var(--secondary-tint)}.tournament-podium h3{margin:0;font-size:1rem;text-align:center}.tournament-podium ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:6px;margin:0;padding:0;list-style:none}.podium-place{display:grid;grid-row:1;grid-template-rows:170px auto;align-self:end;min-width:0}.podium-place-1{grid-column:2}.podium-place-2{grid-column:1}.podium-place-3{grid-column:3}.podium-competitor{display:grid;height:170px;align-content:end;justify-items:center;gap:4px;min-width:0;padding:0 2px 8px;text-align:center}.tournament-podium .city-state-flag.podium-flag{width:56px;min-width:56px;height:37px;min-height:37px;margin:0 0 4px;border-radius:5px}.tournament-podium .podium-place-1 .city-state-flag.podium-flag{width:64px;min-width:64px;height:42px;min-height:42px}.tournament-podium .city-state-flag.podium-flag>svg{width:18px;height:18px}.podium-place.current-player .podium-flag{outline:3px solid #156064;outline-offset:2px}.podium-competitor>.city-state-name{max-width:100%;max-height:3.2em;overflow:hidden;color:var(--ink);font-size:.8rem;line-height:1.05;overflow-wrap:anywhere}.podium-competitor>.city-state-name.compact{font-size:.62rem}.podium-you{color:var(--primary);font-size:.62rem;font-weight:900;text-transform:uppercase}.podium-payout,.podium-token{display:inline-flex;align-items:center;justify-content:center;gap:3px;max-width:100%;font-weight:850}.podium-payout{color:var(--ink);font-size:.76rem}.podium-payout svg,.podium-token svg{flex:0 0 auto;width:14px;height:14px}.podium-token{color:var(--secondary);font-size:.59rem;line-height:1.1}.podium-step{display:grid;place-items:start center;border-radius:6px 6px 2px 2px;padding-top:10px;color:var(--ink);box-shadow:inset 0 1px #ffffff85}.podium-step strong{font-family:var(--font-city-state);font-size:1.5rem;line-height:1}.podium-place-1 .podium-step{height:100px;background:#e5bd4c}.podium-place-2 .podium-step{height:72px;background:#bdc6c3}.podium-place-3 .podium-step{height:54px;background:#c3845e}.tournament-waiting{margin:0;border:1px solid var(--border);border-radius:var(--radius-panel);padding:18px;color:var(--muted);background:var(--secondary-tint);font-weight:750;text-align:center}.leaderboard-table{width:100%;border-collapse:collapse;background:var(--surface)}.leaderboard-table th,.leaderboard-table td{border-bottom:1px solid var(--divider);padding:12px;text-align:left;vertical-align:top}.leaderboard-table thead th{color:var(--subtle);font-size:.76rem;text-transform:uppercase}.leaderboard-table th:first-child{width:1%;text-align:center}.leaderboard-table td{display:grid;gap:16px}.leaderboard-table .leaderboard-flag{width:64px;min-width:64px;min-height:40px;margin:0}.leaderboard-table .leaderboard-flag>svg{width:28px;height:28px;transform:none}.leaderboard-faction{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:12px}.leaderboard-identity{display:grid;gap:3px;min-width:0}.leaderboard-identity strong,.leaderboard-identity span,.leaderboard-identity q{overflow-wrap:anywhere}.leaderboard-identity strong{font-size:1.05rem}.leaderboard-identity span{color:var(--muted);font-size:.86rem;font-weight:700}.leaderboard-identity q{color:var(--secondary);font-size:.84rem;font-style:italic}.leaderboard-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}.leaderboard-stats div{min-width:0}.leaderboard-stats dt{margin-bottom:2px;color:var(--subtle);font-size:.7rem;font-weight:800;text-transform:uppercase}.leaderboard-stats dd{margin:0;font-size:.95rem;font-variant-numeric:tabular-nums;font-weight:850;overflow-wrap:anywhere}@media(max-width:599px){.leaderboard-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.leaderboard-table tbody{display:block}.leaderboard-table tbody tr{display:grid;grid-template-columns:32px minmax(0,1fr);gap:10px;border-bottom:1px solid var(--divider)}.leaderboard-table tbody th{width:auto;border:0;padding:16px 0 0 12px}.leaderboard-table td{gap:14px;border:0;padding:16px 12px 16px 0}.leaderboard-faction{grid-template-columns:56px minmax(0,1fr);gap:10px}.leaderboard-table .leaderboard-flag{width:56px;min-width:56px}.leaderboard-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 8px}}.private-goal{display:grid;gap:7px}.private-goal strong{font-size:1.05rem;line-height:1.3}.private-goal p{max-width:70ch;margin-bottom:0}.secret-goal-reward{color:var(--secondary);font-weight:850}.secret-goal-rating{display:inline-flex;align-items:center;gap:2px;white-space:nowrap}.secret-goal-rating svg{width:.9em;height:.9em;color:var(--secondary)}.record-list .secret-goal-rating{color:inherit;font-size:inherit;line-height:inherit;overflow-wrap:normal}.challenges-panel h3,.action-panel h3,.activity-panel h3{margin-bottom:0;font-size:1.15rem}.record-list,.activity-list{display:grid;gap:0;margin:0;padding:0;list-style:none}.record-list>li,.activity-list>li{display:grid;gap:10px;border-top:1px solid rgb(133 49 73 / 16%);padding:14px 0}.record-list>li:first-child,.activity-list>li:first-child{border-top:0;padding-top:0}.record-list>li:last-child,.activity-list>li:last-child{padding-bottom:0}.record-list strong,.activity-list strong{display:block;margin-bottom:4px;line-height:1.28;overflow-wrap:anywhere}.record-list span,.activity-list span,.activity-list time{color:var(--muted);font-size:.88rem;line-height:1.4;overflow-wrap:anywhere}.record-list p{margin:7px 0 0}.action-panel,.challenges-panel,.activity-panel{display:grid;gap:16px;border-top:1px solid var(--border);padding-top:22px}.ew-market-panel,.market-view,.market-view>section{display:grid;gap:18px}.market-balances{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;border-block:1px solid var(--border)}.market-balances>div{min-width:0;padding:12px;text-align:center}.market-balances>div:nth-child(2n){border-left:1px solid var(--divider)}.market-balances>div:nth-child(n+3){border-top:1px solid var(--divider)}.market-balances dt{color:var(--subtle);font-size:.76rem;font-weight:800}.market-balances dd{margin:4px 0 0;color:var(--ink);font-size:1.2rem;font-weight:850}.market-order-count{color:var(--muted);font-size:.88rem;font-weight:750;text-align:right}.segmented-control.market-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.market-view{gap:28px}.market-view h3{margin:0;font-size:1.05rem}.market-order-list,.market-bid-list{display:grid;margin:0;padding:0;list-style:none}.market-order-list>li,.market-bid-list>li{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid var(--divider);padding:14px 0}.market-order-list>li:first-child,.market-bid-list>li:first-child{border-top:0;padding-top:0}.market-order-list>li>div{display:grid;min-width:0;gap:3px}.market-order-list strong,.market-bid-list strong{line-height:1.25}.market-order-list span,.market-order-list small,.market-bid-list span{color:var(--muted);line-height:1.35}.market-order-list small{font-size:.82rem}.market-order-list>li>button:not(.icon-button){flex:0 0 auto}.market-order-form{display:grid;gap:16px;border-top:1px solid var(--border);padding-top:16px}.market-order-form p{margin:0;font-size:.88rem}.market-status{margin:0;color:var(--primary-hover);font-weight:750}.my-market-orders .icon-button{flex:0 0 44px}.challenges-panel{display:grid;gap:18px;padding-top:0}.challenge-rules-disclosure{border-top:0}.challenge-rules-list{display:grid;gap:8px;margin:0;padding-left:22px;color:var(--muted);line-height:1.5}.active-attempts{display:grid;gap:12px;border-radius:var(--radius-panel);padding:16px;background:var(--secondary-tint)}.active-attempts h4{margin:0;font-size:.78rem;font-weight:850;text-transform:uppercase}.attempt-list,.challenge-list{display:grid;margin:0;padding:0;list-style:none}.attempt-list>li,.challenge-list>li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;border-top:1px solid rgb(133 49 73 / 16%);padding:15px 0}.attempt-list>li:first-child,.challenge-list>li:first-child{border-top:0;padding-top:0}.attempt-list>li:last-child,.challenge-list>li:last-child{padding-bottom:0}.challenge-list>li{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;border-top-color:var(--divider)}.challenge-topline{display:flex;grid-column:1 / -1;align-items:center;justify-content:space-between;gap:12px;margin-bottom:-10px}.challenge-list .challenge-copy{grid-column:1 / -1}.challenge-rewards{display:flex;align-items:center;gap:6px}.challenge-approval-reward{display:inline-flex;align-items:center;gap:3px;border-radius:6px;padding:6px 9px;color:#28734b;background:#e5f1e9;font-size:.95rem;font-weight:850;line-height:1}.challenge-approval-reward svg{width:1em;height:1em}.attempt-list .challenge-copy,.attempt-vote-status,.attempt-list .verdict-actions{grid-column:1 / -1}.challenge-reward{border-radius:6px;padding:6px 9px;color:var(--secondary);background:var(--secondary-tint);font-size:1rem;font-weight:850;line-height:1}.challenge-copy{min-width:0}.challenge-copy strong,.challenge-copy span,.challenge-copy p{display:block;overflow-wrap:anywhere}.challenge-copy strong{margin:4px 0;line-height:1.3}.challenge-copy p{max-width:70ch;margin:0 0 7px}.challenge-copy span:not(.challenge-stars){color:var(--muted);font-size:.86rem;line-height:1.4}.challenge-copy span.challenge-failures{margin-bottom:6px;color:var(--danger);font-weight:800}.challenge-stars{display:flex;gap:3px;color:var(--secondary)}.challenge-stars svg{width:16px;height:16px}.challenge-block{margin-top:5px;color:var(--danger)!important;font-weight:750}.attempt-vote-status{display:flex;gap:7px}.attempt-vote-slot{display:grid;width:32px;height:32px;place-items:center;border-radius:4px;color:#fff;background:var(--border)}.attempt-vote-slot:nth-child(3){position:relative;margin-right:8px}.attempt-vote-slot:nth-child(3):after{position:absolute;top:-3px;right:-8px;height:38px;border-right:2px dotted var(--subtle);content:""}.attempt-vote-slot.completed{background:#28734b}.attempt-vote-slot.failed{background:var(--danger)}.attempt-vote-slot svg{width:20px;height:20px}.attempt-spend svg{width:1em;height:1em;vertical-align:-.14em}.verdict-actions{display:flex;flex-wrap:wrap;gap:8px}.verdict-prompt{flex-basis:100%;color:var(--muted);font-size:.8rem;font-weight:750}.verdict-actions button{display:grid;flex:1;place-items:center;width:auto;height:44px;padding:0}.verdict-actions svg{width:22px;height:22px}.complete-verdict{background:#28734b}.complete-verdict:hover:not(:disabled),.complete-verdict[aria-pressed=true]{background:#175c38}.failed-verdict{background:var(--danger)}.failed-verdict:hover:not(:disabled),.failed-verdict[aria-pressed=true]{background:#5f1b12}.verdict-actions button[aria-pressed=true]{box-shadow:0 0 0 3px var(--surface),0 0 0 6px currentcolor}.challenge-tools{display:grid;gap:12px}.challenge-filter{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#313a37;font-size:.92rem;font-weight:750}.challenge-list>li>button{display:flex;grid-column:1 / span 2;align-items:center;justify-content:center;gap:3px;width:100%}.challenge-list>li>button svg{width:1.1em;height:1.1em}.challenge-list>li>button del{opacity:.72}.search-field{position:relative}.search-field svg{position:absolute;top:50%;left:12px;width:18px;height:18px;color:var(--subtle);transform:translateY(-50%);pointer-events:none}.search-field input{width:100%;padding-left:40px}.rating-filter{display:grid;grid-template-columns:repeat(4,44px);gap:3px;border-radius:var(--radius-control);padding:3px;background:#e5e9e7}.rating-filter button{min-width:44px;min-height:44px;padding:0;color:#3e4945;background:transparent}.rating-filter button.active{color:var(--primary);background:var(--surface);box-shadow:0 1px 2px #15191d24}.segmented-control{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;width:100%;border-radius:var(--radius-control);padding:3px;background:#e5e9e7}.segmented-control button{min-height:44px;border-radius:5px;padding:8px 12px;color:#3e4945;background:transparent;font-size:.9rem}.segmented-control button:hover:not(:disabled){color:var(--ink);background:#ffffffa3}.segmented-control button.active{color:var(--primary);background:var(--surface);box-shadow:0 1px 2px #15191d24}.transfer-form{padding-top:2px}.note-field,.form-error,.transfer-form>button{grid-column:1 / -1}.reference-disclosure .record-list>li,.activity-list>li{border-top-color:var(--divider)}.section-heading{align-items:flex-start}.activity-list li{grid-template-columns:minmax(0,1fr)}.activity-list time{display:block}.activity-list>li.ledger-transfer-row{grid-template-columns:minmax(0,1fr)}.ledger-transfer-copy{display:grid;gap:2px;min-width:0}.activity-list .ledger-transfer-copy strong{margin-bottom:0;line-height:1.1}.activity-list .ledger-transfer-meta,.activity-list .ledger-transfer-meta time{display:inline;color:var(--muted);font-size:.86rem;line-height:1.15}.empty-state{margin-bottom:0}.text-action{justify-self:start;min-height:44px;padding:6px 0;color:var(--primary);background:transparent}.text-action:hover:not(:disabled){color:var(--primary-hover);background:transparent}@media(min-width:600px){.field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.transfer-form{grid-template-columns:minmax(0,1.2fr) minmax(120px,.6fr)}.mining-labor-action-row{grid-template-columns:auto minmax(220px,1fr);align-items:center}.mining-labor-section>button:not(.mining-labor-power-action){justify-self:start;width:auto}.market-balances{grid-template-columns:repeat(4,minmax(0,1fr))}.market-balances>div:nth-child(n+3){border-top:0}.market-balances>div+div{border-left:1px solid var(--divider)}.market-order-form{grid-template-columns:repeat(2,minmax(0,1fr))}.market-order-form p,.market-order-form>button{grid-column:1 / -1}.activity-list>li{grid-template-columns:minmax(0,1fr) auto;align-items:start}.activity-list time{text-align:right}.leaderboard-table td{grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);align-items:center}.leaderboard-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:760px){.app-shell{padding:18px 28px 64px}.setup-flow{grid-template-columns:minmax(280px,.82fr) minmax(0,1.18fr);align-items:start;column-gap:28px}.setup-flow>.page-heading,.setup-flow>.reference-disclosure{grid-column:1 / -1}.setup-flow>.city-preview{grid-column:1}.setup-flow>.setup-form,.setup-flow>.waiting-panel{grid-column:2}.city-preview{top:18px}.city-state-card-copy{padding:20px}.city-state-flag{min-height:124px;margin-bottom:16px}.wallet-summary div{padding-block:18px}.goal-result-list{grid-template-columns:repeat(2,minmax(0,1fr))}.goal-result-list>li{align-content:start;padding:18px}.final-ranking li{grid-template-columns:36px 64px minmax(0,1fr) auto;gap:14px;padding-block:18px}.final-ranking-score{grid-column:4;justify-items:end;padding-left:20px;text-align:right}}@media(max-width:759px){.modal-toolbar h2{font-size:1.5rem;line-height:1}.app-shell:has(.setup-flow),.app-shell:has(.active-game){padding-top:0}.app-shell:has(.setup-form){padding-bottom:108px}.setup-flow,.active-game{padding-top:0}.city-preview{top:0}.city-state-card{margin-inline:-16px;border-inline:0;border-radius:0;box-shadow:0 4px 8px #15191d1a}.city-state-card .city-state-flag{min-height:0;aspect-ratio:3 / 1.33}.city-state-card-copy{padding-inline:28px}.setup-submit{position:fixed;z-index:calc(var(--z-sticky) + 1);inset-inline:0;bottom:0;border-top:1px solid var(--border);padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--surface);box-shadow:0 -6px 18px #15191d1a}.setup-submit .primary-action{min-height:52px;font-size:1rem}}@media(max-width:380px){.app-shell{padding-inline:12px}.city-state-card{margin-inline:-12px}.city-state-card-copy{padding-inline:24px}.setup-submit{padding-inline:12px}.account{gap:7px}.account span{max-width:7rem}.page-heading h2,.game-heading h2{font-size:1.55rem}.page-heading,.game-heading,.waiting-panel,.section-heading{align-items:stretch;flex-direction:column}.segmented-control.compact{width:100%}.challenge-tools,.attempt-list>li{grid-template-columns:minmax(0,1fr)}.rating-filter{grid-template-columns:repeat(4,minmax(44px,1fr))}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}.champion-flag,.champion-flag:after,.final-winner,.challenge-action.has-pending-votes{animation:none}}
