/* Full movable activity log and compact social actions. */
.activity{resize:both;min-width:320px;min-height:140px;max-width:calc(100vw - 8px);max-height:calc(100vh - 8px)}
.activity-head{cursor:grab;touch-action:none;user-select:none}.activity.dragging-log .activity-head{cursor:grabbing}
.activity-head>span{margin-left:auto}.activity-actions{display:flex;gap:4px;margin-left:8px}.activity-actions button{height:22px;padding:0 7px;border:1px solid #59636a;border-radius:3px;background:#20282d;color:#aeb8bd;font-size:6px;font-weight:900;cursor:pointer}.activity-actions button.active{border-color:#4aa97d;color:#8be0b4;background:#17352a}
.battle-log{height:calc(100% - 36px)!important;overflow-y:auto!important;overscroll-behavior:contain;scrollbar-width:thin}
.chat-social-menu{position:relative;display:inline-flex;flex:none}.chat-social-gear{display:inline-grid!important;visibility:visible!important;opacity:1!important;flex:none;width:19px;height:19px;padding:0;place-items:center;border:1px solid #425661;border-radius:50%;background:#14242d;color:#9dc5d6;font-size:11px;line-height:1;cursor:pointer}
.chat-social-menu .chat-author-actions{position:absolute;z-index:6;left:23px;top:-3px;display:none;padding:3px;border:1px solid #465963;border-radius:5px;background:#0d1b22f5;box-shadow:0 5px 15px #000a;white-space:nowrap}.chat-social-menu.open .chat-author-actions{display:flex}
.chat-social-menu .chat-author-actions button{height:21px;padding:0 6px}.chat-social-menu .chat-author-actions button:nth-child(3){border-color:#496b54;color:#9bddaa}
.chat-message:has(.chat-social-menu.open){position:relative;z-index:7}
.shared-pokemon{color:#c8d9df}.shared-pokemon strong{display:inline-block;margin-left:3px;padding:2px 6px;border:1px solid #d3ad45;border-radius:4px;background:#5b451b;color:#ffe07a;font-size:11px;letter-spacing:.5px;box-shadow:0 0 10px #e7b83b33}.shared-pokemon-power{position:relative;cursor:help;outline:none}.shared-pokemon-power::after{content:attr(data-details);position:absolute;z-index:50;left:50%;bottom:calc(100% + 8px);width:max-content;max-width:230px;padding:6px 9px;transform:translateX(-50%) translateY(3px);border:1px solid #d3ad45;border-radius:5px;background:#151b20;color:#ffe7a0;font-size:10px;font-weight:800;letter-spacing:.2px;box-shadow:0 7px 18px #000c;opacity:0;visibility:hidden;pointer-events:none;transition:.14s ease}.shared-pokemon-power:hover::after,.shared-pokemon-power:focus::after{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.shared-pokemon-boost{display:inline-block;padding:1px 4px;border:1px solid #56b984;border-radius:4px;background:#173a29;color:#82efaa;font-size:10px;font-style:normal;font-weight:1000}
.chat-message.tutor-message{margin:3px 0 8px;padding:6px 8px;border:1px solid #52d6c5;border-radius:6px;background:linear-gradient(100deg,#123b3a99,#16293499);box-shadow:0 0 13px #42d9c333,inset 0 0 0 1px #ffffff0b}.chat-message.tutor-message .chat-author>b{color:#65ead7}.chat-role-tutor{display:inline-block;margin-right:3px;padding:1px 4px;border-radius:3px;background:#42c7b2;color:#071b1a;font-size:7px;font-style:normal;font-weight:1000;letter-spacing:.7px}
@media(max-width:600px){.activity{min-width:280px}.chat-social-menu .chat-author-actions{left:auto;right:23px}}
.map-search{position:relative}
.map-autocomplete{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:40;max-height:290px;overflow-y:auto;padding:5px;background:rgba(5,15,24,.98);border:1px solid #36d6c4;border-radius:8px;box-shadow:0 12px 30px #000b}
.map-autocomplete.hidden{display:none}
.map-autocomplete button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 11px;color:#eafcff;background:transparent;border:0;border-radius:5px;text-align:left;cursor:pointer}
.map-autocomplete button:hover,.map-autocomplete button:focus{background:#153c43;outline:none}
.map-autocomplete button strong{font-size:12px}.map-autocomplete button small{color:#71d8cc;font-size:9px;text-transform:uppercase;letter-spacing:.08em}
.map-pin.search-target{z-index:30;animation:map-search-pulse 1s ease-in-out infinite alternate}
.map-pin.search-target .pin-icon{filter:drop-shadow(0 0 8px #48fff0) drop-shadow(0 0 14px #48fff0)}
@keyframes map-search-pulse{from{transform:translate(-50%,-100%) scale(1)}to{transform:translate(-50%,-100%) scale(1.13)}}
.houses-list{flex:1;min-height:0;grid-auto-rows:max-content;align-content:start}.houses-list>.house-card{min-height:142px;flex:none}
.houses-list>.house-card{display:flex;flex-direction:column}.houses-list>.house-card>footer{display:flex!important;visibility:visible!important;margin-top:auto!important;padding:0 13px 13px!important}
.house-door-action{position:absolute;z-index:14;display:grid;min-width:205px;max-width:270px;gap:3px;padding:10px 11px;transform:translate(-50%,-100%);border:1px solid #d7b94e;border-radius:8px;background:linear-gradient(145deg,#172b31f7,#0b171cf7);color:#dce9ea;box-shadow:0 8px 24px #000b,0 0 16px #d6b64a22;text-align:center;pointer-events:auto}.house-door-action.hidden{display:none}.house-door-action small{color:#68d9c4;font-size:7px;font-weight:1000;letter-spacing:1px}.house-door-action>b{overflow:hidden;color:#fff0b5;font:900 13px Georgia,serif;text-overflow:ellipsis;white-space:nowrap}.house-door-action span,.house-door-action em{color:#9fb1b5;font-size:8px;font-style:normal}.house-door-action span strong{color:#ffe075}.house-door-action button{height:28px;margin-top:4px;border:1px solid #4ea77d;border-radius:5px;background:#24684f;color:#fff;font-size:8px;font-weight:1000;cursor:pointer}.house-door-action:after{content:"";position:absolute;left:50%;top:100%;border:7px solid transparent;border-top-color:#d7b94e;transform:translateX(-50%)}
.houses-window{background:radial-gradient(circle at 85% 0,#22495244,transparent 30%),linear-gradient(145deg,#111d2c,#09131d)}.houses-window>header{height:70px;background:linear-gradient(110deg,#17344b,#15343b 65%,#3b3219)}.houses-window>header small{color:#63dcc7;font-size:8px;font-weight:900;letter-spacing:1.4px}.houses-window>header h2{color:#ffe17a;font-size:25px}.houses-tools{grid-template-columns:minmax(260px,1fr) 210px 190px!important;padding:14px 16px!important;background:#0b171e!important}.houses-list{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))!important;gap:12px!important;padding:16px!important}.houses-list>.house-card{position:relative;min-height:194px;border-radius:11px;background:linear-gradient(145deg,#17252c,#101a20);box-shadow:0 8px 20px #0005;transition:transform .16s,border-color .16s}.houses-list>.house-card:hover{transform:translateY(-2px);border-color:#6a8994}.house-card.free{border-color:#328668}.house-card.mine{border-color:#d6b74b}.house-card-hero{display:grid!important;grid-template-columns:48px minmax(0,1fr) auto!important;align-items:center;gap:10px!important;padding:13px!important;background:linear-gradient(100deg,#1c3038,#18272d)!important}.house-card-hero>img{width:42px;height:42px;padding:5px;border:1px solid #49616a;border-radius:9px;background:#0d1a20}.house-card-hero>span{display:grid!important;min-width:0}.house-card-hero small{color:#6fd6c4!important;font-size:8px!important;font-weight:900;letter-spacing:.8px}.house-card-hero b{overflow:hidden;color:#fff4c2!important;font:900 15px Georgia,serif!important;text-overflow:ellipsis;white-space:nowrap}.house-card-hero em{align-self:start;padding:4px 7px!important;border-radius:10px!important;font-size:7px!important}.house-card-data{display:grid!important;grid-template-columns:.8fr 1.15fr 1fr!important;gap:7px!important;padding:12px 13px!important}.house-card-data>span{display:grid!important;padding:7px;border:1px solid #ffffff0d;border-radius:6px;background:#09141a}.house-card-data small{color:#71868e!important;font-size:7px!important}.house-card-data b{margin-top:3px;color:#dce9e9!important;font-size:10px!important}.house-card-data .house-price{border-color:#806b2d;background:#2b2615}.house-card-data .house-price b{color:#ffe276!important;font-size:12px!important}.house-card footer{padding:0 13px 13px!important;border:0!important}.house-card footer button{height:36px!important;border-radius:6px!important;font-size:9px!important}.house-card footer .visit{border-color:#47717d;background:#193944;color:#bfeef2}.house-card footer .buy{order:2;background:linear-gradient(#338f69,#236148);box-shadow:0 5px 12px #0004}@media(max-width:760px){.houses-tools{grid-template-columns:1fr!important}.houses-list{grid-template-columns:1fr!important}.house-card-data{grid-template-columns:1fr 1fr!important}.house-card-data>span:last-child{grid-column:1/-1}}
.houses-window{height:min(760px,94vh)}.houses-tools{display:grid;grid-template-columns:1fr 190px;gap:8px;padding:12px;border-bottom:1px solid #31434c;background:#101b21}.houses-tools input,.houses-tools select{height:38px;padding:0 11px;border:1px solid #455a64;border-radius:5px;background:#09141a;color:#e9f2f3}.houses-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:9px;overflow:auto;padding:12px;background:#0b1318}.house-card{border:1px solid #3e4b52;border-radius:7px;background:#151e23;overflow:hidden}.house-card.mine{border-color:#d6b74b;box-shadow:0 0 13px #d6b74b22}.house-card.free{border-color:#347961}.house-card>header{display:flex;justify-content:space-between;gap:8px;padding:10px;background:#1b272d}.house-card header span{display:grid}.house-card header small{color:#81959f;font-size:8px}.house-card header b{color:#edf4f5}.house-card header em{align-self:start;padding:3px 6px;border-radius:4px;background:#29363c;color:#aebcc2;font-size:8px;font-style:normal;font-weight:900}.house-card.free header em{background:#18523f;color:#83e2bc}.house-card.mine header em{background:#5b4919;color:#ffe176}.house-card>div{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:10px}.house-card>div span{display:grid;gap:3px}.house-card>div small{color:#72858d;font-size:7px}.house-card>div b{color:#dce7e9;font-size:10px}.house-card footer{display:flex;gap:5px;padding:8px 10px;border-top:1px solid #ffffff0d}.house-card footer button{flex:1;height:29px;border:1px solid #51616a;border-radius:4px;background:#243139;color:#d9e2e5;font-size:8px;font-weight:900;cursor:pointer}.house-card footer .buy{border-color:#378e6a;background:#24684f;color:#fff}.house-card footer .leave{border-color:#8a4b50;background:#5e3035;color:#ffd5d8}.house-empty{grid-column:1/-1;padding:50px;text-align:center;color:#87999f}@media(max-width:600px){.houses-tools{grid-template-columns:1fr}.houses-list{grid-template-columns:1fr}.house-card>div{grid-template-columns:1fr 1fr}}
