*,*:before,*:after{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;overscroll-behavior:none;background:var(--sky-bottom, #cfe9f7);color:var(--ink, #18233a);font-family:Figtree,system-ui,-apple-system,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased}#city{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;touch-action:none;cursor:grab}#city:active{cursor:grabbing}#ui{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none}#ui>*{pointer-events:auto}:focus-visible{outline:3px solid var(--focus, #1f6f8b);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}:root{--kb-gutter: 16px;--kb-surface: color-mix(in srgb, var(--paper) 85%, transparent);--kb-surface-strong: color-mix(in srgb, var(--paper) 90%, transparent);--kb-chip: color-mix(in srgb, var(--paper) 72%, transparent);--kb-hairline: color-mix(in srgb, var(--ink) 12%, transparent);--kb-shadow: 0 12px 32px -8px color-mix(in srgb, color-mix(in srgb, var(--sky-top) 55%, var(--ink)) 38%, transparent), 0 2px 6px -2px color-mix(in srgb, color-mix(in srgb, var(--sky-top) 40%, var(--ink)) 22%, transparent);--kb-primary: var(--accent);--kb-primary-ink: var(--accent-ink);--kb-blur: blur(12px) saturate(1.2);--kb-safe-top: max(12px, env(safe-area-inset-top));--kb-safe-bottom: max(16px, env(safe-area-inset-bottom));--kb-search-h: 56px;color-scheme:light}html[data-ui=dark]{--kb-primary: var(--glow);--kb-primary-ink: var(--paper);--kb-chip: color-mix(in srgb, var(--paper) 66%, transparent);color-scheme:dark}#ui [hidden]{display:none!important}.kb-vh,.kb-offscreen{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}#ui :focus-visible{outline:3px solid var(--focus);outline-offset:2px}.kb-icon{flex:none;display:block}#ui>.kb-top{position:fixed;top:var(--kb-safe-top);left:max(var(--kb-gutter),env(safe-area-inset-left));right:max(var(--kb-gutter),env(safe-area-inset-right));display:flex;flex-direction:column;align-items:flex-start;gap:8px;pointer-events:none}.kb-wordmark{margin:0;font-family:var(--kb-font-display);font-weight:400;font-size:clamp(28px,7vw,36px);line-height:1;letter-spacing:.01em;color:var(--ink);text-shadow:0 1px 0 color-mix(in srgb,var(--paper) 60%,transparent),0 0 18px color-mix(in srgb,var(--paper) 55%,transparent)}.kb-stats{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.kb-chip{display:inline-flex;align-items:center;gap:8px;height:28px;padding:0 12px;border-radius:999px;background:var(--kb-chip);-webkit-backdrop-filter:var(--kb-blur);backdrop-filter:var(--kb-blur);border:1px solid var(--kb-hairline);color:var(--ink);font-size:13px;font-weight:600;line-height:1;white-space:nowrap;font-variant-numeric:tabular-nums}.kb-chip-clock{padding-left:8px}.kb-clock-icon{display:inline-flex;color:var(--gold)}.kb-chip-night .kb-clock-icon{color:var(--glow)}.kb-chip-quiet{background:color-mix(in srgb,var(--paper) 70%,transparent);border-style:dashed;border-color:color-mix(in srgb,var(--ink) 28%,transparent);color:var(--ink-soft);font-weight:500}html[data-ui=light] .kb-chip-quiet{background:color-mix(in srgb,var(--paper) 82%,transparent)}@media(max-width:359px){.kb-chip-clock{display:none}}.kb-panel{background:var(--kb-surface);-webkit-backdrop-filter:var(--kb-blur);backdrop-filter:var(--kb-blur);border:1px solid var(--kb-hairline);border-radius:18px;box-shadow:var(--kb-shadow);color:var(--ink)}.kb-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border-radius:12px;border:1px solid transparent;font:inherit;font-size:15px;font-weight:700;line-height:1.1;cursor:pointer;text-align:center;transition:background-color .12s ease,transform .12s ease}.kb-btn:active{transform:translateY(1px)}.kb-btn:disabled{cursor:progress;opacity:.8}.kb-btn-primary{background:var(--kb-primary);color:var(--kb-primary-ink)}.kb-btn-primary:hover{background:color-mix(in srgb,var(--kb-primary) 88%,var(--ink))}.kb-btn-secondary{background:color-mix(in srgb,var(--ink) 6%,transparent);border-color:color-mix(in srgb,var(--ink) 16%,transparent);color:var(--ink)}.kb-btn-secondary:hover{background:color-mix(in srgb,var(--ink) 11%,transparent)}.kb-icon-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:none;display:inline-grid;place-items:center;width:44px;height:44px;margin:-4px -8px -4px 0;border:0;border-radius:999px;background:transparent;color:var(--ink-soft);cursor:pointer}.kb-icon-btn:hover{background:color-mix(in srgb,var(--ink) 8%,transparent);color:var(--ink)}.kb-search{position:fixed;left:50%;bottom:var(--kb-safe-bottom);transform:translate(-50%);width:min(440px,calc(100% - 2 * var(--kb-gutter)));height:var(--kb-search-h);display:flex;align-items:center;gap:4px;padding:4px;border-radius:999px;background:var(--kb-surface-strong);-webkit-backdrop-filter:var(--kb-blur);backdrop-filter:var(--kb-blur);border:1px solid var(--kb-hairline);box-shadow:var(--kb-shadow)}.kb-search-input{flex:1;min-width:0;height:44px;padding:0 12px 0 16px;border:0;border-radius:999px;background:transparent;color:var(--ink);font:inherit;font-size:16px;font-weight:500}.kb-search-input::placeholder{color:var(--ink-soft);opacity:1}.kb-search-input::-webkit-search-cancel-button{display:none}#ui .kb-search-input:focus-visible{outline-offset:-2px}.kb-search-btn{border-radius:999px;padding:0 24px}.kb-notfound{position:fixed;left:50%;bottom:calc(var(--kb-safe-bottom) + var(--kb-search-h) + 12px);transform:translate(-50%);width:min(440px,calc(100% - 2 * var(--kb-gutter)));display:flex;align-items:flex-start;gap:8px;padding:16px 16px 16px 20px;animation:kb-rise .2s ease-out}.kb-notfound-body{flex:1;min-width:0}.kb-notfound-title{margin:0 0 4px;font-size:16px;font-weight:700;overflow-wrap:anywhere}.kb-notfound-text{margin:0;font-size:14px;line-height:1.45;color:var(--ink-soft)}.kb-notfound-text a{color:var(--ink);font-weight:700;text-decoration-thickness:2px;text-underline-offset:2px;text-decoration-color:color-mix(in srgb,var(--kb-primary) 70%,transparent)}dialog.kb-card{position:fixed;inset:auto var(--kb-gutter) calc(var(--kb-safe-bottom)) auto;right:max(var(--kb-gutter),env(safe-area-inset-right));margin:0;width:360px;max-width:calc(100% - 2 * var(--kb-gutter));max-height:calc(100dvh - 160px);overflow:auto;padding:20px;z-index:2;background:var(--kb-surface-strong)}dialog.kb-card[open]{display:flex;flex-direction:column;gap:12px;animation:kb-rise .2s ease-out}@media(min-width:900px)and (min-height:600px){dialog.kb-card{bottom:calc(var(--kb-safe-bottom) + var(--kb-search-h) + 12px)}}.kb-card-head{display:flex;align-items:flex-start;gap:8px}.kb-card-title{flex:1;min-width:0;margin:0;font-size:24px;font-weight:700;line-height:1.15;letter-spacing:-.01em;overflow-wrap:anywhere}#ui .kb-card-title:focus,#ui .kb-card-title:focus-visible{outline:none}.kb-card-number{margin:-8px 0 0;font-size:14px;font-weight:600;color:var(--ink-soft);font-variant-numeric:tabular-nums}.kb-facts{list-style:none;margin:0;padding:0;display:grid;gap:8px}.kb-fact{display:flex;align-items:center;gap:12px;font-size:15px;line-height:1.3}.kb-fact .kb-icon{color:var(--ink-soft)}.kb-perks{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.kb-perk{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 12px;border-radius:999px;font-size:13px;font-weight:700}.kb-perk-founder{background:var(--ink);color:var(--paper)}.kb-perk-gold{background:color-mix(in srgb,var(--gold) 22%,transparent);border:1px solid color-mix(in srgb,var(--gold) 70%,transparent);color:var(--ink)}.kb-perk-gold .kb-icon{color:var(--gold)}.kb-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:4px}.kb-card-actions .kb-btn{padding:0 12px}@media(max-width:899px),(max-height:599px){dialog.kb-card{inset:auto 0 0 0;width:100%;max-width:none;max-height:45dvh;padding:16px var(--kb-gutter) calc(16px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0;border-width:1px 0 0;gap:8px;background:color-mix(in srgb,var(--paper) 96%,transparent)}#ui.kb-card-open>.kb-search{visibility:hidden}dialog.kb-card[open]{animation-name:kb-sheet}.kb-card-title{font-size:22px}.kb-facts{gap:4px}.kb-card-number{margin-top:-4px}}#ui>.kb-splash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;display:grid;place-items:center;padding:var(--kb-gutter);background:linear-gradient(180deg,var(--sky-top),var(--sky-bottom));color:var(--ink);transition:opacity .4s ease}#ui>.kb-splash.kb-splash-done{opacity:0;pointer-events:none}.kb-splash-inner{width:min(320px,100%);display:flex;flex-direction:column;align-items:center;gap:24px;text-align:center}.kb-splash-mark{font-size:clamp(48px,14vw,72px);text-shadow:none}.kb-loading{width:100%;display:flex;flex-direction:column;align-items:center;gap:12px}.kb-progress{width:min(200px,70%);height:4px;border-radius:999px;overflow:hidden;background:color-mix(in srgb,var(--ink) 16%,transparent)}.kb-progress-fill{height:100%;background:var(--kb-primary);transform:scaleX(0);transform-origin:left center;transition:transform .3s ease}.kb-splash-text{margin:0;font-size:15px;font-weight:600;color:var(--ink-soft);line-height:1.45}.kb-error{display:flex;flex-direction:column;align-items:center;gap:16px}.kb-error .kb-splash-text{color:var(--ink)}@keyframes kb-rise{0%{opacity:0;translate:0 8px}to{opacity:1;translate:0 0}}@keyframes kb-sheet{0%{translate:0 24px;opacity:.4}to{translate:0 0;opacity:1}}@media(prefers-reduced-motion:reduce){.kb-notfound,dialog.kb-card[open]{animation:none}#ui>.kb-splash,.kb-progress-fill,.kb-btn{transition:none}}.kb-town-btn{min-height:36px;padding:0 12px;border-radius:999px;font-size:14px;background:var(--kb-surface-strong);-webkit-backdrop-filter:blur(12px) saturate(1.2);backdrop-filter:blur(12px) saturate(1.2)}dialog.kb-town{position:fixed;inset:max(16px,env(safe-area-inset-top)) max(var(--kb-gutter),env(safe-area-inset-right)) auto auto;margin:0;width:400px;max-width:calc(100% - 2 * var(--kb-gutter));max-height:calc(100dvh - 32px);padding:20px 20px 0;z-index:3;background:var(--kb-surface-strong);overflow:hidden}dialog.kb-town[open]{display:flex;flex-direction:column;gap:8px;animation:kb-rise .2s ease-out}.kb-town-body{overflow:auto;padding-bottom:20px;overscroll-behavior:contain}.kb-town-section{padding:12px 0;border-top:1px solid color-mix(in srgb,var(--ink) 12%,transparent);scroll-margin-top:8px}.kb-town-section:first-child{border-top:0;padding-top:4px}.kb-town-section h3{margin:0 0 8px;font-size:16px;font-weight:700}.kb-town-section p{margin:0 0 8px;font-size:15px;line-height:1.45}.kb-town-note{display:block;color:var(--ink-soft);font-size:14px;line-height:1.4}.kb-town-section a,.kb-card-nudge a,.kb-town-links a{color:inherit;font-weight:700;text-underline-offset:2px}.kb-steps{margin:0 0 8px;padding-left:20px;display:grid;gap:4px;font-size:15px;line-height:1.45}.kb-poll{display:grid;gap:8px}.kb-poll-q{font-weight:700}.kb-poll-options{list-style:none;margin:0;padding:0;display:grid;gap:8px}.kb-poll-option{display:grid;grid-template-columns:1fr auto;gap:4px 8px;font-size:15px}.kb-poll-count{color:var(--ink-soft);font-variant-numeric:tabular-nums;font-size:14px}.kb-poll-bar{grid-column:1 / -1;height:8px;border-radius:999px;background:color-mix(in srgb,var(--ink) 10%,transparent);position:relative;overflow:hidden}.kb-poll-bar:after{content:"";position:absolute;inset:0 auto 0 0;width:var(--w);border-radius:inherit;background:var(--kb-primary)}.kb-poll-won .kb-poll-label{font-weight:700}.kb-founders{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-wrap:wrap;gap:4px 12px;font-size:14px;font-weight:600}.kb-shop{list-style:none;margin:0;padding:0;display:grid;gap:12px}.kb-shop-item{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px}.kb-shop-item>div{display:grid;gap:4px;font-size:15px}.kb-shop-item .kb-btn{min-height:40px;padding:0 12px;font-size:14px;white-space:nowrap}.kb-shop-soon{color:var(--ink-soft);font-size:13px;font-weight:600;white-space:nowrap}.kb-town-links{display:flex;gap:16px;padding:12px 0 0;border-top:1px solid color-mix(in srgb,var(--ink) 12%,transparent);font-size:14px}.kb-btn-quiet{background:transparent;color:var(--ink);text-decoration:underline;text-underline-offset:3px;font-weight:600;font-size:14px;min-height:40px;padding:0 4px;justify-content:flex-start}.kb-card-nudge{margin:0;font-size:14px;color:var(--ink-soft)}.kb-perk-follower{background:color-mix(in srgb,var(--kb-primary) 18%,transparent);color:var(--ink)}.kb-nf-how{margin-top:8px;min-height:40px;font-size:14px}@media(max-width:899px),(max-height:599px){dialog.kb-town{inset:auto 0 0 0;width:100%;max-width:none;max-height:78dvh;padding:16px var(--kb-gutter) 0;border-radius:22px 22px 0 0;border-width:1px 0 0;background:color-mix(in srgb,var(--paper) 96%,transparent)}dialog.kb-town[open]{animation-name:kb-sheet}.kb-town-body{padding-bottom:calc(16px + env(safe-area-inset-bottom))}}@media(prefers-reduced-motion:reduce){dialog.kb-town[open]{animation:none}}#ui>.kb-top .kb-town-btn{position:absolute;top:0;right:0;pointer-events:auto}@media(max-width:899px),(max-height:599px){#ui.kb-town-open>.kb-search{visibility:hidden}}
