@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=DM+Serif+Display:ital@0;1&display=swap";html{scroll-behavior:smooth;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}::selection{color:#2f4536;background:#e8c577}input,textarea{color:inherit}input::placeholder{color:#929a87}.at-input{position:relative}.at-input>span{color:#829174;position:absolute;top:12px;left:14px}.at-input input{padding-left:36px}:root{color:#293b32;font-synthesis:none;background:#f8f7f0;font-family:DM Sans,sans-serif;font-size:17px;font-weight:400;line-height:1.5}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,textarea{font:inherit}button,a,input,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline-offset:4px;outline:3px solid #bd793f}button{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.1}h1,h2{font-family:DM Serif Display,Georgia,serif;font-weight:400}h1{letter-spacing:-3px;font-size:clamp(48px,6.6vw,83px)}h1 em{color:#71815c;font-weight:400}h2{letter-spacing:-1.2px;font-size:clamp(34px,4vw,46px)}h3{font-size:21px}p{color:#657063;line-height:1.7}svg{flex-shrink:0}main,.site-header{max-width:1200px;margin:auto;padding:0 40px}.site-header{border-bottom:1px solid #dedfd2;justify-content:space-between;align-items:center;gap:20px;height:98px;display:flex}.brand{letter-spacing:.3px;align-items:center;gap:10px;font-size:18px;font-weight:700;display:flex}.brand-icon{background:#e6eadc;border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.brand-world{color:#7a836f}.desktop-nav{gap:26px;display:flex}.desktop-nav button,.text-link{background:0 0;border:0;align-items:center;gap:8px;min-height:44px;padding:10px 0;font-weight:600;display:inline-flex}.desktop-nav button{font-size:16px}.instagram-link{align-items:center;gap:5px;min-height:44px;font-size:15px;display:flex}.hero{grid-template-columns:1.5fr 1fr;align-items:center;gap:35px;padding:65px 0 42px;display:grid}.eyebrow{letter-spacing:1.8px;color:#74816b;align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.eyebrow i,.status-dot{background:#7c8d59;border-radius:50%;width:7px;height:7px;display:inline-block}.hero h1{margin:20px 0}.hero p{font-size:20px;line-height:1.65}.hero-actions{flex-wrap:wrap;gap:12px;margin:27px 0 16px;display:flex}.button{border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:10px;min-height:50px;padding:12px 19px;font-size:15px;font-weight:600;line-height:1.4;display:inline-flex}.dark{color:#fff;background:#344b3c}.dark:hover{background:#253d2d}.outlined{background:0 0;border-color:#cdd2c1}.outlined:hover{background:#edf0e5}.light{color:#334735;background:#f0edce}.full{width:100%;margin-top:18px}.arrival-note{color:#7b8272;max-width:470px;font-size:13px;display:block}.hero-art{text-align:center;background:#e6e9d6;border:1px solid #d9deca;border-radius:48% 48% 12px 12px;padding:35px 10px 20px;position:relative;transform:rotate(3deg)}.hero-art svg{width:100%;display:block}.hero-art>span:last-child{letter-spacing:2px;color:#6d785b;font-size:11px}.art-moon{background:#e9cb7e;border-radius:50%;width:49px;height:49px;position:absolute;top:32px;right:40px}.town-stats{border-top:1px solid #dedfd2;border-bottom:1px solid #dedfd2;justify-content:space-around;gap:12px;margin-bottom:50px;padding:22px 0;display:flex}.town-stats>div{align-items:center;gap:12px;display:flex}.town-stats svg{color:#839077;width:22px}.town-stats strong{font-size:25px}.town-stats span{color:#727b6b;font-size:14px}section[id]{scroll-margin-top:24px}section{margin-bottom:48px}.section-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px;display:flex}.section-heading h2{margin-top:7px}.compact{min-height:46px}.map-scene{background:#c8d4a9;border:1px solid #aebd97;border-radius:16px;height:530px;position:relative;overflow:hidden}.camp-svg{touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;width:100%;height:100%;display:block}.camp-svg:active{cursor:grabbing}.map-topline,.map-bottomline{pointer-events:none;z-index:1;letter-spacing:1.2px;color:#506344;justify-content:space-between;font-size:11px;font-weight:700;display:flex;position:absolute;left:20px;right:20px}.map-topline{top:18px}.map-bottomline{display:none;bottom:18px}.map-topline span:first-child{background:#f8f8e7da;border-radius:20px;padding:7px 12px}.map-actions{flex-direction:column;gap:7px;display:flex;position:absolute;bottom:18px;right:15px}.map-actions button{background:#faf9e9f5;border:1px solid #b3bf9f;border-radius:10px;place-items:center;width:46px;height:46px;display:grid}.map-compass{color:#617451;place-items:center;font-size:12px;display:grid;position:absolute;bottom:20px;left:20px}.map-resident{cursor:pointer}.focused-resident>circle{fill:#f8e29850;stroke:#b57f34;stroke-width:3px}.map-resident:hover>rect{stroke:#354e35;stroke-width:2px}.map-caption{color:#7d8474;justify-content:space-between;align-items:center;min-height:28px;margin-top:10px;font-size:13px;display:flex}.chapter-grid{grid-template-columns:1.1fr 1fr;gap:24px;display:grid}.chapter-card,.next-card{background:#f0f1e6;border:1px solid #dbdfd0;border-radius:14px;padding:34px}.chapter-card h2,.next-card h2{margin:17px 0;font-size:35px}.chapter-card p,.next-card p{font-size:16px}.next-card{background:#e9eddc}.chapter-card details{margin-top:18px}.chapter-card summary{font-size:15px}.chapter-card details p{margin-top:12px}.chapter-status{align-items:center;gap:8px;margin-top:24px;font-size:14px;font-weight:600;display:flex}.next-card .button{margin-top:20px}.resident-search{background:#fffef6;border:1px solid #d3d8c8;border-radius:9px;align-items:center;gap:9px;max-width:330px;padding:0 13px;display:flex}.resident-search input{background:0 0;border:0;width:100%;min-width:0;padding:12px 0;font-size:16px}.residents-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.resident-card{text-align:left;background:#fffdf6;border:1px solid #dce0d1;border-radius:11px;align-items:center;gap:12px;min-width:0;min-height:84px;padding:14px;display:flex}.resident-card>span:nth-child(2){flex:1;min-width:0}.resident-card strong{overflow-wrap:anywhere;font-size:15px;display:block}.resident-card small{color:#7b846f;margin-top:4px;font-size:12px;display:block}.resident-avatar{border-radius:50%;flex-shrink:0;place-items:center;width:43px;height:43px;font-weight:700;display:grid}.empty-residents{background:#f0f1e6;border-radius:12px;align-items:center;gap:24px;padding:32px;display:flex}.empty-residents p{margin-top:8px;font-size:15px}.empty-text{padding:30px 0}.load-residents{margin:22px auto;display:flex}.play-grid{grid-template-columns:.9fr 1.1fr;align-items:center;gap:45px;padding-top:20px;display:grid}.play-grid h2{margin:15px 0}.firefly-game{min-width:0}.game-stats{color:#728065;justify-content:space-between;margin-bottom:10px;font-size:13px;display:flex}.firefly-field{color:#f6f4da;background:radial-gradient(at 30% 20%,#364d3d,#1d3027);border-radius:16px;height:310px;position:relative;overflow:hidden}.game-intro{text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:20px;display:flex}.game-intro p{color:#bfc7ad;margin:12px 0 18px;font-size:14px}.game-intro h3{font-family:DM Serif Display,Georgia,serif;font-size:26px;font-weight:400}.game-glow{color:#e4d78c;margin-bottom:14px}.firefly-target{color:#f1dc8e;background:#ddd28715;border:0;border-radius:50%;place-items:center;width:64px;height:64px;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 32px #e7d89128}.game-score{opacity:.35;font-size:60px;position:absolute;top:8px;left:22px}.fine{color:#7b8471;margin-top:12px;font-size:13px;line-height:1.6}.diary{border-top:1px solid #dce0d2;margin-bottom:20px;padding-top:22px}.diary summary{cursor:pointer;min-height:44px;font-size:16px;font-weight:600}.diary-row{border-top:1px solid #e4e7da;align-items:baseline;gap:22px;padding:12px 0;display:flex}.diary-row>span{color:#8b927f;flex-shrink:0;font-size:12px}.diary-row p{font-size:14px}footer{color:#7a8471;border-top:1px solid #dce0d2;justify-content:space-between;align-items:center;gap:20px;padding:30px 0;font-size:13px;display:flex}footer .brand{font-size:14px}.mobile-nav{display:none}.toast{color:#fff;z-index:40;background:#2d4436;border-radius:12px;align-items:center;gap:15px;max-width:calc(100% - 30px);padding:15px 18px;font-size:14px;display:flex;position:fixed;bottom:25px;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #20362625}.toast button{color:#fff;background:0 0;border:0;min-width:35px;min-height:35px;font-size:24px}.camp-dialog{color:#2e4234;background:#faf9f0;border:1px solid #d5dcc8;border-radius:18px;width:min(540px,100% - 24px);max-height:90dvh;padding:0;box-shadow:0 22px 100px #17271d50}.camp-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#24382e80}.dialog-inner{padding:34px;position:relative}.dialog-inner h2{overflow-wrap:anywhere;margin:14px 0 24px;padding-right:12px;font-size:35px}.dialog-close{background:0 0;border:0;border-radius:50%;place-items:center;width:44px;height:44px;display:grid;position:absolute;top:12px;right:12px}.dialog-intro{margin-bottom:20px;font-size:16px}form label,.follower-import>label:not(.import-drop):not(.follow-checkbox),.private-link label{margin:17px 0 8px;font-size:14px;font-weight:600;display:block}form input,form textarea,.follower-import>input,.private-link input{color:#2e4234;background:#fffef6;border:1px solid #cdd5c0;border-radius:8px;width:100%;min-width:0;min-height:50px;padding:12px;font-size:16px;display:block}form textarea{resize:vertical}.form-error{color:#a13b2b;margin:15px 0;font-size:15px}.resident-profile{text-align:center}.profile-bag{width:130px;height:115px;margin:0 auto;display:block}.profile-badge{color:#7d875d;justify-content:center;align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex}.instagram-name{overflow-wrap:anywhere;margin:12px 0 20px;font-size:23px}.profile-details{text-align:left;border-top:1px solid #dfe4d3;border-bottom:1px solid #dfe4d3;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:20px;padding:20px 0;display:grid}.profile-details span{color:#7c8571;font-size:12px;display:block}.profile-details strong{margin-top:4px;font-size:14px;display:block}.mini-label{letter-spacing:1px;font-size:12px;font-weight:600}.color-options{flex-wrap:wrap;justify-content:center;gap:9px;margin-top:13px;display:flex}.color-options button{color:#fff;border:3px solid #0000;border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.color-options .selected{outline-offset:2px;outline:2px solid #647853}.caretaker-note{margin-top:15px;font-size:14px}.admin-panel{background:#edf1e5;border:1px solid #cbd5bc;border-radius:16px;margin:20px 0 40px;padding:28px}.admin-panel h2{font-size:32px}.admin-note{margin-bottom:20px;font-size:15px}.admin-actions{flex-wrap:wrap;gap:12px;display:flex}.restore-label{cursor:pointer}.restore-label input{display:none}.confirmation{background:#fffdf2;border:1px solid #dfd6b8;border-radius:10px;margin-top:20px;padding:20px}.confirmation p{margin-bottom:15px;font-size:15px}.confirmation button{margin-right:10px}.import-drop{text-align:center;cursor:pointer;background:#edf0df;border:1px dashed #9daa88;border-radius:12px;flex-direction:column;align-items:center;gap:10px;padding:25px 12px;display:flex;position:relative}.import-drop span{font-size:13px}.import-drop input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.import-file-list{flex-wrap:wrap;gap:8px;margin-top:20px;font-size:13px;display:flex}.import-file-list span{overflow-wrap:anywhere;align-items:center;gap:5px;display:flex}.import-stats{grid-template-columns:repeat(3,1fr);gap:8px;margin:20px 0;display:grid}.import-stats>div{text-align:center;border:1px solid #dce1cd;border-radius:8px;padding:12px 7px}.import-stats strong{font-size:25px;display:block}.import-stats span{font-size:12px}.import-sample{margin-top:15px;font-size:14px}.import-sample>div{flex-wrap:wrap;gap:8px;padding:15px 0;display:flex}.import-sample>div span{overflow-wrap:anywhere;background:#edf0e0;border-radius:5px;padding:4px 7px}.follow-checkbox{align-items:flex-start;gap:10px;margin:20px 0;font-size:14px;display:flex}.follow-checkbox input{flex-shrink:0;width:22px;height:22px}.import-caution{color:#93602f;font-size:14px}.ideas-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.idea-card{border:1px solid #d6dcc9;border-radius:12px;padding:24px}.idea-card h3{margin:14px 0}.idea-card p{margin-bottom:20px;font-size:15px}@media (width>=1400px){.map-scene{height:590px}}@media (width<=900px){main,.site-header{padding-left:25px;padding-right:25px}.desktop-nav{display:none}.hero{gap:20px}.hero-art{padding-top:25px}.hero-actions .button{padding:12px 15px;font-size:14px}.residents-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.chapter-card,.next-card{padding:25px}.town-stats>div{gap:8px}.town-stats span{font-size:13px}.play-grid{gap:25px}.map-scene{height:470px}}@media (width<=600px){:root{font-size:16px}main,.site-header{padding-left:20px;padding-right:20px}.site-header{gap:10px;height:77px}.brand{letter-spacing:0;gap:7px;font-size:15px}.brand-icon{width:36px;height:36px}.brand-icon svg{width:22px}.instagram-link{justify-content:center;gap:0;width:40px;font-size:0}.instagram-link svg{width:24px;height:24px}.hero{margin-bottom:0;padding:36px 0 27px;display:block}.hero h1{letter-spacing:-2px;margin:17px 0;font-size:56px}.hero p{font-size:18px}.hero-art{display:none}.hero-actions{grid-template-columns:1fr;gap:10px;margin:24px 0 15px;display:grid}.hero-actions .button{min-height:52px;font-size:16px}.arrival-note{max-width:330px;font-size:13px}.eyebrow{letter-spacing:1.4px;font-size:11px}.town-stats{justify-content:space-between;gap:8px;margin-bottom:34px;padding:20px 0}.town-stats>div{grid-template-columns:auto 1fr;gap:1px 7px;display:grid}.town-stats svg{width:18px}.town-stats strong{font-size:24px}.town-stats span{text-align:center;grid-column:1/-1;font-size:12px}.section-heading{gap:12px;margin-bottom:16px}.section-heading h2{font-size:34px}.compact{white-space:nowrap;padding:10px 12px;font-size:14px}.map-scene{border-radius:12px;height:440px;margin:0 -9px}.map-topline{font-size:10px;left:12px;right:12px}.map-topline>span:last-child{padding-top:7px}.map-caption{align-items:flex-start;gap:14px;font-size:12px}.map-caption .text-link{white-space:nowrap;padding:0;font-size:12px}.chapter-grid{grid-template-columns:1fr;gap:16px}.chapter-card,.next-card{padding:25px}.chapter-card h2,.next-card h2{font-size:33px}.chapter-card p,.next-card p{font-size:16px}.section-heading:has(.resident-search){display:block}.resident-search{max-width:none;min-height:50px;margin-top:18px}.residents-grid{grid-template-columns:1fr}.resident-card{min-height:80px;padding:14px 16px}.resident-card strong{font-size:16px}.resident-card small{font-size:13px}.resident-avatar{width:46px;height:46px}.empty-residents{gap:17px;padding:24px}.empty-residents h3{font-size:20px;line-height:1.3}.empty-residents p{font-size:14px}.play-grid{grid-template-columns:1fr;gap:23px;padding-top:0}.play-grid h2{font-size:35px}.firefly-field{height:300px}section{margin-bottom:35px}.diary-row{gap:12px}footer{flex-wrap:wrap;gap:8px;padding-bottom:25px}footer>span{display:none}footer .brand{font-size:13px}.mobile-nav{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:6px 12px calc(6px + env(safe-area-inset-bottom));z-index:20;background:#faf9f0f5;border-top:1px solid #d4dcc7;justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-nav button{color:#8b947e;background:0 0;border:0;flex-direction:column;align-items:center;gap:3px;min-width:90px;min-height:51px;font-size:11px;display:flex}.mobile-nav button.active{color:#344e38}.town-app{padding-bottom:80px}.toast{width:calc(100% - 24px);max-width:440px;font-size:13px;bottom:82px}.dialog-inner{padding:27px 22px}.dialog-inner h2{margin-top:16px;font-size:31px}.dialog-inner>.eyebrow{letter-spacing:1px;padding-right:25px;font-size:10px}.camp-dialog{max-height:88dvh}.admin-panel{padding:20px}.admin-panel .section-heading{align-items:flex-start}.admin-panel h2{font-size:28px}.admin-panel .section-heading .button{padding:10px;font-size:13px}.admin-actions{grid-template-columns:1fr;display:grid}.confirmation .button{margin-top:8px}.ideas-grid{grid-template-columns:1fr}.profile-details{gap:16px}.color-options{gap:8px}.color-options button{width:43px;height:43px}.import-stats strong{font-size:24px}.import-stats span{font-size:11px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.brand-account{letter-spacing:1.3px;color:#859077;margin-top:2px;font-size:9px;display:block}.login-help{margin:0 0 20px}.bag-preview{background:#eff0e3;border:1px solid #0000;border-radius:14px;margin:0 0 18px;padding:8px 10px 13px}.bag-preview.has-preview{background:#e9eedb;border-color:#b9c29d}.bag-preview-caption{color:#6f7f60;min-height:20px;font-size:13px;display:block}.color-warning{max-width:330px;margin:10px auto 18px;font-size:14px;line-height:1.6}.color-warning strong{color:#40563b}.color-lock{text-align:left;background:#e9eddf;border-radius:10px;align-items:flex-start;gap:12px;padding:17px;display:flex}.color-lock svg{color:#6c7e58;margin-top:4px}.color-lock strong{font-size:15px}.color-lock p{margin-top:3px;font-size:14px}.cancel-color{justify-content:center;margin:7px auto 0;font-size:14px;display:flex}.confirm-color{font-size:15px}.bag-preview .profile-bag{width:110px;height:95px}.resident-details .profile-badge{margin-bottom:18px}.resident-details .profile-details{gap:15px;padding:16px 0}.admin-residents{border-top:1px solid #cfd8c1;margin-top:25px;padding-top:18px}.admin-residents summary{cursor:pointer;min-height:44px;font-size:17px;font-weight:600}.admin-residents summary>span{background:#dce5cf;border-radius:20px;margin-left:8px;padding:3px 9px;font-size:13px}.admin-residents>.resident-search{max-width:none;margin:12px 0}.admin-resident-list{max-height:340px;overflow:auto}.admin-resident-row{border-bottom:1px solid #d7dfcd;justify-content:space-between;align-items:center;gap:15px;padding:10px 0;display:flex}.admin-resident-row strong{overflow-wrap:anywhere;min-width:0;font-size:15px}.remove-resident{color:#9d483b;background:#f8f2e7;border-color:#dfc1b5;flex-shrink:0;min-height:44px;padding:9px 12px;font-size:13px}.remove-confirmation{background:#fff7eb;border:1px solid #dbb6a8;border-radius:12px;margin-top:20px;padding:20px}.remove-confirmation h3{overflow-wrap:anywhere;font-size:21px;line-height:1.35}.remove-confirmation>p{margin-top:12px;font-size:14px}.remove-confirmation-actions{flex-wrap:wrap;gap:12px;margin-top:18px;display:flex}.danger{color:#fff;background:#a94e3e}.danger:hover{background:#8b3b2e}@media (width<=600px){.remove-confirmation{padding:17px}.remove-confirmation-actions{grid-template-columns:1fr;display:grid}.admin-resident-row{gap:8px}}.resident-founder-icon{color:#6c5b35;background:#eddaa2;border-radius:50%;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.profile-badge.founder-badge{color:#6c5b35;background:#f0dfad;border:1px solid #d4bc7e}.dialog-inner:has(.resident-details)>h2{overflow-wrap:anywhere;font-size:clamp(22px,6vw,31px)}.staging-banner{color:#4f4329;background:#eddaad;border-bottom:1px solid #ccb776;flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;padding:12px 20px;font-size:14px;display:flex}.staging-banner strong{letter-spacing:2px}.staging-banner a{font-weight:700;text-decoration:underline}.hero-intro,.lore-text,.chapter-preview p{white-space:pre-line}.hero-story-image{background:#e6e9d6;border:1px solid #d2dac1;border-radius:20px;margin:0;overflow:hidden;transform:rotate(2deg)}.hero-story-image img{aspect-ratio:1;object-fit:cover;width:100%;display:block}.hero-story-image figcaption{color:#59694f;letter-spacing:.7px;padding:12px 16px;font-size:12px}.chapter-image{object-fit:cover;border-radius:14px 14px 0 0;width:calc(100% + 68px);max-height:340px;margin:-34px -34px 26px;display:block}.story-editor{background:#f8f8ef;border:1px solid #cdd6be;border-radius:12px;margin:24px 0}.story-editor>summary{cursor:pointer;padding:18px 20px;font-size:19px;font-weight:700}.editor-content{gap:18px;padding:0 22px 22px;display:grid}.editor-content label{gap:7px;font-size:14px;font-weight:600;display:grid}.editor-content textarea,.editor-content input:not([type=checkbox]),.editor-content select{width:100%;font:inherit;color:#344b3c;background:#fffef5;border:1px solid #bdc8ad;border-radius:9px;padding:12px}.editor-content textarea{resize:vertical}.editor-content .restore-label{justify-content:flex-start;display:flex;position:relative}.editor-chapter-controls,.editor-fields,.editor-save{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.editor-chapter-controls>label{flex:1;min-width:170px}.editor-fields>label:first-child{width:140px}.editor-fields>label:last-child{flex:1;min-width:180px}.editor-content .editor-checkbox{align-items:center;gap:10px;line-height:1.4;display:flex}.editor-checkbox input{flex-shrink:0;width:20px;height:20px}.editor-conflict{background:#f3e2b5;border-radius:9px;padding:14px}.chapter-preview{background:#eef0e2;border:1px solid #cbd6bb;border-radius:12px;padding:20px}.chapter-preview img{object-fit:cover;border-radius:9px;width:100%;max-height:280px;margin-bottom:15px;display:block}.chapter-preview h3{margin:10px 0;font-family:DM Serif Display,Georgia,serif;font-size:29px;font-weight:400}.editor-save{align-items:center}.resident-avatar-map{pointer-events:none}@media (width<=700px){.staging-banner{gap:5px 12px;padding:10px 14px;font-size:12px}.staging-banner span{text-align:center;width:100%}.hero-story-image{margin-top:24px;display:block;transform:none}.hero-story-image img{aspect-ratio:16/11}.chapter-image{width:calc(100% + 50px);margin:-25px -25px 22px}.editor-content{gap:16px;padding:0 14px 18px}.story-editor>summary{padding:16px 14px;font-size:17px}.editor-save .button,.editor-chapter-controls .button{width:100%}.editor-fields{grid-template-columns:1fr;display:grid}.editor-fields>label:first-child{width:auto}}.editor-content textarea,.editor-content input:not([type=checkbox]),.editor-content select{font-size:16px}.city-credit{color:var(--muted,#78816d);margin:-10px 0 20px;font-size:14px;line-height:1.6}.city-credit a{color:#465f4b;font-weight:600}.market-invitation{background:#e8ecd9;border:1px solid #d6ddc7;border-radius:22px;margin:30px 0;padding:clamp(24px,5vw,46px)}.market-invitation h2{margin:12px 0}.market-invitation p{font-size:19px;line-height:1.6}.market-invitation .fine{font-size:14px}.market-invitation .text-link{margin-top:8px}.berry-section{padding:40px 0}.berry-intro{max-width:740px;font-size:20px;line-height:1.6}.challenge-clock{white-space:nowrap;background:#e8ecd9;border-radius:24px;align-items:center;gap:8px;padding:12px 16px;font-size:16px;display:inline-flex}.berry-layout{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:24px;margin-top:24px;display:grid}.berry-game,.berry-leaderboard{background:#fcfaf0;border:1px solid #d6ddc7;border-radius:20px;min-width:0;overflow:hidden}.berry-game-stats{justify-content:space-between;gap:10px;padding:18px;font-size:15px;display:flex}.berry-game-stats>span{align-items:center;gap:8px;display:flex}.berry-game-stats strong{font-size:23px}.berry-field{background:radial-gradient(at 30% 80%,#becd98 0,#0000 60%),radial-gradient(at 80% 0,#dce1bd,#0000 60%),#d0dbb5;height:340px;position:relative;overflow:hidden}.berry-field:before{content:"";pointer-events:none;background-image:radial-gradient(#8d9d6a66 1px,#0000 1px);background-size:23px 27px;position:absolute;inset:0}.berry-start{text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:24px;display:flex;position:relative}.berry-start h3{margin:12px 0;font-size:25px}.berry-start p{max-width:320px;margin:0 0 14px;font-size:16px;line-height:1.5}.berry-start p.fine{margin:12px 0 0;font-size:13px}.berry-field-hint{opacity:.8;font-size:14px;position:absolute;top:14px;left:18px}.ripe-berry{cursor:pointer;touch-action:manipulation;filter:drop-shadow(0 8px 4px #43583830);background:0 0;border:0;width:74px;height:82px;padding:5px;position:absolute;transform:translate(-50%,-50%)}.ripe-berry:disabled{opacity:.45;cursor:wait}.ripe-berry svg{pointer-events:none;width:100%;height:100%}.ripe-berry:focus-visible{outline-offset:3px;border-radius:18px;outline:3px solid #475b46}.berry-round-total{background:#f9f5dfbd;border-radius:16px;padding:7px 12px;font-size:14px;position:absolute;bottom:15px;right:18px}.berry-rules{padding:0 18px 12px;line-height:1.6}.berry-error{color:#913e36;align-items:center;gap:12px;padding:12px 18px;display:flex}.berry-leaderboard{padding:26px}.berry-leaderboard .eyebrow{align-items:center;gap:8px;display:flex}.berry-leaderboard h3{margin:14px 0 20px;font-size:29px}.berry-leaderboard ol{padding:0;list-style:none}.berry-leaderboard li{border-bottom:1px solid #dde2cf;align-items:center;gap:12px;padding:15px 0;font-size:16px;display:flex}.berry-rank{color:#7a866c;width:25px;font-weight:600}.berry-name{overflow-wrap:anywhere;flex:1;min-width:0}.berry-name small{color:#8c7133;letter-spacing:1px;margin-top:4px;font-size:10px;display:block}.berry-leaderboard .fine{margin-top:22px;line-height:1.6;display:block}.manager-badge{color:#735b29;background:#efdfb0;gap:7px;margin:10px auto}.harvest-admin{background:#f6f5e9;border:1px solid #c9d5ba;border-radius:16px;margin:30px 0;padding:24px}.harvest-admin h3{font-size:24px}.harvest-admin p{line-height:1.6}@media (width<=700px){.berry-layout{grid-template-columns:1fr}.berry-section .section-heading{flex-direction:column;align-items:flex-start;gap:16px}.berry-intro{font-size:18px}.berry-field{height:340px}.berry-leaderboard{padding:22px}.berry-game-stats{font-size:13px}.city-credit{max-width:300px;margin-top:0;font-size:13px}.market-invitation .button{white-space:normal;text-align:left;line-height:1.4}.harvest-admin{padding:18px}.challenge-clock{font-size:14px}}.berry-identity{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:20px 0;display:flex}.berry-identity strong{overflow-wrap:anywhere}.berry-identity .text-link{font-size:14px}.latest-episodes{gap:18px;display:grid}.episode-archive>summary{cursor:pointer;width:max-content}.episode-archive>div{gap:16px;margin-top:16px;display:grid}.episode-archive>summary::-webkit-details-marker{display:none}.market-map-button{cursor:pointer}.market-details-link{margin-top:12px;display:flex}.market-manager{padding:22px 0}.market-manager .text-link{font-size:22px}.wealth-board{background:#f1eedc;border:1px solid #dcd5b6;border-radius:22px;padding:clamp(20px,4vw,40px);scroll-margin-top:24px}.wealth-list,.job-list,.departure-list{margin:14px 0;padding:0;list-style:none}.wealth-list li{border-bottom:1px solid #ded9bf;align-items:center;gap:12px;padding:8px 0;display:flex}.wealth-list li strong{white-space:nowrap;align-items:center;gap:7px;margin-left:auto;display:flex}.wealth-list button{overflow-wrap:anywhere;text-align:left;min-width:0}.wealth-rank{color:#796e4a;min-width:22px}.wealth-empty{margin-top:14px}.economy-admin{gap:14px;margin:24px 0;display:grid}.owner-box{background:#f7f5ea;border:1px solid #d7deca;border-radius:14px;padding:17px}.owner-box summary{cursor:pointer;align-items:center;gap:8px;font-weight:700;display:flex}.owner-box summary svg:last-child{margin-left:auto}.owner-box label{margin:12px 0 5px;display:block}.owner-box input,.owner-box select{width:100%;color:inherit;font:inherit;background:#fffdf5;border:1px solid #c9d0bc;border-radius:8px;padding:10px}.owner-box form .button{margin-top:12px}.job-balance{align-items:center;gap:6px;margin-top:8px;display:flex}.job-list li,.departure-list li{overflow-wrap:anywhere;border-bottom:1px solid #dde1ce;padding:7px 0}.job-list li{justify-content:space-between;align-items:center;gap:12px;display:flex}.departure-list li{gap:4px;display:grid}.departure-list small{color:#6c765f}.snapshot-stats{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width<=700px){.mobile-nav button{flex:1;min-width:0}.job-list li{flex-direction:column;align-items:flex-start;gap:0}.wealth-list{font-size:14px}}.wealth-person{flex:1;min-width:0;display:grid}.wealth-person button{justify-self:start}.wealth-person:has(.wealth-role) button{min-height:32px;padding:4px 0}.wealth-role{color:#615936;overflow-wrap:anywhere;font-size:.85em}.market-sellers{border-top:1px solid #dfe4d3;padding-top:18px}.market-sellers ul{margin:4px 0 0;padding:0;list-style:none}.market-sellers .text-link{overflow-wrap:anywhere;text-align:left}.map-entry{background:radial-gradient(at 95% 110%,#d0dcba,#0000 65%),#edf1e5;border:1px solid #d7deca;border-radius:16px;justify-content:space-between;align-items:center;gap:16px;padding:clamp(25px,6vw,64px);display:flex}.map-entry h2{font-size:clamp(38px,7vw,66px)}.map-entry p{margin-top:10px}.map-entry button{flex-shrink:0;min-height:54px}@media (width<=580px){.map-entry{flex-direction:column;align-items:flex-start;gap:20px}.map-entry button{justify-content:center;width:100%}}html:has(.camp-map-dialog[open]){overflow:hidden}.camp-map-dialog{color:#293b32;background:#f8f7f0;border:0;width:100%;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.camp-map-dialog[open]{grid-template-rows:auto minmax(0,1fr);display:grid}.map-dialog-toolbar{padding:max(8px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) 8px max(12px, env(safe-area-inset-left));align-items:center;gap:8px;display:flex}.map-dialog-toolbar h2{letter-spacing:-.4px;margin-right:auto;font-size:clamp(19px,4vw,28px)}.map-dialog-toolbar .button{white-space:nowrap;gap:5px;min-height:44px;padding:8px}.map-dialog-close{background:#e6eadc;border:0;border-radius:50%;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.camp-map-dialog .map-scene{border:0;border-radius:0;height:100%;margin:0}.camp-map-dialog .map-actions,.camp-map-dialog .map-compass{bottom:max(18px, calc(env(safe-area-inset-bottom) + 8px))}@media (width<=380px){.map-dialog-toolbar .button{font-size:13px}}.map-dialog-toolbar{z-index:2;background:#fbfaf4;position:relative;box-shadow:0 1px #d4deca}.map-dialog-toolbar h2{align-items:center;gap:6px;display:flex}.map-dialog-toolbar h2 svg{color:#6f825c}.camp-map-dialog .map-topline{align-items:center;top:12px;left:14px;right:14px}.camp-map-dialog .map-topline span{background:#faf8e9ed;border-radius:20px;padding:7px 10px}.camp-map-dialog .map-actions{right:max(12px, env(safe-area-inset-right));background:#fbfaf2f5;border:1px solid #afbd9e;border-radius:16px;gap:2px;padding:4px;box-shadow:0 5px 18px #2c482739}.camp-map-dialog .map-actions button{background:0 0;border:0;width:44px;height:44px}.camp-map-dialog .map-actions button:last-child{background:#e8eddc}.map-gesture-hint{left:max(12px, env(safe-area-inset-left));bottom:max(18px, calc(env(safe-area-inset-bottom) + 8px));color:#465940;pointer-events:none;background:#fbfaf2ed;border-radius:11px;align-items:center;gap:6px;padding:7px 9px;font-size:12px;display:flex;position:absolute}@media (width<=540px){.map-title-suffix{display:none}}.work-sites-admin{margin:18px 0}.work-sites-admin .button{margin-top:12px}.site-neighbor{animation:4.6s ease-in-out infinite alternate site-neighbor-stroll}@keyframes site-neighbor-stroll{0%{transform:translate(-4px)}to{transform:translate(4px)}}@media (prefers-reduced-motion:reduce){.site-neighbor{animation:none}}.work-site-marker{cursor:pointer}.job-editor-row{border:1px solid #d7deca;border-radius:10px;min-width:0;margin:12px 0;padding:8px 14px}.job-editor-row legend{font-weight:700}.job-editor-row input{margin-top:4px}
