@import"https://fonts.googleapis.com/css2?family=Pixelify+Sans:wght@400;500;600;700&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,700&display=swap";:root{--px:2px;--ink:#3d2b22;--ink-soft:#6e5546;--cream:#fff3d6;--gold:#f2c75c;--leaf:#79b04a;--display:"Pixelify Sans","DM Sans",system-ui,sans-serif;--text:"DM Sans",system-ui,sans-serif;--gutter:16px;--ui:"/assets/generated/";color-scheme:light}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:#479757;color:var(--ink);font:500 15px/1.45 var(--text);-webkit-font-smoothing:antialiased}img{image-rendering:pixelated}button,select,input{font:inherit;color:inherit}button{cursor:pointer}a{color:#7a4a1f}.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}#app{position:fixed;top:0;right:0;bottom:0;left:0}#game{position:absolute;top:0;right:0;bottom:0;left:0;touch-action:none}#game canvas{display:block;image-rendering:pixelated}h1,h2,h3{font-family:var(--display);font-weight:600;margin:0;line-height:1.15}h3{font-size:16px;margin:14px 0 6px;color:#4c3524}.eyebrow{font:600 12px var(--display);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}.hint{color:var(--ink-soft);font-size:14px;margin:.4em 0}:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.card,.window{border-style:solid;border-width:calc(9*var(--px));border-image:url(/assets/generated/ui-window.png) 9 fill / calc(9*var(--px)) stretch;image-rendering:pixelated;background:none;color:var(--ink)}.inset{position:relative;border-style:solid;border-width:calc(4*var(--px));border-image:url(/assets/generated/ui-inset.png) 4 fill / calc(4*var(--px)) stretch;padding:4px 6px}.inset:before,.inset:after{content:"";position:absolute;width:calc(7*var(--px));height:calc(7*var(--px));background-size:100% 100%;image-rendering:pixelated;pointer-events:none}.inset:before{left:calc(-2*var(--px));top:calc(-2*var(--px));background-image:url(/assets/generated/ui-bracket-tl.png)}.inset:after{right:calc(-2*var(--px));bottom:calc(-2*var(--px));background-image:url(/assets/generated/ui-bracket-br.png)}.plate-frame{border-style:solid;border-width:calc(4*var(--px));border-image:url(/assets/generated/ui-plate.png) 4 fill / calc(4*var(--px)) stretch}.rod{height:calc(5*var(--px));margin:8px 2px;border-style:solid;border-width:0 calc(3*var(--px));border-image:url(/assets/generated/ui-rod.png) 0 3 fill / 0 calc(3*var(--px)) stretch}.plate{display:flex;align-items:center;gap:10px;padding:6px 12px;background:#1d2a22e8;color:var(--cream);border:var(--px) solid #0f1712;box-shadow:inset 0 0 0 var(--px) #3c5243,0 var(--px) 0 #0f171299;font:600 14px var(--display)}.plate img{width:16px;height:16px}.sep{width:var(--px);height:14px;background:#5d7563}.live-dot{width:8px;height:8px;background:var(--leaf);box-shadow:0 0 0 2px #2c4a26;animation:pulse 2.4s steps(2) infinite}@keyframes pulse{50%{background:#c7ee8a}}.key,.map-tools button{display:grid;place-items:center;min-width:44px;min-height:44px;padding:0;border-style:solid;border-width:calc(6*var(--px));border-image:url(/assets/generated/ui-key.png) 6 fill / calc(6*var(--px)) stretch;background:none}.key img,.map-tools img{width:calc(16*var(--px));height:calc(16*var(--px));margin:calc(-4*var(--px))}.key:hover,.map-tools button:hover{filter:brightness(1.07)}.key:active,.map-tools button:active{border-image-source:url(/assets/generated/ui-key-dark.png);transform:translateY(var(--px))}.pill{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 14px;border-style:solid;border-width:calc(5*var(--px));border-image-slice:5 fill;border-image-width:calc(5*var(--px));border-image-repeat:stretch;background:none;font:600 15px var(--display);image-rendering:pixelated}.pill-green{border-image-source:url(/assets/generated/ui-pill-green.png);color:#fff;text-shadow:0 var(--px) 0 #2d5a24}.pill-beige,#account{border-image-source:url(/assets/generated/ui-button-wide.png);color:var(--ink)}.pill-dark{border-image-source:url(/assets/generated/ui-button-wide.png);color:var(--ink)}.pill:hover{filter:brightness(1.07)}.pill:active{transform:translateY(var(--px))}.pill:disabled{filter:grayscale(.6);opacity:.7}.pill.select{padding:0 4px}.pill select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;padding:0 18px 0 6px;min-height:44px;cursor:pointer;font:600 15px var(--display);background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(-45deg,transparent 50%,currentColor 50%);background-size:5px 5px;background-position:calc(100% - 8px) 55%,calc(100% - 3px) 55%;background-repeat:no-repeat}.pill select option{color:#222}.icon-button{display:grid;place-items:center;min-width:44px;min-height:44px;border:0;background:none;padding:0;font:700 26px var(--display);color:var(--ink)}.link-button{border:0;background:none;color:#7a4a1f;text-decoration:underline;padding:8px;min-height:44px}.meter{--t:16;display:block;position:relative;max-width:100%;overflow:hidden;height:calc(8*var(--px));min-width:calc(20*var(--px));padding:0 calc(3*var(--px));background:url(/assets/generated/ui-bar-left.png) left top/calc(3*var(--px)) 100% no-repeat,url(/assets/generated/ui-bar-right.png) right top/calc(3*var(--px)) 100% no-repeat,url(/assets/generated/ui-bar-track.png) left top/calc(16*var(--px)) 100% repeat-x;background-clip:border-box,border-box,content-box;background-origin:border-box,border-box,content-box;image-rendering:pixelated}.meter i{position:absolute;top:0;bottom:0;left:calc(3*var(--px));width:calc((100% - 6*var(--px)) * var(--v) / 100);min-width:0;background:var(--edge) right top/calc(2*var(--px)) 100% no-repeat,var(--fill) left top/calc(16*var(--px)) 100% repeat-x;transition:width .5s steps(8)}.meter[style*="--v:0.0"] i{display:none}.meter[data-tone=green]{--fill:url(/assets/generated/ui-bar-green.png);--edge:url(/assets/generated/ui-bar-edge-green.png)}.meter[data-tone=gold]{--fill:url(/assets/generated/ui-bar-gold.png);--edge:url(/assets/generated/ui-bar-edge-gold.png)}.meter[data-tone=red]{--fill:url(/assets/generated/ui-bar-red.png);--edge:url(/assets/generated/ui-bar-edge-red.png)}.meter[data-tone=blue]{--fill:url(/assets/generated/ui-bar-blue.png);--edge:url(/assets/generated/ui-bar-edge-blue.png)}.meter.mini{width:96px}.bust{flex:none;display:grid;place-items:center;width:92px;height:92px;border-style:solid;border-width:calc(4*var(--px));border-image:url(/assets/generated/ui-inset.png) 4 fill / calc(4*var(--px)) stretch}.bust span{display:block;width:72px;height:72px;background:var(--bust) -12px -12px/960px 288px no-repeat;image-rendering:pixelated}.bust.talking span{animation:talk 1s steps(10) infinite}@keyframes talk{to{background-position:-972px -12px}}@keyframes talk-small{to{background-position:-648px -8px}}.hud-top{position:absolute;top:var(--gutter);left:var(--gutter);right:var(--gutter);display:flex;align-items:flex-start;gap:12px;pointer-events:none;z-index:4}.hud-top>*{pointer-events:auto}.brand{text-decoration:none;font-size:20px;padding:6px 14px 6px 10px}.brand img{width:24px;height:36px}.brand small{display:block;font:500 11px var(--display);letter-spacing:.14em;text-transform:uppercase;color:#a9c99a}.world-plate{margin:0 auto}.world-plate b{color:var(--gold);font-weight:600}.top-actions{display:flex;gap:8px}.hud-title{position:absolute;left:calc(var(--gutter) + 4px);top:82px;z-index:2;pointer-events:none;text-shadow:0 var(--px) 0 #1d2a22,0 0 6px #1d2a2299}.hud-title .eyebrow{color:#d9f0c4}.hud-title h1{color:var(--cream);font-size:22px}#character-panel{position:absolute;left:var(--gutter);top:136px;width:360px;max-width:calc(100% - 2*var(--gutter));z-index:3;padding:2px 4px 6px}.identity{display:flex;align-items:center;gap:10px;min-width:0}.identity>*{min-width:0}.who{flex:1;min-width:0}.plate-name{display:flex;align-items:center;gap:8px;border-style:solid;border-width:calc(4*var(--px));border-image:url(/assets/generated/ui-plate.png) 4 fill / calc(4*var(--px)) stretch;padding:0 4px}.plate-name h2{flex:1;min-width:0;font-size:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mood img{width:calc(10*var(--px));height:calc(8*var(--px));display:block}.sub{display:block;color:var(--ink-soft);font-size:13px;margin-top:4px}.stats{display:grid;gap:6px;margin:0 0 10px}.stat{display:grid;grid-template-columns:16px minmax(0,1fr) 30px;align-items:center;gap:8px;font-size:14px}.stat img{width:16px;height:16px}.stat b{font:600 15px var(--display);text-align:right}.stats.wide .stat{grid-template-columns:16px 76px 1fr 30px}.doing{display:grid;grid-template-columns:16px minmax(0,1fr);align-items:center;gap:2px 8px}.doing>*{min-width:0}.doing img{width:16px;height:16px}.doing h3{margin:0;font-size:17px}.doing small{grid-column:2;font:500 12px var(--display);color:var(--ink-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doing .progress{grid-column:1/-1}.welcome{display:grid;grid-template-columns:auto 1fr;gap:10px 12px;align-items:center}.welcome h2{font-size:20px}.welcome p{margin:.3em 0 0;font-size:14px}.welcome>.pill,.welcome>form,.welcome>.hint{grid-column:1/-1}.welcome form{display:grid;gap:8px}label{display:grid;gap:4px;font:600 13px var(--display);color:var(--ink-soft)}input{min-height:44px;padding:8px 12px;border-style:solid;border-width:calc(4*var(--px));border-image:url(/assets/generated/ui-plate.png) 4 fill / calc(4*var(--px)) stretch;background:none;color:var(--ink);font:500 16px var(--text)}input:focus{outline:3px solid var(--gold);outline-offset:0}[role=alert]{color:#a23a2a;font-size:14px;margin:0}.dock{position:absolute;bottom:var(--gutter);left:50%;transform:translate(-50%);display:flex;gap:6px;z-index:4}.dock button{display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;align-content:center;gap:0;width:88px;height:72px;padding:0;border-style:solid;border-width:calc(6*var(--px));border-image:url(/assets/generated/ui-card.png) 6 fill / calc(6*var(--px)) stretch;background:none;color:var(--ink);font:600 13px var(--display)}.dock button img{width:32px;height:32px;margin-top:-4px}.dock button span{min-width:0;justify-self:stretch;text-align:center;white-space:nowrap}.dock button[data-tab=journey] span{font-size:.92em}.dock button:hover{filter:brightness(1.06)}.dock button.active{border-image-source:url(/assets/generated/ui-card-active.png);transform:translateY(calc(-3*var(--px)))}.drawer{position:absolute;right:var(--gutter);top:82px;max-height:calc(100% - 192px);width:390px;z-index:3;display:flex;flex-direction:column;padding:0 2px}.drawer[hidden]{display:none}.drawer-head{display:flex;align-items:center;gap:8px;padding-bottom:2px}.drawer-head h2{flex:1;font-size:20px;border-style:solid;border-width:calc(4*var(--px));border-image:url(/assets/generated/ui-plate.png) 4 fill / calc(4*var(--px)) stretch;padding:0 6px}.drawer-head:after{content:""}.drawer-body{overflow:auto;padding:6px 4px 10px;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#a58a65 transparent}.drawer-body>section[hidden]{display:none}.note{margin:12px 0}.note h3{margin:4px 0}.note p{margin:4px 0 0;font-size:14px}.note.goal{display:flex;gap:10px}.note.goal img{width:16px;height:16px;margin-top:4px}.rows{display:grid;gap:0}.rows>div{display:flex;align-items:center;gap:10px;justify-content:space-between;padding:7px 4px;border-bottom:var(--px) dashed #b49a7488}.rows>div:last-child{border-bottom:0}.rows>div span:first-child:first-letter{text-transform:uppercase}.rows b{font:600 15px var(--display)}.traits>div span:first-child{flex:1}.rows,.landmarks,.events{border-style:solid;border-width:calc(4*var(--px));border-image:url(/assets/generated/ui-inset.png) 4 fill / calc(4*var(--px)) stretch;padding:2px 6px}.slots{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.slot.empty-slot{min-height:64px;opacity:.75}.slot{position:relative;display:grid;justify-items:center;gap:0;padding:6px 2px 2px;border-style:solid;border-width:calc(4*var(--px));border-image:url(/assets/generated/ui-inset.png) 4 fill / calc(4*var(--px)) stretch;font-size:12px;text-align:center}.slot img{width:32px;height:32px}.slot b{position:absolute;right:0;top:-2px;font:700 15px var(--display);color:var(--cream);text-shadow:0 var(--px) 0 #2b1d14,var(--px) 0 0 #2b1d14,calc(-1*var(--px)) 0 0 #2b1d14,0 calc(-1*var(--px)) 0 #2b1d14}.segmented{display:flex;gap:6px;margin:4px 0 8px}.segmented button{flex:1;min-height:44px;border-style:solid;border-width:calc(6*var(--px));border-image:url(/assets/generated/ui-card.png) 6 fill / calc(6*var(--px)) stretch;background:none;font:600 14px var(--display);color:var(--ink-soft)}.segmented button[aria-pressed=true]{border-image-source:url(/assets/generated/ui-card-active.png);color:var(--ink)}.events{list-style:none;margin:0;display:grid;gap:0}.event{display:grid;grid-template-columns:36px 1fr;gap:10px;padding:8px 2px;border-bottom:var(--px) dashed #b49a7488}.event:last-child{border-bottom:0}.event time{font:500 12px var(--display);color:var(--ink-soft)}.event p{margin:2px 0;font-size:14px}.event small{font:600 11px var(--display);text-transform:uppercase;letter-spacing:.06em;color:#8a6a4f}.event-icon{width:36px;height:36px;display:grid;place-items:center;border-style:solid;border-width:calc(6*var(--px));border-image:url(/assets/generated/ui-card.png) 6 fill / calc(6*var(--px)) stretch}.event-icon img{width:16px;height:16px;margin:-6px}.event.milestone .event-icon{border-image-source:url(/assets/generated/ui-card-active.png)}.event.milestone p{font-weight:700}.empty{padding:12px}.admin-speed{margin-bottom:8px;padding:2px 6px 6px;border-style:solid;border-width:calc(4*var(--px));border-image:url(/assets/generated/ui-inset.png) 4 fill / calc(4*var(--px)) stretch}.speeds{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.speeds button{min-height:44px;border-style:solid;border-width:calc(6*var(--px));border-image:url(/assets/generated/ui-card.png) 6 fill / calc(6*var(--px)) stretch;background:none;font:600 15px var(--display);color:var(--ink-soft)}.speeds button.active{border-image-source:url(/assets/generated/ui-card-active.png);color:var(--ink)}.landmarks{display:grid;gap:0}.landmark{display:flex;align-items:center;gap:10px;min-height:52px;padding:4px;border:0;border-bottom:var(--px) dashed #b49a7488;background:none;text-align:left}.landmark:last-child{border-bottom:0}.landmark:hover{background:#fff4}.landmark span:nth-child(2){flex:1;font:600 15px var(--display)}.landmark-art{width:44px;height:44px;display:grid;place-items:center;overflow:hidden;border-style:solid;border-width:calc(6*var(--px));border-image:url(/assets/generated/ui-card.png) 6 fill / calc(6*var(--px)) stretch}.landmark-art img{width:32px;height:32px;object-fit:cover;object-position:left;margin:-6px}.landmark .look{width:16px;height:16px}.legend{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px 16px;font-size:14px}.legend li{display:flex;align-items:center;gap:6px}.legend i{width:14px;height:14px;border:var(--px) solid #3b2a20}.legend img{width:16px;height:16px}.water-key{background:#3ca3b2}.forest-key{background:#2f7a43}.credits{font-size:13px;color:var(--ink-soft);margin-top:16px}.map-tools{position:absolute;right:var(--gutter);bottom:var(--gutter);display:grid;gap:6px;z-index:4}.map-tools button{width:56px;height:56px}body.drawer-open .map-tools{right:calc(var(--gutter) + 398px)}@media(max-width:1100px){body.drawer-open .map-tools{right:calc(var(--gutter) + 358px)}}.map-caption{position:absolute;left:var(--gutter);bottom:var(--gutter);z-index:2;font-size:13px}#notice{position:absolute;left:50%;top:82px;transform:translate(-50%);z-index:6;max-width:min(560px,calc(100% - 32px));padding:10px 14px;background:#5a2a20f0;color:#fff;border:var(--px) solid #2a120d;font-size:14px}#notice[hidden]{display:none}dialog#auth{width:min(430px,calc(100% - 32px));padding:6px 8px}dialog#auth::backdrop{background:#0f1712aa}#auth-form{display:grid;gap:10px;position:relative}#auth-form .close{position:absolute;right:-8px;top:-8px}#auth-form h2{font-size:24px}#auth-form p{margin:0;font-size:14px}@media(max-width:1100px){.drawer{width:350px}.world-plate #connection,.world-plate .sep:first-of-type{display:none}}@media(max-width:760px){:root{--gutter:10px}.brand small,.world-plate #connection,.world-plate .sep,.hud-title,.map-caption{display:none}.hud-top{gap:6px;flex-wrap:wrap}.brand{font-size:17px;padding:4px 10px 4px 6px}.brand img{width:16px;height:24px}.world-plate{margin:0;order:3;width:100%;justify-content:center;padding:6px 10px}.top-actions{margin-left:auto}.pill{padding:0 8px;font-size:14px}#character-panel{top:auto;bottom:92px;left:var(--gutter);right:var(--gutter);width:auto}body.drawer-open #character-panel,#character-panel .rod{display:none}#character-panel .stats{grid-template-columns:1fr 1fr;gap:6px 12px;margin-bottom:6px}#character-panel .bust{width:68px;height:68px}#character-panel .bust span{width:48px;height:48px;background-size:640px 192px;background-position:-8px -8px}#character-panel .bust.talking span{animation-name:talk-small}.plate-name h2{font-size:18px}.dock{left:var(--gutter);right:var(--gutter);transform:none;justify-content:space-between;gap:4px}.dock button{flex:1;width:auto;min-width:0;height:66px;font-size:11px}.drawer{left:var(--gutter);right:var(--gutter);top:auto;bottom:90px;width:auto;max-height:62vh}.slots{grid-template-columns:repeat(4,1fr)}.map-tools{bottom:auto;top:168px}.map-tools button{width:50px;height:50px}body.drawer-open .map-tools{display:none}#notice{top:116px}}@media(max-width:760px)and (max-height:700px){.drawer{max-height:52vh}}@media(prefers-reduced-motion:reduce){.live-dot,.bust.talking span{animation:none}.meter i{transition:none}}.row-icon{width:16px;height:16px;image-rendering:pixelated;vertical-align:-3px;margin-right:2px}.appearance-preview{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;justify-items:center;padding:6px 12px;background:#675b4230;border-radius:8px}.appearance-preview canvas,.custom-portrait{image-rendering:pixelated}.appearance-preview canvas{width:96px;height:120px}.appearance-preview>span{grid-column:1/-1;font:12px var(--text);color:#9b3929}.appearance-preview>span:empty{display:none}.appearance-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.appearance-rotate{width:44px;height:44px;border:1px solid #99794d;border-radius:50%;background:var(--cream);font:32px var(--display);cursor:pointer}.appearance-gender{border:0;margin:0;padding:0;min-width:0}.appearance-gender legend{font:600 13px var(--display);color:var(--ink-soft)}.appearance-gender .segmented{margin-bottom:0}.appearance-gender button>span{font:22px system-ui;vertical-align:-1px}.appearance-category{display:grid;grid-template-columns:48px 1fr 10px;gap:5px;align-items:center;justify-items:center;min-width:0;min-height:72px;padding:6px;background:var(--cream);border:1px solid #9d8058;border-radius:7px;cursor:pointer}.appearance-category>span:not(.appearance-swatch){font:600 13px var(--display);text-align:left;justify-self:start}.appearance-category canvas{width:42px;height:49px;image-rendering:pixelated}.appearance-category:disabled{opacity:.5;cursor:default}.appearance-swatch{display:block;width:32px;height:32px;border-radius:50%;background:var(--swatch,#a99a80);border:2px solid #493c3299;box-shadow:inset 0 2px #fff4;flex-shrink:0}.appearance-picker{width:min(510px,calc(100% - 32px));max-height:calc(100dvh - 48px);padding:16px;box-sizing:border-box;overflow:auto;background:var(--cream);color:var(--ink);border:4px solid #735333;border-radius:12px;box-shadow:0 8px 32px #17251d88}.appearance-picker::backdrop{background:#0f1712b8}.appearance-picker-head{display:flex;align-items:center;justify-content:space-between;position:sticky;top:-16px;z-index:2;background:var(--cream);padding:2px 0 10px;gap:8px}.appearance-picker-head h3{margin:0;font:22px var(--display)}.appearance-options{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:8px;padding:4px}.appearance-option{position:relative;display:grid;place-items:center;align-content:center;min-width:0;min-height:80px;padding:3px;border:3px solid transparent;border-radius:8px;background:#dfccab;cursor:pointer}.appearance-option canvas{image-rendering:pixelated;max-width:100%}.appearance-option small{font:12px var(--display)}.appearance-option[aria-pressed=true]{border-color:#507a37;background:#dae1be}.appearance-option:hover,.appearance-category:hover{box-shadow:0 0 0 2px #ad854b}.appearance-option:focus-visible,.appearance-category:focus-visible,.appearance-rotate:focus-visible{outline:3px solid #3f6b30;outline-offset:2px}.appearance-selected{display:none;position:absolute;top:-4px;right:-4px;width:22px;height:22px;border-radius:50%;background:#507a37;color:#fff;font:700 15px system-ui;line-height:22px}.appearance-option[aria-pressed=true] .appearance-selected{display:block}.color-options{grid-template-columns:repeat(auto-fill,minmax(52px,1fr));gap:10px}.color-options .appearance-option{min-height:60px;border-radius:50%;background:transparent}.color-options .appearance-swatch{width:40px;height:40px}#character-panel[data-mode=welcometrue]{max-height:calc(100dvh - 220px);overflow:auto}.welcome>div:first-child:not(.bust){grid-column:1/-1}.custom-portrait{width:64px;height:80px;flex-shrink:0}.creating-character .map-tools{display:none}@media(max-width:700px){#character-panel[data-mode=welcometrue]{max-height:calc(100dvh - 280px)}.appearance-preview canvas{width:64px;height:80px}.appearance-preview{padding:2px}}#admin-population{margin:20px 0;padding:14px 0;border-top:2px solid #73584655}.bot-create{display:flex;gap:8px;align-items:center}.bot-create input{min-width:0;width:90px;margin:8px 0}.bot-create button{flex:1;white-space:normal}.population-row{padding:12px 0;border-top:1px solid #73584655}.population-row summary{cursor:pointer;display:grid;gap:5px}.population-row summary span{font-size:12px}.population-row>p{margin:9px 0}.population-row li{font-size:12px;margin:4px 0}.population-row .rows>div{gap:12px}.population-pages{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.population-pages button{flex:1;white-space:normal}#admin-actions{margin:16px 0;padding:12px 0;border-top:1px solid #8d7954}#admin-actions select{display:block;width:100%;margin:10px 0;padding:8px;font:inherit}#admin-actions input{width:85px;margin:5px;padding:5px}.journey-card,.visit-recap{margin:12px 0;padding:12px;border:1px solid #b7a17a;border-radius:8px;background:#f5ecd5;color:#443b2d}.journey-card h3,.visit-recap h3{margin:6px 0}.journey-card p,.visit-recap p{line-height:1.45}.journey-steps{list-style:none;padding:0;margin:10px 0 14px;display:grid;gap:6px;font-size:12px}.journey-steps li{opacity:.65}.journey-steps .current{opacity:1;font-weight:700}.journey-steps .complete{opacity:1;color:#356544}.visit-recap{border-color:#67895f}.visit-recap ul{padding-left:18px;line-height:1.6}.journey-details summary{cursor:pointer;margin:8px 0;font-size:12px}.journey-card .rows{font-size:12px}.journey-details:not([open])~p,.journey-details:not([open])~.rows{display:none}.visit-recap{max-height:200px;overflow-y:auto}#leave{width:min(440px,calc(100vw - 24px));max-height:calc(100dvh - 30px);overflow:auto}#leave .leave-body{padding:12px}#leave p{line-height:1.5}#leave .pill{display:block;width:100%;margin-top:10px}#offline-minutes{display:block;width:100%;padding:8px;margin-top:6px;font:inherit}#leave .leave-body{position:relative}#leave-close{position:absolute;right:0;top:0}#leave label{line-height:1.6}#leave{width:min(520px,calc(100vw - 24px))}.exit-choice{margin:14px 0;padding:12px;border:1px solid #9d825d;border-radius:6px;background:#f5ecd5}.exit-choice h3{margin:0 0 6px}.exit-choice p{font-size:14px;margin:4px 0 10px}#leave .leave-body>h2{padding-right:20px}#audio-dialog{width:min(400px,calc(100vw - 24px));max-height:85vh;overflow:auto}.audio-volume{display:grid;gap:8px;margin:18px 0}.audio-volume input{width:100%;accent-color:#619b50}#audio-dialog .leave-body{padding:12px}#audio-dialog p{line-height:1.5}#music-player{position:fixed;right:18px;top:93px;display:flex;align-items:center;gap:3px;padding:3px 7px;border:1px solid #b59a7166;border-radius:16px;background:#18261ed9;z-index:25;box-shadow:0 2px 6px #0003}#music-player button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:#eadcbd;font:inherit;font-size:17px;width:26px;height:26px;padding:0;cursor:pointer;border-radius:50%}#music-player button:hover,#music-player button:focus-visible{background:#e4d0a329;outline:1px solid #c6b58b}#music-player button[aria-pressed=true]{color:#a3cf87}.player-divider{height:14px;width:1px;background:#d0bf9344;margin:0 3px}#credits-dialog{width:min(520px,calc(100vw - 24px));max-height:85vh;overflow:auto}#credits-dialog .leave-body{padding:12px}#credits-dialog p{line-height:1.6;font-size:13px}#credits-dialog a{color:#4c633c}body:not(.has-character) .world-plate,body:not(.has-character) .hud-title,body:not(.has-character) .map-caption,body:not(.has-character) .map-tools{display:none}@media(max-width:760px){#music-player{top:auto;bottom:104px;right:10px}}.top-actions{margin-left:auto}body:not(.has-character) .dock{display:none}@media(max-width:760px){body:not(.has-character) #music-player{bottom:12px}}#music-player #sfx-mute{position:relative}#music-player #sfx-mute[aria-pressed=true]{color:#ff7770;background:#6a24244d}#sfx-mute[aria-pressed=true]:after{content:"?";position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:23px;font-weight:700;color:#ff7770;text-shadow:0 1px 2px #18261e;pointer-events:none}body.drawer-open #music-player{display:none}#audio-dialog .leave-body{position:relative}#audio-close-top{position:absolute;right:0;top:0}#audio-dialog h2{padding-right:28px}#music-player #sfx-mute:after{content:none}#sfx-mute svg{display:block;width:19px;height:19px;margin:auto;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;fill:none}#sfx-mute .speaker{fill:currentColor;stroke:none}#sfx-mute .mute-cross,#sfx-mute[aria-pressed=true] .sound-waves{display:none}#sfx-mute[aria-pressed=true] .mute-cross{display:block;stroke-width:2.5;paint-order:stroke;filter:drop-shadow(0 0 1px #18261e)}.landing #game:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(90deg,#0c1914f7,#0c1914e0 24%,#0c19148c 49%,#0c19141f 80%),linear-gradient(0deg,rgba(10,22,17,.5),transparent 40%);z-index:1}.landing #game canvas{filter:saturate(.8) brightness(.88)}.landing #character-panel{position:fixed;left:8vw;top:50%;bottom:auto;right:auto;transform:translateY(-42%);width:min(540px,84vw);max-width:84vw;max-height:calc(100dvh - 180px);overflow:auto;z-index:3;border:0;border-image:none;background:transparent;box-shadow:none;padding:0;color:#f3ead7}.landing-hero.welcome{display:block}.landing-kicker{display:block;font-size:10px;letter-spacing:2px;color:#c5c9a4;margin-bottom:22px}.landing-hero h1{font-size:clamp(34px,4.3vw,62px);line-height:1.25;color:#f6ecd5;letter-spacing:-1px;margin:0 0 20px;text-shadow:0 4px 0 #0c1914}.landing-rule{width:60px;height:2px;background:#bdac78;margin:0 0 25px}.landing-hero h2{white-space:pre-line;font-size:clamp(18px,2vw,25px);line-height:1.55;margin:0 0 16px;color:#f3ead7}.landing-hero .landing-intro{font-size:15px;line-height:1.9;max-width:440px;color:#c2cabd;margin:0 0 26px}.landing-actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.landing-actions .pill{padding:14px 23px}.landing-login{background:none;border:0;border-bottom:1px solid #c7c4a766;color:#ded9c3;font:inherit;font-size:12px;padding:8px 0;cursor:pointer}.landing-login:hover{color:#fff}.landing-details{display:flex;gap:20px;flex-wrap:wrap;margin-top:33px;padding-top:22px;border-top:1px solid #b9bb9f33;font-size:10px;color:#d1d5bd}.landing-details span{display:flex;gap:8px;align-items:center}.landing-details img{width:19px;height:19px;object-fit:contain;image-rendering:pixelated}.landing-hero .landing-note{margin-top:22px;font-size:12px;line-height:1.7;color:#9caa9b}.landing #character-panel>[data-open-credits]{color:#a8b19c;font-size:11px;margin:20px 0 0;padding:0}.landing .brand{background:transparent;border:0;border-image:none;box-shadow:none}.landing .brand small{display:none}.landing #music-player{opacity:.8}@media(max-width:760px){.landing #game:after{background:linear-gradient(90deg,#0c1914eb,#0c1914b8),linear-gradient(0deg,#0c1914,transparent)}.landing #character-panel{left:8vw;top:175px;bottom:auto;transform:none;width:84vw;max-height:calc(100dvh - 235px)}.landing-kicker{font-size:8px;letter-spacing:1px;margin-bottom:18px}.landing-hero h1{font-size:34px;margin-bottom:18px}.landing-rule{margin-bottom:20px}.landing-hero h2{font-size:18px}.landing-hero .landing-intro{font-size:14px;line-height:1.7}.landing-details{gap:14px;font-size:9px;margin-top:24px}.landing-actions{gap:8px 18px}.landing-actions .pill{width:100%}.landing .top-actions{gap:5px}.landing .top-actions .pill{font-size:9px}}.landing #game:after{background:linear-gradient(90deg,#f2ecd5fa,#f0ecd6eb 25%,#e5ebd49c 49%,#dce9d10f 81%),linear-gradient(0deg,rgba(231,234,211,.22),transparent 40%)}.landing #game canvas{filter:saturate(.95) brightness(1.03)}.landing #character-panel{color:#284c3b}.landing-kicker{color:#586a43}.landing-hero h1{color:#284c3b;text-shadow:0 3px 0 #fff7df}.landing-hero h2{color:#35553c}.landing-hero .landing-intro{color:#52644e}.landing-rule{background:#b19759}.landing-login{color:#3b6047;border-color:#7d926a}.landing-login:hover{color:#244c39}.landing-details{color:#486240;border-color:#81976b55}.landing-hero .landing-note{color:#677556}.landing #character-panel>[data-open-credits]{color:#5a6c4d}.landing .brand,.landing .brand span{color:#284c3b}@media(max-width:760px){.landing #game:after{background:linear-gradient(90deg,#f2ecd5f5,#e6ecd3d4),linear-gradient(0deg,#e8ecd6,transparent)}}@media(max-width:760px){:root{--gutter:8px}.hud-top{top:max(8px,env(safe-area-inset-top));left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right));gap:5px}body.has-character .hud-top .brand{display:none}.top-actions{width:100%;display:flex;justify-content:flex-end;gap:5px}.top-actions .pill{min-height:44px;padding:0 6px;font-size:12px;border-width:6px;border-image-width:6px}.top-actions .pill select{min-height:30px;font-size:12px;padding-left:2px}.world-plate{min-height:28px;padding:4px 7px;gap:6px;font-size:11px;white-space:nowrap}.dock{bottom:max(8px,env(safe-area-inset-bottom));left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right));gap:4px}.dock button{display:flex;flex-direction:column;align-items:center;justify-content:center;height:56px;padding:2px 0;border-width:6px;border-image-width:6px;font-size:10px;line-height:1.1;gap:2px;overflow:hidden}.dock button img{display:block;flex:none;width:24px;height:24px;margin:0;object-fit:contain}.dock button span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#character-panel[data-mode=character]{bottom:calc(72px + env(safe-area-inset-bottom));padding:1px 4px 3px;border-width:9px;border-image-width:9px;pointer-events:none}#character-panel[data-mode=character]:before{content:attr(data-name);display:block;font:600 13px var(--display);margin:0 4px 2px}#character-panel[data-mode=character] .identity,#character-panel[data-mode=character] .stats,#character-panel[data-mode=character] .rod{display:none}#character-panel[data-mode=character] .doing{border:0;border-image:none;padding:0 4px;gap:0 5px;grid-template-columns:14px minmax(0,1fr)}#character-panel[data-mode=character] .doing img{width:14px;height:14px}#character-panel[data-mode=character] .doing h3{font-size:13px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#character-panel[data-mode=character] .doing .eyebrow,#character-panel[data-mode=character] .doing small,#character-panel[data-mode=character] .doing .progress{display:none}.drawer{bottom:calc(74px + env(safe-area-inset-bottom));max-height:min(56dvh,calc(100dvh - 170px));border-width:10px;border-image-width:10px}.map-tools{top:45%;right:max(8px,env(safe-area-inset-right));gap:4px}.map-tools button{width:44px;height:44px;min-width:44px;min-height:44px;border-width:6px;border-image-width:6px;padding:0}.map-tools img,.key img{display:block;width:24px;height:24px;margin:0;object-fit:contain}#music-player{top:96px;bottom:auto;right:max(8px,env(safe-area-inset-right));padding:2px 5px;gap:2px}#music-player button{width:30px;height:34px;display:grid;place-items:center}body:not(.has-character) #music-player{top:auto;bottom:max(12px,env(safe-area-inset-bottom))}#notice{top:140px}}@media(max-width:760px)and (max-height:500px){.hud-top{max-width:calc(100% - 65px)}.world-plate{position:absolute;left:0;top:0;width:auto;max-width:45%;overflow:hidden}.top-actions{width:auto;margin-left:auto}body.has-character #character-panel[data-mode=character]{display:none}.drawer{max-height:calc(100dvh - 125px)}#music-player{top:62px}.map-tools{top:112px}}.offline-toggle{display:flex;align-items:center;gap:10px;padding:10px 0;font-size:14px}.offline-toggle input{flex:none;width:24px;height:24px;min-height:24px;accent-color:#649d48}#offline-preference-status:empty{display:none}
