#lodge-panel{padding:18px;background:#12375a;border:1px solid #5baacb;border-radius:20px;margin-bottom:20px}.lodge-card{display:flex;gap:12px;padding:16px 0;border-bottom:1px solid #477089}.lodge-card>.land-art{position:relative;flex:0 0 84px;width:84px;height:84px}.lodge-card h3{margin:0 0 8px}.lodge-card p{font-size:14px}.lodge-card button,#staff-dialog button,#lodge-panel>button{padding:12px;margin:4px;border:1px solid #68cfe6;background:#214f75;color:#ecffff;border-radius:12px;min-height:44px}.lodge-card small{color:#afddde}.town-ready #rotate,.town-ready #discard,.town-ready #confirm-piece{display:none!important}.town-ready #build-dock{display:flex;justify-content:center}.town-ready #seal-town{width:100%;min-height:76px;font-size:clamp(20px,5vw,30px);font-weight:950;background:linear-gradient(110deg,#91ffe1,#57cfff);color:#082c50;border:3px solid #dcfff6;border-radius:20px;box-shadow:0 6px 0 #167a9b;animation:bigStart 1.8s ease-in-out infinite}.town-ready .placement-rail{z-index:45}@keyframes bigStart{50%{transform:scale(1.025) rotate(-.4deg)}}
.knome-actor[data-socialpose] .knome-sprite{background-image:url('./assets/personalities-v13.webp')!important;background-size:400% 200%!important;background-position:0 100%;animation:none!important}.knome-actor[data-socialpose=clap] .knome-sprite{background-position:33.333% 100%}.knome-actor[data-socialpose=skeptic] .knome-sprite{background-position:66.667% 100%}.knome-actor[data-socialpose=cheer] .knome-sprite{background-position:100% 100%}.knome-actor[data-socialpose=cape] .knome-sprite{animation:secretCape 1.8s step-end infinite!important}.knome-actor[data-socialpose=nap] .knome-body{animation:hatBreathing 2s ease-in-out infinite!important}.knome-actor[data-socialpose=clap] .knome-body,.knome-actor[data-socialpose=cheer] .knome-body{animation:pigon-hop .5s ease-in-out infinite!important}@keyframes secretCape{0%,100%{background-position:0 0}25%{background-position:33.333% 0}50%{background-position:66.667% 0}75%{background-position:100% 0}}@keyframes hatBreathing{50%{transform:translateY(3px) scale(.98,1.03)}}
.board-frame{position:relative}.raid-encounter{position:absolute;inset:2%;z-index:60;background:#072642f5;border:2px solid #83e5fa;border-radius:24px;padding:18px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 0 60px #55c9ff77;pointer-events:none}.raid-encounter h2{font-size:clamp(20px,6vw,36px);margin:5px}.raid-encounter p{font-size:14px;margin:5px}.raid-encounter strong{color:#a3ffe1;margin:10px}.raid-leader{width:140px;height:155px;background-image:url('./assets/raiders-v13.webp');background-size:300% 100%;background-repeat:no-repeat;animation:raidArrives 2s ease-in-out infinite}@keyframes raidArrives{0%{transform:translateX(-30px) rotate(-6deg)}50%{transform:translateX(20px) rotate(5deg)}100%{transform:translateX(-30px) rotate(-6deg)}}@media(prefers-reduced-motion:reduce){.town-ready #seal-town,.raid-leader,.knome-actor[data-socialpose] .knome-sprite,.knome-actor[data-socialpose] .knome-body{animation:none!important}}

#keeper-roster{display:flex;gap:8px;overflow-x:auto;padding:10px 2px;scrollbar-width:thin}#keeper-roster[hidden]{display:none}.keeper-chip{flex:1 0 140px;background:#133f60;color:#d7f8ff;border:1px solid #4f9ab9;border-radius:12px;padding:10px;text-align:left;display:grid;gap:4px;min-height:70px}.keeper-chip span{font-size:14px}.keeper-chip small{font-size:12px;color:#a7e6d1}.keeper-chip.unsafe,.keeper-chip.blocked,.keeper-chip.vacant{border-color:#f1bf77}.keeper-badge{position:absolute;left:3px;top:24px;max-width:85%;padding:2px 4px;font-size:12px;font-weight:800;background:#052b44e8;color:#c9ffee;border-radius:5px;z-index:4;overflow:hidden;text-overflow:ellipsis}.keeper-badge.vacant{color:#ffcf8a}.keeper-state{color:#b5f4df}#appointment-reactions{padding:16px;background:#12324f;border-left:3px solid #8fddc4;border-radius:12px;margin:10px 0 20px}#appointment-reactions p{font-size:14px;line-height:1.5}#appointment-reactions b{color:#92def1}.lodge-card>div{min-width:0}@media(max-width:380px){.lodge-card>.land-art{flex-basis:64px;width:64px;height:64px}}

.work-controls{display:flex;flex-wrap:wrap;gap:5px}.work-controls button{min-width:42px;padding:9px!important}.work-controls [aria-pressed=true]{background:#77e6ee;color:#092c47;border-color:#d9ffff}.terrain-enemy{position:absolute;inset:5%;background-image:url('./assets/raiders-v13.webp');background-size:300% 100%;background-position:var(--enemy) 0;z-index:8;animation:enemySway .8s ease-in-out infinite alternate}.terrain-enemy>span{position:absolute;bottom:0;left:20%;font-size:12px;padding:2px 5px;background:#7b2538;color:#fff;border-radius:5px}.combat-loot{position:absolute;inset:15%;display:grid;place-items:center;color:#b7ffe5;font-size:24px;background:#123d52;border-radius:12px;z-index:7}.combat-loot b{font-size:14px}.single-building{background-size:auto!important}@keyframes enemySway{to{transform:translateY(-4px) rotate(4deg)}}@media(prefers-reduced-motion:reduce){.terrain-enemy{animation:none}}

.work-controls{display:flex;flex-wrap:wrap;gap:5px}.work-controls button{min-width:42px;padding:9px!important}.work-controls [aria-pressed=true]{background:#77e6ee;color:#092c47;border-color:#d9ffff}.terrain-enemy{position:absolute;inset:5%;background-image:url('./assets/raiders-v13.webp');background-size:300% 100%;background-position:var(--enemy) 0;z-index:8;animation:enemySway .8s ease-in-out infinite alternate}.terrain-enemy>span{position:absolute;bottom:0;left:20%;font-size:12px;padding:2px 5px;background:#7b2538;color:#fff;border-radius:5px}.combat-loot{position:absolute;inset:15%;display:grid;place-items:center;color:#b7ffe5;font-size:24px;background:#123d52;border-radius:12px;z-index:7}.combat-loot b{font-size:14px}.single-building{background-size:auto!important}@keyframes enemySway{to{transform:translateY(-4px) rotate(4deg)}}@media(prefers-reduced-motion:reduce){.terrain-enemy{animation:none}}

#mystery-panel{padding:20px;border:1px solid #718196;background:linear-gradient(145deg,#16283e,#171e30);border-radius:20px;margin-bottom:20px}#mystery-panel[hidden]{display:none}#mystery-panel header{display:flex;align-items:center;gap:16px}#mystery-panel header img{width:100px;height:100px;object-fit:contain}#mystery-panel p{font-size:16px;line-height:1.5}#mystery-panel select{display:block;width:100%;padding:12px;background:#233954;color:#fff;border:1px solid #8ab1cc;border-radius:10px;margin:8px 0}#mystery-panel button,#mystery-cue{padding:14px;background:#293d57;color:#e8f7ff;border:1px solid #88a6b9;border-radius:12px;min-height:44px}#mystery-cue{margin:10px 0;width:100%;text-align:left}#mystery-panel details p{border-top:1px solid #4b6075;padding-top:12px}#mystery-panel small{color:#94bacb}.bedtime .knome-yard{filter:brightness(.65);transition:filter .3s}.bedtime .knome-actor{opacity:.2}.bedtime .knome-actor.night-walker{opacity:.8;z-index:9}.mystery-night .town-foot{color:#aaaed0}@media(max-width:380px){#mystery-panel header img{width:72px;height:72px}}

.bedtime .knome-actor:not(.night-walker){opacity:0;transform:translateY(-10px) scale(.8);transition:opacity .2s,transform .2s}.bedtime .actor-name{opacity:0}.bedtime .night-walker{transform:none;transition:none}

/* Every image is contained by its own preview, including the power guide. */
.single-building{position:relative;isolation:isolate;overflow:hidden!important}.single-building>img{inset:0!important;object-fit:contain!important;pointer-events:none}.landmark-guide .single-building{position:relative;width:100%;height:auto;aspect-ratio:1}.landmark-guide{overflow:hidden}.payday-upgrade{background:linear-gradient(115deg,#91ffe1,#57cfff)!important;color:#082c50!important;border:2px solid #dcfff6!important;box-shadow:0 5px 0 #167a9b,0 0 20px #6be5ee33!important;font-weight:900!important}.retirement-list button{background:linear-gradient(120deg,#8bf0d2,#69c5f3);color:#082b49;border:1px solid #d1fff2;box-shadow:0 3px 0 #276b84;border-radius:10px}.buy-button.affordable,.resident-actions button:not(:disabled),.colony-room button:not(:disabled){border-color:#8fe7e1;box-shadow:0 3px 0 #245b78;background:linear-gradient(130deg,#225977,#1b4162)}button:not(:disabled){transition:filter .15s,box-shadow .15s,transform .12s}button:not(:disabled):hover{filter:brightness(1.12)}button:not(:disabled):not(.tile):active{transform:translateY(2px);box-shadow:none!important}button:focus-visible{outline:3px solid #bfffea;outline-offset:3px}.text-button[data-next-day],#next-round.text-button{background:transparent;border:0;box-shadow:none;font-size:16px;color:#b8d6e8}.payday-upgrade{width:100%;min-height:60px;margin:10px 0}

.pigon-number.ascendant-number{background-image:none!important;display:inline-grid;place-items:center;font-family:Georgia,serif;font-weight:900;font-size:clamp(18px,4vw,32px);color:#edfbff;text-shadow:0 2px #135983,0 0 5px #6cf1ff,0 0 10px #9a7dff;line-height:1;border-radius:7px;border-bottom:2px solid #e0c76c;letter-spacing:-1px}.tier-badge .ascendant-number{font-size:22px}.pigon-ladder .ascendant-number{font-size:36px}

/* Pigon's interlude hugs the board without hiding its tiles or swipe targets. */
.board-frame.pigon-turn{border-color:#ddbaff!important;box-shadow:0 0 0 3px #845bde,0 0 24px #9973ff88,inset 0 0 16px #69eeff55!important}.pigon-arrival{position:absolute;left:8px;right:8px;top:6px;z-index:30;display:flex;align-items:center;justify-content:center;gap:8px;pointer-events:none;transform:translateY(-78%)}.pigon-arrival[hidden]{display:none}.pigon-arrival .portrait{width:54px;height:64px;flex:0 0 54px;filter:drop-shadow(0 0 8px #ac6dff)}.pigon-arrival b{font-size:14px;color:#fff3cf;background:#302361;border:1px solid #cfafff;padding:8px 12px;border-radius:16px 16px 16px 2px;box-shadow:0 3px 12px #050e39aa}.pigon-turn .tile{touch-action:none}.wizard-bar{border-color:#ae83ef!important}.wizard-directions button{background:linear-gradient(145deg,#503b83,#245579);border-color:#cfb5ff;color:#fff;min-height:44px;min-width:44px}.atlas-recovery{opacity:1!important}

.single-building.atlas-recovery{background-image:var(--atlas)!important;background-size:var(--atlas-size)!important;background-position:var(--atlas-position)!important}.payday-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}.payday-actions .primary-button{width:100%;min-height:56px;margin:0;padding:14px 8px;border-radius:14px;font-size:18px}.payday-next{background:linear-gradient(115deg,#ffd594,#ffab78)!important;color:#382849!important;border:2px solid #fff0d5!important;box-shadow:0 5px 0 #ab614e,0 0 20px #ffc48533!important;font-weight:900!important}.payday-actions button:hover{filter:brightness(1.08)}

.delivery-deck{margin-top:16px}.delivery-deck>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.delivery-deck button{display:grid;justify-items:center;gap:5px;padding:8px 4px;border:1px solid #447ba2;border-radius:12px;background:#143958;color:#d4eeff}.delivery-deck .land-art{width:70px;height:70px}.delivery-deck button[aria-pressed=true]{border-color:#8eeace;box-shadow:inset 0 0 14px #74ffd51b}.delivery-deck b,.delivery-deck span{font-size:14px}.earned-choice{background:linear-gradient(125deg,#a6ffe5,#71cfff);color:#082a45;font-weight:900;border:1px solid #dafff4;border-radius:10px;padding:12px 15px;margin-top:9px;box-shadow:0 4px 0 #287487}#level-celebration{position:fixed;left:50%;top:max(16px,env(safe-area-inset-top));transform:translate(-50%,-180%);z-index:110;pointer-events:none;background:linear-gradient(120deg,#293777,#673873,#214e74);border:2px solid #ffdf97;border-radius:18px;padding:16px 22px;text-align:center;color:#fff2b4;font-weight:950;font-size:21px;max-width:90vw;width:max-content;box-shadow:0 0 26px #ffdd8055;opacity:0}#level-celebration.celebrating{animation:levelBanner 2.4s both}.level-halo{position:absolute;border:3px solid #fff2ac;border-radius:50%;box-shadow:0 0 18px var(--land),inset 0 0 14px #fff8;pointer-events:none}.knome-actor.promoted .knome-body{animation:promotionHop .45s ease-in-out 4;filter:drop-shadow(0 0 12px #ffe59c)}@keyframes levelBanner{0%{transform:translate(-50%,-150%) scale(.7);opacity:0}15%,80%{transform:translate(-50%,0) scale(1);opacity:1}100%{transform:translate(-50%,-30px);opacity:0}}@keyframes promotionHop{50%{transform:translateY(-22px) rotate(12deg)}}@media(prefers-reduced-motion:reduce){#level-celebration.celebrating{animation:none;transform:translate(-50%,0);opacity:1}.knome-actor.promoted .knome-body{animation:none}}
