:root{color-scheme:light dark;--bg: #f6efe2;--fg: #1c2a4a;--hint: #5b6580;--terracotta: #b5532c;--gold: #b08d3c}@media(prefers-color-scheme:dark){:root{--bg: #161f2b;--fg: #f1e8d4;--hint: #a7a08f;--terracotta: #e07a52;--gold: #d2ab55}}*{box-sizing:border-box}body{margin:0;background:var(--tg-theme-bg-color, var(--bg));color:var(--tg-theme-text-color, var(--fg));font-family:Georgia,Times New Roman,serif}main{padding:32px 16px;text-align:center}h1{font-weight:400;letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px}h1:after{content:"";display:block;width:64px;height:2px;background:var(--gold);margin:12px auto 0}.muted{color:var(--tg-theme-hint-color, var(--hint))}.error{color:var(--terracotta)}.city{font-size:1.4rem;margin:20px 0 8px}input[type=text]{width:100%;max-width:360px;padding:12px;margin:12px 0;font:inherit;text-align:center;color:var(--tg-theme-text-color, var(--fg));background:var(--tg-theme-secondary-bg-color, transparent);border:1px solid var(--gold);border-radius:8px}.guilds{display:grid;gap:8px;max-width:420px;margin:12px auto;text-align:left}.guild{display:block;padding:10px 12px;cursor:pointer;border:1px solid var(--tg-theme-hint-color, var(--hint));border-radius:8px}.guild:has(input:checked){border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}.guild.taken{opacity:.45;cursor:not-allowed}.guild input{position:absolute;opacity:0;pointer-events:none}.guild-name{display:block}.guild-blurb{display:block;font-size:.85rem;color:var(--tg-theme-hint-color, var(--hint))}button{margin-top:8px;padding:12px 28px;font:inherit;cursor:pointer;color:var(--tg-theme-button-text-color, #fff);background:var(--tg-theme-button-color, var(--terracotta));border:0;border-radius:8px}.charter{display:flex;justify-content:center;gap:24px;margin:24px 0}.seal{width:140px;text-align:center}.seal-mark{width:64px;height:64px;margin:0 auto 8px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.6rem;border:2px dashed var(--tg-theme-hint-color, var(--hint));color:var(--tg-theme-hint-color, var(--hint))}.seal.filled .seal-mark{border:2px solid var(--gold);color:var(--gold);background:color-mix(in srgb,var(--terracotta) 70%,transparent)}.seal-name{font-size:.85rem}h2{font-weight:400;font-size:1rem;letter-spacing:.06em;text-transform:uppercase;margin:20px 0 8px}.tabs{display:flex;justify-content:center;gap:4px;margin-bottom:8px}button.tab{margin:0;padding:8px 16px;background:transparent;color:var(--tg-theme-hint-color, var(--hint));border-bottom:2px solid transparent;border-radius:0}button.tab.active{color:var(--tg-theme-text-color, var(--fg));border-bottom-color:var(--gold)}.players{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:8px 0;font-size:.9rem}.dots{letter-spacing:2px;color:var(--gold)}.ratings{margin:8px 0}.small{font-size:.8rem}.plots{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;max-width:420px;margin:0 auto}button.plot{margin:0;padding:10px 4px;min-height:64px;font-size:.8rem;background:transparent;color:var(--tg-theme-hint-color, var(--hint));border:1px dashed var(--tg-theme-hint-color, var(--hint))}button.plot.built{color:var(--tg-theme-text-color, var(--fg));border:1px solid var(--gold);background:color-mix(in srgb,var(--terracotta) 25%,transparent)}button.plot.sel{box-shadow:0 0 0 2px var(--gold)}button.plot small{display:block;color:var(--gold);margin-top:2px}.sheet{margin:16px auto;padding:12px;max-width:420px;border:1px solid var(--gold);border-radius:8px}button.ghost{background:transparent;color:var(--tg-theme-hint-color, var(--hint))}button.heart{margin:0 0 0 4px;padding:2px 8px;font-size:.85rem;background:transparent;color:var(--tg-theme-hint-color, var(--hint));border:1px solid transparent;border-radius:12px}button.heart.on{color:var(--terracotta);border-color:var(--terracotta)}.chronicle,.ideas{list-style:none;padding:0;margin:0 auto;max-width:480px;text-align:left}.chronicle li,.ideas li{padding:8px 0;border-bottom:1px solid color-mix(in srgb,var(--tg-theme-hint-color, var(--hint)) 30%,transparent)}.idea-head{display:flex;justify-content:space-between;align-items:center}.bell{max-width:420px;margin:12px auto;padding:12px 14px;border:1px solid var(--tg-theme-hint-color, var(--hint));border-radius:8px}.bell p{margin:6px 0}.district{position:relative;width:100%;max-width:448px;margin:0 auto;overflow:hidden}.iso{position:absolute;left:0;top:0;width:448px;height:310px;transform-origin:0 0}.ly{position:absolute;width:256px;height:256px;pointer-events:none}.ly img{width:256px;height:256px;display:block;-webkit-user-select:none;user-select:none}.ly.b{transform:scale(.8);transform-origin:50% 68.75%}.ly.ghost{opacity:.55;filter:saturate(.85) brightness(1.08);animation:ghost-in .25s ease-out}.ly.pop img{animation:pop .55s cubic-bezier(.2,.9,.3,1.25);transform-origin:50% 68.75%}.hit{position:absolute;width:256px;height:256px;padding:0;margin:0;border:0;background:transparent;cursor:pointer;clip-path:polygon(6.25% 68.75%,50% 46.9%,93.75% 68.75%,50% 90.6%)}.hit.sel{background:color-mix(in srgb,var(--gold) 38%,transparent)}@keyframes pop{0%{transform:scale(.7);opacity:0}60%{transform:scale(1.06);opacity:1}to{transform:scale(1)}}@keyframes ghost-in{0%{opacity:0}to{opacity:.55}}.dust{position:absolute;width:0;height:0;pointer-events:none}.dust i{position:absolute;left:-4px;top:-4px;width:8px;height:8px;border-radius:50%;background:#d9cca9;opacity:0;animation:dust .6s ease-out forwards}@keyframes dust{0%{opacity:.85;transform:rotate(var(--a)) translate(10px) scale(1)}to{opacity:0;transform:rotate(var(--a)) translate(46px) scale(.3)}}.chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 14px;margin:8px 0}.chip{display:inline-flex;align-items:center;gap:4px;font-size:.95rem}.chip .ico{display:inline-flex;width:22px;height:22px;color:var(--gold)}.chip .ico svg{width:22px;height:22px}.chip .lbl{display:none}.chip .was{color:var(--tg-theme-hint-color, var(--hint));text-decoration:line-through}.chip .arrow{color:var(--tg-theme-hint-color, var(--hint))}.chip.changes strong{color:var(--gold)}.sheet-title{margin:0 0 8px}.opts{display:flex;gap:8px;margin:6px 0;overflow-x:auto;padding-bottom:2px}button.opt{flex:0 0 112px;display:grid;gap:1px;justify-items:center;margin:0;padding:6px 4px;text-align:center;font-size:.8rem;color:var(--tg-theme-text-color, var(--fg));background:transparent;border:1px solid var(--tg-theme-hint-color, var(--hint))}button.opt img{width:64px;height:64px;margin:-10px 0 -8px;pointer-events:none}button.opt.sel{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}button.opt:disabled{opacity:.45;cursor:not-allowed}button.opt .fx{color:var(--gold)}button.opt .why{color:var(--tg-theme-hint-color, var(--hint));font-size:.75rem}.preview{margin:8px 0}@media(prefers-reduced-motion:reduce){.ly.pop img,.ly.ghost,.dust i{animation:none}.dust{display:none}}.spacer{height:300px}.sheet{position:fixed;left:0;right:0;bottom:0;z-index:200;max-width:520px;margin:0 auto;padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));background:var(--tg-theme-bg-color, var(--bg));border:0;border-top:1px solid var(--gold);border-radius:12px 12px 0 0;box-shadow:0 -10px 28px #0003}.sheet-head{display:flex;justify-content:space-between;align-items:center}.sheet-title{font-size:.9rem}button.x{margin:0;padding:0 10px;font-size:1.4rem;line-height:1.2;background:transparent;color:var(--tg-theme-hint-color, var(--hint))}.sheet .chips{margin:4px 0}.sheet #confirm{width:100%;margin-top:4px}.sheet .error{margin:4px 0 0;min-height:0}.viewing-bar{position:sticky;top:0;z-index:300;margin:-32px -16px 12px;padding:8px 16px;text-align:center;font-size:.85rem;color:#fff;background:color-mix(in srgb,var(--terracotta) 85%,#000)}.viewing-bar button.ghost{margin:0 0 0 8px;padding:2px 10px;color:#fff;border:1px solid #fff}.viewing #confirm,.viewing #bell,.viewing #unbell,.viewing #solo,.viewing .heart{display:none}
