/* GamerCoop World: compact, confined to first community card. */
.gc-taverne-2026 .gc-world-mount{box-sizing:border-box;min-width:0;width:100%;max-width:100%;margin:20px 0 0;padding:12px;border:1px solid #35404b;border-radius:12px;background:#111923;overflow:hidden;}
.gc-taverne-2026 .gc-world-head{display:flex;justify-content:space-between;align-items:center;gap:8px;color:#ff9c49;font-size:11px;font-weight:800;letter-spacing:.05em;margin-bottom:9px}
.gc-taverne-2026 .gc-world-count{color:#b4bfca;font-size:10px;font-weight:500;letter-spacing:0}
.gc-taverne-2026 .gc-world-map{height:165px;width:100%;max-width:100%;background:#101722;border-radius:7px;overflow:hidden;z-index:0}
.gc-taverne-2026 .gc-world-map .leaflet-control-zoom a{background:#19222c;color:#ff9c49;border-color:#34414f}
.gc-taverne-2026 .gc-world-pin{background:#ff9c49;border:2px solid #ffb873;border-radius:50%;box-shadow:0 0 10px #ff8d3990;overflow:hidden;text-align:center;color:#16191d;font-weight:bold;line-height:28px}
.gc-taverne-2026 .gc-world-pin img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.gc-taverne-2026 .gc-world-message{font-size:10px;color:#aebac8;margin:9px 0;min-height:15px}
.gc-taverne-2026 .gc-world-form{display:flex;gap:5px;min-width:0}
.gc-taverne-2026 .gc-world-form input{box-sizing:border-box;min-width:0;width:0;flex:1;background:#0d1219;color:white;border:1px solid #384656;border-radius:5px;padding:7px;font-size:11px}
.gc-taverne-2026 .gc-world-form button{flex:0 0 auto;background:#f18d35;color:#151515;border:0;border-radius:5px;font-weight:700;padding:6px;font-size:10px;cursor:pointer}
.gc-taverne-2026 .gc-world-form button:disabled{opacity:.5}
.gc-taverne-2026 .gc-world-remove{background:transparent;color:#f6ad69;border:0;font-size:10px;padding:6px 0;cursor:pointer}
.gc-taverne-2026 .gc-world-privacy{font-size:9px!important;min-height:0!important;margin:8px 0 0!important;color:#82909e!important}
.gc-taverne-2026 .gc-world-mount [hidden]{display:none!important}


/* Autonomous vector world map: no tile providers or API keys. */
.gc-taverne-2026 .gc-world-map{position:relative;isolation:isolate;touch-action:pan-y;background:radial-gradient(ellipse at 50% 55%,#172d3d 0%,#0a1522 76%);cursor:grab}
.gc-taverne-2026 .gc-world-map.dragging{cursor:grabbing;touch-action:none}
.gc-taverne-2026 .gc-world-viewport{position:absolute;transform:none;user-select:none;pointer-events:none}
.gc-taverne-2026 .gc-world-land{display:block;width:100%;height:100%;pointer-events:none;user-select:none;filter:drop-shadow(0 0 4px #e27c2320)}
.gc-taverne-2026 .gc-world-pins{position:absolute;inset:0;pointer-events:none}
.gc-taverne-2026 .gc-world-pin{position:absolute;transform:translate(-50%,-50%);width:29px;height:29px;display:flex;align-items:center;justify-content:center;padding:0;pointer-events:auto;cursor:pointer;z-index:2;background:#ff9c49;border:2px solid #ffb873;border-radius:50%;box-shadow:0 0 0 3px #ff993322,0 0 12px #ff8d39b0;overflow:visible;text-align:center;color:#16191d;font-size:12px;font-weight:800}
.gc-taverne-2026 .gc-world-pin img{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%}
.gc-taverne-2026 .gc-world-pin-tip{display:none;position:absolute;bottom:calc(100% + 9px);left:50%;transform:translateX(-50%);background:#101923;border:1px solid #ef923b;border-radius:6px;color:#ffe1c0;padding:5px 8px;white-space:nowrap;font-size:11px;font-weight:700;box-shadow:0 4px 16px #000a;pointer-events:none;z-index:10}
.gc-taverne-2026 .gc-world-pin:hover .gc-world-pin-tip,.gc-taverne-2026 .gc-world-pin:focus .gc-world-pin-tip,.gc-taverne-2026 .gc-world-pin.gc-world-selected .gc-world-pin-tip{display:block}
.gc-taverne-2026 .gc-world-controls{position:absolute;left:9px;top:9px;display:flex;flex-direction:column;z-index:5;background:#101a25;border:1px solid #344c5a;border-radius:5px;overflow:hidden;box-shadow:0 2px 8px #0008}
.gc-taverne-2026 .gc-world-controls button{display:block;width:30px;height:29px;border:0;border-bottom:1px solid #344c5a;background:#14202b;color:#ff9c49;font-size:21px;line-height:1;cursor:pointer;font-weight:700}
.gc-taverne-2026 .gc-world-controls button:last-child{border-bottom:0}
.gc-taverne-2026 .gc-world-coords{position:absolute;right:7px;bottom:6px;color:#e49b5a;font-size:7px;letter-spacing:.13em;opacity:.75;pointer-events:none}
.gc-taverne-2026 .gc-world-stars{position:absolute;inset:0;background-image:radial-gradient(#8cabb655 .7px,transparent 1px);background-size:19px 19px;opacity:.25;pointer-events:none}

/* Zoom controls intentionally removed: Ctrl + wheel zooms at pointer position. */
.gc-taverne-2026 .gc-world-map{overscroll-behavior:contain}

/* GamerCoop World premium accents: non-intrusive, independent of map interactions. */
.gc-taverne-2026 .gc-world-map{border:1px solid #304656;box-shadow:inset 0 0 28px #02091390}
.gc-taverne-2026 .gc-world-map:after{content:"";position:absolute;inset:0;z-index:4;pointer-events:none;box-shadow:inset 0 0 32px #020913aa;border-radius:7px}
.gc-taverne-2026 .gc-world-grid{position:absolute;inset:0;pointer-events:none;opacity:.10;background:repeating-linear-gradient(0deg,transparent 0 24px,#7194a0 25px),repeating-linear-gradient(90deg,transparent 0 24px,#7194a0 25px)}
.gc-taverne-2026 .gc-world-viewport:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,transparent 5%,#e98b2710 48%,transparent 68%);background-size:260% 100%;animation:gcWorldShine 14s ease-in-out infinite}
.gc-taverne-2026 .gc-world-corner{position:absolute;z-index:5;width:11px;height:11px;pointer-events:none;border-color:#e78e3d77}
.gc-taverne-2026 .gc-world-tl{top:5px;left:5px;border-top:1px solid;border-left:1px solid}
.gc-taverne-2026 .gc-world-tr{top:5px;right:5px;border-top:1px solid;border-right:1px solid}
.gc-taverne-2026 .gc-world-bl{bottom:5px;left:5px;border-bottom:1px solid;border-left:1px solid}
.gc-taverne-2026 .gc-world-br{bottom:5px;right:5px;border-bottom:1px solid;border-right:1px solid}
.gc-taverne-2026 .gc-world-pin:after{content:"";position:absolute;inset:-5px;border:1px solid #ffac59;border-radius:50%;animation:gcWorldPulse 4s ease-out infinite;pointer-events:none}
.gc-taverne-2026 .gc-world-pin:hover{box-shadow:0 0 0 5px #ff993333,0 0 20px #ff9c49}
.gc-taverne-2026 .gc-world-cluster{background:linear-gradient(135deg,#ffc17d,#ed8731);border-color:#ffd1a0}
.gc-taverne-2026 .gc-world-pin.gc-world-selected{z-index:20}
.gc-taverne-2026 .gc-world-cluster .gc-world-pin-tip{min-width:155px;max-width:230px;white-space:normal;text-align:left;max-height:155px;overflow:auto;pointer-events:auto}
.gc-taverne-2026 .gc-world-cluster-list{display:flex;flex-direction:column;gap:5px;margin-top:7px}
.gc-taverne-2026 .gc-world-cluster-member{display:flex;align-items:center;gap:6px;white-space:nowrap;font-size:10px;font-weight:500}
.gc-taverne-2026 .gc-world-cluster-member img{width:19px;height:19px;border-radius:50%;object-fit:cover}
@keyframes gcWorldPulse{0%{opacity:.55;transform:scale(.8)}70%,100%{opacity:0;transform:scale(2.4)}}
@keyframes gcWorldShine{0%,65%{background-position:150% 0}100%{background-position:-150% 0}}
@media(prefers-reduced-motion:reduce){.gc-taverne-2026 .gc-world-pin:after,.gc-taverne-2026 .gc-world-viewport:after{animation:none!important}}

/* Keep hovered player names above adjacent avatar pins. */
.gc-taverne-2026 .gc-world-pin:hover,.gc-taverne-2026 .gc-world-pin:focus-visible{z-index:50}
.gc-taverne-2026 .gc-world-pin.gc-world-selected{z-index:60}
