:root{--canvas:#f3f4f1;--raised:#fbfbf9;--sunken:#e8eae5;--line:#dcdfd9;--line-strong:#c9cdc6;--control:#7f847d;--ink:#2b2f33;--ink-2:#53585d;--ink-3:#686d72;--on-ink:#fbfbf9;--art:#1f2326;--signal:#2d6589;--signal-strong:#214d69;--signal-tint:#e2ebf1;--danger:#a33b2a;--danger-strong:#80301f;--danger-tint:#f4e3de;--wood:#33512f;--wood-tint:#e2eadf;--animal:#7a5236;--animal-tint:#f0e6dd;--stone:#677077;--stone-tint:#e5e8eb;--plant:#7c8031;--plant-tint:#edeeda;--r5:#7e6118;--r5-tint:#f1e9d4;--r4:#62508a;--r4-tint:#eae6f1;--font:"URW DIN", "Bahnschrift", "Segoe UI", Roboto, system-ui, sans-serif;--sans:var(--font);--w-read:100%;--w-scan:87.5%;--w-measure:75%;--icon-s:16px;--icon-m:20px;--icon-l:24px;--icon-xl:40px;--gap-icon:4px;--gap-icon-l:8px;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:20px;--s6:24px;--s8:32px;--s10:40px;--s12:48px;--s16:64px;--r-tile:6px;--r-chip:10px;--r-control:14px;--r-card:20px;--r-sheet:28px;--r-full:999px;--e-sheet:0 1px 2px #1f23260f, 0 18px 44px -10px #1f232638;--scrim:#1f23264d}body{background:var(--canvas);color:var(--ink);font-family:var(--font);font-synthesis:none;font-kerning:normal;-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3,h4,p,figure,ul,ol,dl,dd{margin:0;padding:0}ul,ol{list-style:none}button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;margin:0}input,select,textarea{font:inherit;color:inherit}a{color:inherit;text-decoration:none}img{display:block}input::placeholder{color:var(--ink-3);opacity:1}.t-title-hero{letter-spacing:-.02em;font-size:72px;font-weight:300;line-height:72px}.t-title-display{letter-spacing:-.015em;font-size:48px;font-weight:300;line-height:52px}.t-title-1{letter-spacing:-.01em;font-size:36px;font-weight:400;line-height:40px}.t-title-2{letter-spacing:-.005em;font-size:24px;font-weight:500;line-height:28px}.t-headline{font-size:18px;font-weight:600;line-height:24px}.t-body{font-size:16px;font-weight:400;line-height:24px}.t-body-strong{font-size:16px;font-weight:600;line-height:24px}.t-callout{font-size:14px;font-weight:400;line-height:20px}.t-callout-strong{font-size:14px;font-weight:600;line-height:20px}.t-name-hero{letter-spacing:-.02em;font-size:72px;font-style:italic;font-weight:300;line-height:72px}.t-name-display{letter-spacing:-.015em;font-size:48px;font-style:italic;font-weight:300;line-height:52px}.t-name-1{letter-spacing:-.01em;font-size:36px;font-style:italic;font-weight:400;line-height:40px}.t-name-2{letter-spacing:-.005em;font-size:24px;font-style:italic;font-weight:500;line-height:28px}.t-name-3{font-size:16px;font-style:italic;font-weight:600;line-height:24px}.nm{font-style:italic}.t-label{letter-spacing:.005em;font-size:14px;font-weight:500;font-stretch:87.5%;line-height:20px}.t-label-strong{letter-spacing:.005em;font-size:14px;font-weight:600;font-stretch:87.5%;line-height:20px}.t-caption{letter-spacing:.015em;font-size:12px;font-weight:500;font-stretch:87.5%;line-height:16px}.t-caption-strong{letter-spacing:.015em;font-size:12px;font-weight:600;font-stretch:87.5%;line-height:16px}.t-status{letter-spacing:.015em;color:var(--danger);font-size:12px;font-weight:700;font-stretch:87.5%;line-height:16px}.t-num-hero{letter-spacing:-.01em;font-size:72px;font-weight:300;font-stretch:75%;line-height:72px}.t-num-display{letter-spacing:-.005em;font-size:48px;font-weight:300;font-stretch:75%;line-height:52px}.t-num-title{font-size:36px;font-weight:400;font-stretch:75%;line-height:40px}.t-readout{font-size:18px;font-weight:600;font-stretch:75%;line-height:24px}.t-readout-s{font-size:16px;font-weight:600;font-stretch:75%;line-height:24px}.num,.t-num-hero,.t-num-display,.t-num-title,.t-readout,.t-readout-s,.t-label,.t-caption,.t-caption-strong,.t-status{font-variant-numeric:tabular-nums lining-nums}.pair{align-items:center;gap:var(--gap-icon);display:inline-flex}.pair-l{align-items:center;gap:var(--gap-icon-l);display:inline-flex}@font-face{font-family:URW DIN;src:url(/fonts/URWDIN-Light.woff)format("woff");font-weight:300;font-style:normal;font-stretch:100%;font-display:swap}@font-face{font-family:URW DIN;src:url(/fonts/URWDIN-Regular.woff)format("woff");font-weight:400;font-style:normal;font-stretch:100%;font-display:swap}@font-face{font-family:URW DIN;src:url(/fonts/URWDIN-Medium.woff)format("woff");font-weight:500;font-style:normal;font-stretch:100%;font-display:swap}@font-face{font-family:URW DIN;src:url(/fonts/URWDIN-Demi.woff)format("woff");font-weight:600;font-style:normal;font-stretch:100%;font-display:swap}@font-face{font-family:URW DIN;src:url(/fonts/URWDIN-LightItalic.woff)format("woff");font-weight:300;font-style:italic;font-stretch:100%;font-display:swap}@font-face{font-family:URW DIN;src:url(/fonts/URWDIN-Italic.woff)format("woff");font-weight:400;font-style:italic;font-stretch:100%;font-display:swap}@font-face{font-family:URW DIN;src:url(/fonts/URWDIN-MediumItalic.woff)format("woff");font-weight:500;font-style:italic;font-stretch:100%;font-display:swap}@font-face{font-family:URW DIN;src:url(/fonts/URWDIN-DemiItalic.woff)format("woff");font-weight:600;font-style:italic;font-stretch:100%;font-display:swap}@font-face{font-family:URW DIN;src:url(/fonts/URWDINSemiCond-Medium.woff)format("woff");font-weight:500;font-style:normal;font-stretch:87.5%;font-display:swap}@font-face{font-family:URW DIN;src:url(/fonts/URWDINSemiCond-Demi.woff)format("woff");font-weight:600;font-style:normal;font-stretch:87.5%;font-display:swap}@font-face{font-family:URW DIN;src:url(/fonts/URWDINSemiCond-Bold.woff)format("woff");font-weight:700;font-style:normal;font-stretch:87.5%;font-display:swap}@font-face{font-family:URW DIN;src:url(/fonts/URWDINCond-Light.woff)format("woff");font-weight:300;font-style:normal;font-stretch:75%;font-display:swap}@font-face{font-family:URW DIN;src:url(/fonts/URWDINCond-Regular.woff)format("woff");font-weight:400;font-style:normal;font-stretch:75%;font-display:swap}@font-face{font-family:URW DIN;src:url(/fonts/URWDINCond-Demi.woff)format("woff");font-weight:600;font-style:normal;font-stretch:75%;font-display:swap}html{-webkit-text-size-adjust:100%}body{min-height:100dvh}#root{justify-content:center;display:flex}.screen{box-sizing:border-box;width:100%;max-width:440px;min-height:100dvh;padding:max(16px, env(safe-area-inset-top)) var(--s5) max(24px, env(safe-area-inset-bottom));flex-direction:column;display:flex;position:relative}.fill{flex:1}.ink-2{color:var(--ink-2)}.ink-3{color:var(--ink-3)}.button{box-sizing:border-box;width:100%;height:56px;padding:0 var(--s5);border-radius:var(--r-control);justify-content:center;align-items:center;gap:var(--s2);border:0;display:flex}.button-primary{background:var(--ink);color:var(--on-ink)}.button-secondary{color:var(--ink);box-shadow:inset 0 0 0 1px var(--control);background:0 0}.button:disabled{opacity:.6;cursor:default}.field{box-sizing:border-box;width:100%;height:56px;padding:0 var(--s4);border-radius:var(--r-control);background:var(--raised);box-shadow:inset 0 0 0 1px var(--control);color:var(--ink);border:0;outline:none}.field[aria-invalid=true]{box-shadow:inset 0 0 0 2px var(--danger)}:where(a,button,input):focus-visible{outline:2px solid var(--signal);outline-offset:2px}.field:focus-visible{box-shadow:inset 0 0 0 2px var(--signal);outline:none}.notice-error{align-items:flex-start;gap:var(--gap-icon);color:var(--danger);display:flex}.notice-error svg{margin-top:2px}.signin-art{padding-top:60px}.signin-art img{width:100%;height:auto}.signin-intro{gap:var(--s3);flex-direction:column;padding-top:40px;display:flex}.signin-form{padding-top:var(--s6);flex-direction:column;display:flex}.signin-form .field,.signin-form .notice-error{margin-top:var(--s2)}.signin-form .button{margin-top:var(--s4)}.signin-form .signin-note{margin-top:var(--s3);text-align:center}.signin-sent{gap:var(--s2);padding-bottom:var(--s6);flex-direction:column;display:flex}.home-top{gap:var(--s1);flex-direction:column;display:flex}.resource-panel{gap:var(--s4);padding:var(--s4);background:var(--raised);border-radius:var(--r-card);box-shadow:inset 0 0 0 1px var(--line);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.resource-cell{flex-direction:column;gap:10px;display:flex}.meter{background:var(--sunken);border-radius:2px;height:4px;display:block;overflow:hidden}.meter>span{border-radius:2px;height:100%;display:block}.meter-short{width:56px}.status-row{align-items:center;gap:var(--s4);height:48px;padding-left:var(--s1);display:flex}.status-energy{align-items:center;gap:var(--s2);display:flex}.centered{justify-content:center;gap:var(--s3);flex-direction:column;display:flex}.page{box-sizing:border-box;background:var(--canvas);flex-direction:column;width:100%;max-width:440px;min-height:100dvh;display:flex;position:relative}.top-safe{padding-top:max(24px, calc(env(safe-area-inset-top) + 16px))}.px{padding-left:var(--s5);padding-right:var(--s5)}.bottom-bar{padding:var(--s3) var(--s5) max(20px, env(safe-area-inset-bottom))}.bottom-bar-raised{background:var(--raised);box-shadow:inset 0 1px 0 var(--line)}.stack{flex-direction:column;display:flex}.row{align-items:center;display:flex}.gap-1{gap:var(--s1)}.gap-2{gap:var(--s2)}.gap-3{gap:var(--s3)}.gap-4{gap:var(--s4)}.danger{color:var(--danger)}.signal{color:var(--signal)}.truncate{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.tabbar{z-index:5;box-sizing:border-box;padding:4px 8px max(12px, env(safe-area-inset-bottom));background:var(--raised);box-shadow:inset 0 1px 0 var(--line);grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:sticky;bottom:0}.tab{min-height:50px;color:var(--ink-3);flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex;position:relative}.tab-on{color:var(--ink)}.tab-badge,.count-badge{box-sizing:border-box;border-radius:var(--r-full);background:var(--signal);min-width:18px;height:18px;color:var(--on-ink);justify-content:center;align-items:center;padding:0 5px;display:flex}.tab-badge{box-shadow:0 0 0 2px var(--raised);position:absolute;top:2px;left:calc(50% + 6px)}.count-badge{flex:none;min-width:20px;height:20px;padding:0 6px}.card{background:var(--raised);border-radius:var(--r-card);box-shadow:inset 0 0 0 1px var(--line)}.icon-button{border-radius:var(--r-control);background:var(--raised);width:48px;height:48px;box-shadow:inset 0 0 0 1px var(--line);color:var(--ink);border:0;flex:none;justify-content:center;align-items:center;display:flex}.icon-button-bare{box-shadow:none;background:0 0}.button-outline{color:var(--ink);box-shadow:inset 0 0 0 1px var(--control);background:0 0}.button-48{height:48px}.button-square{flex:none;width:56px;padding:0}.chat{padding:var(--s4) var(--s5);justify-content:flex-end;gap:var(--s2);flex-direction:column;flex:1;display:flex}.chat-time{color:var(--ink-3);text-align:center;padding:var(--s2) 0}.bubble{max-width:78%;padding:10px 14px}.bubble-in{background:var(--raised);box-shadow:inset 0 0 0 1px var(--line);border-radius:6px 20px 20px 6px;align-self:flex-start}.bubble-in.first{border-radius:20px 20px 20px 6px}.bubble-in.last{border-radius:6px 20px 20px}.bubble-in.first.last{border-radius:20px}.bubble-out{background:var(--ink);max-width:75%;color:var(--on-ink);border-radius:20px 20px 6px;align-self:flex-end}.chat-header{align-items:center;gap:var(--s2);padding-right:var(--s5);padding-left:var(--s2);padding-bottom:var(--s3);background:var(--raised);box-shadow:inset 0 -1px 0 var(--line);display:flex}.avatar{background:var(--sunken);color:var(--ink-2);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.avatar img{width:auto;position:absolute;top:3%;left:50%;transform:translate(-51%)}.target-card{padding:var(--s3);text-align:left;box-sizing:border-box;border:0;align-items:center;gap:14px;width:100%;display:flex}.target-art{border-radius:var(--r-control);flex:none;justify-content:center;align-items:center;width:56px;height:56px;display:flex;overflow:hidden}.target-art img{width:auto;height:46px}.scrim{z-index:20;background:var(--scrim);border:0;padding:0;position:fixed;inset:0}.drawer{z-index:21;box-sizing:border-box;width:min(324px,84vw);padding:max(24px, calc(env(safe-area-inset-top) + 16px)) var(--s6) max(20px, env(safe-area-inset-bottom));background:var(--raised);border-radius:var(--r-sheet) 0 0 var(--r-sheet);box-shadow:var(--e-sheet);flex-direction:column;animation:.22s cubic-bezier(.2,.8,.2,1) drawer-in;display:flex;position:fixed;top:0;bottom:0;right:max(0px,50vw - 220px);overflow-y:auto}@keyframes drawer-in{0%{opacity:0;transform:translate(24px)}}@media (prefers-reduced-motion:reduce){.drawer{animation:none}}.facts{box-shadow:inset 0 1px 0 var(--line);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.facts>li{min-height:52px;box-shadow:inset 0 -1px 0 var(--line);align-items:center;display:flex}.map-grid{touch-action:none;-webkit-user-select:none;user-select:none;flex-direction:column;gap:3px;display:flex}.map-row{grid-template-columns:22px repeat(9,minmax(0,1fr));align-items:center;gap:3px;display:grid}.map-tile{aspect-ratio:1;border-radius:var(--r-tile);background:var(--raised);color:var(--ink-3);border:0;justify-content:center;align-items:center;padding:0;display:flex}.map-tile.off{box-shadow:inset 0 0 0 1px var(--line);background:0 0}.map-tile.me{background:var(--ink)}.map-tile.me>.dot{background:var(--on-ink);border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 4px #fbfbf938}.map-tile.goal{box-shadow:inset 0 0 0 2px var(--ink)}.map-tile.selected{box-shadow:0 0 0 2px var(--canvas), 0 0 0 4px var(--ink)}.map-axis{color:var(--ink-3);text-align:center}.map-legend{justify-content:space-between;display:flex}.pick-grid{gap:var(--s3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.pick-card{text-align:left;border-radius:var(--r-card);background:var(--raised);box-shadow:inset 0 0 0 1px var(--line);border:0;flex-direction:column;padding:12px 14px 14px;display:flex;position:relative}.pick-card[aria-checked=true]{box-shadow:inset 0 0 0 2px var(--ink)}.pick-card .pick-art{justify-content:center;align-items:flex-end;height:140px;display:flex}.pick-card .pick-art img{width:auto;height:132px}.pick-check{background:var(--ink);width:24px;height:24px;color:var(--on-ink);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:12px;right:12px}.home-stage{flex:1;min-height:260px;position:relative;overflow:hidden}.home-stage img{width:auto;height:min(340px,100%);position:absolute;bottom:0;right:-30px}.home-stage .home-name{left:var(--s5);bottom:var(--s6);flex-direction:column;gap:6px;display:flex;position:absolute}.list-row{min-height:80px;box-shadow:inset 0 -1px 0 var(--line);align-items:center;gap:14px;display:flex}.toast{z-index:30;left:50%;bottom:calc(100px + env(safe-area-inset-bottom));border-radius:var(--r-control);background:var(--ink);max-width:min(400px,90vw);color:var(--on-ink);box-shadow:var(--e-sheet);padding:10px 16px;position:fixed;transform:translate(-50%)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.rarity{align-items:center;gap:var(--gap-icon);box-sizing:border-box;border-radius:var(--r-chip);width:max-content;height:24px;padding:0 8px 0 6px;display:inline-flex}.rarity-4{background:var(--r4-tint);color:var(--r4)}.rarity-3{background:var(--sunken);color:var(--ink-2)}.banner-switch{border-radius:var(--r-control);background:var(--raised);height:48px;box-shadow:inset 0 0 0 1px var(--line);color:var(--ink);border:0;align-items:center;gap:8px;margin-left:-4px;padding:0 14px 0 12px;display:inline-flex}.wish-stage{flex:1;min-height:360px;position:relative;overflow:hidden}.wish-stage img{width:auto;height:min(556px,100%);position:absolute;bottom:0;right:-28px}.wish-stage:after{content:"";background:linear-gradient(to top, var(--canvas) 15%, transparent);pointer-events:none;height:40%;position:absolute;bottom:0;left:0;right:0}.wish-name{z-index:1;left:var(--s5);right:var(--s5);bottom:var(--s5);flex-direction:column;align-items:flex-start;gap:8px;display:flex;position:absolute}.button.wish-button{height:64px;padding:0 var(--s3);flex-direction:column;gap:2px}.drawer-left{border-radius:0 var(--r-sheet) var(--r-sheet) 0;animation-name:drawer-in-left;left:max(0px,50vw - 220px);right:auto}@keyframes drawer-in-left{0%{opacity:0;transform:translate(-24px)}}.menu-row{min-height:56px;color:var(--ink);box-shadow:inset 0 -1px 0 var(--line);align-items:center;gap:14px;display:flex}.summary-row{min-height:56px;color:var(--ink);box-shadow:inset 0 -1px 0 var(--line);align-items:center;gap:12px;display:flex}.reveal-tap{z-index:2;cursor:pointer;background:0 0;border:0;padding:0;position:fixed;inset:0}.reveal-tap:focus-visible{outline-offset:-6px}.reveal-skip{z-index:3;position:relative}.reveal-stage{flex:1;justify-content:center;align-items:center;min-height:300px;animation:.36s cubic-bezier(.2,.8,.2,1) reveal-in;display:flex;position:relative;overflow:hidden}.reveal-halo{aspect-ratio:1;border-radius:50%;width:min(300px,76vw);position:absolute}.reveal-halo-4{background:var(--r4-tint);box-shadow:0 0 0 1.5px var(--r4);animation:.56s cubic-bezier(.2,.8,.2,1) halo-in}.reveal-halo-3{background:var(--sunken);width:min(200px,56vw)}.reveal-stage img{width:auto;height:min(440px,52dvh);position:relative}.reveal-item{color:var(--ink-2);position:relative}.reveal-name{animation:.36s cubic-bezier(.2,.8,.2,1) 80ms backwards reveal-in}@keyframes reveal-in{0%{opacity:0;transform:translateY(8px)scale(.98)}}@keyframes halo-in{0%{opacity:0;transform:scale(.6)}}@keyframes fade-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.reveal-stage,.reveal-name,.reveal-halo-4{animation:.2s ease-out fade-in}.drawer-left{animation:none}}.wish-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:20px;display:grid}.wish-card{border-radius:var(--r-control);background:var(--raised);height:128px;box-shadow:inset 0 0 0 1px var(--line);color:var(--ink-2);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.wish-card-4{background:var(--r4-tint);box-shadow:inset 0 0 0 1.5px var(--r4)}.wish-card-4:before{content:"";z-index:1;background:var(--r4);height:4px;position:absolute;top:0;left:0;right:0}.wish-card img{width:auto;height:230%;position:absolute;top:6px;left:50%;transform:translate(-51%)}
