/* Mentine containerul relativ si blocheaza overflow */
.world-map-wrap {
    position: relative;
    overflow: hidden; 
}
.fm-map-container svg {
    z-index: 1;
    -webkit-user-select: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    -ms-user-select: none;
}
.fm-tooltip {
    display: none;
    position: absolute;
    z-index: 3;
    min-width: 200px;
}
.fm-tooltip-image {
    white-space: nowrap;
}
.fm-tooltip-image img {
    max-width: none;
}
.fm-tooltip-comment {
    font-size: 11px;
    font-family: arial;
    color: #000000;
}
.fm-tooltip-comment p {
    margin: 2px 0px 2px 0px;
}
.fm-tooltip-comment h1 {
    font-size: 20px;
    margin: 5px 0px 5px 0px;
    padding: 0px;
    border: none;
}
.fm-tooltip-comment h2 {
    font-size: 18px;
    margin: 4px 0px 4px 0px;
    padding: 0px;
    border: none;
}
.fm-tooltip-comment h3 {
    font-size: 16px;
    margin: 3px 0px 3px 0px;
    padding: 0px;
    border: none;
}
.fm-tooltip-frame {
    background-color: #fff;
    border: 2px solid #bbb;
    border-radius: 10px;
    padding: 5px;
    opacity: .99;
    max-width: 350px;
    min-width: 200px;
    border-collapse: separate;
    margin-bottom: 0 !important;
    line-height: 1.4;
    vertical-align: top;
    table-layout: auto;
}
.fm-tooltip-frame td {
    background-color:inherit;
    border: none;
    padding: 5px;
    vertical-align: top;
    margin: 0;
}
.fm-tooltip-name {
     color: #000;
    text-shadow: -1px 0 white, 0 1px white, 1px 0 white, 0 -1px white;
     font-size: 20px;
    font-weight:bold;
    padding: 5px;
    font-family: arial;
    line-height: 1;
}
.fm-tooltip-x {
    color: #444;
    font: 12px/100% arial, sans-serif;
    position: relative;
    text-decoration: none;
    text-shadow: 0 1px 0 #fff;
    z-index: 5;
    visibility: hidden;
    cursor: pointer;
    margin: -5px -5px 5px 5px;
    border-bottom: none !important;
    float: right;
}
.fm-tooltip-x img {
    width: 12px !important;
    padding:0 !important;
    margin:0 !important;
    border:0 !important; 
}
.fm-tooltip-x.fm-frozen-x,
.fm-tooltip-x.fm-mobile-x {
    visibility: visible;
}
.fm-scale {
    float: left;
    position: absolute;
    left: 0px;
    bottom: 0px;
    z-index: 2;
    margin: 10px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    -ms-user-select: none;
}
.fm-scale div {
    float: left;
}
.fm-scale a {
    display: block;
    float: left;
    font-size: 31px;
    font-weight: bold;
    line-height: 38px;
    text-align: center;
    cursor: pointer;
    color: #333;
    width: 41px;
    height: 37px;
    padding-top: 1px;
    border: 1px solid #e8e8e8;
    border-bottom: 1px solid #bbb;
    text-decoration: none;
    margin-right: 3px;
    border-radius: 2px;
    background: #fff;
    font-family: initial;
}
.fm-scale a:hover {
    color: #186ba3;
}
.fm-scale a.fm-inactive {
    cursor: default;
    color: #cdcdcd;
}
.fm-scale-display {
    clear: both;
    position: relative;
    left: 0px;
    z-index: 10;
    width: 100%;
    height: 1px;
    bottom: 0px;
    margin-bottom: 5px;
    background-color: #e8e8e8;
}
.fm-scale-display div {
    background-color: #237cbd;
    height: 1px;
    -webkit-transition: width ease-in-out .2s;
    transition: width ease-in-out .2s;
}
.fm-scale-buttons {
    clear: both;
}
.fm-no-events {
    pointer-events: none;
}
@media (max-width: 768px) {
    .fm-mobile-fixed .fm-tooltip-frame {
        max-width: 100%;
        width: 100%;
    }
    .fm-mobile-fixed .fm-tooltip-comment {
        width: 100%;
    }
    .fm-scale a { 
        width: 31px;
        height: 27px;
        font-size: 21px;
        line-height: 28px;
    }
}

