:root{--ink:#1a1423;--night:#2b2440;--dusk:#4a3f6b;--plaster:#e8dcc0;--gold:#f0c050;--jewel:#5fd3b0;--roof:#a8403a;--muted:#a99fc2;--card:#211a2e;--card-head:#2e2645;--danger:var(--danger);--warn:var(--warn);--ally:#b4d77a;--rarity-common:var(--dusk);--rarity-uncommon:var(--jewel);--rarity-rare:#6fb6e6;--rarity-legendary:var(--gold);--rarity-mythic:#d9a0ff;--text-xs:15px;--text-sm:17px;--text:19px;--text-md:22px;--text-lg:28px;--text-xl:34px;--border:2px solid var(--dusk);--shadow:4px 4px 0 var(--ink);font-family:VT323,ui-monospace,monospace;font-size:var(--text);color:var(--plaster);background:var(--night);-webkit-font-smoothing:none;line-height:1.15}*{box-sizing:border-box}body{background:var(--night);min-height:100vh;margin:0}h1,h2,h3,.brand{font-family:Pixelify Sans,VT323,monospace}h1,h2,h3{color:var(--gold);margin:0 0 .5rem;font-weight:600}h1{font-size:var(--text-lg)}h2{font-size:var(--text-md)}h3{font-size:var(--text-sm);margin-top:1rem}button{font:inherit;color:var(--ink);background:var(--gold);border:2px solid var(--ink);box-shadow:2px 2px 0 var(--ink);cursor:pointer;padding:.4rem .9rem}button:active:not(:disabled){box-shadow:none;transform:translate(2px,2px)}button:hover:not(:disabled){filter:brightness(1.1)}button:disabled{cursor:default}button:not(.link):disabled{background:var(--night);color:var(--muted);border-color:var(--dusk);box-shadow:none}button.link{box-shadow:none;color:var(--jewel);background:0 0;border:none;padding:.25rem}button.link:disabled{opacity:.5}button.link:hover:not(:disabled){text-underline-offset:3px;text-decoration:underline}input{font:inherit;color:var(--plaster);background:var(--ink);border:var(--border);width:100%;padding:.4rem .5rem}input:focus{outline:2px solid var(--gold)}input[type=checkbox]{width:auto;accent-color:var(--jewel)}code{color:var(--jewel)}:focus-visible{outline:2px solid var(--gold);outline-offset:1px}select:hover:not(:disabled),input:hover:not(:disabled){border-color:var(--muted)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--ink)}::-webkit-scrollbar-thumb{background:var(--dusk);border:2px solid var(--ink)}.panel{background:var(--ink);border:var(--border);box-shadow:var(--shadow);padding:1.25rem}.center{place-items:center;min-height:100%;padding:1rem;display:grid}.app>.content>.center{min-height:calc(100vh - 3rem)}body>#root>.center{min-height:100vh}.muted{color:var(--muted)}.loading{align-items:center;gap:.6rem;display:inline-flex}.loading-blocks{gap:4px;display:inline-flex}.loading-blocks span{background:var(--dusk);width:8px;height:8px;animation:.9s step-end infinite loading-step}.loading-blocks span:nth-child(2){animation-delay:.3s}.loading-blocks span:nth-child(3){animation-delay:.6s}@keyframes loading-step{0%{background:var(--gold)}33%{background:var(--dusk)}}@media (prefers-reduced-motion:reduce){.loading-blocks span{animation:none}}.hotkey{opacity:.7;font-weight:400}.small{font-size:var(--text-sm)}.error{color:var(--danger);margin:0}.form{flex-direction:column;gap:.75rem;width:min(22rem,100%);display:flex}.form label{flex-direction:column;gap:.25rem;display:flex}.topbar{background:var(--ink);border-bottom:var(--border);align-items:center;gap:1rem;height:3rem;padding:0 1rem;display:flex}.brand{color:var(--gold);font-weight:600}.spacer{flex:1}.worlds{width:min(28rem,100%)}.worlds-screen{gap:1rem}.starter-picker.panel{width:min(1640px,100%)}.worlds ul,ul.plain{margin:0;padding:0;list-style:none}.worlds li{border-top:1px solid var(--dusk);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 0;display:flex}.city{grid-template-columns:1fr 22rem;height:100%;display:grid}.city-canvas{cursor:grab;min-width:0;position:relative;overflow:hidden}.city-canvas:active{cursor:grabbing}.city-canvas.paving{cursor:crosshair}.city-tools{position:absolute;bottom:1rem;left:1rem}.city-canvas canvas{image-rendering:pixelated;display:block}.sidebar{box-shadow:none;border-width:0 0 0 2px;flex-direction:column;gap:.6rem;padding:.75rem;display:flex;overflow-y:auto}@media (width<=720px){.city{grid-template-rows:1fr auto;grid-template-columns:1fr}.sidebar{border-width:2px 0 0;max-height:35vh}}.city-main{flex-direction:column;min-width:0;min-height:0;display:flex;position:relative}.city-main .city-canvas{flex:1}.card{background:var(--card);border:1px solid var(--dusk);flex-shrink:0}.card-head{background:var(--card-head);align-items:center;gap:.25rem;padding-right:.4rem;display:flex}.card-toggle{min-width:0;box-shadow:none;color:var(--plaster);text-align:left;background:0 0;border:none;flex:1;align-items:baseline;gap:.4rem;padding:.35rem .6rem;display:flex}.card-toggle:active:not(:disabled){transform:none}.card-toggle:hover h3,.card-toggle:focus-visible h3{color:var(--plaster)}.card-toggle:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}.card-head h3{font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;margin:0}.chevron{width:.7rem;color:var(--muted)}.card-meta{color:var(--muted);font-size:var(--text-sm);white-space:nowrap;text-overflow:ellipsis;margin-left:auto;overflow:hidden}.card-body{border-top:1px solid var(--dusk);padding:.5rem .75rem .75rem}.card-body>:first-child{margin-top:0}.card-body>:last-child{margin-bottom:0}.card.alert{border-color:var(--danger)}.card.alert .card-meta{color:var(--danger)}.card.dev{opacity:.85;border-style:dashed}.city-topbar{background:var(--ink);border-bottom:var(--border);flex-wrap:wrap;align-items:center;display:flex}.city-topbar .resource-bar{background:0 0;border:none;flex:auto}.city-header{border-right:var(--border);flex-wrap:wrap;align-items:center;gap:.25rem 1rem;padding:.4rem .75rem;display:flex}.city-title{align-items:baseline;gap:.25rem;display:flex}.city-title h2{font-size:var(--text-md);color:var(--gold);overflow-wrap:anywhere;margin:0}.city-switcher{align-items:center;gap:.15rem;min-width:0;display:flex}.city-switcher>button{font-size:var(--text-md);padding:0 .3rem;line-height:1}.city-switcher select{max-width:16rem;font-family:Pixelify Sans,VT323,monospace;font-size:var(--text-md);color:var(--gold);cursor:pointer;background:0 0;border:2px solid #0000;padding:.1rem .3rem;font-weight:600}.city-switcher select:hover,.city-switcher select:focus-visible{border-color:var(--dusk)}.city-switcher-name{overflow-wrap:anywhere;margin:0}.city-switcher.section-title,.city-switcher-name.section-title{margin:0 0 .5rem}.rename{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.rename input{flex:8rem;padding:.2rem .4rem}.rename .blocker{flex-basis:100%}.city-facts{flex-wrap:wrap;gap:.2rem .9rem;margin:0;display:flex}.city-facts>div{align-items:baseline;gap:.3rem;display:flex}.city-facts dt{color:var(--muted);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em}.city-facts dd{margin:0}.city-facts button.link{padding:0}.selection{border-color:var(--jewel);border-left-width:3px;padding:.6rem .75rem .75rem;position:relative}.selection .close{position:absolute;top:.4rem;right:.4rem}.selection .tile-panel>h2{padding-right:2rem}.sidebar .hint{border:1px dashed var(--dusk);margin:0;padding:.5rem .75rem}.sidebar .goto{margin:0}.world-clock{color:var(--muted);margin:0}.world-clock.night{color:var(--gold)}.frontier-note.veiled{color:var(--muted)}.frontier-note.sheltered{color:var(--gold)}.icon{width:16px;height:16px;image-rendering:pixelated;vertical-align:-3px;margin-right:2px}.resource-bar{background:var(--ink);border-bottom:var(--border);font-size:var(--text-sm);flex-wrap:wrap;gap:.25rem 1rem;padding:.4rem .75rem;display:flex}.resource{align-items:center;gap:.35rem;display:flex}.resource .rate{color:var(--jewel);font-size:var(--text-xs)}.resource.full .amount{color:var(--danger)}.resource.refined{gap:.75rem}.banner{background:var(--ink);border:2px solid var(--jewel);padding:.4rem .8rem;position:absolute;bottom:1rem;left:50%;transform:translate(-50%)}.tabs{gap:.25rem;margin:.5rem 0;display:flex}.tab{background:var(--night);color:var(--plaster);box-shadow:none;padding:.2rem .6rem}.tab.active{background:var(--gold);color:var(--ink)}ul.options,ol.queue{margin:0;padding:0;list-style:none}.options li{border-top:1px solid var(--dusk);padding:.5rem 0}.options li.locked strong{color:var(--muted)}.options li.option-with-icon{align-items:flex-start;gap:.5rem;display:flex}.options li.locked .building-icon{opacity:.45}.building-icon{flex:none;justify-content:center;align-items:flex-end;width:48px;height:48px;display:flex}.building-icon img{max-width:100%;max-height:100%;image-rendering:pixelated}.option-body{flex:1;min-width:0}.option-head{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.option-meta{flex-wrap:wrap;align-items:center;gap:.25rem .75rem;margin-top:.25rem;display:flex}.cost{gap:.5rem;display:inline-flex}.gain{color:var(--jewel)}.blocker{color:var(--warn);margin-top:.25rem}.small-button{font-size:var(--text-sm);padding:.1rem .5rem}button.secondary{background:var(--night);color:var(--plaster);border-color:var(--dusk)}button.danger{background:var(--roof);color:var(--plaster)}.actions{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.breakdown{margin:.5rem 0}.stats li:before{content:"· ";color:var(--muted)}.next-level{border-top:1px solid var(--dusk);margin-top:.75rem;padding-top:.5rem}.next-level button{margin-top:.5rem}.refine{gap:.5rem;display:flex}.refine input{width:5rem}select{font:inherit;color:var(--plaster);background:var(--ink);border:var(--border)}.queue li{border-top:1px solid var(--dusk);justify-content:space-between;align-items:center;gap:.5rem;padding:.4rem 0;display:flex}.toast{border:1px solid var(--danger);margin-top:.75rem;padding:.4rem .6rem}.game{flex-direction:column;height:100vh;display:flex}.game-nav{z-index:10;background:var(--ink);border-bottom:var(--border);min-height:2.75rem;box-shadow:0 2px 0 var(--ink);align-items:center;gap:.6rem;padding:0 .75rem;display:flex;position:relative}.game-nav .brand{white-space:nowrap;align-items:center;gap:.35rem;display:flex}.game-nav .brand .icon{width:24px;height:24px}.tabs-row{scrollbar-width:none;align-self:stretch;gap:2px;min-width:0;display:flex;overflow-x:auto}.game-nav .tab{font-size:var(--text-sm);color:var(--muted);white-space:nowrap;background:0 0;border:none;border-bottom:3px solid #0000;align-items:center;gap:.3rem;padding:0 .5rem;display:flex;position:relative}.game-nav .tab:hover{color:var(--plaster);background:var(--night)}.game-nav .tab.active{color:var(--gold);background:var(--night);border-bottom-color:var(--gold)}.game-nav .tab .icon{opacity:.75;width:16px;height:16px;margin:0}.game-nav .tab:hover .icon,.game-nav .tab.active .icon{opacity:1}.game-nav .tab:active:not(:disabled){transform:none}.game-nav .mana{color:var(--jewel);white-space:nowrap}.game-nav .music.off{opacity:.5}.game-nav .music.off .icon{filter:grayscale()}@media (width<=1700px){.game-nav .brand{display:none}}@media (width<=1520px){.game-nav .tab-label{display:none}.game-nav .tab{padding:0 .6rem}.game-nav .tab .icon{width:20px;height:20px}.game-nav .tab.active .tab-label{display:inline}.game-nav .tab .badge{font-size:var(--text-xs);margin:0;padding:1px 3px;line-height:1;position:absolute;top:3px;right:1px}.game-nav .tab .badge .icon{display:none}}.account{position:relative}.account-button{box-shadow:none;color:var(--plaster);white-space:nowrap;background:0 0;border:none;align-items:center;gap:.4rem;padding:.1rem .4rem;line-height:1;display:flex}.account-text{flex-direction:column;align-items:flex-end;display:flex}.account-button:hover{background:var(--night)}.account-button:active:not(:disabled){transform:none}.account-menu{z-index:20;flex-direction:column;align-items:flex-start;min-width:11rem;padding:.5rem .75rem;display:flex;position:absolute;top:calc(100% + .4rem);right:0}.game-body{flex:1;min-height:0;overflow:auto}.toast.floating{background:var(--ink);z-index:10;max-width:min(36rem,90vw);position:fixed;top:6rem;left:50%;transform:translate(-50%)}.page{flex-direction:column;gap:1rem;max-width:64rem;margin:0 auto;padding:1rem;display:flex}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.page-head p{margin:.25rem 0 0}.hero-grid{grid-template-columns:repeat(auto-fill,300px);justify-content:center;gap:1.25rem 1rem;display:grid}.card-grid{grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:.75rem;display:grid}.card-grid>.panel{background:var(--card);box-shadow:none;border-width:1px;padding:.75rem .9rem}.hero-slot{flex-direction:column;gap:.35rem;display:flex}.dfk-card{perspective:1200px;cursor:pointer;--card-text:#dbe3e8;width:300px;height:430px;color:var(--card-text);position:relative}.dfk-card:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.dfk-card.rarity-uncommon{--card-text:#c4e3d0}.dfk-card.rarity-rare{--card-text:#bff3ed}.dfk-card.rarity-legendary{--card-text:#ffca72}.dfk-card.rarity-mythic{--card-text:#f7dcff}.dfk-face{background:var(--card-background) no-repeat 0 0 / 100%;backface-visibility:hidden;image-rendering:pixelated;border-radius:20px;transition:transform .6s;position:absolute;inset:0;overflow:hidden}.dfk-face:after{content:"";z-index:3;pointer-events:none;background:var(--card-border) no-repeat 0 0 / 100%, var(--card-inner) no-repeat 0 0 / 100%;position:absolute;inset:0}.dfk-front{--card-inner:var(--card-borderinside)}.dfk-back{--card-inner:var(--card-backframe);transform:rotateY(180deg)}.dfk-card.flipped .dfk-front{transform:rotateY(-180deg)}.dfk-card.flipped .dfk-back{transform:rotateY(0)}.dfk-card img{image-rendering:pixelated}.dfk-specials{z-index:4;justify-content:center;gap:8px;height:28px;padding-top:7px;display:flex;position:relative}.dfk-specials img{width:16px;height:16px}.dfk-name{z-index:5;position:absolute;top:30px;left:50%;transform:translate(-50%)}.dfk-name span{white-space:nowrap;background:var(--card-tab) repeat-x;height:26px;padding:0 4px;line-height:26px;display:inline-block;position:relative}.dfk-name span:before,.dfk-name span:after{content:"";background-repeat:no-repeat;width:16px;height:26px;position:absolute;top:0}.dfk-name span:before{background-image:var(--card-tabcorner2);right:-15px}.dfk-name span:after{background-image:var(--card-tabcorner1);left:-15px}.dfk-scene{background:var(--ink);width:228px;height:212px;position:absolute;top:40px;left:36px}.dfk-scene img{display:block}.dfk-scene canvas{width:100%;height:100%;image-rendering:pixelated;opacity:0;transition:opacity .2s;position:absolute;inset:0}.dfk-scene canvas.live{opacity:1}.dfk-front:before{content:"";z-index:2;pointer-events:none;background:var(--card-frame) no-repeat 0 0;position:absolute;inset:0}.dfk-info{z-index:4;color:#100f21;grid-template-columns:1fr 40px 1fr;align-items:center;line-height:1;display:grid;position:absolute;top:273px;left:38px;right:38px}.dfk-info small{font-size:var(--text-xs);opacity:.8;display:block}.dfk-class{white-space:nowrap}.dfk-class.long{font-size:.85em}.dfk-class img{vertical-align:-2px;width:16px;height:16px;margin-left:4px}.dfk-rarity{justify-self:center}.dfk-level{text-align:right}.dfk-card .grown{color:#1d7a34;font-weight:700}.dfk-stats .grown{color:#8be39a}.dfk-card.redeemed .dfk-scene img,.dfk-card.redeemed .dfk-scene canvas,.portrait.redeemed{filter:saturate(.55)sepia(.25)}.portrait.redeemed{border-color:var(--plaster)}.dfk-card.fallen .dfk-scene img,.dfk-card.fallen .dfk-scene canvas{filter:saturate(.4)hue-rotate(-30deg)brightness(.85)}.dfk-sigil{z-index:3;font-size:var(--text-xs);color:var(--plaster);background:var(--dusk);border:2px solid var(--ink);padding:0 6px;line-height:18px;position:absolute;bottom:6px;right:6px}.dfk-card.fallen .dfk-sigil{background:var(--night);color:var(--muted)}.dfk-profession{z-index:4;text-align:center;font-size:var(--text-xs);text-transform:capitalize;opacity:.75;position:absolute;top:364px;left:0;right:0}.dfk-stats{z-index:4;font-size:var(--text-sm);grid-template-columns:repeat(4,1fr);gap:0 10px;margin:0;display:grid;position:absolute;top:323px;left:44px;right:44px}.dfk-stats div{justify-content:space-between;display:flex}.dfk-stats dt{opacity:.75}.dfk-stats dd{margin:0}.dfk-foot{z-index:4;font-size:var(--text-sm);justify-content:space-between;align-items:center;display:flex;position:absolute;bottom:9px;left:24px;right:24px}.dfk-foot span{align-items:center;gap:4px;display:flex}.dfk-foot img{width:16px;height:16px}.dfk-back-body{z-index:4;font-size:var(--text-xs);line-height:1.05;position:absolute;inset:50px 38px 46px;overflow-y:auto}.dfk-back-body h3{margin:.3rem 0 .1rem}.dfk-back-body .ability{margin:.4rem 0 0}.dfk-back-body .ability strong{color:var(--gold);display:block}.hero-stats{grid-template-columns:repeat(4,1fr);gap:.25rem;margin:.5rem 0;display:grid}.hero-stats div{background:var(--night);font-size:var(--text-sm);justify-content:space-between;padding:.15rem .3rem;display:flex}.hero-stats dt{color:var(--muted)}.hero-stats dd{margin:0}.refined-summary{flex-wrap:wrap;gap:.75rem;display:flex}.titles{flex-wrap:wrap;gap:.25rem .75rem;padding:0;list-style:none;display:flex}.titles li.past{color:var(--muted)}.titles li.current{color:var(--gold)}.short{color:var(--danger)}table.research,table.rankings{border-collapse:collapse;width:100%}table.research td,table.rankings td,table.rankings th{border-top:1px solid var(--dusk);text-align:left;vertical-align:middle;padding:.45rem .4rem}table.rankings tr.me td,table.rankings tr.me td button.link{color:var(--jewel)}table.rankings tr.chosen td{background:var(--card-head)}.rank-scroll{overflow-x:auto}.rank-tools{flex-wrap:wrap;align-items:center;gap:.5rem;margin:.5rem 0;display:flex}.rank-tools input[type=search]{flex:1;min-width:12rem}.rank-tools h2{flex:1;margin:0}.rank-pager{justify-content:center;align-items:center;gap:.75rem;margin-top:.75rem;display:flex}.rank-standing h2{margin-top:0}.rank-chips{flex-wrap:wrap;gap:.5rem;display:flex}.rank-chip{background:var(--night);min-width:6.5rem;color:var(--plaster);box-shadow:none;flex-direction:column;align-items:center;display:flex}.rank-chip strong{color:var(--gold);font-size:var(--text-md)}.rank-shards{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.5rem;display:grid}@media (width<=1100px){.rank-shards{grid-template-columns:minmax(0,1fr)}}.world-canvas{cursor:grab;flex:1;min-width:0;position:relative;overflow:hidden}.world-canvas canvas{image-rendering:pixelated;display:block}.map-labels{pointer-events:none;position:absolute;inset:0}.map-label{font-size:var(--text-xs);white-space:nowrap;text-shadow:1px 0 var(--ink), -1px 0 var(--ink), 0 1px var(--ink), 0 -1px var(--ink), 1px 1px var(--ink);padding:0 .25rem;position:absolute;transform:translate(-50%,2px)}.map-label.own{color:var(--jewel)}.map-zoom{pointer-events:none;background:#1a1423bf;padding:.15rem .4rem;position:absolute;bottom:.5rem;left:.5rem}.trade-grid{flex-direction:column;gap:.35rem;margin:.5rem 0;display:flex}.trade-grid label{grid-template-columns:20px 1fr 5rem;align-items:center;gap:.5rem;display:grid}.trade-grid label .muted{text-align:right}.field{flex-direction:column;gap:.25rem;margin:.5rem 0;display:flex}input.count{width:4rem}button.movement{text-align:left;color:var(--plaster);padding:0}.tabs.wrap{flex-wrap:wrap}.unit-picker{flex-direction:column;gap:.25rem;margin:.5rem 0;display:flex}.unit-picker label{grid-template-columns:1fr 4.5rem auto;align-items:center;gap:.4rem;display:grid}.cost-inline{white-space:nowrap}.badge{background:var(--roof);color:var(--plaster);margin-left:.35rem;padding:0 .3rem}.queue li.hostile .movement{color:var(--danger)}.report-layout{grid-template-columns:minmax(14rem,22rem) 1fr;align-items:start;gap:1rem;display:grid}.report-list{max-height:75vh;margin:0;padding:.5rem;list-style:none;overflow-y:auto}.report-item{text-align:left;width:100%;color:var(--plaster);border-bottom:1px solid var(--dusk);padding:.35rem .25rem;display:block}.report-item.active{background:var(--night)}.report-item.victory,h2.victory{color:var(--jewel)}.report-item.defeat,h2.defeat{color:var(--danger)}.report-view .sides{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1rem;margin:.75rem 0;display:grid}table.units td{padding:.1rem .6rem .1rem 0}@media (width<=720px){.report-layout{grid-template-columns:1fr}}.goto{gap:.4rem;margin:.75rem 0;display:flex}.progress{background:var(--night);border:1px solid var(--dusk);height:16px;margin-top:.2rem;position:relative;overflow:hidden}.progress-fill{background:repeating-linear-gradient(90deg, var(--fill) 0 6px, var(--fill-dark) 6px 8px);height:100%;transition:width 1s linear}.progress.gold{--fill:var(--gold);--fill-dark:#c89a30}.progress.jewel{--fill:var(--jewel);--fill-dark:#3fa88a}.progress.danger{--fill:#d9644f;--fill-dark:var(--roof)}.progress-label{font-size:var(--text-xs);color:var(--plaster);text-shadow:1px 0 var(--ink), -1px 0 var(--ink), 0 1px var(--ink), 0 -1px var(--ink);align-items:center;padding:0 .35rem;line-height:1;display:flex;position:absolute;inset:0}.queue li>div:first-child,.queue li>.movement{flex:1;min-width:0}.badge.info{background:var(--dusk)}.report-item.unread{border-left:3px solid var(--gold);padding-left:.4rem;font-weight:700}textarea{font:inherit;color:var(--plaster);background:var(--night);border:var(--border);resize:vertical;width:100%;padding:.4rem .5rem}textarea:focus{outline:2px solid var(--gold)}ul.rows li{border-bottom:1px solid var(--dusk);justify-content:space-between;align-items:center;gap:.5rem;padding:.3rem 0;display:flex}.announcement{white-space:pre-wrap;overflow-wrap:anywhere}.guild-grid{grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:start;gap:1rem;display:grid}.guild-col{flex-direction:column;gap:1rem;display:flex}.guild-col .panel h2{margin-top:0}@media (width<=900px){.guild-grid{grid-template-columns:1fr}}.wiki{grid-template-columns:minmax(12rem,1fr) minmax(0,3fr);align-items:start;gap:1rem;display:grid}.wiki .panel h2{margin-top:0}@media (width<=900px){.wiki{grid-template-columns:1fr}}.wiki-nav ul.plain{margin:0 0 .75rem}.wiki-nav button.link{text-align:left;overflow-wrap:anywhere}.wiki-nav button.active{color:var(--gold)}.wiki-section{font-weight:700}.wiki-pages{border-left:2px solid var(--dusk);margin:0 0 .25rem .5rem;padding-left:1rem}.wiki-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.75rem;display:flex}.wiki-head h2{margin-bottom:.25rem}.wiki-head p{margin:0}.wiki-text{overflow-wrap:anywhere;line-height:1.45}.wiki-text h3,.wiki-text h4,.wiki-text h5{color:var(--gold);margin:1rem 0 .4rem}.wiki-text ul{padding-left:1.4rem}.wiki-text a{color:var(--jewel)}.wiki-editor textarea{min-height:18rem;font-family:inherit}.guide-page{max-width:84rem}.guide-page .wiki{grid-template-columns:minmax(13rem,1fr) minmax(0,4fr)}@media (width<=900px){.guide-page .wiki{grid-template-columns:minmax(0,1fr)}}.guide-nav{max-height:calc(100vh - 10rem);position:sticky;top:.5rem;overflow-y:auto}@media (width<=900px){.guide-nav{max-height:none;position:static}}.guide-nav input{margin-bottom:.75rem}.guide-results li{margin-bottom:.5rem}.guide-article h3{color:var(--gold);margin:1.25rem 0 .4rem}.guide-article ul,.guide-article ol{padding-left:1.4rem}.guide-article li{margin-bottom:.25rem}button.link.guide-link{font:inherit;text-align:inherit;padding:0}.guide-tip{border-left:3px solid var(--gold);background:var(--card);padding:.5rem .75rem}.guide-table-wrap{margin:.5rem 0 1rem;overflow-x:auto}table.guide-table{border-collapse:collapse;width:100%}table.guide-table th{color:var(--muted);text-align:left;border-bottom:2px solid var(--dusk);white-space:nowrap;padding:.35rem .5rem;font-weight:400}table.guide-table td{border-top:1px solid var(--dusk);vertical-align:top;overflow-wrap:normal;padding:.35rem .5rem}@media (width<=720px){table.guide-table{min-width:36rem}}table.guide-table .nowrap{white-space:nowrap}table.guide-table tr.guide-row{cursor:pointer}table.guide-table tr.guide-row:hover td,table.guide-table tr.guide-row.open td{background:var(--card)}table.guide-table tr.guide-row button.link{text-align:left;padding:0}table.guide-table tr.guide-detail>td{background:var(--card);padding:.25rem .75rem .75rem}.guide-glossary div{border-top:1px solid var(--dusk);padding:.4rem 0}.guide-glossary dt{color:var(--gold)}.guide-glossary dd{margin:.15rem 0 0}.guide-pager{border-top:1px solid var(--dusk);justify-content:space-between;gap:1rem;margin-top:1.5rem;padding-top:.75rem;display:flex}table.members td.actions{white-space:nowrap}.dot{background:var(--dusk);width:.5rem;height:.5rem;display:inline-block}.dot.online{background:var(--jewel)}.stance-ally{color:var(--ally)}.stance-pact{color:var(--plaster)}.stance-enemy,button.link.danger{color:var(--danger)}.map-label.guild{color:var(--gold)}.map-label.ally{color:var(--ally)}.map-label.enemy{color:var(--danger)}.chat-drawer{background:var(--ink);border-top:var(--border);flex-direction:column;flex:none;display:flex}.chat-bar{width:100%;box-shadow:none;color:var(--plaster);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.5rem;padding:.35rem .75rem;display:flex}.chat-bar:hover{background:var(--night)}.chat-bar:active:not(:disabled){transform:none}.chat-panel{grid-template-columns:minmax(12rem,18rem) 1fr;gap:.75rem;height:min(40vh,26rem);padding:0 .75rem .75rem;display:grid}.chat-side{flex-direction:column;gap:.5rem;min-height:0;display:flex;overflow-y:auto}.chat-side .report-list{flex:none;max-height:none}.chat-side .goto{margin:0}.ellipsis{text-overflow:ellipsis;white-space:nowrap;max-width:18rem;overflow:hidden}.chat-view{flex-direction:column;min-height:0;display:flex;overflow-y:auto}.chat-view h2{font-size:var(--text);margin:0 0 .35rem}.chat-log{flex:1;margin:0 0 .75rem;padding:0;list-style:none;overflow-y:auto}.chat-line{overflow-wrap:anywhere;padding:.15rem .25rem}.chat-line:hover{background:var(--night)}.chat-line.mine strong{color:var(--jewel)}.chat-line.system{color:var(--gold)}.chat-actions{visibility:hidden;margin-left:.5rem}.chat-line:hover .chat-actions,.chat-actions:focus-within{visibility:visible}.chat-actions button{padding:0 .2rem}.chat-input{gap:.5rem;display:flex}.moderation li{align-items:flex-start}@media (width<=720px){.chat-panel{grid-template-rows:auto 1fr;grid-template-columns:1fr;height:60vh}.chat-side{max-height:30%}}.mana-panel h2{margin-top:0}.artifact-card{flex-direction:column;gap:.3rem;display:flex}.artifact-card header{align-items:center;gap:.5rem;display:flex}.artifact-card header .count{margin-left:auto}.artifact-card p{margin:0}.artifact-card .count{color:var(--gold)}.artifact-card.tier-2 strong{color:var(--rarity-rare)}.artifact-card.tier-3 strong{color:var(--rarity-mythic)}.artifact-card.unfound{opacity:.6}.artifact-use{flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:auto;display:flex}.steward-grid{grid-template-columns:repeat(auto-fill,minmax(19rem,1fr));align-items:start;gap:1rem}.steward-card{flex-direction:column;gap:.35rem;display:flex}.steward-card header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.steward-card p,.steward-card h4{margin:0}.steward-card h4{color:var(--gold);margin-top:.3rem;font-weight:400}.number-field{width:4.6rem;padding:.1rem .3rem}.plan-list{max-height:16rem;margin:0;padding-left:1.4rem;overflow-y:auto}.plan-list li{align-items:center;gap:.3rem;padding:.1rem 0;display:flex}.plan-list li>span:first-child{flex:1}.plan-list li.done{color:var(--muted)}.plan-list .number-field{width:3rem}.steward-tools,.steward-fields,.steward-heroes{flex-direction:column;gap:.35rem;display:flex}.steward-tools{border-top:1px solid var(--dusk);padding-top:.4rem}.steward-tools .number-field{width:3rem}.steward-fields .number-field{width:3.4rem}table.steward-table{border-collapse:collapse;width:100%}table.steward-table th,table.steward-table td{border-top:1px solid var(--dusk);text-align:left;vertical-align:top;padding:.2rem .3rem}table.steward-table.trader .number-field{width:5.2rem;margin-top:.15rem;display:block}.steward-card.wide{overflow-x:auto}.steward-log{margin:0;padding:0;list-style:none}.steward-log li{border-top:1px solid var(--dusk);flex-wrap:wrap;gap:.6rem;padding:.25rem 0;display:flex}.plan-row input{width:3rem;padding:.1rem .3rem}.element{white-space:nowrap;font-weight:700}.el-fire{color:#ff8a5c}.el-water{color:#6fb6e6}.el-earth{color:#c8a060}.el-wind{color:#b4d77a}.el-lightning{color:#f0e060}.el-ice{color:#c8e6ff}.el-light{color:#fff4c8}.el-dark{color:#b08ad8}.season-clock{color:var(--gold);margin:.2rem 0}.sanctum-card{flex-direction:column;gap:.35rem;display:flex}.sanctum-card header{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.sanctum-card p{margin:0}.sanctum-card .count{color:var(--gold)}table.standings td.maxed{color:var(--gold);font-weight:700}.crowns .crown-gold strong{color:var(--gold)}.crowns .crown-silver strong{color:#d8d8e8}.crowns .crown-bronze strong{color:#d99a5c}.banner.closed-banner{border-color:var(--gold);margin:.4rem 1rem 0;position:static;transform:none}.hall-of-fame{margin-top:1.5rem}.hall-of-fame details{border-top:1px solid var(--dusk);padding:.4rem 0}.hall-of-fame summary{cursor:pointer}.badge.quest-badge{background:var(--jewel);color:var(--ink)}.quest-chain{flex-direction:column;gap:.5rem;display:flex}.quest-chain p{margin:0}.quest-chain-head{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.quest-chain-head h2{margin:0}.quest-card{background:var(--night);border:var(--border);flex-direction:column;gap:.4rem;padding:.75rem;display:flex}.quest-card.ready{border-color:var(--jewel)}.quest-card header{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.quest-card p{margin:0}.quest-card .actions{gap:.4rem;display:flex}.quest-card .actions:empty{display:none}.quest-objective{color:var(--gold)}.quest-ready,.quest-complete,.quest-notice{color:var(--jewel)}.quest-rewards,.tutorial-reward{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.rewards{flex-wrap:wrap;gap:.1rem .6rem;display:inline-flex}.reward{white-space:nowrap;align-items:center;gap:.2rem;display:inline-flex}.reward .icon{margin:0}.quest-done{margin:.4rem 0 0;padding-left:1rem;list-style:none}.tutorial-strip{background:linear-gradient(90deg, #2a2138, var(--ink) 60%);border-bottom:2px solid var(--dusk);font-size:var(--text-sm);flex-wrap:wrap;align-items:center;gap:.25rem .75rem;padding:.3rem .75rem;display:flex}.tutorial-strip.ready{border-bottom-color:var(--jewel);background:linear-gradient(90deg, #1f3a3a, var(--ink) 60%)}.tutorial-strip .icon{margin:0}.tutorial-name{color:var(--plaster)}.tutorial-progress{width:8rem}.tutorial-progress .progress{height:14px;margin:0}.tutorial-strip .claim{animation:1.6s steps(2,end) infinite glow}.tutorial-strip .claim:disabled{animation:none}@keyframes glow{50%{box-shadow:2px 2px 0 var(--ink), 0 0 0 2px var(--jewel)}}@media (prefers-reduced-motion:reduce){.tutorial-strip .claim{animation:none}}.portrait{width:64px;height:64px;image-rendering:pixelated;border:2px solid var(--ink);outline:2px solid var(--rarity-common);flex:none;display:inline-block}.portrait.small{width:48px;height:48px}.portrait.tiny{vertical-align:middle;vertical-align:middle;width:24px;height:24px}.warden{align-items:flex-start;gap:.5rem;display:flex}.warden p{margin:0}.portrait.fallen{filter:saturate(.4)hue-rotate(-30deg)brightness(.85)}.portrait.rarity-uncommon{outline-color:var(--rarity-uncommon)}.portrait.rarity-rare{outline-color:var(--rarity-rare)}.portrait.rarity-legendary{outline-color:var(--rarity-legendary)}.portrait.rarity-mythic{outline-color:var(--rarity-mythic)}.hero-state.idle{color:var(--jewel)}.hero-state.recovering{color:var(--danger)}.hero-state.unassigned,.hero-state.travelling{color:var(--muted)}.hero-state.hired{color:var(--jewel)}.hire-form{flex-direction:column;gap:.3rem;display:flex}.hire-form p{margin:0}.hire-form input{width:7rem}.governor-head{align-items:center;gap:.6rem;display:flex}.artifact-icon{width:32px;height:32px;image-rendering:pixelated;background:var(--night);border:2px solid var(--dusk);box-sizing:content-box;flex:none;padding:4px}.artifact-card.tier-2 .artifact-icon{border-color:var(--rarity-rare)}.artifact-card.tier-3 .artifact-icon{border-color:var(--rarity-mythic);background:radial-gradient(circle, var(--dusk), var(--night) 70%)}.title-screen{background:radial-gradient(ellipse at 50% 35%, #5fd3b014, transparent 60%), repeating-linear-gradient(0deg, transparent 0 3px, #1a142359 3px 4px), var(--night)}.auth-form{width:min(26rem,100%);padding-top:0;overflow:hidden}.dev-wallets{border-top:var(--border);padding-top:.75rem}.dev-wallet-buttons{flex-wrap:wrap;gap:.5rem;display:flex}form.dev-wallet-buttons{margin-top:.5rem}form.dev-wallet-buttons input{flex:1;min-width:8rem}.title-art{aspect-ratio:160/64;width:calc(100% + 2.5rem);image-rendering:pixelated;border-bottom:2px solid var(--dusk);margin:0 -1.25rem;display:block}.title-block{text-align:center}.title-block h1{font-size:var(--text-xl);text-shadow:2px 2px 0 var(--roof);margin:.25rem 0 .1rem}.title-block p{margin:0}.unit-portrait{background:var(--night);border:2px solid var(--dusk);flex:none;place-items:center;width:40px;height:40px;display:grid}.unit-portrait .icon{width:32px;height:32px;margin:0}.army-line{flex-wrap:wrap;align-items:center;gap:.35rem;margin:.25rem 0;display:flex}.unit-chips{flex-wrap:wrap;gap:.25rem .5rem;display:inline-flex}.unit-chip{background:var(--night);align-items:center;gap:.15rem;padding:0 .3rem 0 .1rem;display:inline-flex}.game-nav .jewel{color:var(--jewel);white-space:nowrap}.jewel-panel h2{color:var(--jewel);align-items:center;gap:.5rem;margin-top:0;display:flex}.jewel-panel h2 .icon{width:32px;height:32px;image-rendering:pixelated}.store-card{flex-direction:column;gap:.3rem;display:flex}.store-card p{margin:0}.store-buy{flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:auto;display:flex}.store-buy .price{color:var(--jewel)}.store-buy button{margin-left:auto}.pass-status{white-space:nowrap}.ledger{border-collapse:collapse;width:100%}.ledger td{border-bottom:1px solid var(--dusk);padding:.25rem .5rem}.ledger .num{text-align:right;white-space:nowrap}button.switch{box-shadow:none;color:var(--muted);background:0 0;border:none;align-items:center;gap:.4rem;padding:.1rem 0;display:inline-flex}button.switch:active:not(:disabled){transform:none}button.switch:disabled{opacity:.5;background:0 0}.switch-track{background:var(--night);border:2px solid var(--dusk);width:2.2rem;height:1.1rem;display:inline-block;position:relative}.switch-knob{background:var(--muted);width:calc(1.1rem - 6px);height:calc(1.1rem - 6px);transition:left .1s steps(2,end);position:absolute;top:1px;left:1px}.switch-text{text-align:left;min-width:1.8em}button.switch.on{color:var(--jewel)}button.switch.on .switch-track{background:var(--jewel);border-color:var(--ink)}button.switch.on .switch-knob{background:var(--plaster);left:calc(100% - 1.1rem + 5px)}button.switch:focus-visible .switch-track{outline:2px solid var(--gold)}.switch-row{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.movement-filter{flex-wrap:wrap;justify-content:space-between;gap:.25rem .75rem;margin-bottom:.4rem;display:flex}.schedule-field{flex-direction:column;gap:.3rem;margin:.4rem 0;display:flex}.steward-scheduled{margin:0;padding:0;list-style:none}.steward-scheduled li{flex-wrap:wrap;align-items:baseline;gap:.2rem .6rem;padding:.2rem 0;display:flex}.consent-banner{z-index:1000;background:var(--card);border:var(--border);max-width:640px;box-shadow:var(--shadow);font-size:var(--text-sm);margin:0 auto;padding:12px 16px;position:fixed;bottom:16px;left:16px;right:16px}.consent-banner p{margin:0 0 8px}.consent-actions{justify-content:flex-end;gap:12px;display:flex}.market-form{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.market-lot{flex-direction:column;gap:4px;display:flex}.market-lot-fields{gap:6px;display:flex}.market-lot input{width:9rem}.market-city select{max-width:100%}table.market td{white-space:nowrap}.auth-email{flex-direction:column;gap:8px;display:flex}.auth-divider{text-align:center;margin:8px 0 0}.wallet-picker{flex-direction:column;gap:8px;display:flex}.wallet-buttons{flex-wrap:wrap;gap:8px;display:flex}.wallet-button .icon{vertical-align:middle;width:20px;height:20px}.prologue{z-index:900;background:var(--ink);flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:16px;display:flex;position:fixed;inset:0;overflow:auto}.prologue-surround{object-fit:cover;filter:blur(18px)brightness(.4)saturate(.8);width:calc(100% + 80px);height:calc(100% + 80px);position:fixed;inset:-40px}.prologue-picture{border:4px solid var(--plaster);width:330px;height:312px;box-shadow:0 0 0 4px var(--ink), 8px 8px 0 4px #00000080;flex:none;animation:.8s ease-out prologue-in;position:relative;overflow:hidden}@media (height>=820px) and (width>=520px){.prologue-picture{width:440px;height:416px}}.prologue-picture img{width:100%;height:100%;image-rendering:pixelated;position:absolute;inset:0}.prologue-picture .narrator-figure{width:100%;height:100%;image-rendering:pixelated;opacity:0;transition:opacity .3s;position:absolute;inset:0}.prologue-picture .narrator-figure.live{opacity:1}.prologue-tint{background:linear-gradient(#0000 70%,#1a142359);position:absolute;inset:0}.prologue.mood-dawn .prologue-tint{background:linear-gradient(#f0c05038,#0000 60%)}.prologue.mood-void .prologue-tint{mix-blend-mode:hard-light;background:radial-gradient(at 50% 35%,#aa3ce673,#0000 65%),linear-gradient(#320a4680,#1a142399)}.prologue.mood-night .prologue-tint{background:linear-gradient(#14144680,#1a142373)}.prologue-card{flex:none;width:min(720px,100%);animation:.5s ease-out prologue-card-in;position:relative}.prologue-card h2{color:var(--gold);margin-top:0}.prologue-card p{font-size:var(--text-md);line-height:1.35}.prologue-nav{align-items:center;gap:8px;margin-top:16px;display:flex}.prologue-dots{gap:6px;display:flex}.prologue-dots span{background:var(--dusk);width:10px;height:10px}.prologue-dots span.on{background:var(--gold)}@keyframes prologue-in{0%{opacity:0}}@keyframes prologue-card-in{0%{opacity:0;transform:translateY(12px)}}@media (prefers-reduced-motion:reduce){.prologue-picture,.prologue-card{animation:none}}.narrator-portrait{border:var(--border);background:var(--night);flex:none;width:96px;height:96px;position:relative;overflow:hidden}.narrator-portrait img{object-fit:cover;width:100%;height:100%;image-rendering:pixelated;position:absolute;inset:0}.narrator-portrait canvas{width:228px;height:212px;image-rendering:pixelated;opacity:0;position:absolute;top:0;left:50%;transform:translate(-50%)translateY(-48px)}.narrator-portrait canvas.live{opacity:1}.narrator-portrait img:not(.still){object-position:50% 0}.narrator-name strong{color:var(--gold)}.story-dialog{z-index:800;align-items:flex-start;gap:14px;width:min(560px,100vw - 32px);animation:.35s ease-out prologue-card-in;display:flex;position:fixed;bottom:16px;left:16px}.story-dialog .story-body{flex:1;min-width:0}.story-dialog h3{margin:4px 0}.story-dialog p{margin:6px 0}@media (width<=560px){.story-dialog .narrator-portrait{width:64px;height:64px}}.spotlight{z-index:950;pointer-events:none;border:3px solid var(--gold);animation:1.1s ease-in-out infinite spotlight-pulse;position:fixed;box-shadow:0 0 0 4px #f0c05059,0 0 24px #f0c05099}@keyframes spotlight-pulse{50%{box-shadow:0 0 0 10px #f0c05026,0 0 32px #f0c050cc}}@media (prefers-reduced-motion:reduce){.spotlight{animation:none}}.tour-caption{z-index:960;background:var(--ink);border:2px solid var(--gold);width:320px;max-width:calc(100vw - 16px);box-shadow:var(--shadow);font-size:var(--text-sm);flex-direction:column;gap:6px;padding:10px 12px;display:flex;position:fixed}.tour-caption .tour-meta{justify-content:space-between;align-items:center;display:flex}.portrait.tiny{vertical-align:middle;border-width:1px;width:28px;height:28px}.portrait-picker{flex-direction:column;gap:.4rem;max-width:18rem;display:flex}.portrait-grid{flex-wrap:wrap;gap:.3rem;max-height:14rem;display:flex;overflow-y:auto}.portrait-choice{background:0 0;border:2px solid #0000;padding:0;line-height:0}.portrait-choice.current{border-color:var(--gold)}
