@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap";:root{font-family:DM Sans,Arial,sans-serif;color:#26372f;background:#f5f3e9;font-size:14px}*{box-sizing:border-box}body{margin:0}button,a{touch-action:manipulation}button{font:inherit;color:inherit;cursor:pointer;border:0}button:disabled{cursor:default;opacity:.5}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid #b08a27;outline-offset:4px}a{color:inherit;text-decoration:none}header{height:92px;border-bottom:1px solid #26372f23;display:flex;align-items:center;gap:30px;padding:0 5vw}.wordmark{font-family:Libre Caslon Display,Georgia,serif;font-size:32px;display:flex;align-items:center;gap:8px;letter-spacing:-1px}.wordmark svg{width:31px;height:36px;stroke:currentColor;stroke-width:2.4;fill:none}.wordmark>span{font:10px Arial;align-self:flex-start;margin-top:9px}.resource{display:flex;align-items:center;gap:8px;margin-left:auto;font-size:12px}.resource strong{font-size:22px;font-weight:500}.twig-icon{font-size:35px;transform:rotate(-30deg);color:#9c7c26}.outline{background:transparent;border:1px solid #26372f40;padding:12px 18px;border-radius:4px}.outline:hover{background:#e8e9d9}header .outline{font-size:12px}header .outline span{margin-left:22px}main{max-width:1700px;padding:0 5vw;margin:auto}.heading{display:flex;align-items:center;justify-content:space-between;padding:34px 0 28px}.eyebrow{font-size:9px;font-weight:600;letter-spacing:2px;margin:0 0 12px}h1,h2,p{margin-top:0}.heading h1{font-family:Libre Caslon Display,Georgia,serif;font-size:clamp(44px,5.2vw,78px);line-height:.96;font-weight:400;letter-spacing:-2px;margin-bottom:13px}.lede{font-size:12px;color:#667064;margin-bottom:0}.season{display:flex;align-items:center;gap:14px;font-size:11px;line-height:1.7}.season .sun{font-size:43px;color:#ae8e36}.season div>span{font-size:8px;letter-spacing:1.6px;color:#7b8272}.world-wrap{position:relative;border:1px solid #a8b297;border-radius:7px;overflow:hidden;background:#eef0dc}.map-top,.map-bottom{position:absolute;left:24px;right:24px;display:flex;align-items:center;justify-content:space-between;z-index:2;pointer-events:none}.map-top>*{pointer-events:auto}.map-top{top:19px;font-size:8px;letter-spacing:1.5px}.map-top i{display:inline-block;width:5px;height:5px;background:#526942;border-radius:50%;margin-right:7px}.map-top button{font-size:10px}.map-bottom{bottom:13px;font-size:9px;color:#626f54}.map-bottom>span:first-child{background:#eef0dce6;padding:5px 8px;border-radius:3px}.map-scroll{width:100%;overflow-x:auto;scrollbar-width:thin}#world{display:block;width:100%;height:auto;max-height:56vh;min-height:360px}#world .plot{cursor:pointer}#world .plot .empty-mark{opacity:.25;transition:opacity .2s}#world .plot.placing .empty-mark{opacity:.85}#world .plot:hover .empty-mark{opacity:1}#world .plot:hover .plot-target,#world .plot:focus .plot-target{fill:#ffffff35;stroke:#7e8e7055;stroke-width:1}#world .plot.selected .plot-target{fill:#f5f3e944;stroke:#b59a50;stroke-dasharray:3 4}.mill-blades{animation:spin 18s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.controls{display:flex;align-items:center;justify-content:space-between;padding:18px 0 19px;gap:24px;border-bottom:1px solid #26372f23}.build-tools{display:flex;gap:4px}.tool{position:relative;display:grid;grid-template-columns:49px auto;grid-template-rows:1fr 1fr;column-gap:7px;align-items:center;text-align:left;background:transparent;border:1px solid transparent;padding:8px 12px;border-radius:5px;min-width:121px}.tool svg{grid-row:1/3;width:43px;height:44px}.tool span{font-size:11px;align-self:end;white-space:nowrap}.tool small{font-size:9px;align-self:start;color:#7b8272;margin-top:4px}.tool:hover{background:#eaeada}.tool.active{border-color:#ac9856;background:#eae6cb}.gather-wrap{width:235px;flex-shrink:0;text-align:center}.gather{display:flex;align-items:center;justify-content:space-between;width:100%;background:#26372f;color:#f5f3e9;border-radius:4px;padding:17px 19px;font-size:12px}.gather:hover:not(:disabled){background:#405640}.gather:disabled{opacity:.72}.gather span{color:#e5b84b}#harvest-note{display:block;font-size:8px;color:#7b8272;margin-top:8px}footer{display:flex;align-items:center;justify-content:space-between;padding:18px 0 24px;font-size:9px;color:#7b8272;gap:15px}footer nav{display:flex;gap:21px;align-items:center}footer .text-button,footer a{font-size:9px;color:#667064}.text-button{padding:0;background:transparent;font-size:11px}.text-button:hover{text-decoration:underline;text-underline-offset:4px}.local-dot{font-size:6px;color:#6b8354;margin:0 7px 0 15px}#detail{position:absolute;right:15px;top:55px;width:255px;padding:25px;background:#f5f3e9;box-shadow:0 5px 25px #26372f18;border:1px solid #26372f25;border-radius:5px;z-index:4}#detail>svg{display:block;width:115px;height:100px;margin:5px auto 10px}h2{font-family:Libre Caslon Display,Georgia,serif;font-size:36px;font-weight:400;line-height:1.08;letter-spacing:-.5px;margin-bottom:12px}#detail p:not(.eyebrow){font-size:11px;line-height:1.6;color:#667064}#detail .eyebrow{font-size:8px;letter-spacing:1.4px}.detail-stats{display:flex;justify-content:space-between;font-size:9px;border-top:1px solid #26372f25;padding:15px 0}.solid{background:#26372f;color:#f5f3e9;border-radius:4px;padding:14px 19px}#detail .solid,#detail .outline{width:100%;font-size:10px;margin-top:6px}.modal-close{position:absolute;right:13px;top:9px;font-size:25px;background:transparent;font-weight:400}dialog{width:440px;max-width:calc(100% - 32px);padding:40px;border:1px solid #8d9b81;border-radius:7px;color:#26372f;background:#f5f3e9}dialog::backdrop{background:#26372f65;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}dialog p{font-size:12px;line-height:1.8;color:#667064}.journal-actions{display:grid;gap:9px;margin:22px 0}.fine{font-size:10px!important}dialog .outline,dialog .solid{font-size:12px}#cancel-import{margin-top:10px;width:100%}#toast{position:fixed;left:50%;bottom:27px;transform:translate(-50%,15px);max-width:calc(100% - 28px);width:max-content;background:#26372f;color:#f5f3e9;padding:13px 20px;font-size:12px;border-radius:5px;opacity:0;pointer-events:none;transition:.25s;z-index:30}#toast.show{opacity:1;transform:translate(-50%)}.intro{position:fixed;inset:0;background:#f5f3e9;z-index:20;display:flex;align-items:center;justify-content:center;transition:opacity .65s,visibility .65s}.intro.done{opacity:0;visibility:hidden;pointer-events:none}.intro #skip{position:absolute;right:5vw;top:38px;font-size:12px}.intro-stage{width:min(600px,90vw);text-align:center;transform:translateY(-25px)}.intro-stage>svg{width:100%;overflow:visible}.intro-title{height:125px;opacity:0}.intro-title>span{font-size:9px;letter-spacing:3px}.intro-title h1{font-family:Libre Caslon Display,Georgia,serif;font-size:72px;font-weight:400;letter-spacing:-2px;margin:12px 0}.intro-title h1 span{font-family:Arial;font-size:12px;vertical-align:top;display:inline-block;margin:13px 0 0 5px;letter-spacing:0}.intro-title p{font-size:12px;color:#7b8272}.intro-caption{position:absolute;bottom:35px;font-size:10px;color:#7b8272;letter-spacing:1px}.intro-land,.intro-house,.intro-mill{opacity:0}.playing .falling-twig{animation:twig 3.2s both}.playing .intro-land{animation:land 2.2s 2s both}.playing .growing-line{stroke-dasharray:600;stroke-dashoffset:600;animation:line 2.7s 2.4s both}.playing .intro-house{transform-origin:195px 210px;animation:grow 1.4s 4s both}.playing .intro-mill{transform-origin:408px 210px;animation:grow 1.4s 5s both}.playing .intro-blades{transform-origin:408px 140px;animation:spin 9s 5s linear infinite}.playing .intro-title{animation:reveal 1.2s 6.7s both}.playing .intro-caption{animation:caption 8s both}@keyframes twig{0%{transform:translateY(-220px) rotate(-22deg);opacity:0}30%{opacity:1}68%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(55px) scaleX(2);opacity:0}}@keyframes land{0%{opacity:0;transform:translateY(30px) scaleX(.3);transform-origin:center}to{opacity:1;transform:none}}@keyframes line{to{stroke-dashoffset:0}}@keyframes grow{0%{opacity:0;transform:scaleY(0)}70%{opacity:1;transform:scaleY(1.06)}to{opacity:1;transform:scaleY(1)}}@keyframes reveal{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes caption{0%,80%{opacity:1}to{opacity:0}}@media(min-width:1500px){#world{max-height:59vh}.heading{padding-top:40px;padding-bottom:35px}.tool{min-width:146px}.controls{padding-top:23px;padding-bottom:23px}}@media(max-width:1100px){.tool{padding:7px;min-width:100px;grid-template-columns:35px auto;column-gap:4px}.tool svg{width:35px}.gather-wrap{width:190px}.build-tools{gap:0}}@media(max-width:800px){header{height:74px;padding:0 22px;gap:17px}.wordmark{font-size:27px}.wordmark svg{width:25px}.wordmark>span{display:none}header .outline{padding:10px;font-size:10px}header .outline span{display:none}.resource{gap:4px}.resource>span:last-child{display:none}.resource strong{font-size:19px}main{padding:0 22px}.heading{padding:30px 0 24px}.heading h1{font-size:57px}.season{display:none}.lede{font-size:11px}.eyebrow{font-size:8px}.controls{flex-direction:column;gap:15px}.build-tools{width:100%;justify-content:space-between}.tool{display:flex;flex-direction:column;text-align:center;padding:7px 5px;min-width:0;flex:1;gap:3px}.tool svg{width:42px;height:42px}.tool span{font-size:10px;align-self:center}.tool small{font-size:8px;align-self:center;margin:0}.gather-wrap{width:100%}.gather{padding:15px 19px}.map-scroll{overflow-x:auto}#world{width:900px;max-height:none;min-height:0;height:465px}.map-top{left:15px;right:15px;top:15px}.map-top>span{font-size:7px}.map-top button{font-size:9px}.map-bottom{left:8px;right:10px;bottom:7px;font-size:8px}.map-bottom>span:first-child{max-width:78%;line-height:1.4}footer{align-items:flex-start;flex-direction:column;gap:13px;font-size:8px}footer nav{gap:25px}.local-dot{margin-left:9px}#detail{top:48px;right:10px;width:230px;padding:22px}.intro-title h1{font-size:57px}.intro-stage{transform:translateY(-45px)}.intro-title>span{font-size:8px}.intro-title p{font-size:11px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.intro{display:none}}@media(max-height:650px)and (min-width:801px){.heading{padding:22px 0}.heading h1{font-size:54px}header{height:70px}#world{min-height:310px}.controls{padding:10px 0}.tool svg{height:36px}footer{padding:12px 0}}@media(max-width:370px){header{padding:0 15px;gap:10px}.wordmark{font-size:24px;gap:4px}.wordmark svg{width:23px}main{padding:0 15px}.heading h1{font-size:52px}.tool span{font-size:9px}.map-top{left:10px;right:10px}}
