:root{color:#eae9d9;font-synthesis:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#10221f;font-family:Yu Gothic UI,Hiragino Kaku Gothic ProN,sans-serif;font-size:14px;line-height:1.6}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;color:#182b24;background:#dfc38b;border:1px solid #d5b879;border-radius:6px;padding:.6rem 1rem;font-weight:650;line-height:1.45;transition:filter .15s}button:hover:enabled{filter:brightness(1.12)}button:disabled{opacity:.4;cursor:default}button.secondary,button.small{color:#e2ddc7;background:#243c33;border-color:#466152}.small{padding:.28rem .55rem;font-size:.88rem}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,.map-canvas:focus-visible{outline-offset:3px;outline:3px solid #9bdac4}.construction-popover.draft{z-index:5;overscroll-behavior:contain;background:#182e29fa;border:2px solid #cfba80;border-radius:10px;width:268px;max-width:calc(100% - 16px);max-height:calc(100% - 16px);margin:0;padding:12px;font-size:.82rem;line-height:1.5;position:absolute;top:8px;right:8px;overflow:auto;box-shadow:0 6px 24px #0008}.construction-popover:focus{outline:none}.construction-popover:focus-visible{border-color:#9bdac4}.construction-popover p{margin:8px 0}.construction-popover h3{color:#f5e4b9;margin:2px 0 8px}.construction-element{color:#d9ddc8;align-items:center;gap:8px;min-height:32px;margin:6px 0 8px;display:flex}.construction-element img{width:32px;height:32px;image-rendering:pixelated;filter:drop-shadow(0 1px 2px #000)}.construction-element img.element-icon-bright{filter:brightness(1.55)saturate(1.2)drop-shadow(0 1px 2px #000)}.construction-element strong{color:#fff0c4;font-size:1rem}.construction-available-types{color:#f5e4b9;margin:4px 0 10px;line-height:1.5}.construction-popover label{margin:5px 0}.construction-popover input{padding:5px}.construction-popover details{margin:8px 0}.construction-popover .actions{gap:6px;margin-top:12px}.construction-popover .actions button{padding:6px 9px}.construction-step{color:#b7c8b7;font-size:.74rem}.construction-resources{font-variant-numeric:tabular-nums;border-block:1px solid #587060;padding:5px 0}.construction-popover .construction-cost{margin:2px 0}.construction-size{text-align:center;font-variant-numeric:tabular-nums;margin-top:8px;font-size:1.1rem;display:block}.construction-cost strong{color:#ffe3a0;font-size:1.08rem}.construction-error{color:#ffc0af}.construction-head{flex-wrap:wrap;align-items:flex-start;gap:4px 12px;display:flex}.construction-head-main{flex:150px;min-width:0}.construction-arrows{flex:none;grid-template-columns:repeat(3,38px);grid-auto-rows:38px;justify-content:center;gap:4px;margin:4px 0 8px;display:grid}.construction-head-main+.construction-arrows{margin-left:auto}.construction-arrows button{box-sizing:border-box;width:100%;min-width:0;height:100%;min-height:0;margin:0;padding:0}.construction-arrows .arrow-up{grid-column:2}.construction-arrows .arrow-left{grid-area:2/1}.construction-arrows .arrow-down{grid-area:2/2}.construction-arrows .arrow-right{grid-area:2/3}.construction-side{flex-direction:column;flex:none;align-items:stretch;margin-left:auto;display:flex}.construction-side .construction-arrows{margin-bottom:0}.construction-side .actions{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:8px;display:grid}.construction-side .actions button{white-space:nowrap;min-width:0;margin:0;padding:6px 4px}.construction-side-type{align-self:flex-end;margin-bottom:8px}.construction-side-type .actions{grid-template-columns:repeat(3,48px)}.construction-available-types span{display:block}.construction-types{grid-template-columns:1fr 1fr;gap:6px;display:grid}.construction-types button[aria-pressed=true]{color:#182b24;background:#dfc38b;border-color:#fff0bb}a{color:#e8c585}h1,h2,h3,p{margin-top:0}h1{letter-spacing:.08em;font-family:Yu Mincho,Hiragino Mincho ProN,serif;font-size:clamp(2.1rem,4vw,3.6rem);font-weight:500;line-height:1.35}h2{font-size:1.35rem}h3{font-size:1.05rem}small{color:#abbdae;font-size:.75em}hr{border:0;border-top:1px solid #405248;margin:1.6rem 0}.app{max-width:1480px;margin:auto;padding:0 32px}.site-header{border-bottom:1px solid #344c40;justify-content:space-between;align-items:center;height:76px;display:flex}.brand{color:#e5d7b4;letter-spacing:.14em;background:0 0;border:0;padding:0;font-size:1.2rem}.brand span{letter-spacing:.1em;color:#9eb6a6;margin-left:16px;font-size:.65rem}.site-header>span{color:#a6b8a7;font-size:.8rem}.provisional{color:#bfc6ac;border-bottom:1px solid #344c40;padding:10px 0;font-size:.83rem}.provisional strong{color:#e4c588;margin-right:10px}.eyebrow{color:#b4bb92;letter-spacing:.2em;margin-bottom:12px;font-size:.72rem}.home-hero{grid-template-columns:1fr 1.1fr;align-items:center;gap:64px;padding:55px 0;display:grid}.home-map{background:#172e27;border:1px solid #3e594a;border-radius:10px;padding:16px}.home-map svg,.map-panel svg{width:100%;height:auto;display:block}.home-map details{margin-top:12px}.actions{flex-wrap:wrap;gap:8px;display:flex}.card{background:#193128;border:1px solid #385144;border-radius:9px;margin-bottom:18px;padding:24px}.card h2{color:#eee3c8}.start-grid{grid-template-columns:minmax(0,1fr) 350px;gap:24px;margin:32px 0;display:grid}.start-grid>.map-panel{padding:24px}.hint,.map-caption{color:#b4c0ad;font-size:.82rem}.legend{color:#c1c9b4;margin:14px 0;font-size:.78rem}.notice{color:#eee6b5;background:#354735;border:1px solid #727653;border-radius:6px;flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0;padding:12px;display:flex}.notice p{margin:0}label{margin:10px 0;font-size:.9rem;display:block}input:not([type=checkbox]):not([type=file]),select,textarea{color:#f3eddb;background:#10271f;border:1px solid #526654;border-radius:5px;width:100%;min-width:0;margin-top:5px;padding:.55rem .65rem;display:block}input[type=checkbox]{accent-color:#d5b779}.check{align-items:center;gap:8px;display:flex}.pair{grid-template-columns:1fr 1fr;gap:12px;display:grid}fieldset{border:0;min-width:0;margin:0;padding:0}fieldset>legend{margin:16px 0 6px;padding:0;font-weight:650}fieldset fieldset{border:1px solid #405747;border-radius:6px;margin:14px 0;padding:10px}button+button{margin-left:4px}.actions button+button{margin-left:0}.section-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;display:flex}.file-button{border:1px solid #607055;border-radius:6px;padding:8px}input[type=file]{max-width:240px;font-size:.8rem;display:block}.save-list{padding:0;list-style:none}.save-list>li{border-top:1px solid #405445;flex-wrap:wrap;align-items:center;gap:8px;padding:16px 0;display:flex}.save-list>li>div{flex:1;min-width:180px}.save-list p{color:#b2bda8;margin:5px 0;font-size:.8rem}table{border-collapse:collapse;text-align:left;overflow-wrap:anywhere;width:100%;font-size:.82rem}th,td{vertical-align:top;border-bottom:1px solid #3d5443;padding:8px 7px}th{color:#aebf9c;font-size:.78rem;font-weight:500}tr[aria-selected=true]{background:#304c39}.table-scroll{min-width:0;max-height:360px;overflow:auto}details>summary{cursor:pointer;margin:0;font-weight:600;list-style-position:inside}details[open]>summary{margin-bottom:14px}details details{margin-top:14px}.compact{flex-wrap:wrap;gap:14px 28px;display:flex}.compact div{min-width:90px}.compact dt,.resource dt{color:#b3c1a7;font-size:.75rem}.compact dd,.resource dd{overflow-wrap:anywhere;margin:3px 0}.resource{gap:35px;display:flex}.resource dd{color:#ead6a2;font-variant-numeric:tabular-nums;font-size:2rem;line-height:1.1}.room-details>p{color:#b4c1ad;font-size:.78rem}.room-details details{margin:16px 0;font-size:.84rem}.room-details li{margin:8px 0}.group-readout{overflow-wrap:anywhere;border-top:1px solid #465a46;margin-top:16px;padding-top:16px}.group-readout p{font-size:.82rem}.editor-toolbar{z-index:20;background:#10271feb;border-bottom:1px solid #536247;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 0;display:flex;position:sticky;top:0}.editor-toolbar>span{color:#bdc6ad;font-size:.8rem}.build-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:20px;margin-top:20px;display:grid}.map-column{min-width:0}.map-panel{background:#152d25;border:1px solid #3c5647;border-radius:9px;min-width:0;margin-bottom:18px;overflow:hidden}.map-canvas{touch-action:none;width:100%;height:max(480px,100dvh - 230px);min-height:420px;position:relative}.map-canvas canvas{max-width:100%;max-height:100%;display:block}.map-tools{background:#1c372c;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 12px;display:flex}.map-tools label{align-items:center;gap:3px;margin:0;font-size:.78rem;display:flex}.map-caption{margin:0;padding:8px 12px;font-size:.72rem}.draft{border-top:2px solid #9a9465;margin-top:20px;padding-top:18px}.draft>h3{justify-content:space-between;display:flex}.draft small{color:#e3c881}.draft .actions{margin:15px 0}.draft .actions button{font-size:.85rem}.preview{background:#304331;border:1px solid #ad9c63;border-radius:6px;padding:12px;font-size:.85rem}.preview>button{width:100%;margin-top:12px}.preview .card{margin:10px 0;padding:10px}.preview table{font-size:.75rem}.end-turn{color:#182b24;background:#e0c687}.route-list{padding-left:22px}.route-list li{border-bottom:1px solid #3e5844;padding:10px 0}.status-bar{color:#c4ccb2;overflow-wrap:anywhere;border-top:1px solid #455943;margin:20px 0;padding:12px 0;font-size:.85rem}.status-bar p{color:#eed9a7}.status-bar span{font-size:.75rem}.status-bar strong{color:#e2ae79;display:block}.history-bar{background:#2a3d43;border-radius:6px;align-items:center;gap:25px;margin:12px 0;padding:12px 20px;display:flex}.history-bar label{min-width:200px}.history-bar p{margin:0;font-size:.84rem}dialog{color:#eee8d0;background:#20392d;border:1px solid #9a9665;border-radius:10px;width:min(520px,100% - 32px);max-height:85vh;padding:28px;overflow:auto;box-shadow:0 20px 80px #0008}dialog::backdrop{background:#031b17bd}dialog button{margin-top:15px}footer{color:#92a991;border-top:1px solid #314b3b;margin-top:30px;padding:25px 0;font-size:.73rem;line-height:1.7}code{overflow-wrap:anywhere}@media (width<=1279px){.app{padding:0 20px}.build-grid{grid-template-columns:1fr}.map-canvas{height:60vh;min-height:300px}.home-hero{gap:30px}.editor-toolbar{position:static}.start-grid{grid-template-columns:minmax(0,1fr) 320px}}@media (width<=720px){.app{padding:0 14px}.site-header{height:64px}.brand{font-size:1rem}.brand span{margin:2px 0;font-size:.5rem;display:block}.provisional{font-size:.75rem}.home-hero,.start-grid{grid-template-columns:1fr;gap:20px;margin:0;padding:28px 0}.home-hero h1{font-size:2.45rem}.home-map{padding:12px}.card{padding:17px}.save-list>li{gap:6px}.save-list>li>div{flex-basis:100%}.history-bar{display:block}.map-canvas{height:62dvh;min-height:360px}.map-tools{gap:8px;padding:8px}.map-tools button{font-size:.7rem}.editor-toolbar{gap:8px}.editor-toolbar strong{flex-basis:100%}.resource dd{font-size:1.7rem}.site-header>span{font-size:.7rem}.status-bar{padding-bottom:env(safe-area-inset-bottom,0px)}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.map-panel:has(.construction-popover){scroll-margin-top:64px}.map-stage{position:relative}.map-zoom{gap:10px;display:flex}.wind-wheel{z-index:2;background:#0d241fe6;border:1px solid #74805a;border-radius:6px;width:122px;padding:4px;position:absolute}.wind-wheel:has(>.wind-wheel-toggle[aria-expanded=false]){width:auto}.wind-wheel-toggle{color:#dfd4ac;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;width:100%;min-height:0;margin:0;padding:2px 4px;font-size:.7rem;display:flex}.wind-wheel svg{width:140px;height:140px;image-rendering:pixelated;margin:0 auto;display:block}.wind-wheel label{white-space:nowrap;align-items:center;gap:4px;margin:0 2px 2px;font-size:.65rem;display:flex}.wind-wheel select{flex:1;min-width:0;margin:0;padding:1px 2px;font-size:.7rem}.wind-wheel.top-left{top:10px;left:10px}.wind-wheel.top-right{top:10px;right:10px}.wind-wheel.bottom-left{bottom:10px;left:10px}.wind-wheel.bottom-right{bottom:10px;right:10px}.submission-page{max-width:1000px;margin:0 auto}.submission-page input:not([type=checkbox]),.submission-page textarea{box-sizing:border-box;width:100%}.submission-page textarea{min-height:110px}.public-text{white-space:pre-wrap;overflow-wrap:anywhere}.pending-review .actions{flex-wrap:wrap}.readonly-game{margin:24px 0}.readonly-game .map-canvas{height:min(60vh,620px)}.challenge{min-height:65px;margin:16px 0}.community-page{max-width:1200px;margin:0 auto}.post-filters{flex-wrap:wrap;align-items:end;gap:16px;display:flex}.post-filters p{flex-basis:100%}.post-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:20px;display:grid}.post-card{overflow-wrap:anywhere;min-width:0}.post-thumbnail{border-radius:6px;width:100%;max-height:220px;display:block}.post-card time,.comments time{color:#afbcad;font-size:.85rem}.comments article{border-bottom:1px solid #3a5040;padding:16px 0}.like-control button[aria-pressed=true]{color:#efe0a7;border-color:#daca86}.submission-page .actions{flex-wrap:wrap}.construction-guide{border-left:3px solid #e4cb8d;margin-block:.8rem;padding:0 .7rem;font-size:.85rem}.construction-guide.invalid{color:#ffc8bc;border-color:#f59b91}.attribute-table{background:#162c26;border-radius:.5rem;margin-top:.7rem;padding:.7rem}.attribute-table p,.attribute-table caption{font-size:.8rem}.attribute-table table{text-align:center;width:min(100%,28rem)}.group-drop{min-height:110px;transition:border-color .1s}.group-drop.drag-over{background:#304537;border-color:#e4cb8d}.group-drop li{border:1px solid #54624d;border-radius:4px;justify-content:space-between;align-items:center;gap:.5rem;margin-block:.3rem;padding:.45rem;display:flex}.group-drop li[draggable=true]{cursor:grab}.group-drop li.dragging{opacity:.6}.coordinate-path{overflow-wrap:anywhere}.route-picker{z-index:3;background:#10221ff5;border:1px solid #71d9e8;border-radius:.5rem;width:min(290px,100% - 24px);max-height:calc(100% - 24px);padding:.8rem;position:absolute;top:12px;right:12px;overflow:auto}.route-picker:focus-visible{outline-offset:3px;outline:2px solid #ffdb70}.route-picker h4{margin:0 0 .5rem}.route-picker p{margin:.5rem 0;font-size:.85rem}.route-picker>button{margin-right:.5rem}.build-app{max-width:none;padding:0 24px}.build-app .site-header{height:56px}.map-actions{flex-wrap:wrap;gap:6px;margin-left:auto;display:flex}.map-actions button+button{margin-left:0}.map-actions button[aria-pressed=true]{color:#182b24;background:#dfc38b;border-color:#fff0bb}.editor-toolbar .player-resources{color:#ead6a2;font-variant-numeric:tabular-nums}.editor-toolbar .end-turn{color:#182b24;background:#e0c687;border-color:#e0c687}.room-actions{z-index:4;background:#142e27f5;border:1px solid #c6b679;border-radius:8px;width:max-content;max-width:calc(100% - 16px);max-height:calc(100% - 16px);padding:8px 10px;position:absolute;overflow:auto;box-shadow:0 8px 28px #0008}.room-actions h3{color:#f6e1ac;white-space:nowrap;margin:0 30px 6px 0;font-size:.95rem;line-height:26px}.room-actions-close{margin:0;padding:0 .45rem;line-height:24px;position:absolute;top:6px;right:6px}.room-action-buttons{gap:5px;display:grid}.room-action-buttons button{white-space:nowrap;padding:.3rem .7rem;font-size:.88rem}.room-action-buttons button+button{margin-left:0}.operation-dialog{width:min(620px,100% - 40px)}.large-dialog{border:2px solid #c6b679;width:min(1160px,100% - 64px);max-height:90dvh;padding:24px}.operation-dialog .draft{border:0;margin:0;padding:0}.operation-dialog button{margin-top:0}.party-tabs{border-bottom:1px solid #667655;gap:8px;margin-bottom:16px;padding-bottom:16px;display:flex}.party-tabs button[aria-pressed=true],.upgrade-choices button[aria-pressed=true]{color:#172a25;background:#dcca93;border-color:#fae5aa}.game-window{background:#142e2a;border:1px solid #79876a;border-radius:8px;padding:18px}.upgrade-room .compact{gap:16px 30px;margin:10px 0 14px}.upgrade-room dd{color:#f2d77c;font-size:1.25rem}.upgrade-room dd span{font-size:1rem}.upgrade-wind{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.upgrade-wind span{align-items:center;gap:6px;display:flex}.upgrade-wind img{width:24px;height:24px;image-rendering:pixelated}.upgrade-wind strong{color:#f2d77c}.upgrade-description{min-height:0;margin:0}.upgrade-description .compact{margin-bottom:0}.upgrade-columns{grid-template-columns:1.2fr 1fr;gap:12px;display:grid}.upgrade-choices{gap:6px;max-height:290px;display:grid;overflow:auto}.upgrade-choices button{text-align:left;justify-content:space-between;gap:14px;margin:0;padding:10px 14px;display:flex}.upgrade-choices button span:last-child{white-space:nowrap;font-size:.85rem}.installed-upgrades{margin:0;padding:0;list-style:none}.installed-upgrades li{color:#e4d4a5;border-bottom:1px solid #405c4c;padding:10px 6px}.formation-columns{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.formation-board{align-content:start;gap:8px;display:grid}.formation-board .group-drop{background:#1b3a5a;border:2px solid #79876a;border-radius:8px;align-items:center;gap:12px;min-height:64px;margin:0;padding:8px 12px;display:flex}.formation-board legend{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.party-number{color:#f4f0dc;text-align:center;flex:none;min-width:1.4em;font-size:1.6rem;font-weight:700}.formation-board ol{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.formation-board li{background:0 0;border:0;margin:0;padding:0;display:block}.formation-member{background:#142e2a;border:2px solid #0000;border-radius:6px;place-items:center;width:52px;height:52px;margin:0;padding:0;display:grid;position:relative}.formation-member[aria-pressed=true]{background:#304537;border-color:#fae5aa}.formation-member img,.dismiss-creature img{width:32px;height:32px;image-rendering:pixelated}.formation-member img{width:40px;height:40px}.leader-mark{color:#f2d77c;font-size:.8rem;position:absolute;top:-2px;right:1px}.formation-status-head{align-items:center;gap:12px;display:flex}.formation-status-head img{width:48px;height:48px;image-rendering:pixelated}.formation-status-head h3{margin:0}.formation-status-head span{color:#dcc482;font-size:.85rem}.formation-status .member-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 12px;font-size:.9rem;display:grid}.formation-status .member-stats div{justify-content:space-between;display:flex}.formation-actions{flex-wrap:wrap;gap:8px;display:flex}.formation-status h4{margin:14px 0 6px;font-size:.95rem}.party-choices{gap:6px;display:grid}.party-choice{text-align:left;background:#1b3a5a;align-items:center;gap:12px;min-height:52px;margin:0;padding:6px 12px;display:flex}.party-choice[aria-pressed=true]{color:#172a25;background:#dcca93}.party-choice .party-number{color:inherit;font-size:1.3rem}.party-icons{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.party-icons img{width:32px;height:32px;image-rendering:pixelated}.party-icons img.leader{outline-offset:-1px;border-radius:4px;outline:2px solid #f2d77c}.party-phase{color:#dcc482;margin-left:auto;font-size:.8rem}.summon-menu{gap:10px;display:grid}.summon-menu h3{margin:0 0 10px}.summon-menu .actions{margin-top:10px}.summon-have{text-align:right;color:#dcc482;margin:0}.summon-choices button>span:first-child{align-items:center;gap:8px;display:flex}.summon-choices img,.summon-picked img{width:32px;height:32px;image-rendering:pixelated}.summon-choices small{color:#dcc482;font-size:.75rem}.summon-picked{align-items:center;gap:12px;margin:0;font-weight:700;display:flex}.summon-confirm p{font-size:1.05rem}.route-party-picker h3{margin:0 0 10px}.route-party-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.route-party-title .party-icons img{width:24px;height:24px}.member-stats{flex-wrap:wrap;gap:10px;margin:10px 0;font-size:.72rem;display:flex}.member-stats dt{color:#b3c1a7}.member-stats dd{color:#eedda5;margin:0}.route-picker{width:330px}.route-picker .draft{border:0;margin:0;padding:0}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=720px){.build-app{padding:0 12px}.upgrade-columns{grid-template-columns:1fr}.upgrade-menu{flex-direction:column;gap:12px;display:flex}.upgrade-menu .upgrade-description{order:4;margin:0}.upgrade-menu .upgrade-installed{order:2}.upgrade-menu .upgrade-candidates{order:3}}.dialog-close{position:absolute;top:18px;right:18px}.operation-dialog>h2{padding-right:40px}.dismiss-creature img{vertical-align:middle}@media (pointer:coarse){button,summary,select,input,label{touch-action:manipulation}input:not([type=checkbox]):not([type=file]),select,textarea{font-size:16px}button.small{min-height:36px}.room-actions button.small.room-actions-close{min-height:28px}.room-action-buttons button{min-height:36px}.party-tabs button,.map-actions button{min-height:40px}.map-tools input[type=checkbox]{width:20px;height:20px}.map-tools button.small{min-width:40px}.construction-arrows{grid-template-columns:repeat(3,48px);grid-auto-rows:44px;gap:6px}.construction-arrows button{min-height:0;font-size:1.05rem}.construction-types button,.construction-popover .actions button,.route-picker>button{min-height:40px}}@media (width<=720px){.map-panel:has(.construction-popover){scroll-margin-top:0}.construction-popover.draft,.route-picker{width:auto;max-width:none;max-height:none;box-shadow:none;border-width:2px 0 0;border-radius:0;margin:0;position:static}.route-picker{border-width:1px 0 0}.wind-wheel{transform:scale(.8)}.wind-wheel.top-left{transform-origin:0 0}.wind-wheel.top-right{transform-origin:100% 0}.wind-wheel.bottom-left{transform-origin:0 100%}.wind-wheel.bottom-right{transform-origin:100% 100%}.editor-toolbar{gap:6px}.map-actions{margin-left:0}dialog,.operation-dialog,.large-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 16px);padding:16px}.dialog-close{top:12px;right:12px}.game-window{padding:12px}.formation-columns{grid-template-columns:1fr}.upgrade-choices button{padding:8px 10px}}@media (width<=720px) and (orientation:portrait){.construction-cost .cost-label>span{display:none}.construction-cost .cost-label:before{content:attr(data-short)}}@media (width<=1279px){.party-tabs{flex-wrap:wrap}.party-tabs button{white-space:nowrap}}@media (width<=1279px) and (height<=540px) and (orientation:landscape){.site-header,.build-app .site-header{height:52px}.large-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 16px);padding:16px}.formation-board{gap:8px}.formation-board .group-drop{padding:8px}.map-panel:has(.construction-popover){scroll-margin-top:0}.map-canvas{height:calc(100dvh - 60px);min-height:220px}.map-stage:has(>.construction-popover,>.route-picker){grid-template-columns:minmax(0,1fr) 300px;display:grid}.map-stage>.construction-popover.draft,.map-stage>.route-picker{width:auto;max-width:none;max-height:calc(100dvh - 60px);box-shadow:none;border-width:0 0 0 2px;border-radius:0;margin:0;position:static}}.room-actions .item-confirm-target{white-space:nowrap;margin:0 0 6px;font-size:.88rem}.room-actions [role=alert]{max-width:18rem;margin:6px 0 0;font-size:.85rem}.amount-stepper{grid-template-columns:48px 1fr 48px;align-items:stretch;gap:8px;margin:5px 0 10px;display:grid}.amount-stepper input:not([type=checkbox]):not([type=file]){text-align:center;margin-top:0;font-size:1.1rem}.amount-stepper button{min-height:44px;margin:0;padding:0;font-size:1.2rem}.amount-stepper button+button{margin-left:0}:root{--window-dark:#101b38;--window-blue:#1d3156;--window-edge:#a8b8c3;--game-gold:#ffe36b;--game-pink:#ee8ead;color:#f0efe6;background:#101d1b}body{background:radial-gradient(at 75% 0,#263d33 0,#0000 60%),#101d1b}html{scrollbar-gutter:stable}body:has(dialog[open]){overflow:hidden}button{border-radius:4px}button.secondary,button.small{color:#f0efe6;background:linear-gradient(#2a4055,#1a2d41);border-color:#728495;box-shadow:inset 0 1px #ffffff12,0 1px 2px #0005}button:disabled{opacity:.45}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,.map-canvas:focus-visible{outline-color:#ffdf70}button[aria-pressed=true]{box-shadow:inset 3px 0 var(--game-pink)}input:not([type=checkbox]):not([type=file]),select,textarea{background:#101d30;border-color:#687c8b}.site-header{border-bottom-color:#596a5a}.brand{color:#f0e5bf;align-items:center;gap:12px;display:inline-flex}.brand .brand-seal{color:#eee3bf;letter-spacing:0;background:#703932;border:1px solid #a36d51;place-items:center;width:28px;height:30px;margin:0;font-family:serif;font-size:19px;display:inline-grid;box-shadow:inset 0 0 0 2px #422c2a}.site-header .site-subtitle{color:#a6b9ad;letter-spacing:.08em;font-size:.74rem}.card,.home-map{border-color:#526958;border-radius:5px;box-shadow:inset 0 1px #ffffff08,0 4px 15px #0002}.seed-settings{margin-top:14px;font-size:.82rem}.editor-toolbar{background:var(--window-dark);border:2px solid var(--window-edge);border-radius:5px;gap:0;margin-top:14px;padding:0;box-shadow:inset 0 0 0 2px #344d66,0 3px #080e13}.dungeon-status{flex-wrap:wrap;flex:auto;align-items:center;gap:12px 24px;padding:12px 16px;font-size:.86rem;display:flex}.dungeon-status b{color:var(--game-gold);font-variant-numeric:tabular-nums;font-size:1.18rem;font-weight:650}.dungeon-status .turn-status{color:#fff5cd;white-space:nowrap;font-size:1.06rem}.dungeon-status .player-resources{color:#f0efe6;flex-wrap:wrap;gap:18px;display:flex}.construction-points{color:#b5c8d3;align-items:baseline;gap:10px;font-size:.74rem;display:flex}.construction-points b{font-size:1rem}.editor-commands{flex-wrap:wrap;align-items:center;gap:6px;margin-left:auto;padding:10px 12px;display:flex}.editor-commands button+button{margin-left:0}.editor-commands .end-turn{font-weight:750;box-shadow:inset 0 1px #fff7b5,0 2px #554732}.system-menu-trigger{border-color:#98a6b0!important}.build-grid{margin-top:14px}.map-panel{border:2px solid #6e817c;border-radius:5px;box-shadow:0 4px 20px #0004}.map-tools{background:linear-gradient(#1b3044,#122735);border-bottom:1px solid #607777;padding:8px 12px}.map-tools label{color:#b9c6cb;border:1px solid #0000;border-radius:4px;padding:5px 6px}.map-tools label:has(input:checked){color:#fff4ba;background:#2b4250;border-color:#657f89}.map-tools input[type=checkbox]{accent-color:#dec76e}.map-actions button{border-color:#9aabaf;min-height:34px}.map-canvas{height:max(480px,100dvh - 255px)}dialog,.game-window,.room-actions,.wind-wheel,.construction-popover.draft,.route-picker{background-color:var(--window-dark);border:2px solid var(--window-edge);background-image:linear-gradient(115deg,#25465c38,#0000 45%),repeating-linear-gradient(0deg,#26355b25 0 1px,#0000 1px 4px);border-radius:7px;box-shadow:inset 0 0 0 2px #3b5068,inset 0 0 0 3px #080f27,0 5px #030915b3,0 10px 25px #0006}dialog{padding:26px}dialog::backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#06101ac9}dialog>h2{color:#fff8d6;letter-spacing:.06em;border-bottom:1px solid #607488;padding-bottom:12px;padding-right:44px;font-size:1.18rem}.dialog-close{min-width:32px;min-height:32px;margin:0;padding:0;font-size:1.2rem}.operation-dialog .draft>.actions{border-top:1px solid #52677e;margin-bottom:0;padding-top:14px}.system-menu-actions{border-bottom:1px solid #52677e;grid-template-columns:1fr 1fr;gap:10px;padding-bottom:16px;display:grid}.system-menu-actions button{min-height:48px;margin:0}.system-dialog>button:not(.dialog-close){width:100%}.game-window{padding:18px}.game-window h3{color:#fcf2cf}.game-window dd,.upgrade-wind strong,.summon-have,.member-stats dd,.upgrade-room dd{color:var(--game-gold);font-variant-numeric:tabular-nums}.party-tabs{border-bottom-color:#607488}.party-tabs button[aria-pressed=true],.upgrade-choices button[aria-pressed=true],.party-choice[aria-pressed=true]{color:#fff4ba;border-color:var(--game-pink);box-shadow:inset 3px 0 var(--game-pink);background:#365571}.formation-board .group-drop{background:#182c49;border-color:#677e97;border-radius:5px}.formation-board .group-drop.drag-over{border-color:var(--game-pink);background:#314666}.formation-member{background:#101e38}.formation-member[aria-pressed=true]{border-color:var(--game-pink);background:#385576}.formation-capacity{color:#bfccd5;white-space:nowrap;margin-left:auto;font-size:.75rem}.installed-upgrades li{color:#f4e4ab;border-bottom-color:#394f6a}.upgrade-room-title{align-items:center;gap:8px;display:flex}.upgrade-room-title img{width:28px;height:28px;image-rendering:pixelated}.summon-progress{color:#9baebf;flex-wrap:wrap;gap:6px 12px;margin:0 0 12px;padding:0;font-size:.8rem;list-style:none;display:flex}.summon-progress [aria-current=step]{color:#ffe36b}.resource-transfer{background:#0b1831;border:1px solid #607488;flex-wrap:wrap;gap:12px 28px;padding:12px;display:flex}.resource-transfer dt{color:#b6c7d2;font-size:.8rem}.resource-transfer dd{color:var(--game-gold);font-variant-numeric:tabular-nums;margin:3px 0;font-size:1.25rem}.event-readout{margin-top:16px}.room-actions h3,.construction-popover h3{color:#fff1bd}.wind-wheel{border-radius:5px}.wind-wheel-toggle{color:#f0e4bf}.status-bar{border-top:0;margin-top:4px;font-size:.8rem}@media (width<=1279px){.dungeon-status{gap:10px 18px}.editor-commands{margin-left:0}.map-canvas{height:60vh}}@media (width<=720px){.site-header .site-subtitle{display:none}.build-app{padding:0 8px}.editor-toolbar{margin-top:8px}.dungeon-status{gap:6px 14px;width:100%;padding:10px}.dungeon-status .turn-status{flex-basis:auto;font-size:.95rem}.dungeon-status .player-resources{gap:16px;margin-left:auto}.dungeon-status .construction-points{flex-basis:100%}.editor-commands{gap:5px;padding:6px 8px 10px}.editor-commands .small{min-height:36px;padding:6px 8px}.build-grid{margin-top:10px}.map-canvas{height:62dvh}.map-tools{gap:6px;padding:7px}.map-tools label{padding:3px}.map-actions{flex-basis:100%;grid-template-columns:1fr 1fr;display:grid}.map-actions button{min-height:40px}dialog,.operation-dialog,.large-dialog{padding:16px}.game-window{padding:12px}.construction-popover.draft,.route-picker{border-width:2px 0 0;border-radius:0;box-shadow:inset 0 2px #3b5068}}@media (width<=1279px) and (height<=540px) and (orientation:landscape){.map-canvas{height:calc(100dvh - 60px)}.map-stage>.construction-popover.draft,.map-stage>.route-picker{border-width:0 0 0 2px}}@media (width>=1024px) and (height>=541px){:is(html:has(.build-app),body:has(.build-app)){scrollbar-gutter:auto;overflow:hidden}.build-app{flex-direction:column;gap:8px;height:100dvh;padding:0 8px 8px;display:flex}.build-app .site-header{flex:none;height:40px}.build-app .editor-toolbar{flex:none;margin:0;position:static}.build-app .dungeon-status{gap:8px 18px;padding:8px 12px}.build-app .editor-commands{padding:6px 8px}.build-app .build-grid{flex:1;align-items:stretch;min-height:0;margin:0}.build-app .map-column,.build-app .map-panel{flex-direction:column;min-height:0;display:flex}.build-app .map-panel{flex:1;margin:0}.build-app .map-tools{flex:none}.build-app .map-stage{flex:1;min-height:0}.build-app .map-canvas{height:100%;min-height:0}.build-app .status-bar{z-index:25;pointer-events:none;max-width:80vw;margin:0;position:fixed;top:10px;left:50%;transform:translate(-50%)}.build-app .status-bar p{background:#101b38ed;border-radius:4px;margin:0;padding:2px 8px;font-size:.7rem}.build-app .status-bar p:empty{display:none}.build-app>.notice,.build-app>.history-bar{flex:none;margin:0}}.operation-dialog[open]{flex-direction:column;height:90dvh;max-height:calc(100dvh - 16px);display:flex;overflow:hidden}.operation-dialog>h2{flex:none;margin-top:0}.operation-dialog .draft{flex-direction:column;flex:1;min-height:0;display:flex}.operation-dialog .draft>.party-tabs,.operation-dialog .draft>.actions{flex:none}.operation-dialog .draft>fieldset{scrollbar-gutter:stable;flex:1;min-height:0;padding:4px;overflow:auto}.operation-dialog .draft>.preview{min-height:0;overflow:auto}.actions,.formation-actions,.party-tabs{gap:10px}.actions button+button,.formation-actions button+button,.party-tabs button+button,.system-menu-actions button+button{margin-left:0}.route-picker .route-actions{flex-wrap:wrap;gap:10px;margin:12px 0;display:flex}.route-actions button{margin:0}.upgrade-menu{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:12px;display:grid}.upgrade-menu>.game-window{min-width:0;padding:14px}.upgrade-menu h3{margin:0 0 10px;font-size:1rem}.upgrade-menu .upgrade-room .compact{grid-template-columns:1.5fr repeat(4,1fr);gap:8px;margin:8px 0 12px;display:grid}.upgrade-menu .compact div{min-width:0}.upgrade-menu .upgrade-room dd{white-space:nowrap;font-size:1.05rem}.upgrade-menu .upgrade-room dd span{font-size:.85rem}.upgrade-menu .upgrade-wind{gap:8px 14px;font-size:.85rem}.upgrade-menu .upgrade-wind span{gap:4px}.upgrade-menu .upgrade-wind img{width:20px;height:20px}.upgrade-menu .installed-upgrades{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));column-gap:12px;max-height:140px;display:grid;overflow:auto}.upgrade-menu .installed-upgrades li{padding:6px 0;font-size:.9rem}.upgrade-menu .upgrade-candidates{flex-direction:column;min-height:0;display:flex}.upgrade-menu .upgrade-choices{gap:6px;min-height:0}.upgrade-menu .upgrade-choices button{padding:8px 10px}.upgrade-menu .upgrade-description p{margin:8px 0 12px}@media (width>=721px) and (height>=620px){.upgrade-menu{grid-template-rows:auto minmax(180px,1fr);height:100%}.upgrade-menu .upgrade-choices{max-height:none;overflow:auto}.upgrade-menu .upgrade-description{overflow:auto}}@media (width<=1000px){.upgrade-menu .upgrade-room .compact{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=720px){.upgrade-menu{flex-direction:column;height:auto;display:flex}}.wind-wheel{width:156px}.construction-door-legend{flex-wrap:wrap;gap:12px;font-size:.8rem;display:flex}.construction-door-legend .has-door{color:#ffc55c}.construction-door-legend .no-door{color:#7ce2cf}
