/* Şeker Resif - Hazine Haritası */
.mapov{position:absolute;inset:0;display:flex;flex-direction:column;background:#1d3f7a;z-index:30;padding-top:env(safe-area-inset-top,0px)}
.mapov[hidden]{display:none!important}
.mhead{display:flex;align-items:center;gap:8px;padding:10px 12px;background:linear-gradient(#f4e2c0,#e6c996);border-bottom:3px solid #b08a52;box-shadow:0 3px 10px rgba(0,0,0,.25);color:#5a3418}
.mhead h3{font:800 21px/1.1 var(--display,'Baloo 2',sans-serif);flex:1;margin:0}
.mhead h3 small{display:block;font:700 12px var(--body,'Nunito',sans-serif);color:#8a5a34}
.mhead .x{background:#fff4e0;color:#5a3418;border:2px solid #b08a52}
.mscroll{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
#mworld svg{display:block;width:100%;height:auto}
.mcard{background:linear-gradient(#fffaf0,#fff1d6);color:#3b1f55;border-radius:20px 20px 0 0;padding:12px 14px calc(14px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:8px;box-shadow:0 -6px 20px rgba(0,0,0,.3);border-top:3px solid #e6c996}
.mrow{display:flex;gap:10px;align-items:center}
.mic{width:44px;height:44px;flex:none;border-radius:14px;display:grid;place-items:center;font:800 20px var(--display,'Baloo 2',sans-serif);color:#fff;background:linear-gradient(#ff9fb4,#ff5d73);box-shadow:0 3px 0 rgba(0,0,0,.2)}
.mic-mon{background:linear-gradient(#8a7ab8,#4a3a7e)}.mic-sun{background:linear-gradient(#ffc15e,#ff7a6b)}
.mtx{display:flex;flex-direction:column;min-width:0}.mtx b{font:800 18px var(--display,'Baloo 2',sans-serif)}.mtx small{font-size:12.5px;color:#7a6a8b}
.mchips{display:flex;flex-wrap:wrap;gap:6px}
.chip{font:700 12px var(--body,'Nunito',sans-serif);padding:4px 10px;border-radius:999px;background:#efe4ff;color:#5a2fb0}
.chip.lock{background:#e4e8ee;color:#5a6070}.chip.soon{background:#fff0c0;color:#8a6a1a}.chip.won{background:#dff8d6;color:#2a7a3a}
.mstat{display:flex;justify-content:space-between;font-size:13px;color:#5a4a6b}
.mbar{height:8px;border-radius:4px;background:#eadff5;overflow:hidden}.mbar i{display:block;height:100%;background:linear-gradient(90deg,#7be34f,#3fc85a);border-radius:4px}
.mhint{margin:0;font-size:13px;color:#8a5a34;font-weight:700;text-align:center}
.mnote{margin:0;font-size:11px;color:#9a8aab;text-align:center}
.isl{cursor:pointer;outline:none}
.isl .art{transition:transform .15s}
.isl:hover .art,.isl:focus-visible .art{transform:scale(1.04)}
.isl.locked .art{filter:grayscale(.75) brightness(.9)}
.isl .glow{animation:mglow 1.6s ease-in-out infinite}
@keyframes mglow{0%,100%{opacity:.9}50%{opacity:.35}}
.mapsvg .waves{animation:mwave 6s linear infinite}
@keyframes mwave{from{transform:translateX(0)}to{transform:translateX(-80px)}}
.mapsvg .bob{animation:mbob 3s ease-in-out infinite}
@keyframes mbob{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
.mapsvg .float{animation:mfloat 3.6s ease-in-out infinite}
@keyframes mfloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
.mapsvg .bounce{animation:mbounce 1s ease-in-out infinite}
@keyframes mbounce{0%,100%{transform:translateY(0)}50%{transform:translateY(8px)}}
.mapsvg .blink{animation:mblink 1.8s ease-in-out infinite}
@keyframes mblink{0%,100%{opacity:1}50%{opacity:.35}}
.mapsvg .puff{animation:mpuff 3s ease-in-out infinite}
@keyframes mpuff{0%{transform:translateY(0);opacity:.8}100%{transform:translateY(-14px);opacity:0}}
.mapsvg .spin{animation:mspin 4s linear infinite;transform-box:fill-box;transform-origin:center}
@keyframes mspin{to{transform:rotate(360deg)}}
.mapsvg .bat{animation:mfloat 1.2s ease-in-out infinite}
.mapsvg .twk{animation:mblink 2.4s ease-in-out infinite}
.mapsvg .fog{animation:mfog 7s ease-in-out infinite;opacity:.92}
@keyframes mfog{0%,100%{transform:translateX(0)}50%{transform:translateX(8px)}}
.mboat .bob{animation-duration:2.2s}
@media (prefers-reduced-motion:reduce){.mapsvg *{animation:none!important}}
