/* 7R World Explorer Library 1.21.1 hotfix */
.worldmap-library-page{--wm-gold:#d9a83d;--wm-line:rgba(218,168,61,.34);--wm-bg:#090805;--wm-card:#0e0b08;color:#f5efe2;background:#050505}
.worldmap-library-shell{width:min(1400px,calc(100% - 28px));margin:0 auto;padding:4px 0 22px}
.worldmap-library-head{min-height:88px;border:1px solid var(--wm-line);border-radius:0 0 18px 18px;background:linear-gradient(180deg,rgba(28,18,10,.94),rgba(8,8,7,.98));display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 18px 14px;box-shadow:0 16px 36px rgba(0,0,0,.24)}
.worldmap-library-title .eyebrow{margin:0 0 2px;color:#cf9f35;font-size:11px;font-weight:800;letter-spacing:.18em}
.worldmap-library-title h1{margin:0;font:700 clamp(29px,3.2vw,46px)/.98 Georgia,serif;color:#f4eee0}
.worldmap-library-title small{display:block;margin-top:6px;color:#a9a093;font-size:12px}
.worldmap-library-filters{display:flex;gap:8px;overflow-x:auto;max-width:58%;padding:2px 0;scrollbar-width:none}
.worldmap-library-filters::-webkit-scrollbar{display:none}
.worldmap-library-filters button{white-space:nowrap;border:1px solid rgba(216,166,58,.28);border-radius:999px;padding:8px 13px;background:#0a0907;color:#d7cdbd;font-size:11px;font-weight:700;cursor:pointer;transition:.18s ease}
.worldmap-library-filters button:hover,.worldmap-library-filters button.is-active{border-color:#e2b443;background:linear-gradient(180deg,#2b2110,#151006);color:#fff4d2;box-shadow:0 0 16px rgba(221,169,58,.12)}
.worldmap-library-empty{margin-top:18px;padding:30px;border:1px solid var(--wm-line);border-radius:16px;background:#0d0b08;display:grid;gap:6px;text-align:center;color:#bfb5a5}
.worldmap-library-empty strong{font-size:18px;color:#f0e5d0}
.worldmap-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px}
.worldmap-card{position:relative;min-width:0;overflow:hidden;border:1px solid rgba(218,168,61,.28);border-radius:15px;background:linear-gradient(180deg,#12100c,#090806 72%);box-shadow:0 14px 34px rgba(0,0,0,.28);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.worldmap-card:hover{transform:translateY(-3px);border-color:rgba(229,181,74,.58);box-shadow:0 20px 46px rgba(0,0,0,.36),0 0 28px rgba(214,157,44,.08)}
.worldmap-preview-link{display:block;text-decoration:none;color:inherit}
.worldmap-live-window{position:relative;aspect-ratio:16/8.8;overflow:hidden;background:radial-gradient(circle at 50% 45%,#1d2230 0,#0b0e13 54%,#070707 100%);isolation:isolate}
.worldmap-live-window::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.18) 65%,rgba(8,7,5,.78));pointer-events:none}
.worldmap-live-window::after{content:"";position:absolute;inset:0;z-index:2;background:repeating-linear-gradient(0deg,rgba(255,255,255,.015) 0 1px,transparent 1px 4px),radial-gradient(circle at 50% 50%,transparent 45%,rgba(0,0,0,.36) 100%);pointer-events:none;mix-blend-mode:screen;opacity:.52}
.worldmap-preview-frame{position:absolute;z-index:0;left:-18%;top:-22%;width:136%;height:146%;border:0;pointer-events:none;background:#101015;transform:scale(1.04);filter:saturate(.96) contrast(1.03) brightness(.88);opacity:0;transition:opacity .45s ease;animation:worldmapDriftA 22s ease-in-out infinite alternate}
.worldmap-card:nth-child(3n+2) .worldmap-preview-frame{animation-name:worldmapDriftB;animation-duration:26s}
.worldmap-card:nth-child(3n) .worldmap-preview-frame{animation-name:worldmapDriftC;animation-duration:24s}
.worldmap-card.is-preview-loaded .worldmap-preview-frame{opacity:1}
.worldmap-card:hover .worldmap-preview-frame{filter:saturate(1.04) contrast(1.05) brightness(.94);animation-duration:14s}
@keyframes worldmapDriftA{0%{transform:scale(1.04) translate3d(-1.6%,.8%,0)}100%{transform:scale(1.10) translate3d(2.2%,-1.6%,0)}}
@keyframes worldmapDriftB{0%{transform:scale(1.07) translate3d(1.8%,-.8%,0)}100%{transform:scale(1.03) translate3d(-2%,1.6%,0)}}
@keyframes worldmapDriftC{0%{transform:scale(1.03) translate3d(-.8%,-1.3%,0)}100%{transform:scale(1.09) translate3d(1.5%,1.2%,0)}}
.worldmap-preview-placeholder{position:absolute;inset:0;display:grid;place-items:center;color:rgba(230,214,180,.55);font:700 15px/1.2 Georgia,serif;letter-spacing:.08em;background:radial-gradient(circle at 40% 40%,rgba(54,67,83,.42),transparent 38%),linear-gradient(135deg,#12151b,#0a0b0e 58%,#151008)}
.worldmap-preview-placeholder::before,.worldmap-preview-placeholder::after{content:"";position:absolute;border:1px solid rgba(215,174,80,.14);border-radius:50%;animation:worldmapPulse 4.5s ease-in-out infinite}
.worldmap-preview-placeholder::before{width:38%;aspect-ratio:1}
.worldmap-preview-placeholder::after{width:62%;aspect-ratio:1;animation-delay:-2.2s}
@keyframes worldmapPulse{0%,100%{transform:scale(.92);opacity:.18}50%{transform:scale(1.08);opacity:.5}}
.worldmap-card.is-preview-loaded .worldmap-preview-placeholder{opacity:0;transition:opacity .4s ease;pointer-events:none}
.worldmap-live-badges{position:absolute;z-index:4;left:12px;top:11px;right:12px;display:flex;align-items:center;gap:7px;pointer-events:none}
.worldmap-live-badges span{display:inline-flex;align-items:center;gap:5px;border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:5px 9px;background:rgba(5,7,8,.78);backdrop-filter:blur(7px);font-size:10px;font-weight:800;letter-spacing:.06em;color:#efe8da}
.worldmap-live-badges .is-live{border-color:rgba(76,207,128,.42);color:#a9f1c4}.worldmap-live-badges .is-live::before{content:"";width:6px;height:6px;border-radius:50%;background:#54d58a;box-shadow:0 0 10px rgba(84,213,138,.8)}
.worldmap-live-badges .version{margin-left:auto;color:#d5bd84}
.worldmap-card-copy{padding:13px 14px 14px;position:relative}
.worldmap-card-copy::before{content:"";position:absolute;left:14px;right:14px;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(223,175,69,.48),transparent)}
.worldmap-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;color:#a99b84;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.worldmap-meta span+span::before{content:"·";margin-right:8px;color:#6f634f}
.worldmap-card h2{margin:7px 0 4px;font:700 clamp(19px,1.7vw,25px)/1.06 Georgia,serif;color:#f3ead9}
.worldmap-card h2 a{color:inherit;text-decoration:none}
.worldmap-card h2 a:hover{color:#ffe2a0}
.worldmap-card-copy p{margin:0;color:#c0b5a5;font-size:12px;line-height:1.45;min-height:34px}
.worldmap-card-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:12px}
.worldmap-core-info{display:flex;flex-wrap:wrap;gap:6px;color:#8f8578;font-size:10px}
.worldmap-core-info span{border:1px solid rgba(217,169,65,.17);border-radius:999px;padding:4px 7px;background:#0c0a07}
.worldmap-open{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;border:1px solid #9d721e;border-radius:9px;padding:7px 10px;background:linear-gradient(180deg,#30220d,#171006);color:#f5d88c;text-decoration:none;font-size:11px;font-weight:800;box-shadow:inset 0 1px rgba(255,255,255,.05)}
.worldmap-open:hover{border-color:#d7a432;color:#fff0b8;box-shadow:0 0 18px rgba(210,154,42,.12)}
.worldmap-personal{margin-top:9px;color:#7fbb9b;font-size:10px;min-height:14px}
.worldmap-personal:empty{display:none}
.worldmap-card[hidden]{display:none!important}
@media(max-width:1050px){.worldmap-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.worldmap-library-filters{max-width:55%}}
@media(max-width:720px){.worldmap-library-shell{width:min(100% - 14px,1400px)}.worldmap-library-head{min-height:76px;padding:10px 12px;align-items:flex-end}.worldmap-library-title h1{font-size:31px}.worldmap-library-title small{font-size:10px}.worldmap-library-filters{max-width:55%;gap:6px}.worldmap-library-filters button{padding:7px 10px;font-size:10px}.worldmap-grid{grid-template-columns:1fr;gap:10px;margin-top:10px}.worldmap-live-window{aspect-ratio:16/8.3}.worldmap-card-copy{padding:11px 12px 12px}.worldmap-card h2{font-size:21px}.worldmap-card-copy p{min-height:0}}
@media(max-width:490px){.worldmap-library-head{display:block}.worldmap-library-filters{max-width:none;margin-top:10px}.worldmap-library-title small{margin-top:4px}.worldmap-card-foot{align-items:center}.worldmap-core-info{max-width:68%}}
@media(prefers-reduced-motion:reduce){.worldmap-card,.worldmap-preview-frame,.worldmap-preview-placeholder::before,.worldmap-preview-placeholder::after{animation:none!important;transition:none!important}.worldmap-card:hover{transform:none}}
.worldmap-grid.has-one{grid-template-columns:minmax(0,560px)}
.worldmap-grid.has-two{grid-template-columns:repeat(2,minmax(0,1fr))}
.worldmap-library-loading{grid-column:1/-1;min-height:280px;border:1px solid rgba(218,168,61,.22);border-radius:15px;background:linear-gradient(180deg,#100d09,#080706);display:grid;place-items:center;align-content:center;gap:14px;color:#a99f90;font-size:12px}
.worldmap-library-loading span{width:34px;height:34px;border:2px solid rgba(217,168,61,.18);border-top-color:#d9a83d;border-radius:50%;animation:worldmapSpin .9s linear infinite}
@keyframes worldmapSpin{to{transform:rotate(360deg)}}
@media(max-width:1050px){.worldmap-grid.has-two{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.worldmap-grid.has-one,.worldmap-grid.has-two{grid-template-columns:1fr}.worldmap-library-loading{min-height:210px}}
@media(prefers-reduced-motion:reduce){.worldmap-library-loading span{animation:none}}

/* 1.21.2 · Frame-safe cards for maps that reject iframe embedding */
.worldmap-frame-safe-note{position:absolute;inset:auto 18px 18px 18px;z-index:3;padding:9px 12px;border:1px solid rgba(214,177,92,.45);border-radius:8px;background:rgba(9,10,12,.76);color:#dec68c;font:600 12px/1.2 Georgia,serif;text-align:center;pointer-events:none}.worldmap-card:has(.worldmap-frame-safe-note) .worldmap-preview-placeholder{opacity:.72}
