:root{--cream:#fff;--cream-2:#f4f4f5;--ink:#0e0f11;--ink-2:#5b5d63;--coral:#f25c3b;--coral-dark:#c8432a;--coral-ink:#b83c22;--coral-btn:#16181d;--coral-btn-hover:#000;--btn-fg:#fff;--field-bg:#fff;--field-border:var(--line);--grass-ink:#3f7a2b;--gold-ink:#8a6410;--night:#0b0d10;--night-2:#15181d;--night-3:#22262d;--grass:#6fae4b;--grass-dark:#4c8a35;--gold:#f2c14e;--sky:#d7ecf7;--line:#e6e7ea;--bg:var(--cream);--fg:var(--ink);--muted:var(--ink-2);--panel:#fff;--panel-border:var(--ink);--font-pixel:var(--font-geist-pixel), ui-monospace, monospace;--font-sans:var(--font-geist), ui-sans-serif, system-ui, sans-serif;--font-mono:var(--font-geist-mono), ui-monospace, monospace;--px:4px;--town-shade:brightness(1);--town-shade-soft:brightness(1);--town-night:0}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:var(--night);--fg:#f5f5f6;--muted:#a1a3a9;--panel:var(--night-2);--panel-border:#f5f5f6;--line:#2c313a;--cream-2:#1a1d23;--coral-ink:#ff8a6b;--grass-ink:#8fd16a;--gold-ink:#ffd84d;--grass-pill:#a6e07f;--coral-pill:#ff9f86;--coral-btn:#f5f5f6;--coral-btn-hover:#fff;--btn-fg:#0e0f11;--field-bg:#0b0e12;--field-border:#3a414c;--town-shade:url(#bf-night);--town-shade-soft:url(#bf-night-soft);--town-night:1}}:root[data-theme=dark],[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:var(--night);--fg:#f5f5f6;--muted:#a1a3a9;--panel:var(--night-2);--panel-border:#f5f5f6;--line:#2c313a;--cream-2:#1a1d23;--coral-ink:#ff8a6b;--grass-ink:#8fd16a;--gold-ink:#ffd84d;--grass-pill:#a6e07f;--coral-pill:#ff9f86;--coral-btn:#f5f5f6;--coral-btn-hover:#fff;--btn-fg:#0e0f11;--field-bg:#0b0e12;--field-border:#3a414c;--town-shade:url(#bf-night);--town-shade-soft:url(#bf-night-soft);--town-night:1}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--fg);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;font-size:17px;line-height:1.55}img,svg{image-rendering:pixelated}a{color:inherit}h1,h2,h3{letter-spacing:-.03em;line-height:1.05}.pixel{font-family:var(--font-pixel);letter-spacing:0}.mono{font-family:var(--font-mono)}.wrap{width:min(1120px,100% - 32px);margin-inline:auto}.muted{color:var(--muted)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:18px;box-shadow:0 1px 2px #0e0f110a,0 12px 32px -16px #0e0f1124}.btn{font-family:var(--font-sans);letter-spacing:-.01em;background:var(--coral-btn);color:var(--btn-fg);cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:12px 20px;font-size:15px;font-weight:600;text-decoration:none;transition:background-color .15s,transform .15s,box-shadow .15s;display:inline-flex;box-shadow:0 1px 2px #0e0f1114}.btn:hover{background:var(--coral-btn-hover);color:var(--btn-fg);transform:translateY(-1px);box-shadow:0 6px 18px -8px #11141873}.btn:active{transform:translateY(0)}.btn:disabled{opacity:.6;cursor:progress}.btn.ghost{background:var(--panel);color:var(--fg);border-color:var(--line);box-shadow:none}.btn.ghost:hover{border-color:var(--muted);box-shadow:none}.btn:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--grass-ink);outline-offset:3px}.dialogue{color:#16181d;font-family:var(--font-sans);background:#fff;border:1px solid #1114181a;border-radius:14px;padding:14px 18px;font-size:15px;line-height:1.5;position:relative;box-shadow:0 1px 2px #1114180f,0 10px 28px -14px #1114184d}.hl{-webkit-box-decoration-break:clone;box-decoration-break:clone;background:linear-gradient(#0000 58%,#6fae4b61 58% 92%,#0000 92%);padding:0 .08em}.theme-toggle{border:1px solid var(--line);background:var(--panel);width:38px;height:38px;color:var(--fg);cursor:pointer;border-radius:50%;place-items:center;display:inline-grid}.theme-toggle:hover{border-color:var(--muted)}.theme-toggle:focus-visible,.theme-picker button:focus-visible{outline:2px solid var(--coral);outline-offset:2px}.theme-picker{border:1px solid var(--line);background:var(--cream-2);border-radius:999px;gap:4px;padding:4px;display:inline-flex}.theme-picker button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:6px 14px;font-size:14px;font-weight:600;display:inline-flex}.theme-picker button:hover{color:var(--fg)}.theme-picker button[aria-checked=true]{background:var(--panel);color:var(--fg);border-color:var(--line);box-shadow:0 1px 2px #0e0f1114}.wordmark{align-items:flex-end;gap:10px;line-height:1;display:inline-flex}.wordmark-sprite{background:linear-gradient(var(--grass) 0 0) bottom / 100% 4px no-repeat, linear-gradient(var(--grass-dark) 0 0) bottom / 100% 6px no-repeat;padding:0 3px 6px;line-height:0;display:inline-block;position:relative}.wordmark-type{color:var(--fg);margin-bottom:6px;display:block}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.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}.folk{line-height:0;display:inline-block;position:relative}.folk-f0{display:block}.folk-f1,.folk-f2{opacity:0;position:absolute;inset:0}.folk-walk .folk-f0{animation:.6s step-end infinite walk-a}.folk-walk .folk-f1{animation:.6s step-end infinite walk-b}.folk-walk .folk-f2{animation:.6s step-end infinite walk-pass}@keyframes walk-a{0%{opacity:1}25%{opacity:0}}@keyframes walk-b{0%,25%{opacity:0}50%{opacity:1}75%{opacity:0}}@keyframes walk-pass{0%{opacity:0}25%{opacity:1;transform:translateY(calc(-1 * var(--folk-px,1px)))}50%{opacity:0}75%{opacity:1;transform:translateY(calc(-1 * var(--folk-px,1px)))}}.folk-idle{cursor:default}@keyframes frame-on{50%{opacity:1}}@keyframes frame-off{50%{opacity:0}}.folk-idle:hover{animation:.5s step-end infinite folk-bob}.folk-idle:hover .folk-f1{animation:.5s step-end infinite frame-on}.folk-idle:hover .folk-f0{animation:.5s step-end infinite frame-off}@keyframes folk-bob{50%{transform:translateY(-2px)}}.folk-f0,.folk-f1{position:relative}.folk-f1{position:absolute}.folk-wink{opacity:0;animation:3.2s step-end infinite folk-wink;position:absolute;inset:0}.folk-idle:hover .folk-wink{animation-duration:1.6s}@keyframes folk-wink{70%{opacity:1}90%{opacity:0}}@media (prefers-reduced-motion:reduce){.folk-idle:hover,.folk-idle:hover .folk-f0,.folk-idle:hover .folk-f1,.folk-walk .folk-f1,.folk-walk .folk-f2{animation:none}.folk-walk .folk-f0,.folk-wink{opacity:1;animation:none}}.picon{vertical-align:-.12em;line-height:0;display:inline-block}.picon svg{image-rendering:pixelated;display:block}.picon-spent{opacity:.25;filter:grayscale()}.goal-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:20px;padding:20px 0 64px;display:grid}.goal-side{align-content:start;gap:20px;min-width:0;display:grid}@media (min-width:980px){.goal-layout{grid-template-columns:minmax(0,1fr) 360px}.gc{position:sticky;top:16px}}.gc{--gc-me:#4c8a35;--gc-me-2:#5c9c42;--gc-me-fg:#fff;--gc-them:#eef0f3;--gc-human:#e7e9fb;--gc-leader:#fbf0d4;--gc-fg:var(--ink);--gc-fg-2:#3d4047;--gc-soft:#0e0f110f;--gc-quote:#0e0f110f;--gc-quote-bar:#0e0f1140;--gc-face:var(--cream-2);--gc-gold:#8a6400;--gc-gold-bg:#f2c14e2e;--gc-gold-line:#c491148c;--gc-ok:var(--grass-ink);--gc-no:var(--coral-ink);flex-direction:column;min-width:0;padding:0;display:flex;position:relative;overflow:hidden}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .gc{--gc-me:#2f6b35;--gc-me-2:#3a7d40;--gc-them:#1f242c;--gc-human:#272b45;--gc-leader:#3a2f17;--gc-fg:#f5f5f6;--gc-fg-2:#d4d6db;--gc-soft:#ffffff12;--gc-quote:#0000002e;--gc-quote-bar:#ffffff59;--gc-face:var(--night-3);--gc-gold:var(--gold);--gc-gold-bg:#f2c14e24;--gc-gold-line:#f2c14e73;--gc-ok:var(--grass-pill);--gc-no:var(--coral-pill)}}[data-theme=dark] .gc{--gc-me:#2f6b35;--gc-me-2:#3a7d40;--gc-them:#1f242c;--gc-human:#272b45;--gc-leader:#3a2f17;--gc-fg:#f5f5f6;--gc-fg-2:#d4d6db;--gc-soft:#ffffff12;--gc-quote:#0000002e;--gc-quote-bar:#ffffff59;--gc-face:var(--night-3);--gc-gold:var(--gold);--gc-gold-bg:#f2c14e24;--gc-gold-line:#f2c14e73;--gc-ok:var(--grass-pill);--gc-no:var(--coral-pill)}.gc-head{border-bottom:1px solid var(--line);background:var(--gc-soft);align-items:center;gap:12px;padding:12px 16px;display:flex}.gc-faces{padding-left:8px;display:flex}.gc-face{background:var(--gc-face);border:2px solid var(--panel);border-radius:50%;place-items:end center;width:34px;height:34px;margin-left:-8px;display:grid;position:relative;overflow:hidden}.gc-face svg{margin-bottom:-10px}.gc-dot{border:2px solid var(--panel);background:#6b7280;border-radius:50%;width:9px;height:9px;position:absolute;bottom:0;right:0}.gc-dot.on{background:var(--grass)}.gc-dot.bad{background:var(--coral)}.gc-title{letter-spacing:-.01em;margin:0;font-size:16px;font-weight:650}.gc-sub{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.gc-scroll{overscroll-behavior:contain;scroll-behavior:auto;flex-direction:column;gap:2px;height:clamp(420px,66vh,760px);padding:14px 14px 8px;display:flex;overflow-y:auto}.gc-empty{color:var(--muted);text-align:center;justify-items:center;gap:10px;margin:auto;display:grid}.gc-empty p{max-width:260px;margin:0}.gc-divider{color:var(--muted);letter-spacing:.01em;align-self:center;margin:14px 0 8px;font-size:11.5px;font-weight:600}.gc-row{align-items:flex-end;gap:8px;max-width:100%;display:flex}.gc-row.first{margin-top:8px}.gc-row.me{justify-content:flex-end}.gc-avatar{background:var(--gc-face);border-radius:50%;flex:0 0 32px;place-items:end center;width:32px;height:32px;display:grid;overflow:hidden}.gc-avatar:empty{background:0 0}.gc-avatar svg{margin-bottom:-10px}.gc-stack{flex-direction:column;align-items:flex-start;gap:2px;min-width:0;max-width:min(78%,560px);display:flex}.gc-row.me .gc-stack{align-items:flex-end}.gc-name{color:var(--muted);align-items:center;gap:6px;margin:0 0 2px 12px;font-size:12px;font-weight:600;display:flex}.gc-badge{background:var(--gold);color:#16181d;border-radius:999px;padding:1px 6px;font-size:10.5px;font-weight:600}.gc-badge.quiet{background:var(--gc-soft);color:var(--muted);font-weight:500}.gc-meta{color:var(--muted);margin:2px 12px 0;font-size:11px}.gc-bubble{background:var(--gc-them);color:var(--gc-fg);overflow-wrap:anywhere;border-radius:20px;max-width:100%;padding:8px 13px;font-size:15px;line-height:1.42;position:relative}.gc-bubble.human{background:var(--gc-human)}.gc-bubble.leader{background:var(--gc-leader)}.gc-bubble.me{background:linear-gradient(180deg, var(--gc-me-2), var(--gc-me));color:var(--gc-me-fg)}.gc-row:not(.me):not(.first) .gc-bubble{border-top-left-radius:6px}.gc-row:not(.me):not(.last) .gc-bubble{border-bottom-left-radius:6px}.gc-row.me:not(.first) .gc-bubble{border-top-right-radius:6px}.gc-row.me:not(.last) .gc-bubble{border-bottom-right-radius:6px}.gc-row:not(.me).last .gc-bubble{border-bottom-left-radius:6px}.gc-row.me.last .gc-bubble{border-bottom-right-radius:6px}.gc-bubble.sending{opacity:.6}.gc-bubble.failed{opacity:.6;outline:1px solid var(--coral)}.gc-bubble.me .gc-quote{--gc-quote:#0000002e;--gc-quote-bar:#ffffff80}.gc-bubble.help,.gc-bubble.blocked{box-shadow:inset 0 0 0 1px #f25c3bb3}.gc-text{white-space:pre-wrap}.gc-text a{color:inherit;text-underline-offset:2px;text-decoration:underline}.gc-tag{letter-spacing:.06em;text-transform:uppercase;opacity:.8;margin-bottom:2px;font-size:10.5px;font-weight:700}.gc-bubble.help .gc-tag,.gc-bubble.blocked .gc-tag{color:var(--gc-no);opacity:1}.gc-quote{text-align:left;font:inherit;color:inherit;border-left:3px solid var(--gc-quote-bar);background:var(--gc-quote);border-radius:8px;gap:1px;width:100%;margin:2px 0 6px;padding:5px 9px;font-size:13px;display:grid}.gc-quote span{opacity:.8;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.gc-quote.as-button{cursor:pointer;border-top:0;border-bottom:0;border-right:0}.gc-system{text-align:center;align-self:center;max-width:92%;margin:6px 0}.gc-system-pill{color:var(--muted);background:var(--gc-soft);border:1px solid var(--line);overflow-wrap:anywhere;border-radius:999px;padding:3px 10px;font-size:12px;display:inline-block}.gc-system-pill strong{color:var(--gc-fg-2);font-weight:600}.gc-bubble.typing{gap:4px;padding:12px 14px;display:flex}.gc-bubble.typing i{background:#9aa0a6;border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite gc-bounce}.gc-bubble.typing i:nth-child(2){animation-delay:.15s}.gc-bubble.typing i:nth-child(3){animation-delay:.3s}@keyframes gc-bounce{0%,60%,to{opacity:.5;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}@media (prefers-reduced-motion:reduce){.gc-bubble.typing i{animation:none}}.gc-ask{border:1px solid var(--gc-gold-line);width:min(420px,100%);padding:0 0 10px;overflow:hidden}.gc-ask.ok{border-color:#6fae4b8c}.gc-ask.no{border-color:#f25c3b8c}.gc-ask.off,.gc-ask.wait{border-color:var(--line)}.gc-ask>:not(.gc-ask-head){margin-left:13px;margin-right:13px}.gc-ask-head{letter-spacing:.02em;background:var(--gc-gold-bg);color:var(--gc-gold);align-items:center;gap:6px;margin-bottom:8px;padding:7px 13px;font-size:12px;font-weight:700;display:flex}.gc-ask.ok .gc-ask-head{color:var(--gc-ok);background:#6fae4b29}.gc-ask.no .gc-ask-head{color:var(--gc-no);background:#f25c3b24}.gc-ask.off .gc-ask-head,.gc-ask.wait .gc-ask-head{background:var(--gc-soft);color:var(--muted)}.gc-ask-type{opacity:.85;margin-left:auto;font-weight:500}.gc-ask-title{margin-bottom:2px;font-size:15.5px;font-weight:650}.gc-ask .gc-text{color:var(--gc-fg-2);font-size:14px}.gc-facts{flex-wrap:wrap;gap:5px;margin-top:8px;margin-bottom:4px;display:flex}.gc-fact{background:var(--gc-soft);color:var(--gc-fg-2);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;max-width:100%;padding:2px 8px;font-size:11.5px;overflow:hidden}.gc-fact.risk-low{color:var(--gc-ok)}.gc-fact.risk-medium{color:var(--gc-gold)}.gc-fact.risk-high{color:var(--gc-no);background:#f25c3b24}.gc-preview{background:var(--field-bg);border:1px solid var(--field-border);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:10px;max-height:220px;margin-top:6px;margin-bottom:4px;padding:8px 10px;font-size:12.5px;overflow:auto}.gc-ask-actions{border-top:1px solid var(--line);gap:8px;margin-top:10px;padding-top:10px;display:grid}.gc-btns{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.gc-btn{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:7px 16px;font-size:14px;font-weight:650;display:inline-flex}.gc-btn.ok{background:var(--grass);color:#0e1a08}.gc-btn.ok:hover{background:#7fc158}.gc-btn.no{color:var(--gc-fg);border-color:var(--field-border);background:0 0}.gc-btn.no:hover{border-color:var(--coral);color:var(--gc-no)}.gc-btn:disabled{opacity:.55;cursor:progress}.gc-link{font:inherit;color:var(--muted);text-underline-offset:2px;cursor:pointer;background:0 0;border:0;justify-self:start;padding:0;font-size:13px;text-decoration:underline}.gc-link:hover{color:var(--fg)}.gc-link.coral{color:var(--gc-no)}.gc-remember{color:var(--muted);align-items:center;gap:6px;font-size:12.5px;display:flex}.gc-expiry{color:var(--muted);margin-top:6px;font-size:11.5px}.gc-ask-actions .gc-expiry{margin-top:0}.gc-input{font:inherit;background:var(--field-bg);color:var(--fg);border:1px solid var(--field-border);border-radius:12px;flex:1;min-width:0;padding:8px 12px;font-size:14px}.gc-verdict{align-items:center;gap:6px;font-weight:650;display:flex}.gc-error{color:var(--gc-no);padding:0 16px 8px;font-size:13px}.gc-ask .gc-error{padding:0}.gc-body{position:relative}.gc-jump{z-index:2;font:inherit;border:1px solid var(--line);background:var(--panel);color:var(--fg);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:12.5px;font-weight:600;display:inline-flex;position:absolute;bottom:12px;right:18px;box-shadow:0 6px 18px -8px #00000073}.gc-tray{border-top:1px solid var(--gc-gold-line);background:var(--gc-gold-bg);gap:6px;max-height:240px;padding:8px 14px 10px;display:grid;overflow-y:auto}.gc-tray-head{color:var(--gc-gold);align-items:center;gap:6px;font-size:12px;font-weight:700;display:flex}.gc-tray-items{gap:6px;display:grid}.gc-tray-item{text-align:left;font:inherit;color:var(--fg);background:var(--panel);border:1px solid var(--line);cursor:pointer;border-radius:12px;gap:6px;padding:7px 10px;font-size:13.5px;display:block}.gc-tray-item.static{cursor:default;display:grid}.gc-tray-item:not(.static):hover{border-color:var(--gc-gold-line)}.gc-compose{border-top:1px solid var(--line);align-items:flex-end;gap:8px;padding:10px 12px 12px;display:flex}.gc-field{border:1px solid var(--field-border);background:var(--field-bg);border-radius:20px;flex:1;min-width:0;padding:0 14px;transition:border-color .15s;display:flex}.gc-field:focus-within{border-color:var(--grass)}.gc-field textarea{resize:none;min-width:0;color:var(--fg);font:inherit;background:0 0;border:0;outline:0;flex:1;max-height:160px;padding:9px 0;font-size:15px;line-height:1.4}.gc-field textarea:focus-visible{outline:0}.gc-send{background:var(--grass);cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;width:40px;height:40px;transition:transform .1s,opacity .15s;display:grid}.gc-send:disabled{opacity:.35;cursor:default}.gc-send:not(:disabled):hover{transform:scale(1.06)}@media (max-width:520px){.gc-stack{max-width:86%}}.gc .gc-ic-night{display:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .gc .gc-ic-day{display:none}:root:not([data-theme=light]) .gc .gc-ic-night{display:inline-block}}[data-theme=dark] .gc .gc-ic-day{display:none}[data-theme=dark] .gc .gc-ic-night{display:inline-block}.townmap .prop>svg,.townmap .folk svg,.townmap img,.town-shade{filter:var(--town-shade)}.town-grass{filter:var(--town-shade);position:absolute;inset:0}.prop{display:inline-block;position:relative}.prop-lit{pointer-events:none;opacity:var(--town-night);filter:drop-shadow(0 0 2px #ffc45cf2)drop-shadow(0 0 6px #ffaa3c8c);position:absolute;inset:0}.townmap img.prop-lit{filter:drop-shadow(0 0 2px #ffc45cf2)drop-shadow(0 0 6px #ffaa3c8c)}.town-glow{aspect-ratio:1;pointer-events:none;mix-blend-mode:screen;width:9%;opacity:var(--town-night);background:radial-gradient(closest-side,#ffce786b,#ffba5a29 55%,#0000);border-radius:50%;position:absolute;transform:translate(-50%,-50%)}.town-dusk{pointer-events:none;z-index:105;opacity:var(--town-night);background:radial-gradient(120% 90% at 50% 55%,#0000 60%,#060a1c47);position:absolute;inset:0}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){z-index:2}
