:root{--paper: #f4ead8;--ink: #3e2a14;--brand: #7a4a1e;--line: #d8c6a6;--error: #b3261e;color-scheme:light}*{box-sizing:border-box}[hidden]{display:none!important}html,body{margin:0;height:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,sans-serif}body:not(.dashboard):not(.admin){position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;overscroll-behavior:none}#map{position:fixed;top:0;right:0;bottom:0;left:0}#hud{position:fixed;left:0;right:0;top:0;padding:calc(env(safe-area-inset-top) + 8px) 12px 8px;pointer-events:none}.hud-top,.hud-status{display:flex;justify-content:space-between;gap:8px;background:#f4ead8eb;border:1px solid var(--line);border-radius:10px;padding:8px 12px;box-shadow:0 1px 4px #00000026}.hud-status{margin-top:6px;font-size:14px}.hud-status:empty{display:none}.hud-status.collect{font-weight:600}.hud-status.dwell{flex-direction:column;gap:6px}.dwell-bar{height:10px;border-radius:5px;background:#5d40372e;overflow:hidden}.dwell-bar i{display:block;height:100%;background:#43a047;border-radius:5px;transition:width .2s linear}.backpack{position:fixed;right:12px;bottom:calc(env(safe-area-inset-bottom) + 40px);pointer-events:auto;padding:12px 16px;font-size:18px;font-weight:600;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:999px;box-shadow:0 2px 8px #00000040;cursor:pointer}.backpack.full{color:var(--error);border:4px solid var(--error);padding:9px 13px}.hud-goods{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 12px;margin-top:6px;padding:6px 12px;font-size:15px;font-variant-numeric:tabular-nums;background:#f4ead8eb;border:1px solid var(--line);border-radius:10px;box-shadow:0 1px 4px #00000026}.block{display:inline-block;width:.9em;height:.9em;margin-right:.25em;vertical-align:-.1em;border:1.5px solid rgba(40,30,20,.75);border-radius:3px}.hud-goods .zero{opacity:.4}.trade-here{position:fixed;left:12px;bottom:calc(env(safe-area-inset-bottom) + 40px);max-width:calc(100% - 140px);pointer-events:auto;padding:12px 16px;font-size:16px;font-weight:600;color:#fff;background:var(--brand);border:0;border-radius:999px;box-shadow:0 2px 8px #00000040;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.card .sub{margin:0 0 12px;color:#6d5a43;font-size:14px}.card h2{margin:18px 0 6px;font-size:17px}.prices{width:100%;border-collapse:collapse;font-size:15px}.prices th{font-size:12px;font-weight:600;color:#6d5a43;text-align:left}.prices td{padding:8px 4px;border-bottom:1px solid var(--line);vertical-align:middle}.prices td small{display:block;color:#6d5a43;font-size:12px}.prices .num{text-align:right;font-variant-numeric:tabular-nums}b.level{display:inline-block;min-width:1.4em;padding:0 4px;margin-left:4px;font-size:12px;line-height:1.4em;text-align:center;color:#fff;background:var(--brand);border-radius:999px}.prices .act{text-align:right}.prices .act-row{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px}.prices td:first-child{overflow-wrap:anywhere}@media (max-width: 420px){.prices td{padding:8px 2px}.prices .act-row button[data-act]{padding:6px 8px;font-size:13px}}.prices .act-row+.act-row{margin-top:4px}.prices .act-row button[data-act]{margin-left:0}#overlay>.card{overflow-x:hidden}.card button[data-act]{padding:6px 10px;margin-left:4px;font-size:14px;font-weight:600;color:#fff;background:var(--brand);border:0;border-radius:8px;cursor:pointer}.card button[data-act=sell]{background:#4e6b2f}.card button[data-act]:disabled{opacity:.35;cursor:default}.recipes{list-style:none;padding:0;margin:0 0 12px}.recipes li{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--line);font-size:14px}.locate{position:fixed;left:12px;bottom:calc(env(safe-area-inset-bottom) + 100px);pointer-events:auto;width:50px;height:50px;font-size:22px;background:var(--paper);border:1px solid var(--line);border-radius:50%;box-shadow:0 2px 8px #00000040;cursor:pointer}.claim{position:fixed;left:12px;bottom:calc(env(safe-area-inset-bottom) + 220px);pointer-events:auto;width:50px;height:50px;font-size:22px;background:var(--paper);border:1px solid var(--line);border-radius:50%;box-shadow:0 2px 8px #00000040;cursor:pointer}.claim:disabled{opacity:.5}.checks{list-style:none;padding:0;margin:8px 0 14px;font-size:15px}.checks li{padding:6px 0;border-bottom:1px solid var(--line)}.checks li.no{color:#6d5a43}.primary:disabled{opacity:.45;cursor:default}.primary.secondary{margin-top:8px;color:var(--ink);background:#fff;border:1px solid var(--line)}.copy-row{display:flex;gap:16px;margin-top:6px}.track{position:fixed;left:12px;bottom:calc(env(safe-area-inset-bottom) + 160px);pointer-events:auto;width:50px;height:50px;font-size:20px;color:#fff;background:#8a7860;border:1px solid var(--line);border-radius:50%;box-shadow:0 2px 8px #00000040;cursor:pointer}.track.on{background:#c62828;border-color:#c62828}.hud-status.paused{font-weight:600;color:#fff;background:#8a7860;border-color:#8a7860}.locate{opacity:.75}.locate.on{opacity:1;background:var(--brand);border-color:var(--brand)}.leaderboard{position:fixed;right:12px;bottom:calc(env(safe-area-inset-bottom) + 100px);pointer-events:auto;width:50px;height:50px;font-size:22px;background:var(--paper);border:1px solid var(--line);border-radius:50%;box-shadow:0 2px 8px #00000040;cursor:pointer}.tabs{display:flex;gap:8px;margin:8px 0}.tabs button{flex:1;padding:8px;font-size:15px;font-weight:600;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:8px;cursor:pointer}.tabs button.on{color:#fff;background:var(--brand);border-color:var(--brand)}.ranking li.me{background:#7a4a1e1f;border-radius:6px}.goods{list-style:none;padding:0;margin:12px 0 16px}.goods li{display:flex;justify-content:space-between;padding:10px 4px;border-bottom:1px solid var(--line);font-size:17px}.toast{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom) + 110px);transform:translate(-50%);padding:12px 20px;font-size:20px;font-weight:700;color:#fff;background:var(--brand);border-radius:999px;box-shadow:0 4px 14px #0000004d;animation:pop .3s ease-out;transition:opacity .4s;z-index:10}.toast.out{opacity:0}@keyframes pop{0%{transform:translate(-50%) scale(.6);opacity:0}}button.name{pointer-events:auto;padding:0;font:inherit;font-weight:600;color:inherit;background:none;border:0;cursor:pointer}.avatar{display:inline-grid;place-items:center;width:26px;height:26px;margin-right:6px;vertical-align:middle;border-radius:50%;object-fit:cover;color:#fff;font-size:13px;font-weight:700;box-shadow:0 0 0 1.5px #ffffffe6}.avatar.big{width:72px;height:72px;margin:0;font-size:30px}button.name.has-avatar:before{display:none}.avatar-row{display:flex;align-items:center;gap:14px;margin:8px 0 4px}.avatar-row small{display:block;margin-top:6px;font-size:12px;color:#6d5a43}.file-button{display:inline-block!important;margin:0!important;padding:8px 12px;font-size:14px;color:#fff;background:var(--brand);border-radius:8px;cursor:pointer}button.link{margin-left:10px;padding:0;font:inherit;font-size:14px;color:var(--error);background:none;border:0;cursor:pointer}.rank-who{display:inline-flex;align-items:center;gap:6px}.rank-who .avatar{margin:0}.switch-row{display:flex!important;justify-content:space-between;align-items:center;gap:12px}.fog-row small{display:block;margin-top:2px;font-weight:400;font-size:13px;color:#6d5a43}.fog-row input[type=range]{padding:0;border:0;background:none;accent-color:var(--brand)}.switch-row small{display:block;margin-top:2px;font-weight:400;font-size:13px;color:#6d5a43}.switch-row input[type=checkbox]{display:inline-block;width:26px;height:26px;margin:0;flex:none}.logout{color:var(--error)}.name{font-weight:600}.name:before{content:"";display:inline-block;width:10px;height:10px;margin-right:6px;border-radius:50%;background:var(--player)}.money{font-variant-numeric:tabular-nums}.me-dot{width:18px;height:18px;border-radius:50%;background:#1565c0;border:3px solid #fff;box-shadow:0 0 0 2px #1565c059}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;align-items:safe center;justify-content:center;overflow-y:auto;padding:16px;background:#28190a73}.dialog{width:100%;max-width:380px;padding:18px;background:var(--paper);border:2px solid var(--brand);border-radius:14px;box-shadow:0 8px 28px #00000059;animation:pop .2s ease-out}.dialog p{margin:0 0 14px;font-size:16px;line-height:1.4;white-space:pre-line}.dialog.gift{text-align:center}.dialog.gift h2{margin:0 0 8px}.dialog.gift .goods,.dialog.gift .gift-message{text-align:left}.gift-box{display:block;margin:4px auto 8px;padding:0;background:none;border:none;font-size:110px;line-height:1.2;cursor:pointer;animation:gift-wobble 1.6s ease-in-out infinite}.gift-box img{display:block;width:160px;height:160px;image-rendering:pixelated}@keyframes gift-wobble{0%,60%,to{transform:rotate(0) scale(1)}70%{transform:rotate(-6deg) scale(1.04)}80%{transform:rotate(6deg) scale(1.04)}90%{transform:rotate(-3deg) scale(1.02)}}.gear{display:grid;grid-template-columns:2fr 1fr;gap:8px;margin:8px 0 12px}.gear-slot{display:flex;flex-direction:column;gap:4px;min-height:64px;padding:8px 10px;border:2px solid var(--brand);border-radius:10px;background:#ffd70014}.gear-slot.locked{border-style:dashed;border-color:var(--line, #ccc);background:#00000008;opacity:.7}.gear-slot small{font-weight:600}.slot-item{display:flex;align-items:center;gap:6px}.slot-item>span{flex:1}.slot-empty{color:var(--muted, #888);font-style:italic}.slot-gift{display:flex;align-items:center;gap:8px;padding:4px 6px;font-size:28px;text-align:left;animation:gift-wobble 1.6s ease-in-out infinite}.slot-gift span{font-size:14px;font-weight:600}.gift-about{text-align:left;font-size:14px}.gift-about img.good{float:left;width:48px;height:48px;margin:0 8px 4px 0;image-rendering:pixelated}.gift-message{padding:10px 12px;background:#0000000a;border-left:3px solid var(--brand);border-radius:6px;font-style:italic}.dialog input{display:block;width:100%;box-sizing:border-box;margin:0 0 14px;padding:10px;font:inherit;font-size:18px;border:1px solid var(--line);border-radius:8px}.dialog .row-buttons{gap:8px}.dialog .row-buttons button{flex:1;margin:0}#overlay{z-index:20;position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:calc(env(safe-area-inset-top) + 12px) 16px calc(env(safe-area-inset-bottom) + 12px);background:#3e2a1459}#overlay>.card{max-height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 24px);max-height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 24px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}#overlay[hidden]{display:none}.card{width:100%;max-width:420px;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:20px;box-shadow:0 6px 24px #00000040}.card h1{margin:0 0 8px;font-family:Georgia,serif;color:var(--brand)}.card label{display:block;margin:14px 0;font-weight:600}.card input,.card select{display:block;width:100%;margin-top:6px;padding:10px;font-size:16px;border:1px solid var(--line);border-radius:8px;background:#fff}.card fieldset{border:0;padding:0;margin:14px 0}.card legend{font-weight:600;margin-bottom:6px}.swatches{display:flex;flex-wrap:wrap;gap:8px}.swatch{width:36px;height:36px;border-radius:50%;border:3px solid transparent;cursor:pointer}.color-free{display:inline-flex!important;align-items:center;gap:6px;margin:0!important;font-size:13px;font-weight:400!important;font-family:ui-monospace,monospace;cursor:pointer}.color-free input[type=color]{display:inline-block;width:36px;height:36px;margin:0;padding:0;border:3px solid var(--line);border-radius:50%;background:none;cursor:pointer}.color-free input[type=color]::-webkit-color-swatch-wrapper{padding:0}.color-free input[type=color]::-webkit-color-swatch{border:0;border-radius:50%}.swatch.on{border-color:var(--ink)}.primary{width:100%;padding:12px;font-size:16px;font-weight:600;color:#fff;background:var(--brand);border:0;border-radius:10px;cursor:pointer}.error{color:var(--error)}.version{margin:4px 0 12px;font-size:12px;font-family:ui-monospace,monospace;color:#8a7860}.recipes small{display:block;font-size:12px;color:#6d5a43}.recipes button:disabled{opacity:.45}.recipes li.building strong.effect{display:block;margin:2px 0;font-size:15px;color:var(--brand)}.recipes.quests li.done{opacity:.55}.big-quest{margin:0 0 16px;padding:12px;border:2px solid var(--brand);border-radius:12px;background:#ffc4001f}.big-quest h3{margin:0 0 4px}.big-quest .recipes{margin:8px 0}.big-quest>button{width:100%}.big-quest.done{opacity:.6}.recipes li.building{flex-direction:column;align-items:stretch}.recipes li.building .row-buttons{flex-wrap:wrap;justify-content:flex-end}.recipes li.building .row-buttons button{padding:7px 12px;font:inherit;font-size:14px;font-weight:600;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:8px}.recipes li.building .row-buttons button[data-upgrade]{color:#fff;background:var(--brand);border-color:var(--brand)}.recipes li.building select{display:block;width:100%;margin-top:4px;padding:6px;font:inherit}.sprite{width:40px;height:40px;vertical-align:middle;image-rendering:pixelated}.primary.secondary.danger{color:#a3271f;margin-top:14px}.primary.danger:not(.secondary){background:var(--error);border-color:var(--error);color:#fff}a.primary{display:block;text-align:center;text-decoration:none}.card textarea{width:100%;font:inherit;padding:8px;border:1px solid var(--line);border-radius:8px;margin-top:4px}.row-buttons{display:flex;gap:4px;flex-shrink:0}.storage h2 small{font-weight:400;font-size:14px;color:#6d5a43}.message{position:fixed;left:16px;right:16px;top:calc(env(safe-area-inset-top) + 70px);z-index:30;max-width:420px;margin:0 auto;padding:14px 16px;background:var(--paper);border:2px solid var(--brand);border-radius:12px;box-shadow:0 6px 20px #0000004d;display:flex;gap:12px;align-items:center;animation:pop .3s ease-out}.message p{margin:0;flex:1}.whatsnew>div{flex:1}.message.whatsnew{flex-direction:column;align-items:stretch;max-height:calc(100dvh - 160px)}.whatsnew>div{min-height:0;overflow-y:auto}.whatsnew>button{flex:none;margin-top:8px}.message.whatsnew>.whatsnew-x{position:absolute;top:6px;right:6px;margin:0;color:var(--ink);background:var(--paper);border:1px solid var(--line)}.whatsnew>div>b{display:block;padding-right:36px}.whatsnew ul{margin:6px 0 0;padding-left:18px}.whatsnew li+li{margin-top:4px}.message button{padding:8px 12px;font-weight:600;color:#fff;background:var(--brand);border:0;border-radius:8px}.flag-row{display:flex;align-items:center;gap:12px;margin:14px 0}.flag-row span{flex:1;font-weight:600}.flag-row small{display:block;font-weight:400;color:#6d5a43}.flag-row button,.flag-tools button{padding:8px 12px;font-weight:600;color:#fff;background:var(--brand);border:0;border-radius:8px}.flag-thumb{width:56px;height:56px;image-rendering:pixelated}.flag-top{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:12px}.flag-grid-wrap{width:100%;max-width:384px;max-height:60vh;overflow:auto;-webkit-overflow-scrolling:touch}.flag-brush{display:inline-flex;align-items:center;gap:4px;margin-left:6px}.flag-tools{flex-wrap:wrap;justify-content:center;user-select:none;-webkit-user-select:none}.flag-tools button.on{outline:3px solid #f9a825;outline-offset:1px}#flag-grid{display:block;width:100%;image-rendering:pixelated;height:auto;aspect-ratio:3 / 2;border:2px solid var(--line);border-radius:4px;touch-action:none;cursor:crosshair}#flag-preview{width:160px;height:160px;image-rendering:pixelated}.flag-tools{margin:10px 0}.flag-editor .swatches{gap:6px;max-width:300px;margin:0 auto 8px}.flag-editor .swatch{width:30px;height:30px}.shop-title{display:flex;align-items:center;gap:8px}.shop-title .sprite{width:64px;height:64px;image-rendering:auto}img.good{width:1.5em;height:1.5em;margin-right:.2em;vertical-align:-.4em}.stall-form{display:flex;gap:6px;margin:4px 0 12px}.stall-form select{flex:1;min-width:0}.stall-form input{width:64px}.stall-form select,.stall-form input,.stall-form button{padding:6px;font-size:14px;border:1px solid var(--line);border-radius:6px}.stall-form button{font-weight:600;color:#fff;background:var(--brand);border:0}.stall-form button:disabled{opacity:.45}.recipes li.hosp{border-bottom:0;padding-bottom:0}.recipes.supply{margin:0 0 6px 24px}.market-button{bottom:calc(env(safe-area-inset-bottom) + 160px)}.market-who i{display:inline-block;width:9px;height:9px;margin-right:4px;border-radius:50%}.market select{width:100%;margin:8px 0;padding:6px}.market-goods{display:grid;grid-template-columns:repeat(auto-fill,minmax(54px,1fr));gap:6px;margin:8px 0 4px}.market-good{display:flex;flex-direction:column;align-items:center;padding:4px 2px;font-size:12px;background:#fff;border:2px solid var(--line);border-radius:8px;cursor:pointer}.market-good img.good{width:30px;height:30px;margin:0;vertical-align:0}.market-good.all{font-weight:700;justify-content:center}.market-good.on{border-color:var(--brand);background:#7a4a1e1f}.market-good.empty{opacity:.45}.market .small{font-size:12px}.market-group{margin-top:10px}.market-table td{vertical-align:middle}.market-table .row-buttons button{padding:4px 8px;font-size:13px;font-weight:600;color:#fff;background:var(--brand);border:0;border-radius:6px}.market-table .row-buttons button:disabled{opacity:.4}.help-button{bottom:calc(env(safe-area-inset-bottom) + 220px)}.phone-screen{margin:0 auto 14px;max-width:300px;min-height:360px;padding:10px 14px 18px;border:6px solid #2b2b30;border-radius:28px;background:linear-gradient(160deg,#3a7bd5,#6a5acd 55%,#b06ab3);color:#fff}.phone-status{display:flex;justify-content:space-between;font-size:13px;font-weight:600;margin-bottom:18px}.phone-apps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px 8px}.phone-app{display:flex;flex-direction:column;align-items:center;gap:4px;padding:0;background:none;border:0;color:#fff;font-size:12px;cursor:pointer}.phone-app-icon{display:grid;place-items:center;width:54px;height:54px;font-size:30px;background:#ffffffeb;border-radius:14px;box-shadow:0 2px 6px #00000040}.phone-place{padding:8px 0;border-top:1px solid rgba(0,0,0,.1)}.phone-place p{margin:4px 0}.phone-prices{margin:2px 0 6px;padding-left:4px;list-style:none}.phone-prices li{margin:3px 0}.phone-prices img.good,.courant img.good{width:20px;height:20px;vertical-align:middle}.knecht-goods{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:6px;margin:8px 0}.knecht-goods button{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 4px;font-size:13px}.knecht-goods img.good{width:32px;height:32px}.courant-title,.courant-head{font-family:Georgia,Times New Roman,serif}.courant-head{font-size:22px;line-height:1.25;margin:8px 0 12px;padding-bottom:8px;border-bottom:3px double rgba(0,0,0,.35)}.courant h3{font-family:Georgia,Times New Roman,serif;margin:14px 0 6px}.courant-news{margin:0;padding-left:4px;list-style:none}.courant-news li{margin:5px 0}.courant-nav{display:flex;justify-content:space-between;align-items:center;gap:8px}.fuel-switch{margin:8px 0 12px}.fuel-switch button.on{background:var(--brand);color:#fff;border-color:var(--brand)}.phone-button{bottom:calc(env(safe-area-inset-bottom) + 280px)}.help details{border-bottom:1px solid var(--line);padding:8px 0}.help summary{font-weight:700;cursor:pointer}.help .help-body{margin:8px 0 4px;line-height:1.45}.help-recipes{list-style:none;padding:0;margin:8px 0 0}.help-recipes li{padding:3px 0}.help-recipes small{color:var(--muted, #8a7860)}.shop-summary{margin:6px 0 12px;padding:8px 12px;background:#ffd70014;border-left:3px solid var(--brand);border-radius:6px;font-size:14px}.shop-summary p{margin:0 0 4px}.shop-summary ul{list-style:none;margin:0;padding:0}.shop-summary li{padding:2px 0}.shop-summary li.hint{margin-top:4px;font-size:12px;color:var(--muted, #8a7860)}.help-shops li.help-shop{padding:8px 0;border-bottom:1px solid var(--line)}.help-shop b{display:flex;align-items:center;gap:6px}.help-shop .sprite{width:36px;height:36px}.help-recipes.guide li{padding:8px 0;border-bottom:1px solid var(--line)}.help-recipes.guide li small{display:block;margin-top:2px}.market-table button.sort{padding:0;font:inherit;font-weight:600;color:inherit;background:none;border:0;text-decoration:underline dotted;cursor:pointer}.stall-editor{display:block!important;padding:4px 0 10px 24px!important}.stall-editor .stall-form{align-items:center;margin:4px 0}.stall-editor .stall-form span{width:90px;font-size:13px}button.money{pointer-events:auto;font:inherit;font-weight:700;color:inherit;background:none;border:0;padding:0;cursor:pointer;text-decoration:underline dotted}.ledger .plus{color:#2e7d32}.ledger .minus{color:#b23a2e}.ledger-totals{display:flex;flex-wrap:wrap;gap:4px 14px;margin:10px 0 0;font-weight:600}.ledger-lines li span small{display:block;color:#6d5a43;font-size:12px}.ledger-amount{text-align:right;white-space:nowrap}.ledger .small{font-size:12px;margin-top:10px}.ledger-where{margin:4px 0 10px;font-size:15px}.bank-box{margin:10px 0;padding:10px 12px;background:#f9a8251f;border:1px solid #f9a825;border-radius:10px}.bank-balance{margin:0 0 6px;font-size:18px}.report-flag{margin-left:6px;padding:0;border:0;background:none;font-size:12px;opacity:.45;cursor:pointer}.report-flag:hover{opacity:1}.update-message{flex-direction:column;align-items:stretch}.update-message .row-buttons button{flex:1;margin:0}body .message button{color:#fff;background:var(--brand);border:0}body .message button.primary.secondary{color:var(--ink);background:#fff;border:1px solid var(--line)}.fb-image input[type=file]{display:block;margin-top:6px;font-size:14px}details.sec{border-top:1px solid var(--line);padding:6px 0}details.sec>summary{cursor:pointer;list-style:none;padding:8px 0;font-size:18px;font-weight:700;color:var(--ink)}details.sec>summary::-webkit-details-marker{display:none}details.sec>summary:after{content:"▸";float:right;color:var(--brand)}details.sec[open]>summary:after{content:"▾"}details.sec>summary small{font-weight:400;font-size:14px;color:#6d5a43}.recipes li.building-row{padding:0}.open-row{display:flex;align-items:center;gap:10px;width:100%;padding:8px 2px;font:inherit;text-align:left;color:var(--ink);background:none;border:0;cursor:pointer}.open-row>span:not(.chev){flex:1}.open-row small{display:block;color:#6d5a43}.open-row small.effect-mini{color:var(--brand);font-weight:600}.open-row .chev{font-size:22px;color:var(--brand)}.build-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin:4px 0 10px}.build-tile{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;font:inherit;font-size:13px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:10px;cursor:pointer}.build-tile .sprite{width:52px;height:52px}.build-tile small{font-size:11px;color:#6d5a43}.build-tile.off{opacity:.5}.building-detail .shop-title .sprite{width:64px;height:64px}.recipes.cost li small{display:block;font-size:12px;color:#6d5a43}.recipes.cost button{padding:6px 12px;font-size:16px;background:#fff;border:1px solid var(--line);border-radius:8px}.row-buttons.wide{margin:6px 0;flex-wrap:wrap}.row-buttons.wide button{flex:1;padding:9px 10px;font:inherit;font-weight:600;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:8px}.building-detail label.make select{display:block;width:100%;margin-top:4px;padding:6px;font:inherit}.card,.dialog{position:relative}.card-x{position:absolute;top:8px;right:8px;z-index:1;width:32px;height:32px;padding:0;font-size:18px;line-height:32px;color:var(--ink);background:#ffffffb3;border:1px solid var(--line);border-radius:50%;cursor:pointer}#overlay>.card>.card-x{position:sticky;top:8px;right:auto;display:block;margin:-12px -12px -32px auto;z-index:5;background:#ffffffeb}body .message button.card-x{padding:0;color:var(--ink);background:#ffffffb3;border:1px solid var(--line)}.card>h1,.message:has(>.card-x)>p,.dialog>p{padding-right:36px}.message.out{opacity:0;transition:opacity .4s ease}.row-buttons.wide button:disabled,.recipes.cost button:disabled,.recipes li.building .row-buttons button:disabled{opacity:.4;cursor:default}.not-here{margin:8px 0;padding:8px 10px;font-weight:600;color:#7a4a1e;background:#fff3d6;border:1px solid #e0b860;border-radius:8px}.recipes.landwork li{flex-wrap:wrap;gap:6px}.lw-buttons{display:flex;flex-wrap:wrap;gap:6px}.lw-buttons button{white-space:nowrap}.scout-box:empty{display:none}.scout-box{margin:12px 0;padding:8px 12px;border:1px dashed var(--line);border-radius:10px}.scout-box h2{margin:0 0 6px;font-size:18px}button.good-link{display:inline;padding:0;font:inherit;color:inherit;text-align:left;background:none;border:none;text-decoration:underline dotted;cursor:pointer}.dialog.good-info{max-height:calc(100dvh - 48px);overflow-y:auto}.dialog.good-info h2{margin:0 0 8px}.dialog.good-info h3{margin:10px 0 4px;font-size:15px}.good-info-list{margin:0;padding-left:20px}.good-info-list li{padding:2px 0}.dialog.good-info>.card-x{position:sticky;top:0;right:auto;display:block;margin:-10px -10px -32px auto;background:#ffffffeb}.scout-walker{font-size:26px;line-height:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5));pointer-events:none}.scout-walker span{display:inline-block;animation:scout-step .8s ease-in-out infinite alternate}@keyframes scout-step{0%{transform:translateY(0) rotate(-4deg)}to{transform:translateY(-3px) rotate(4deg)}}body.login-page #overlay{overflow-y:auto}.login-card h1{display:flex;align-items:center;gap:10px}.login-logo{width:40px;height:40px}.login-card .login-code{font-size:1.4rem;letter-spacing:.3em;text-align:center}.login-card button+button{margin-top:8px}
