.jucks-fuchs {
  position: absolute;
  right: 0;
  bottom: 0;
  height: 180px;
  width: auto;
	z-index:20;
}

.jucks-avatar {
  width: 280px;
  height: 250px;
  display: block;
  overflow: hidden;
}

.jucks-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.jucks-corner {
position: absolute;
    top: 95px;
    left: 150px;
    width: 300px;
  height: auto;
  z-index: 10;
  pointer-events: none;
}

/*Marauders Schabernack*/ 
 .map-peek {
    position: absolute;
    top: -9px;
    left: 1125px;
    height: 50px;
    width: auto;
    cursor: pointer;
    z-index: 10;
    filter: drop-shadow(0 4px 8px rgba(0,0,0,0.4));
  }

 
  /* ====== OVERLAY ====== */
  .map-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(10,8,4,0.85);
    z-index: 1000;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(4px);
    animation: fade-overlay 0.4s ease;
  }
 
  .map-overlay.active { display: flex; }
 
  @keyframes fade-overlay {
    from { opacity: 0; }
    to { opacity: 1; }
  }
 
  /* ====== MAP CONTAINER ====== */
  .map-container {
    position: relative;
    width: 650px;
    max-width: 92vw;
    cursor: pointer;
    perspective: 800px;
  }
 
  /* ====== CLOSED STATE ====== */
  .map-closed {
    position: relative;
    background: linear-gradient(135deg, #d4b483 0%, #c4a265 20%, #dcc591 40%, #c9a84c 60%, #b8944a 80%, #d4b483 100%);
    border-radius: 6px;
    /*padding: 60px 40px;*/
    text-align: center;
    box-shadow: 0 4px 20px rgba(0,0,0,0.5), inset 0 0 60px rgba(139,109,56,0.3), inset 0 0 120px rgba(80,50,10,0.15);
    transition: opacity 0.6s ease, transform 0.6s ease;
    overflow: hidden;
    cursor: pointer;
  }
 
  .map-closed::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
      repeating-linear-gradient(0deg, transparent, transparent 3px, rgba(120,80,20,0.03) 3px, rgba(120,80,20,0.03) 4px),
      repeating-linear-gradient(90deg, transparent, transparent 5px, rgba(100,70,15,0.02) 5px, rgba(100,70,15,0.02) 6px);
    pointer-events: none;
  }
 
  .map-closed::after {
    content: '';
    position: absolute;
    inset: 8px;
    border: 1.5px solid rgba(139,90,30,0.4);
    border-radius: 3px;
    pointer-events: none;
  }
 
  .map-closed .seal {
    width: 80px;
    height: 80px;
    margin: 0 auto 30px;
    border-radius: 50%;
    background: radial-gradient(circle at 35% 35%, #8b1a1a, #5c0e0e 60%, #3a0808);
    box-shadow: 0 3px 10px rgba(0,0,0,0.4), inset 0 1px 3px rgba(200,100,100,0.3);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
  }
 
  .seal::before {
    content: 'M';
    font-family: var(--font-manufacturing);
    font-size: 42px;
    color: rgba(212,180,131,0.8);
    text-shadow: 0 1px 2px rgba(0,0,0,0.5);
  }
 
  .seal::after {
    content: '';
    position: absolute;
    inset: 4px;
    border-radius: 50%;
    border: 1.5px solid rgba(212,180,131,0.3);
  }
 
  .map-closed h2 {
  font-family: var(--font-january);
    font-size: 14px;
    font-weight: 400;
    color: #5a3e1b;
    letter-spacing: 4px;
    text-transform: uppercase;
    margin-bottom: 10px;
  }
 
  .map-closed h1 {
     font-family: var(--font-manufacturing);
    font-size: 34px;
    color: #3d2a0f;
    margin-bottom: 20px;
    line-height: 1.3;
    text-shadow: 0 1px 0 rgba(212,180,131,0.5);
  }
 
  .map-closed .prompt {
    font-family: var(--font-january);
    font-style: italic;
    font-size: 15px;
    color: #6b4c2a;
    opacity: 0;
    animation: pulse-prompt 4s ease-in-out infinite 0.8s;
  }
 
  @keyframes pulse-prompt {
    0%, 100% { opacity: 0; }
    50% { opacity: 1; }
  }
 
  /* ====== OPEN STATE ====== */
  .map-open {
    position: relative;
    background: linear-gradient(160deg, #dcc591 0%, #d4b483 30%, #c9a84c 50%, #d4b483 70%, #dcc591 100%);
    border-radius: 4px;
    padding: 35px 35px;
    box-shadow: 0 8px 40px rgba(0,0,0,0.6), inset 0 0 80px rgba(139,109,56,0.25);
    opacity: 0;
    transform: scale(0.95);
    transition: opacity 0.8s ease 0.3s, transform 0.8s ease 0.3s;
    pointer-events: none;
    display: none;
    overflow-y: auto;
    max-height: 60vh;
    padding-bottom: 45px;
  }
 
  .map-open-inner {
    position: relative;
    z-index: 1;
  }
 
  .map-open .header-text {
    text-align: center;
    margin-bottom: 20px;
  }
 
  .map-open .header-text .messrs {
    font-family: var(--font-january);
    font-size: 10px;
    letter-spacing: 5px;
    text-transform: uppercase;
    color: #7a5a2e;
    margin-bottom: 8px;
  }
 
  .map-open .header-text h1 {
  font-family: var(--font-manufacturing);
    font-size: 44px;
    font-weight: 700;
    color: #3d2a0f;
    margin-bottom: 6px;
	  line-height:30px;
  }

 
  .map-open .divider {
    display: flex;
    align-items: center;
    gap: 15px;
    margin: 15px 0;
  }
 
  .map-open .divider::before,
  .map-open .divider::after {
    content: '';
    flex: 1;
    height: 1px;
    background: linear-gradient(90deg, transparent, #8b6d3a, transparent);
  }
 
  .map-open .divider span {
    font-family: 'Cinzel Decorative', serif;
    font-size: 16px;
    color: #7a5a2e;
  }
 
  /* Roast section */
  .roast-section { margin: 10px 0; }
 
  .roast-title {
 font-family: var(--font-anticyclone);
    font-size: 11px;
    letter-spacing: 4px;
    text-transform: uppercase;
    color: #7a5a2e;
    text-align: center;
  }
 
  .roast-entries {
    display: flex;
    flex-direction: column;
    gap: 10px;
  }
 
  .roast-entry {
    padding: 8px 12px;
    background: rgba(100,70,20,0.05);
    border-left: 2px solid rgba(139,90,30,0.25);
    border-radius: 0 4px 4px 0;
    opacity: 0;
  }
 
  .map-container.opened .roast-entry {
    animation: reveal-entry 0.5s ease forwards;
  }
 
  .map-container.opened .roast-entry:nth-child(1) { animation-delay: 1.0s; }
  .map-container.opened .roast-entry:nth-child(2) { animation-delay: 1.3s; }
  .map-container.opened .roast-entry:nth-child(3) { animation-delay: 1.6s; }
  .map-container.opened .roast-entry:nth-child(4) { animation-delay: 1.9s; }
  .map-container.opened .roast-entry:nth-child(5) { animation-delay: 2.2s; }
  .map-container.opened .roast-entry:nth-child(6) { animation-delay: 2.5s; }
 
  @keyframes reveal-entry {
    from { opacity: 0; transform: translateX(-8px); }
    to { opacity: 1; transform: translateX(0); }
  }
 
  .roast-name {
    font-family: var(--font-hikasami);
    font-size: 13px;
    font-weight: 700;
    color: #3d2a0f;
    display: block;
  }
 
  .roast-comment {
    font-family: var(--font-hikasami);
    font-size: 12px;
    color: #6b4c2a;
    display: block;
    line-height: 1.2;
  }
 
  /* Oath */
  .oath {
    text-align: center;
    margin-top: 20px;
    padding-top: 15px;
    border-top: 1px solid rgba(139,90,30,0.2);
  }
 
  .oath p.oath-text {
    font-family: var(--font-anticyclone);
    font-style: italic;
    font-size: 14px;
    color: #6b4c2a;
    line-height: 1.8;
    opacity: 0;
  }
 
  .map-container.opened .oath p.oath-text {
    animation: fade-oath 1s ease forwards 3.2s;
  }
 
  @keyframes fade-oath {
    from { opacity: 0; }
    to { opacity: 1; }
  }
 
  .oath .close-text {
    font-family:var(--font-anticyclone);
    font-size: 13px;
    color: #8b6d3a;
    margin-top: 15px;
    cursor: pointer;
    opacity: 0;
    transition: color 0.3s;
    display: inline-block;
    padding: 6px 16px;
    position: relative;
    z-index: 10;
  }
 
  .map-container.opened .oath .close-text {
    animation: fade-oath 1s ease forwards 4s;
  }
 
  .oath .close-text:hover { color: #3d2a0f; }
 
 
  /* ====== STATES ====== */
  .map-container.opened .map-closed {
    opacity: 0;
    transform: rotateX(90deg);
    pointer-events: none;
  }
 
  .map-container.opened .map-open {
    display: block;
    opacity: 1;
    transform: scale(1);
    pointer-events: auto;
  }
 
  .map-container.opened .footprints { opacity: 1; }