/* ==========================================================================
   ---- FIX PENTRU ASCUNDERE WATERMARK/LOGO/BUTOANE "HTML5" DIN FLAMAP ---- 
   ========================================================================== */
#map-container > a,
#mini-map-container > a,
.fm-map-container > a,
.fm-scale,
.fm-scale-buttons,
.fm-scale-display,
[href*="fla-shop"],
[href*="flamap"] {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
    position: absolute !important;
    z-index: -9999 !important;
}

/* CHIRURGIA PE SVG (Solutia din ZapMuse) */
#map-container svg path[fill="#999999"],
#mini-map-container svg path[fill="#999999"],
.fm-map-container svg path[fill="#999999"] {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

#map-container svg text[fill="#111111"], 
#map-container svg text[fill="#333333"],
#mini-map-container svg text[fill="#111111"], 
#mini-map-container svg text[fill="#333333"],
.fm-map-container svg text[fill="#111111"], 
.fm-map-container svg text[fill="#333333"] {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
}
/* ---- SFÂRȘIT FIX HARTA ---- */

/* ==========================================================================
   GLOBAL TOUR PAGE STYLES (/world.php)
   ========================================================================== */

.page-hero { 
    text-align: center; 
    padding: 40px 20px; 
    background: #141414; 
    border-bottom: 1px solid var(--border); 
}
.page-hero h1 { 
    font-size: 28px; 
    color: #fff; 
    margin-bottom: 15px; 
    font-weight: 900; 
    letter-spacing: 1px; 
}
.page-hero p { 
    color: var(--muted); 
    max-width: 800px; 
    margin: 0 auto; 
    line-height: 1.6; 
    font-size: 15px; 
}
.seo-content-block { 
    margin-bottom: 50px; 
}
.seo-content-block h2 { 
    color: #fff; 
    font-size: 22px; 
    border-bottom: 2px solid var(--cta); 
    padding-bottom: 10px; 
    margin-bottom: 20px; 
    display: inline-block; 
}
.seo-content-block h3 { 
    color: #cbd5e1; 
    font-size: 18px; 
    margin-top: 25px; 
    margin-bottom: 10px; 
}
.seo-content-block p { 
    color: var(--text); 
    line-height: 1.6; 
    font-size: 15px; 
    margin-bottom: 15px; 
}
.seo-content-block.highlight-block {
    background: #141518; 
    padding: 30px; 
    border-radius: 8px; 
    border: 1px solid #1e293b;
}

/* Country Grid */
.country-grid { 
    display: grid; 
    grid-template-columns: repeat(6, 1fr); 
    gap: 15px; 
}
.country-card { 
    background: var(--panel); 
    border: 1px solid var(--border); 
    border-radius: 6px; 
    padding: 15px 10px; 
    text-align: center; 
    transition: transform 0.2s ease, border-color 0.2s ease; 
    text-decoration: none; 
    display: flex; 
    flex-direction: column; 
    align-items: center; 
    gap: 8px; 
}
.country-card:hover { 
    transform: translateY(-4px); 
    border-color: var(--link); 
    box-shadow: 0 4px 15px rgba(225, 29, 72, 0.15); 
}
.country-icon-wrap { 
    height: 24px; 
    display: flex; 
    align-items: center; 
    justify-content: center; 
}
.country-card img { 
    border-radius: 2px; 
    box-shadow: 0 2px 5px rgba(0,0,0,0.5); 
}
.country-name { 
    color: #fff; 
    font-size: 13px; 
    font-weight: bold; 
    line-height: 1.2; 
    margin: 0; 
}
.country-count { 
    color: var(--cta); 
    font-size: 12px; 
    font-weight: 900; 
}

@media (max-width: 1024px) { 
    .country-grid { grid-template-columns: repeat(4, 1fr); } 
    #map-container { height: 450px; } 
}
@media (max-width: 768px) { 
    .country-grid { grid-template-columns: repeat(3, 1fr); } 
    #map-container { height: 350px; } 
}
@media (max-width: 480px) { 
    .country-grid { grid-template-columns: repeat(2, 1fr); } 
    #map-container { height: 250px; } 
}

/* Tooltip Custom pentru Dark Mode */
.fm-tooltip-frame {
    background-color: #1a1a1a !important;
    border: 1px solid #333 !important;
    color: #fff !important;
}
.fm-tooltip-name {
    color: #0ea5e9 !important;
    text-shadow: none !important;
}