.habitat-heading{margin:12px 0 18px}.habitat-heading h2{font:600 clamp(25px,4vw,39px)/1.12 Georgia,serif;color:#f0e3bf;margin:9px 0}.habitat-heading .eyebrow{color:#cbb77e}.habitat-muted{color:#b7c2ad;font-size:12px;line-height:1.6}.habitat-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#a6ac8055;border:1px solid #9da67c44;border-radius:15px;overflow:hidden;margin:0 0 14px}.habitat-stats>div{display:grid;gap:5px;text-align:center;padding:14px 7px;background:#183932}.habitat-stats strong{font:600 21px Georgia,serif;color:#e9d99e}.habitat-stats span{font-size:10px;color:#b9c4ab}.habitat-frame{position:relative;background:radial-gradient(ellipse at 50% 48%,#47665777,#172d30 75%);border:1px solid #98aa7d66;border-radius:23px;overflow:hidden;box-shadow:0 20px 45px #06171155,inset 0 0 50px #b4bc7a08}.habitat-stage{width:100%;min-height:230px}.habitat-svg{width:100%;display:block;max-height:660px;overflow:visible;touch-action:pan-y pinch-zoom;user-select:none}.habitat-camera{position:absolute;left:12px;right:12px;top:12px;z-index:1;display:flex;align-items:center;gap:6px;pointer-events:none}.habitat-camera>span{margin-right:auto;background:#122d2bcc;border:1px solid #b2b88444;border-radius:20px;padding:7px 12px;color:#e0dcbe;font-size:10px;backdrop-filter:blur(5px)}.scene-camera-button{min-height:36px!important;min-width:36px;padding:0!important;border-radius:50%!important;background:#193c35e6!important;border:1px solid #aeb88588!important;color:#edddb0!important;font-size:18px!important;pointer-events:auto}.habitat-object{cursor:pointer;outline:none}.habitat-object:focus{filter:drop-shadow(0 0 5px #f5d690)}.habitat-object:hover{filter:brightness(1.12)}.habitat-walker{transition:transform .7s ease;pointer-events:none}.habitat-ghost{pointer-events:none}.habitat-selection{stroke-dasharray:5 3;animation:habitat-dash 3s linear infinite}.room-glow{animation:habitat-glow 2.8s ease-in-out infinite}.room-fire{animation:habitat-glow 1.2s ease-in-out infinite}.room-steam{animation:habitat-steam 4s ease-in-out infinite}.room-star{animation:habitat-glow 3s ease-in-out infinite}.room-portal{animation:habitat-glow 4s ease-in-out infinite}.room-editor{margin:12px 0 21px;min-height:48px}.room-editor:has(.room-controls){background:#213c34;border:1px solid #adba7b66;border-radius:16px;padding:15px}.room-editor-title{display:flex;justify-content:space-between;gap:12px;align-items:center;color:#e6ddba}.room-editor-title strong{font-size:14px}.room-placement-status{font-size:11px;line-height:1.5;margin:9px 0 13px}.room-placement-status.valid{color:#c2d6a0}.room-placement-status.invalid{color:#f0b6a6}.room-controls{display:flex;flex-wrap:wrap;gap:7px}.room-controls button{padding:10px 14px!important;min-height:41px!important;font-size:11px!important}.room-instruction{margin:12px 4px;color:#c2cbb2;font-size:12px;line-height:1.65}.habitat-section-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:21px 0 12px}.habitat-section-heading h3{color:#e7ddbb;font:600 22px Georgia,serif;margin:0}.habitat-section-heading button{min-height:36px;padding:7px 14px;font-size:11px}.room-inventory{display:flex;gap:9px;overflow-x:auto;padding-bottom:12px;scroll-snap-type:x mandatory;overscroll-behavior-x:contain}.room-item{flex:0 0 128px!important;display:flex!important;flex-direction:column;align-items:center;gap:5px;background:#203b33!important;color:#e6debf!important;border:1px solid #9ca67a66!important;border-radius:15px!important;padding:8px 9px 12px!important;scroll-snap-align:start;white-space:normal!important;min-height:158px}.room-item.selected{border-color:#e3cc8d!important;box-shadow:inset 0 0 0 1px #e3cc8d;background:#354d38!important}.room-item strong{font-size:11px;line-height:1.4;font-weight:500}.room-item small{font-size:9px;color:#bbc99c}.habitat-item-icon{display:block;width:97px;height:85px}.habitat-item-icon svg{width:100%;height:100%;overflow:visible}.habitat-card{background:linear-gradient(135deg,#243d32,#1d352e);border:1px solid #a4ae7955;border-radius:18px;padding:20px;margin:15px 0;color:#e8dfc0}.habitat-card h3{font:600 23px/1.2 Georgia,serif;margin:0 0 12px;color:#e9dcad}.habitat-card>.primary{margin-top:10px}.habitat-card p{font-size:12px;line-height:1.65}.habitat-card button{font-size:12px;min-height:42px}.habitat-cost{color:#d4c392;font-size:11px!important;line-height:1.8}.habitat-upgrade{position:relative}.scene-caption{position:absolute;left:13px;top:9px;margin:0;background:#102c29bb;border-radius:16px;padding:7px 11px;font-size:10px;color:#dfddbb;z-index:1}.settlement-frame{margin-top:12px}.settlement-requirements{list-style:none;padding:0;color:#aeb9a5;font-size:12px;line-height:2.3}.settlement-requirements .met{color:#c4d8a5}.settlement-found-form{display:grid;gap:10px;margin-top:14px}.settlement-found-form input,.habitat-field select{width:100%;background:#163129;border:1px solid #a7ad7955;border-radius:11px;color:#e5ddbf;padding:12px;font-size:13px;min-height:44px}.settlement-stock{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.settlement-stock>span{padding:8px 11px;background:#49624366;border-radius:10px;color:#d7dfb7;font-size:12px}.settlement-build-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.settlement-build-option{padding:15px;border:1px solid #adb47844;border-radius:13px;display:flex;flex-direction:column;gap:8px;align-items:start}.settlement-build-option>strong{color:#e8d8a6;font-size:14px}.settlement-build-option p{margin:0}.settlement-build-option button{margin-top:auto;width:100%}.settlement-plot-list{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0}.settlement-plot-list button{font-size:10px;min-height:39px;padding:8px 11px}.habitat-level{display:inline-block;background:#7d935844;border-radius:7px;padding:5px 9px;font-size:11px;color:#d0d7ab}.habitat-field{display:grid;gap:8px;margin:15px 0;color:#c6cdb4;font-size:12px}.settlement-detail progress{display:block;width:100%;height:9px;accent-color:#cab071;margin:15px 0}.settler-roster{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.settler-card{display:grid;grid-template-columns:59px 1fr;gap:11px;padding:15px;background:#1d382f;border:1px solid #8b9a7344;border-radius:16px}.settler-card>.pet-avatar{width:59px!important;height:74px!important;min-width:0!important}.settler-copy{display:flex;flex-direction:column;gap:6px;min-width:0}.settler-copy>strong{font-size:13px;color:#e5ddc0;line-height:1.45}.settler-copy>small{font-size:10px}.settler-rarity{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#bfcaab}.rarity-uncommon{border-color:#81a96977}.rarity-uncommon .settler-rarity{color:#b5d5a0}.rarity-rare{border-color:#7195b577}.rarity-rare .settler-rarity{color:#acc6de}.rarity-epic{border-color:#ad83bf88}.rarity-epic .settler-rarity{color:#d6b4e1}.rarity-legendary{border-color:#dfb76a;box-shadow:inset 0 0 25px #c7973c11}.rarity-legendary .settler-rarity{color:#edce8b}.settler-more{grid-column:1/-1;min-height:35px!important;padding:7px 12px!important;font-size:10px!important}.settler-details{grid-column:1/-1;border-top:1px solid #b5b97c33;padding-top:11px}.settler-details>p{font-size:11px;line-height:1.7;color:#ccd0b6}.settler-details button{width:100%;font-size:11px}.settler-skills{display:grid;gap:5px;margin:12px 0}.settler-skills>div{display:flex;justify-content:space-between;color:#c4cbb2;font-size:10px;padding:7px 8px;background:#45634333;border-radius:6px}.habitat-log{padding:16px 4px;color:#aeba9f;font-size:11px;line-height:1.7}.habitat-log summary{cursor:pointer;font-size:12px;color:#d6d6b2}.habitat-log p{border-left:1px solid #94a27555;padding-left:12px}.habitat-card .primary,.room-controls .primary{color:#172e25!important;background:linear-gradient(135deg,#dfc88f,#bca666)!important}.habitat-card button:disabled,.room-controls button:disabled{opacity:.4}.room-item:focus-visible,.habitat-object:focus-visible{outline:2px solid #ecd392;outline-offset:3px}@keyframes habitat-glow{50%{opacity:.55}}@keyframes habitat-steam{50%{opacity:.25;translate:0 -6px}}@keyframes habitat-dash{to{stroke-dashoffset:-32}}@media(max-width:600px){.habitat-heading h2{font-size:29px}.habitat-card{padding:17px}.settlement-build-options,.settler-roster{grid-template-columns:1fr}.settler-card{grid-template-columns:65px 1fr auto;align-items:center}.settler-more{grid-column:auto}.settler-details{grid-column:1/-1}.habitat-svg{min-height:300px}.settlement-frame .habitat-svg{min-height:330px}.room-controls button{flex:1 1 auto}.room-editor-title{align-items:start}.room-editor-title>.habitat-muted{font-size:10px;white-space:nowrap}.room-item{flex-basis:120px!important}.habitat-section-heading h3{font-size:21px}.habitat-camera{top:9px;left:9px;right:9px}}@media(prefers-reduced-motion:reduce){.room-glow,.room-fire,.room-steam,.room-star,.room-portal,.habitat-selection{animation:none}.habitat-walker{transition:none}}

#me[data-pet-view="camp"]>.page-heading{margin:10px 0 16px;align-items:center}#me[data-pet-view="camp"]>.page-heading h1{font-size:19px;margin:0}#me[data-pet-view="camp"]>.page-heading .eyebrow,#me[data-pet-view="camp"]>.page-heading .subtitle{display:none}#me[data-pet-view="camp"] #pet-refresh{min-height:33px;width:36px;padding:4px;font-size:11px}.settler-card>.pet-portrait{width:59px!important;height:74px!important;min-width:0!important;max-width:100%;border-radius:12px}.settler-more{background:#345348!important;border:1px solid #93a77655!important;color:#d4dbbe!important;border-radius:9px!important}.settler-card .pet-portrait img{width:100%;height:100%;object-fit:cover}@media(max-width:600px){.settler-card{grid-template-columns:58px minmax(0,1fr) auto}.settler-card>.pet-portrait{width:58px!important;height:74px!important}.settler-more{padding:7px 9px!important}.settler-copy>strong{font-size:12px}}

#me[data-pet-view="camp"]>.page-heading{display:none}.camp-navigation{flex-wrap:nowrap!important;gap:6px!important;margin:14px 0 20px!important}.camp-navigation>button{font-size:11px!important;padding:10px 12px!important;white-space:nowrap;min-height:40px}.camp-navigation>button:last-child{margin-left:auto;padding:8px 12px!important;font-size:20px!important}.camp-appearance{color:#bbc7a9;font-size:11px;margin:20px 0}.camp-appearance>summary{cursor:pointer;padding:10px 0}.camp-appearance label{padding:12px 0}

.settler-details>progress{width:100%;height:7px;accent-color:#d1b77c;display:block;margin:8px 0 16px}.settler-skills>div{display:grid;grid-template-columns:1fr auto;gap:7px}.settler-skills progress{grid-column:1/-1;display:block;width:100%;height:4px;accent-color:#90af7d}
.habitat-walker{transition:transform .3s linear}@media(prefers-reduced-motion:reduce){.habitat-walker{transition:none}}
.habitat-frame{background:radial-gradient(ellipse at 32% 14%,#83a07026,transparent 65%),linear-gradient(155deg,#1b4038,#122f2e);box-shadow:0 20px 42px #061b1c55,inset 0 1px 0 #d5d5a614}.habitat-svg{shape-rendering:geometricPrecision}.habitat-ground-detail{pointer-events:none}.habitat-camera>span{box-shadow:0 3px 12px #0a211d22}.house-exterior-preview{overflow:visible}.hero-world-look{background:radial-gradient(ellipse at 18% 62%,#91ab6540,#183e36 75%)}.hero-world-look .habitat-hero-preview{height:178px;width:112px}.realm-map-frame{box-shadow:0 18px 42px #061c2055,inset 0 1px 0 #e5d6a622}@media(max-width:600px){.hero-world-look .habitat-hero-preview{height:164px;width:106px}}
.home-tabs{display:flex;gap:5px;background:#102e2b;border:1px solid #8da67d55;padding:4px;border-radius:13px;margin:0 0 20px}.home-tabs>button{flex:1;border:0!important;min-height:37px!important;padding:8px!important;border-radius:9px!important;background:transparent;color:#bbcab0;font-size:11px!important}.home-tabs>button.active{background:#d9c898;color:#344d3d;box-shadow:0 2px 5px #0002}.yard-frame .habitat-stage{min-height:290px}.yard-shop{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.yard-shop-item{display:grid;justify-items:center;text-align:center;gap:8px;padding:13px 10px;background:#203f33;border:1px solid #99ad7c55;border-radius:16px;min-width:0;color:#e0ddba}.yard-shop-item>.habitat-item-icon{width:85px;height:78px}.yard-shop-item strong{font-size:12px;min-height:28px}.yard-shop-item small{font-size:10px;min-height:20px}.yard-shop-item button{font-size:10px!important;min-height:34px!important;padding:8px 12px!important;margin-top:auto!important}.yard-shop-item .habitat-muted{color:#b8c4a9}.house-style-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.house-style-gallery>.habitat-card{margin:0;padding:15px;min-width:0;background:linear-gradient(160deg,#254a3c,#173c34);border:1px solid #a5b88766}.house-style-gallery h3{font-size:18px;margin:0 0 10px}.house-exterior-preview{width:100%;height:180px;display:block;filter:drop-shadow(0 12px 9px #081f2344)}.house-style-gallery .habitat-muted{min-height:40px}.house-style-gallery button{width:100%;font-size:11px!important;padding:11px!important}.house-style-gallery [data-style="moon"]{background:linear-gradient(160deg,#4a4560,#223638)}.house-style-gallery [data-style="stone"]{background:linear-gradient(160deg,#4b5e55,#233b35)}.house-style-gallery [data-style="elven"]{background:linear-gradient(160deg,#456657,#244a42)}.habitat-hero-preview{height:164px;width:104px;flex-shrink:0;filter:drop-shadow(0 9px 7px #061d2244)}.hero-world-look{display:flex;gap:20px;align-items:center;border:1px solid #b5b17b55;background:radial-gradient(ellipse at 15% 75%,#8da98244,#183e36 80%);padding:18px 20px;border-radius:20px;margin:16px 0}.hero-world-look>div{display:grid;gap:7px}.hero-world-look strong{font:600 25px Georgia,serif;color:#e9d7a7}.hero-world-look p{margin:0}.hero-world-look small{font-size:10px}.strategy-resources{display:flex;gap:8px;margin:14px 0;padding:12px;background:#142f2c;border:1px solid #a3ae7e55;border-radius:12px}.strategy-resources>span{flex:1;display:grid;gap:4px;text-align:center}.strategy-resources small{font-size:9px;color:#aabea6}.strategy-resources strong{color:#ebd6a2;font:600 18px Georgia,serif}.strategy-output{padding:10px 13px!important;border-radius:9px;background:#62815544;color:#d3dcb3!important;font-size:12px!important}.strategy-stock{padding:17px!important;display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px}.strategy-stock h3{font-size:16px!important;grid-column:1/-1}.strategy-stock .settlement-stock{margin:0}.strategy-stock button{font-size:11px!important;min-height:38px!important;padding:10px 13px!important}.settlement-frame .habitat-stage{min-height:310px}.settlement-frame .habitat-svg{cursor:grab}.settlement-frame .habitat-svg:active{cursor:grabbing}.settlement-map-label{pointer-events:none}.realm-map-frame{position:relative;border:1px solid #b2b28688;border-radius:22px;overflow:hidden;box-shadow:0 18px 40px #071e2355;background:#36564b;margin:20px 0 0}.realm-map-stage{height:500px}.realm-svg{width:100%;height:100%;display:block;touch-action:none;cursor:grab;user-select:none}.realm-svg:active{cursor:grabbing}.realm-map-tools{position:absolute;top:12px;left:12px;right:12px;display:flex;gap:6px;align-items:center;z-index:1;pointer-events:none}.realm-map-tools>*{pointer-events:auto}.realm-map-tools>span{margin-right:auto;font:600 13px Georgia,serif;background:#153b32dd;color:#ead8a4;border:1px solid #b4b88b66;border-radius:16px;padding:10px 12px}.realm-map-tools>button:last-child{padding:0 11px!important;min-width:55px;border-radius:18px!important;font-size:10px!important}.realm-node{cursor:pointer;outline:none}.realm-node[aria-disabled="true"]{cursor:default}.realm-node:focus>circle,.realm-node:hover>circle{stroke:#f8dfa3;stroke-width:5}.realm-node[aria-disabled="true"]:hover>circle{stroke:#b5c094;stroke-width:3}.realm-label{pointer-events:none;user-select:none}.realm-symbol{pointer-events:none}.settlement-detail{border:1px solid #ccbd8955!important;background:linear-gradient(140deg,#2d4b3a,#193a32)!important}.habitat-section-title{color:#e4d4a8;font:600 21px Georgia,serif;margin:22px 0 15px}
.luck-box{text-align:center;background:radial-gradient(ellipse at 50% 25%,#71895755,#163a32 65%)!important;border:1px solid #c6ba7b88!important;padding:24px!important}.luck-box h3{font:600 28px Georgia,serif!important;color:#e8d6a4!important}.luck-box-art{max-width:310px;margin:0 auto}.luck-box-art svg{width:100%;max-height:215px}.luck-box-art .luck-lid{transform-origin:160px 126px}.luck-box-art.opening .luck-lid{animation:luck-open 1.2s ease-in-out infinite alternate}.luck-categories{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:12px 0 18px}.luck-categories>button{min-height:41px!important;padding:8px 4px!important;font-size:11px!important;color:#bac8ab;background:#254b3e;border:1px solid #9dae7b55;border-radius:11px!important}.luck-categories>button.selected{background:#d8c995;color:#37513f;border-color:#dfcf9d}.luck-price{color:#ead49a;font:600 22px Georgia,serif}.luck-box>.primary{width:100%;margin:12px 0 18px}.luck-rules{border-top:1px solid #bac79633;padding-top:15px;text-align:left}.luck-rules summary{cursor:pointer;font-size:12px;color:#d2cfaa}.luck-odds{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin:16px 0}.luck-odds>div{display:grid;text-align:center;gap:7px;padding:10px 1px;background:#365946;border-bottom:3px solid #a0b187;border-radius:7px;font-size:10px;color:#d4dfbd}.luck-odds>.rarity-uncommon{border-color:#7bb599}.luck-odds>.rarity-rare{border-color:#87adc0}.luck-odds>.rarity-epic{border-color:#b497d0}.luck-odds strong{font-size:17px}.luck-reward{border:1px solid #bca97188!important;background:#244b3b!important}.luck-reward.rarity-rare{border-color:#9ebfca!important}.luck-reward.rarity-epic{background:linear-gradient(140deg,#50486b,#234639)!important;border-color:#bfadd5!important}.luck-reward .eyebrow{font-size:10px;color:#d6c89b}.luck-reward h3{color:#ebddb7!important}@keyframes luck-open{to{transform:translateY(-12px) rotate(-5deg)}}@media(prefers-reduced-motion:reduce){.luck-box-art.opening .luck-lid{animation:none}}
@media(max-width:600px){.yard-shop{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.house-style-gallery{gap:10px}.house-style-gallery>.habitat-card{padding:12px}.house-style-gallery h3{font-size:17px}.house-style-gallery .habitat-muted{font-size:10px;min-height:50px}.house-exterior-preview{height:150px}.house-style-gallery .habitat-cost{font-size:10px!important}.house-style-gallery button{font-size:10px!important;min-height:39px!important}.realm-map-stage{height:440px}.realm-map-tools>span{font-size:11px;padding:10px}.hero-world-look{gap:12px;padding:12px}.habitat-hero-preview{height:150px;width:95px}.strategy-stock{grid-template-columns:1fr!important}.strategy-stock button{width:100%}.strategy-stock .settlement-stock{margin:0 0 7px}}

/* Compact, optional guidance; the map stays available and objectives never expire. */
.player-focus{padding:20px!important;display:grid;gap:12px}.player-focus h3,.player-focus p{margin:0!important}.player-focus-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.player-focus-heading small{font-size:11px;opacity:.8}.player-focus .primary{justify-self:start}.player-path-progress{display:block;width:100%;height:8px;border:0;border-radius:6px;overflow:hidden;accent-color:#9caf70;background:#254b3e}.player-path-progress::-webkit-progress-bar{background:#254b3e}.player-path-progress::-webkit-progress-value{background:#a7b77f;border-radius:6px}.player-path-progress::-moz-progress-bar{background:#a7b77f}.player-path-choices{border-top:1px solid #a5b48955;padding-top:13px}.player-path-choices summary,.player-cooperation summary,.quest-mode summary{cursor:pointer;font-size:13px;line-height:1.5;min-height:28px}.player-path-options{display:flex;flex-wrap:wrap;gap:7px;margin:13px 0}.player-path-options>button{flex:1 1 130px;font-size:12px!important;padding:10px!important;min-height:42px!important}.player-path-options>button[aria-pressed=true]{outline:2px solid #b7c58e;outline-offset:1px}.player-goal-row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;padding:8px 0;border-top:1px solid #a5b48933}.player-goal-row small{white-space:nowrap}.player-cooperation{padding:17px 20px!important}.player-cooperation summary{font-weight:650}.player-coop-badges{display:flex;flex-wrap:wrap;gap:7px;margin:13px 0}.player-coop-badges>span{font-size:10px;padding:7px 9px;border:1px solid #a5b48966;border-radius:9px;opacity:.65}.player-coop-badges>.earned{opacity:1;background:#3e6248;color:#f0dfa7}.player-party-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;border-top:1px solid #a5b48944;padding:12px 0}.player-party-row strong{font-size:13px}.player-party-row button{grid-column:1/-1;justify-self:start;font-size:12px!important}.quest-mode{border:1px solid #a5b48966;border-radius:12px;padding:12px 14px;margin:12px 0;max-width:100%;background:#45604418}.quest-mode label{display:grid;gap:7px;margin-top:10px;font-size:12px}.quest-mode select{width:100%;min-height:44px}.quest-mode .pet-muted{font-size:12px!important;margin:9px 0 0!important}.quest-mode-badge{display:inline-block;border:1px solid #a5b48999;border-radius:8px;padding:6px 10px;font-size:11px;margin-bottom:10px}.player-account-note{font-size:11px!important;opacity:.75;margin:5px 0 12px!important}@media(max-width:420px){.player-focus{padding:16px!important}.player-focus-heading small{font-size:10px}.player-focus .primary{width:100%}.player-party-row{grid-template-columns:minmax(0,1fr) auto}.player-path-options>button{flex-basis:100%}} 

/* Settlement: one scene, one selected building, compact management below. */
.settlement-summary{display:flex;flex-wrap:wrap;gap:8px 16px;color:#c2caa5;font-size:12px;margin:4px 0 15px}.settlement-summary>span{white-space:nowrap}
.settlement-frame{overflow:hidden;border-radius:20px;background:#385c48;border:1px solid #9cab7a66;isolation:isolate}
.settlement-frame .habitat-stage{height:clamp(350px,57vh,540px);min-height:350px;position:relative;background:#385c48}
.settlement-frame .habitat-svg{display:block;width:100%;height:100%;min-height:0;touch-action:none}
.settlement-frame .habitat-camera{top:12px;left:12px;right:12px;gap:5px}
.settlement-frame .habitat-camera>span{font-size:11px;max-width:40%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.settlement-frame .habitat-camera>button{min-width:40px!important;min-height:40px!important;border-radius:13px!important;background:#173c33ed!important;border:1px solid #aab78c88!important;color:#eadcb2!important}
.settlement-frame .habitat-camera>button:nth-last-child(2){width:auto!important;padding:0 12px!important;font-size:11px!important}
.settlement-map-object .settlement-selection{opacity:0;pointer-events:none}.settlement-map-object[data-selected=true] .settlement-selection{opacity:1}.settlement-map-object:focus .settlement-selection{opacity:1;stroke:#f3dc9c;stroke-width:3}
.settlement-building-status{pointer-events:none}.settlement-worker-breath{animation:settlement-breathe 4.6s ease-in-out infinite;transform-origin:0 0}.settlement-worker:nth-child(3n) .settlement-worker-breath{animation-delay:-1.7s}.settlement-worker:nth-child(3n+1) .settlement-worker-breath{animation-delay:-3s}
.settlement-picker{display:flex;align-items:flex-end;gap:10px;padding:13px 15px;background:#1a4034;border-top:1px solid #9cab7a44}.settlement-picker>.habitat-field{flex:1;min-width:0;margin:0}.settlement-picker .habitat-field{font-size:11px;color:#c8d1af;gap:5px}.settlement-picker select{width:100%;min-width:0;min-height:43px!important;margin:0!important;font-size:13px!important;padding:10px 12px!important}.settlement-picker .settlement-home-button{flex:0 0 auto;min-height:43px;padding:10px 15px;font-size:12px}
.settlement-selection-panel{border-top:1px solid #acb78866;background:linear-gradient(145deg,#284e3b,#183d32);padding:18px;color:#ede0b9}.settlement-selection-panel[hidden]{display:none}.settlement-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.settlement-panel-heading h3{font:600 22px/1.2 Georgia,serif;margin:0 0 5px;color:#eddfb7}.settlement-panel-heading .habitat-muted{font-size:11px}.settlement-panel-close{flex:0 0 38px;min-height:38px!important;padding:7px!important;font-size:23px!important;background:#43604577!important;border-radius:12px!important;border:1px solid #a8b38466!important;color:#e8d9ac!important}.settlement-selection-panel p{margin:10px 0;font-size:13px;line-height:1.5}.settlement-selection-panel .habitat-cost{font-size:12px!important;line-height:1.6;color:#dfcf9e!important}.settlement-selection-panel .habitat-field{font-size:12px;margin:10px 0}.settlement-selection-panel select{min-height:44px;font-size:14px;width:100%}.settlement-selection-panel .primary{font-size:13px;min-height:44px}.settlement-selection-panel progress{display:block;width:100%;height:8px;border:0;accent-color:#d5bb7d;margin:12px 0}.settlement-production-line{font-weight:600;color:#e2d39b}.settlement-action-note{color:#c0caa8;font-size:11px!important}.settlement-building-upgrade{padding-top:10px;margin-top:13px;border-top:1px solid #a7b38b44}.settlement-assignment{border:1px solid #a3b28b55;padding:11px 13px;border-radius:12px}.settlement-assignment summary{font-size:12px;cursor:pointer;line-height:1.5}.settlement-assignment .secondary{font-size:12px;min-height:42px}.settlement-assignment .habitat-muted{font-size:11px}
.settlement-stockbar{display:flex;align-items:center;gap:14px;border:1px solid #a5b48566;border-radius:14px;background:#1c4235;padding:15px;margin:18px 0}.settlement-stock-values{display:flex;flex-wrap:wrap;gap:6px 12px;flex:1;font-size:12px;color:#d3d5ad}.settlement-stock-values>strong{flex-basis:100%;font-size:13px;color:#edddb1}.settlement-stockbar>button{flex:0 0 auto;min-height:42px;font-size:12px;padding:11px 16px}.settlement-management{border-bottom:1px solid #9eae7b44;padding:15px 0;color:#d6dbb7}.settlement-management>summary{font-size:14px;font-weight:600;line-height:1.5;cursor:pointer;min-height:24px}.settlement-management>p{font-size:12px;line-height:1.6}.settlement-management>button{min-height:43px;font-size:12px}.settlement-management[open]>.settler-roster,.settlement-management[open]>.settlement-materials{margin-top:15px}.settlement-materials{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 16px;padding:4px 0 10px}.settlement-materials>div{display:grid;gap:5px;font-size:12px}.settlement-materials strong{color:#ead6a3;font-size:16px}.settlement-map-help{font-size:11px;line-height:1.6;margin:10px 2px 15px;color:#bac8a8}.settlement-management .habitat-section-heading{margin-top:10px}.settlement-management .habitat-section-heading h3{font-size:16px}.settlement-management .settler-card{margin-top:9px}
@keyframes settlement-breathe{50%{transform:translateY(-1.3px)}}
@media(max-width:460px){.settlement-frame .habitat-stage{height:clamp(355px,54vh,440px)}.settlement-frame .habitat-camera{top:9px;left:9px;right:9px;gap:4px}.settlement-frame .habitat-camera>button{min-width:42px!important;min-height:44px!important}.settlement-frame .habitat-camera>span{font-size:11px;padding:8px 10px;max-width:35%}.settlement-picker{padding:12px;gap:7px}.settlement-picker .settlement-home-button{padding:10px 12px;min-height:44px}.settlement-selection-panel{padding:15px}.settlement-panel-heading h3{font-size:21px}.settlement-stockbar{padding:13px;gap:10px}.settlement-stockbar>button{padding:10px 12px}.settlement-summary{font-size:11px;gap:7px 12px}.settlement-materials{gap:12px}.settlement-map-help{font-size:11px}}
@media(prefers-reduced-motion:reduce){.settlement-worker-breath{animation:none!important}.settlement-frame .room-steam,.settlement-frame .room-glow{animation:none!important}}

@media(max-width:600px){.settlement-picker select,.settlement-selection-panel select{font-size:16px!important}.settlement-found-form input{font-size:16px!important}}

/* Game audit: one primary destination, one local navigation, detail on demand. */
#me{--game-ink:#e7dfc2;--game-dim:#bcc9b3;--game-surface:#203e32;--game-border:#a9b88a45}
#me .page-heading{align-items:center;margin:14px 0 18px;gap:12px}
#me .page-heading h1{font-size:clamp(24px,4vw,32px);margin:4px 0}
#me .page-heading .eyebrow{display:none}
#me .page-heading .subtitle{font-size:13px;line-height:1.4;margin:0;color:var(--game-dim)}
#me #pet-refresh{min-height:44px;padding:9px 12px;font-size:12px;box-shadow:none;white-space:nowrap}
#me .pet-tabs{position:sticky;top:0;z-index:12;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;padding:5px;margin:0 0 14px;border-radius:15px;border:1px solid var(--game-border);background:#143329f5;backdrop-filter:none}
#me .pet-tabs button{display:flex;align-items:center;justify-content:center;min-width:0;min-height:48px;padding:8px 3px;font-size:12px;line-height:1.35;white-space:normal;border-radius:10px;box-shadow:none;color:#c9d2b9;background:transparent;border:1px solid transparent}
#me .pet-tabs button.active{color:#f3dfa3;background:#45603d;border-color:#b9c49166}
#pet-content{min-width:0;overflow-wrap:anywhere}
#me .game-local-nav{display:flex;gap:5px;align-items:stretch;overflow-x:auto;padding:0 0 10px;margin:0 0 12px;scrollbar-width:thin}
#me .game-local-nav button{flex:1 0 auto;min-height:44px;padding:9px 12px;font-size:13px;line-height:1.3;border-radius:11px;box-shadow:none;background:#294738;color:#cdd5b9;border:1px solid #81976a55}
#me .game-local-nav button.active{background:#d6c694;color:#354c31;border-color:#eadba8}
#me .game-back{min-height:44px;box-shadow:none;font-size:13px;background:transparent;color:#d9d9b8;border:0;padding:8px 0;margin:0 0 8px}
#me .game-screen-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:6px 0 16px}
#me .game-screen-heading h2{font:600 25px/1.2 Georgia,serif;color:#eddfb7;margin:0}
#me .game-screen-heading>span{font-size:12px;white-space:nowrap}
#me .game-balance{padding:8px 10px;border:1px solid #a9b88a50;border-radius:10px;color:#e3d7ad}
#me .pet-card,#me .frontier-card{padding:18px 20px;margin:12px 0;border-radius:17px;box-shadow:none;border:1px solid #b2bd9366;background:linear-gradient(135deg,#294735,#203d31);color:#e6dfc3;min-width:0}
#me .pet-card h3,#me .frontier-card h3{font:600 20px/1.25 Georgia,serif;margin:0 0 10px;color:#ebdfb8}
#me .pet-card p,#me .frontier-card p{font-size:14px;line-height:1.55;margin:9px 0}
#me .pet-muted{color:var(--game-dim);font-size:13px;line-height:1.5}
#me .pet-card .primary,#me .frontier-card .primary,#me .game-quest-row .primary{box-shadow:none;min-height:44px;font-size:13px;padding:11px 16px;line-height:1.4}
#me .pet-card .secondary,#me .frontier-card .secondary{min-height:44px;box-shadow:none;font-size:13px;padding:9px 12px;color:#d9dcba;background:#38543e;border-color:#a2b18066}
#me button:disabled{cursor:default;opacity:.5}
#me button:focus-visible,#me summary:focus-visible,#me select:focus-visible,#me input:focus-visible,#me textarea:focus-visible{outline:3px solid #e4cc8b;outline-offset:3px}
#me .game-cost{color:#e2cf99;font-size:13px!important;line-height:1.6}
#me .game-status{display:block;color:#c8d3ae;font-size:13px;line-height:1.6}
#me .game-disclosure{padding:12px 0;border-bottom:1px solid var(--game-border);margin:8px 0;color:#d6dec3}
#me .game-disclosure>summary{min-height:44px;display:list-item;align-content:center;font-size:14px;font-weight:600;line-height:1.4;cursor:pointer;padding:11px 4px}
#me .game-disclosure p{font-size:13px;line-height:1.6}
#me .game-compact-list{margin:15px 0}
#me .game-compact-list>h3{font-size:17px;color:#e5d9b2}
#me .game-list-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--game-border)}
#me .game-list-row>div,#me .game-npc-row>span{display:grid;gap:5px;min-width:0}
#me .game-list-row strong{font-size:14px;color:#dedec0}
#me .game-list-row button{min-height:44px;flex-shrink:0;padding:9px 11px;font-size:12px;box-shadow:none}
#me .game-resource-strip{display:flex;flex-wrap:wrap;gap:7px 12px;font-size:12px;line-height:1.5;color:#c3cfb1;padding:4px 0 10px}
#me .game-focus-compact{display:flex;gap:14px;align-items:center;justify-content:space-between;margin:10px 0 16px;padding:13px 15px;border:1px solid #a2b2834d;border-radius:14px;background:#2a4837}
#me .game-focus-compact>div{flex:1;min-width:0;display:grid;gap:5px}
#me .game-focus-compact strong{font-size:14px;color:#e7dfbb;line-height:1.35}
#me .game-focus-compact .eyebrow{font-size:9px;margin:0;color:#b8c29a}
#me .game-focus-compact progress{width:100%;height:4px;margin:3px 0;accent-color:#c6bd85}
#me .game-focus-compact button{min-height:44px;font-size:12px;padding:9px 12px;box-shadow:none;flex-shrink:0}
#me .realm-map-frame{margin:0 0 14px;border-radius:17px;box-shadow:none}
#me .realm-map-stage{height:clamp(340px,53vh,510px)}
#me .realm-map-tools{gap:5px}
#me .realm-map-tools button{min-width:44px;min-height:44px;font-size:13px}
#me .realm-place-panel .pet-card{margin:0 0 10px}
#me .realm-place-panel .pet-card .primary{display:block;width:100%;margin-top:13px}
#me .quest-mode{padding:7px 0;margin:9px 0;border:0;background:transparent}
#me .quest-mode>summary{min-height:44px;font-size:12px;line-height:1.5;align-content:center;cursor:pointer;color:#bbc8a8}
#me .quest-mode label{font-size:13px}
#me .game-quest-list{margin:12px 0}
#me .game-quest-row,#me .neighbor-row,#me .troop-row{border:1px solid var(--game-border);border-radius:13px;margin:9px 0;background:#244332;padding:0 14px}
#me .game-quest-row>summary,#me .neighbor-row>summary,#me .troop-row>summary{cursor:pointer;min-height:65px;padding:14px 0;color:#e0ddbb}
#me .game-quest-row>summary strong{font-size:14px;line-height:1.4}
#me .game-quest-row>summary small{display:block;margin:5px 0 0 17px;color:#abbc9c;font-size:12px}
#me .game-quest-row[open],#me .neighbor-row[open],#me .troop-row[open]{padding-bottom:15px}
#me .game-quest-row p,#me .neighbor-row p{font-size:13px;line-height:1.6}
#me .game-town-line{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;padding:4px 0 18px}
#me .game-town-line strong{font-size:19px;color:#e5dcb6}
#me .game-npc-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
#me .game-npc-row{display:flex;align-items:center;text-align:left;gap:12px;min-width:0;min-height:82px;padding:12px 14px;border:1px solid var(--game-border);border-radius:13px;background:#284634;color:#e0ddbc;box-shadow:none}
#me .game-npc-row[aria-pressed=true]{border-color:#dfce96;background:#36523c}
#me .game-npc-row img{width:100%;height:100%;object-fit:cover;object-position:center top;border-radius:10px;flex-shrink:0}
#me .game-npc-row strong{font-size:14px;line-height:1.35}
#me .game-npc-row small{font-size:11px;line-height:1.4;color:#b9c8aa}
#me .game-npc-symbol{font-size:28px}
#me .world-dialog{max-height:280px;overflow-y:auto;overscroll-behavior:contain}
#me .npc-layout{display:block;max-width:800px;margin:0 auto}
#me .npc-character{display:grid;grid-template-columns:76px minmax(0,1fr);gap:8px 16px;text-align:left;background:#244331;border:1px solid var(--game-border);border-radius:17px;padding:16px;margin:0 0 12px;box-shadow:none}
#me .npc-character>img{width:76px;height:88px;object-fit:cover;object-position:center top;border-radius:13px;grid-column:1;grid-row:1;margin:0}
#me .npc-identity{grid-column:2;grid-row:1;align-self:center}
#me .npc-identity h2{font-size:26px;line-height:1.2;color:#ecddad;margin:4px 0}
#me .npc-identity .eyebrow{font-size:9px;margin:0;color:#b9c4a1}
#me .npc-identity p.pet-muted{font-size:12px;margin:4px 0;line-height:1.45}
#me .npc-character>.pet-actions{grid-column:1/-1;display:flex;gap:6px;margin:2px 0}
#me .npc-character>.pet-actions button{flex:1;min-height:44px;padding:9px;font-size:12px;box-shadow:none}
#me .npc-character>#npc-gift{grid-column:1/-1;min-height:44px;margin:2px 0;font-size:13px;box-shadow:none}
#me .npc-character>small{grid-column:1/-1;font-size:11px;text-align:center;color:#b8c3a5}
#me .npc-chat{padding:14px;border:1px solid var(--game-border);border-radius:17px;background:#193a2b;box-shadow:none}
#me .npc-messages{height:clamp(230px,34vh,380px);overflow-y:auto;overscroll-behavior:contain;padding:0 0 8px}
#me .npc-message{box-shadow:none;border-radius:13px;margin:10px 20px 10px 0;padding:12px 14px}
#me .npc-message.user{margin:10px 0 10px 20px}
#me .npc-message>p{font-size:14px;line-height:1.6;margin:4px 0;color:#e6dfbf}
#me .npc-message>span{font-size:10px}
#me .npc-suggestions{display:flex;gap:6px;flex-wrap:nowrap;overflow-x:auto;margin:10px 0;padding:2px}
#me .npc-suggestions button{min-height:44px;flex-shrink:0;white-space:normal;font-size:12px;padding:9px 11px;box-shadow:none;max-width:190px}
#me .npc-form textarea{font-size:16px;line-height:1.45;min-height:55px;padding:10px 12px}
#me .npc-form button{font-size:13px;min-height:44px;box-shadow:none}
#me .neighbor-mode{display:grid;gap:8px;margin:0 0 16px}
#me .neighbor-row>summary{display:flex;align-items:center;justify-content:space-between;gap:12px}
#me .neighbor-row>summary>div{display:grid;gap:6px}
#me .neighbor-row>summary small{font-size:12px;color:#b7c4a5}
#me .neighbor-chevron{font-size:23px}
#me .neighbor-row[open] .neighbor-chevron{transform:rotate(180deg)}
#me .troop-row>summary>span{display:block;font-size:12px;color:#bdc8a6;margin:5px 0 0 17px}
#me .troop-train-form{display:grid;grid-template-columns:minmax(110px,1fr) minmax(0,1fr);gap:10px;align-items:end}
#me .troop-train-form label{display:grid;gap:7px;font-size:12px;color:#c9d1b1}
#me .troop-train-form small{align-self:center}
#me .troop-train-form button{grid-column:1/-1;min-height:44px;font-size:13px;box-shadow:none}
#me .raid-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
#me .raid-form label{font-size:13px;color:#c8d2b1;display:grid;gap:7px}
#me .raid-form p,#me .raid-form small,#me .raid-form button{grid-column:1/-1}
#me input,#me select,#me textarea{min-width:0;max-width:100%;font-size:16px;min-height:44px}
#me .pet-hero{padding:20px;gap:20px;border-radius:17px;margin:0 0 14px;box-shadow:none}
#me .pet-hero h2{font-size:29px;line-height:1.2}
#me .pet-hero .pet-actions{gap:7px;margin-top:14px}
#me .pet-hero .pet-actions button{font-size:12px;padding:10px 12px;min-height:44px;box-shadow:none}
#me .pet-combat-stats{font-size:12px;gap:7px;margin:15px 0}
#me .pet-section-title{font-size:22px;margin:18px 0 12px}
#me .pet-actions button{min-height:44px}
#me .pet-bag{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#me .pet-bag>.pet-card{margin:0;padding:16px}
#me .pet-bag>.pet-card h3{font-size:18px}
#me .camp-appearance{font-size:12px;margin-top:24px;color:#b2c0a5;border-color:var(--game-border)}
#me .camp-appearance>summary{min-height:44px;align-content:center;cursor:pointer}
#me .pet-rules>summary,#me .home-tabs button,#me .settlement-management>summary{min-height:44px;align-content:center}
#me .pet-stat-details{margin-top:8px;border-color:var(--game-border)}
#me .pet-stat-details>summary{min-height:44px;align-content:center;font-size:12px}
@media(min-width:760px){#me .frontier-development{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}#me .frontier-development>.frontier-card{margin:0}#me .frontier-development>.game-compact-list,#me .frontier-development>.game-disclosure{grid-column:1/-1}}
@media(max-width:620px){#me .pet-tabs button{font-size:11px;padding:8px 2px}#me .page-heading .subtitle{font-size:12px}#me .pet-bag{grid-template-columns:1fr}#me .game-npc-list{grid-template-columns:1fr}#me .pet-hero{gap:13px;padding:16px}#me .pet-hero h2{font-size:25px}#me .pet-hero .pet-visual{max-width:110px}#me .pet-numbers{gap:6px}#me .pet-numbers>div{padding:9px 5px}#me .pet-hero-copy .pet-muted{font-size:12px}#me .pet-card,#me .frontier-card{padding:16px}#me .game-local-nav button{font-size:12px;padding:9px 10px}#me .realm-map-stage{height:clamp(330px,50vh,440px)}}
@media(max-width:350px){#me .pet-tabs button{font-size:10px}#me .game-local-nav button{padding:9px 8px}#me .npc-character{grid-template-columns:62px minmax(0,1fr);gap:8px 12px}#me .npc-character>img{width:62px;height:76px}#me .npc-identity h2{font-size:23px}#me .pet-hero{display:block}#me .pet-hero .pet-visual{max-width:90px;float:left;margin:0 14px 10px 0}#me .game-focus-compact{gap:8px;padding:12px}#me .game-focus-compact strong{font-size:13px}}
@media(prefers-reduced-motion:reduce){#me *,#me *:before,#me *:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}

#me .game-updates{display:block;min-height:44px;width:100%;font-size:13px;padding:10px 12px;margin:0 0 12px;border:1px solid #a8b78480;border-radius:12px;background:#34533c;color:#ecdfb6;box-shadow:none}

#me .inventory-row.pet-card{padding:0 15px;background:#264533}
#me .inventory-row>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:78px;padding:15px 0;cursor:pointer}
#me .inventory-row>summary>div{display:grid;gap:6px}
#me .inventory-row>summary strong{font-size:15px;color:#e3dcb9;line-height:1.4}
#me .inventory-row>summary small{font-size:12px}
#me .inventory-row .inventory-chevron{font-size:23px;color:#bccba5}
#me .inventory-row[open] .inventory-chevron{transform:rotate(180deg)}
#me .inventory-detail{padding:0 0 16px;border-top:1px solid var(--game-border)}
#me .inventory-detail>h3{display:none}
#me .inventory-detail .pet-actions{display:flex;flex-wrap:wrap;gap:7px}
#me .inventory-detail button{flex:1;font-size:12px;min-height:44px;padding:9px 12px;box-shadow:none}
#me .pet-hero{background:linear-gradient(135deg,#2f4f38,#203d31);color:#e5dfc2;border-color:#a9b88a66}
#me .pet-hero-copy h2,#me .pet-numbers strong{color:#eadfb7}
#me .pet-hero .pet-muted,#me .pet-numbers span,#me .player-account-note,#me .pet-xp-label{color:#c1ccad}
#me .pet-hero .eyebrow{color:#d2cca1}
#me .pet-numbers>div{background:#34543e;border:1px solid #9eaf7b44}

/* A framed portrait owns its viewport; image sizing never comes from row icons. */
#me .game-npc-row{display:grid;grid-template-columns:64px minmax(0,1fr) 18px;padding:0 14px 0 0;min-height:84px;overflow:hidden;gap:13px}
#me .game-npc-row>.character-portrait{width:64px!important;height:84px!important;min-width:0;max-width:none;align-self:stretch;margin:0;border:0;border-radius:12px 0 0 12px;box-shadow:none}
#me .game-npc-row>.character-portrait>img,#me .settler-card>.character-portrait>img{display:block;width:100%!important;height:100%!important;max-width:none;object-fit:cover;object-position:50% 28%;border-radius:inherit;margin:0;padding:0}
#me .game-npc-row>.game-npc-symbol{width:64px;height:84px;display:grid;place-items:center;background:#34523e}
#me .settler-card{grid-template-columns:64px minmax(0,1fr) auto;padding:0 12px 0 0;gap:12px;overflow:hidden;align-items:center}
#me .settler-card>.character-portrait{width:64px!important;height:100%!important;min-height:86px;max-width:none;align-self:stretch;grid-column:1;grid-row:1;border:0;border-radius:12px 0 0 12px;box-shadow:none;margin:0}
#me .settler-card>.character-portrait>img{position:absolute;inset:0}
#me .settler-card>.settler-copy{padding:12px 0;min-width:0}
#me .settler-card>.settler-details{grid-column:1/-1;padding:0 14px 15px}
#me .portrait-fill>img{display:block;width:100%;height:100%;object-fit:cover;max-width:none}
@media(max-width:350px){#me .game-npc-row{grid-template-columns:56px minmax(0,1fr) 14px;gap:9px}#me .game-npc-row>.character-portrait{width:56px!important;height:78px!important}#me .game-npc-row>.game-npc-symbol{width:56px;height:78px}#me .settler-card{grid-template-columns:56px minmax(0,1fr);padding-right:10px;gap:8px}#me .settler-card>.character-portrait{width:56px!important;grid-row:1/3}#me .settler-card>.settler-more{grid-column:2;justify-self:start;margin:0 0 10px}}

#me .game-npc-row>.character-portrait{height:100%!important;min-height:84px;position:relative}
#me .game-npc-row>.character-portrait>img{position:absolute;inset:0}
#me .npc-conversation,.npc-conversation-dialog .npc-conversation{border:1px solid #a3b18a55;border-radius:16px;background:#1e3e30;color:#e4dec2;padding:15px;margin:12px 0}
#me .npc-chat-identity,.npc-conversation-dialog .npc-chat-identity{display:flex;align-items:center;gap:12px;margin:0 0 14px}
#me .npc-chat-identity>.character-portrait,.npc-conversation-dialog .npc-chat-identity>.character-portrait{width:56px!important;height:70px!important;border-radius:11px;margin:0;flex-shrink:0}
#me .npc-chat-identity>.character-portrait>img,.npc-conversation-dialog .npc-chat-identity>.character-portrait>img{width:100%!important;height:100%!important;object-fit:cover;object-position:50% 28%}
#me .npc-chat-identity>div:not(.character-portrait),.npc-conversation-dialog .npc-chat-identity>div:not(.character-portrait){display:grid;gap:5px;min-width:0}
#me .npc-chat-identity strong,.npc-conversation-dialog .npc-chat-identity strong{font-size:17px;line-height:1.3;color:#ece0b9}
#me .npc-chat-identity small,.npc-conversation-dialog .npc-chat-identity small{font-size:12px;color:#b9c7aa}
#me .npc-conv-messages,.npc-conversation-dialog .npc-conv-messages{height:clamp(220px,32vh,360px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:2px}
#me .npc-conv-message,.npc-conversation-dialog .npc-conv-message{padding:11px 13px;border-radius:13px;background:#2c4c37;border:1px solid #96a57544;margin:0 18px 10px 0}
#me .npc-conv-message.user,.npc-conversation-dialog .npc-conv-message.user{background:#3c593e;margin:0 0 10px 18px}
#me .npc-conv-message>small,.npc-conversation-dialog .npc-conv-message>small{font-size:10px;color:#bbc7a7}
#me .npc-conv-message>p,.npc-conversation-dialog .npc-conv-message>p{font-size:14px;line-height:1.6;white-space:pre-wrap;margin:5px 0 0;color:#ebe2c3;overflow-wrap:anywhere}
#me .npc-conv-waiting,.npc-conversation-dialog .npc-conv-waiting{opacity:.7}
#me .npc-conv-empty,.npc-conversation-dialog .npc-conv-empty{font-size:13px;line-height:1.6;color:#b8c6a6;margin:5px 0}
#me .npc-conv-hints,.npc-conversation-dialog .npc-conv-hints{display:flex;gap:6px;overflow-x:auto;padding:6px 0 12px;margin:0;scrollbar-width:thin}
#me .npc-conv-hints button,.npc-conversation-dialog .npc-conv-hints button{min-height:44px;flex:0 0 auto;max-width:210px;padding:9px 11px;font-size:12px;line-height:1.4;background:#34513a;color:#dedbb8;border:1px solid #98aa7955;border-radius:11px;box-shadow:none;white-space:normal}
#me .npc-conv-form,.npc-conversation-dialog .npc-conv-form{display:flex;align-items:flex-end;gap:8px}
#me .npc-conv-input-label,.npc-conversation-dialog .npc-conv-input-label{display:grid;gap:6px;min-width:0;flex:1;font-size:12px;color:#b9c7a5}
#me .npc-conv-input-label textarea,.npc-conversation-dialog .npc-conv-input-label textarea{width:100%;font-size:16px;min-height:60px;max-height:160px;padding:10px 12px;margin:0;background:#102c21;color:#e8dfc0;border:1px solid #a0ae7855;border-radius:11px;resize:vertical;line-height:1.45}
#me .npc-conv-form>button,.npc-conversation-dialog .npc-conv-form>button{min-height:60px;padding:10px 14px;margin:0;font-size:13px;box-shadow:none;flex:0 0 auto}
#me .npc-conv-status,.npc-conversation-dialog .npc-conv-status{font-size:12px;line-height:1.5;color:#c8cbaa;margin:9px 0 0}
#me .npc-conv-status:empty,.npc-conversation-dialog .npc-conv-status:empty{display:none}
.npc-conversation-dialog{width:min(680px,94vw);max-width:94vw;max-height:90dvh;overflow-y:auto;background:#19392b;color:#e6ddba;border:1px solid #a4b184;border-radius:18px;padding:16px;box-shadow:0 20px 70px #04190dc0}
.npc-conversation-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 0 6px}
.npc-conversation-heading>h2{font:600 23px/1.2 Georgia,serif;color:#e6d9b0;margin:0}
.npc-conversation-heading>.npc-conversation-close{min-width:44px;min-height:44px;border:1px solid #9cad7955;background:#304e37;color:#e9ddb2;border-radius:12px;font-size:23px;padding:6px;box-shadow:none}
.npc-conversation-dialog .npc-conversation{border:0;padding:0;margin:10px 0 0}
.npc-conversation-dialog button:focus-visible,.npc-conversation-dialog textarea:focus-visible{outline:3px solid #e2cb8b;outline-offset:3px}
@media(max-width:350px){#me .npc-conv-form,.npc-conversation-dialog .npc-conv-form{align-items:stretch;flex-direction:column}#me .npc-conv-form>button,.npc-conversation-dialog .npc-conv-form>button{min-height:44px}#me .npc-conversation,.npc-conversation-dialog{padding:12px}}

/* The current scene leads; the complete path stays in a closed journal. */
#me .quest-book{max-width:760px;margin:12px auto 20px;padding:18px!important;border-radius:18px;color:#344b3c;overflow:hidden}
#me .quest-heading{margin:0 0 15px}
#me .quest-heading>.eyebrow{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:#78805c;margin:0 0 7px}
#me .quest-heading>h3{font:700 clamp(23px,5.8vw,31px)/1.22 Georgia,serif;color:#344b3c;margin:0 0 12px}
#me .quest-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 10px}
#me .quest-meta>.quest-mode-badge{margin:0;padding:5px 8px;font-size:10px;color:#65714d;background:#75845d12;border-color:#7f8a5c55}
#me .quest-step-badge{font-size:11px;color:#6a7354;white-space:nowrap}
#me .quest-progress{width:100%;height:4px;display:block;border:0;border-radius:3px;accent-color:#718454;background:#76865a25;overflow:hidden}
#me .quest-progress::-webkit-progress-bar{background:#76865a25}
#me .quest-progress::-webkit-progress-value{background:#718454;border-radius:3px}
#me .quest-progress::-moz-progress-bar{background:#718454}
#me .quest-art{margin:0 0 17px;max-width:100%}
#me .quest-art-frame{position:relative;aspect-ratio:16/9;max-height:240px;border:1px solid #8c966b66;border-radius:12px;overflow:hidden;background:#314c3e}
#me .quest-art-frame>.quest-illustration{position:absolute;inset:0;display:block;width:100%;height:100%;max-height:none;object-fit:cover;object-position:50% 50%;margin:0;border:0;border-radius:0}
#me .quest-art>figcaption{font-size:10px;line-height:1.5;color:#6b7757;margin:6px 1px 0}
#me .quest-art-cover .quest-art-frame{max-height:200px}
#me .game-quest-row .quest-art>figcaption,#me .game-world-card .quest-art>figcaption,#me .game-disclosure .quest-art>figcaption,#me .quest-result .quest-art>figcaption{color:#b8c5a3}
#me .quest-cover-slot:empty{display:none}
#me .quest-consequence{border-left:3px solid #8d9c6b;background:#a1ad7b16;border-radius:0 9px 9px 0;padding:9px 12px;margin:0 0 17px}
#me .quest-consequence>small{font-size:10px;line-height:1.4;color:#73805c;font-weight:700}
#me .quest-consequence>p{font-size:12px;line-height:1.55;color:#5c694d;margin:5px 0 0}
#me .quest-scene-title{font:700 18px/1.35 Georgia,serif;color:#40573f;margin:0 0 8px}
#me .quest-book>.quest-scene{font:17px/1.65 Georgia,serif;color:#344b3c;margin:0 0 20px;white-space:pre-wrap;overflow-wrap:anywhere}
#me .quest-choice-heading{padding-top:14px;border-top:1px solid #8c966b44;display:grid;gap:5px}
#me .quest-choice-heading>h4{font-size:13px;line-height:1.5;margin:0;color:#4c6244;font-weight:700}
#me .quest-choice-heading>small{font-size:10px;color:#7b8263}
#me .quest-choices{gap:9px;margin:12px 0 10px}
#me .quest-choices>.quest-choice{position:relative;min-height:64px;width:100%;padding:13px 30px 13px 13px;gap:5px;background:#fbf5e5;border-color:#8c966b66;box-shadow:none;border-radius:11px}
#me .quest-choices>.quest-choice:after{content:'›';position:absolute;right:13px;top:50%;transform:translateY(-50%);font-size:22px;font-weight:400;color:#77805e}
#me .quest-choices>.quest-choice>strong{font-size:14px;line-height:1.45;font-weight:650;color:#3e573e}
#me .quest-choices>.quest-choice>small{font-size:11px;line-height:1.5;color:#77805f}
#me .quest-choices[aria-busy=true]{opacity:.65}
#me .quest-choices>.quest-choice:focus-visible,#me .quest-journal>summary:focus-visible,#me .quest-abandon>summary:focus-visible{outline:3px solid #718454;outline-offset:3px}
#me .quest-book>.quest-resume-note{font-size:10px;line-height:1.5;text-align:center;color:#81866b;margin:10px 0 16px}
#me .quest-book .quest-journal{border-color:#8c966b44;background:transparent;margin-top:16px;padding:0}
#me .quest-book .quest-journal>summary{font-size:12px;line-height:1.5;min-height:44px;align-content:center;color:#65734f;cursor:pointer}
#me .quest-book .quest-intro{font:italic 13px/1.6 Georgia,serif;color:#6e7759;margin:0 0 14px}
#me .quest-log-entry{border-top:1px solid #8c966b33;padding:12px 0}
#me .quest-log-entry>small{display:block;font-size:9px;color:#899071;margin-bottom:4px}
#me .quest-log-entry>strong{font-size:12px;line-height:1.5;display:block;color:#4e6748}
#me .quest-log-entry>p{font-size:12px;line-height:1.6;color:#73805e;margin:6px 0 0}
#me .quest-abandon{margin-top:12px;border-top:1px solid #8c966b33;color:#878265}
#me .quest-abandon>summary{font-size:11px;min-height:44px;align-content:center;cursor:pointer}
#me .quest-abandon>p{font-size:12px;line-height:1.55;margin:0 0 10px}
#me .quest-result>.quest-ending{font:16px/1.65 Georgia,serif;overflow-wrap:anywhere}
@media(max-width:350px){#me .quest-book{padding:14px!important}#me .quest-heading>h3{font-size:23px}#me .quest-book>.quest-scene{font-size:16px}#me .quest-choices>.quest-choice{padding-left:11px}#me .quest-art-frame{border-radius:10px}}
#me .settlement-selection-panel>.settlement-focus-button{min-height:42px;padding:9px 17px;margin:3px 0 13px;font-size:12px;background:#476650;color:#ede1b8;border:1px solid #b7bd8870;border-radius:11px}

/* Story text stays on the forest's paper, with a clearer reading rhythm. */
#me .quest-book{min-width:0}
#me .quest-consequence{padding:12px 14px;margin-bottom:22px;background:#e0e3c788;border-left-color:#788d5b}
#me .quest-consequence>small{font-size:11px;line-height:1.5;color:#4e6347;letter-spacing:.015em}
#me .quest-consequence-copy{font:14px/1.6 Manrope,"Segoe UI",Arial,sans-serif;color:#42533e;margin-top:5px}
#me .quest-consequence-copy>p,#me .quest-book>.quest-scene>p,#me .quest-intro>p,#me .quest-log-copy>p,#me .quest-ending>p{margin:0}
#me .quest-consequence-copy>p+p,#me .quest-book>.quest-scene>p+p,#me .quest-intro>p+p,#me .quest-log-copy>p+p,#me .quest-ending>p+p{margin-top:.8em}
#me .quest-scene-title{font-size:20px;line-height:1.3;color:#344b3c;margin-bottom:12px}
#me .quest-book>.quest-scene{font:17px/1.65 Manrope,"Segoe UI",Arial,sans-serif;letter-spacing:0;color:#2f4435;max-width:60ch;margin:0 0 22px;white-space:normal;overflow-wrap:anywhere}
#me .quest-choice-heading{padding:13px 14px;border:1px solid #87956855;border-radius:11px;background:#dce1bd66;gap:6px}
#me .quest-choice-heading>h4{font-size:15px;line-height:1.45;color:#344d37}
#me .quest-choice-heading>small{font-size:12px;line-height:1.5;color:#59674e}
#me .quest-choice-heading>.quest-objective-label{font-size:10px;font-weight:750;letter-spacing:.07em;text-transform:uppercase;color:#526847}
#me .quest-choices{margin-top:12px;gap:10px}
#me .quest-choices>.quest-choice{min-width:0;max-width:100%;padding:14px 32px 14px 14px;white-space:normal}
#me .quest-choices>.quest-choice>strong{font-size:15px;line-height:1.4;color:#344d37;overflow-wrap:anywhere}
#me .quest-choices>.quest-choice>small{font-size:12px;line-height:1.5;color:#59674e;overflow-wrap:anywhere}
#me .quest-book>.quest-resume-note{font-size:11px;color:#59674e}
#me .quest-book .quest-journal>summary{color:#4e6347;font-size:13px}
#me .quest-book .quest-intro,#me .quest-log-copy{font:14px/1.6 Manrope,"Segoe UI",Arial,sans-serif;color:#4a5d42;overflow-wrap:anywhere}
#me .quest-log-entry>small{font-size:11px;color:#59674e}
#me .quest-log-entry>strong{font-size:14px;line-height:1.5;color:#3c553b}
#me .quest-log-copy{margin-top:6px}
#me .quest-result>.quest-ending{font:17px/1.65 Manrope,"Segoe UI",Arial,sans-serif;color:#2f4435;max-width:60ch}
@media(max-width:350px){#me .quest-book>.quest-scene,#me .quest-result>.quest-ending{font-size:16px}#me .quest-consequence{padding:11px 12px}#me .quest-choice-heading{padding:12px}#me .quest-choices>.quest-choice{padding-left:12px}}
#me .settlement-focus-button:focus-visible{outline:2px solid #e9d39a;outline-offset:3px}
/* Keep zoomed SVG geometry inside the map, above the separate management UI. */
#me .settlement-frame .habitat-stage,#me .settlement-frame .habitat-svg{overflow:hidden}
