.em-card{display:grid;grid-template-columns:minmax(320px,1.05fr) minmax(520px,1fr);overflow:hidden;border:1px solid rgba(67,174,221,.45);border-radius:18px;background:#071522;box-shadow:0 18px 45px rgba(0,0,0,.28);margin:18px 0;color:#d8e7ef}.em-card-image{min-height:310px;position:relative;overflow:hidden}.em-card-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.em-image-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,12,20,.2),rgba(4,12,20,.86))}.em-card-copy{position:absolute;inset:0;padding:38px;display:flex;flex-direction:column;justify-content:center;align-items:flex-end;text-align:right}

.em-kicker{font-size:15px;letter-spacing:.20em;color:var(--text);text-align:center;margin-top:15px;text-transform:uppercase}.em-title{font-family:Cambria,Georgia, serif;font-size:34px;line-height:1.05;color:#f0b07a;text-transform:uppercase;margin:8px 0}

.em-dates{font-size:13px;letter-spacing:.08em;margin-top:-15px;color:var(--text)}.em-button{display:inline-block;margin-top:22px;padding:11px 20px;border:1px solid #c66b37;border-radius:5px;background:rgba(71,24,10,.65);color:#f2b57e!important;text-decoration:none!important;font-weight:700;letter-spacing:.05em;cursor:pointer}.em-card-stats{padding:28px 25px 18px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center}.em-meter{width:31%;min-width:145px;text-align:center;position:relative}.em-meter+.em-meter{border-left:1px solid rgba(198,107,55,.32)}.em-meter-label{font-size:12px;letter-spacing:.14em;color:#76c9ee}.em-lobster-frame{width:120px;height:150px;margin:10px auto 2px;border:1px solid rgba(101,197,239,.7);border-radius:50%;position:relative}.em-lobster{width:92px;height:125px;position:absolute;left:14px;top:12px;overflow:hidden}.em-lobster svg{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#62c9f3;stroke-width:2;z-index:2}.em-lobster-fill{position:absolute;left:0;right:0;bottom:0;height:0;background:#df3f28;z-index:1;transition:height .5s ease;clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}.em-lobster-fill:after{content:"";position:absolute;inset:0;background:rgba(223,63,40,.9);mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 150'%3E%3Cpath fill='white' d='M60%2042%20M56%2043%20C49%2031%2043%2020%2035%2012%20M64%2043%20C71%2031%2077%2020%2085%2012%20M52%2045%20C43%2043%2034%2039%2028%2032%20C20%2023%2019%2013%2024%207%20C34%209%2041%2015%2044%2023%20C46%2029%2044%2034%2040%2038%20C47%2036%2052%2038%2056%2042%20M68%2045%20C77%2043%2086%2039%2092%2032%20C100%2023%20101%2013%2096%207%20C86%209%2079%2015%2076%2023%20C74%2029%2076%2034%2080%2038%20C73%2036%2068%2038%2064%2042%20M60%2039%20C50%2039%2045%2047%2045%2058%20C45%2069%2050%2077%2060%2080%20C70%2077%2075%2069%2075%2058%20C75%2047%2070%2039%2060%2039%20Z%20M47%2054%20L34%2048%20M73%2054%20L86%2048%20M46%2061%20L31%2059%20M74%2061%20L89%2059%20M47%2068%20L32%2072%20M73%2068%20L88%2072%20M50%2076%20L36%2084%20M70%2076%20L84%2084%20M52%2080%20C50%2088%2050%2094%2051%20100%20L69%20100%20C70%2094%2070%2088%2068%2080%20M51%20101%20L69%20101%20L68%20109%20L52%20109%20Z%20M52%20111%20L68%20111%20L67%20119%20L53%20119%20Z%20M54%20121%20L66%20121%20L65%20129%20L55%20129%20Z%20M56%20131%20L64%20131%20L63%20137%20L57%20137%20Z%20M60%20137%20L48%20146%20L55%20134%20M60%20137%20L72%20146%20L65%20134%20M60%20137%20L60%20148%20'/%3E%3C/svg%3E") center/contain no-repeat}.em-percent{font-family:Georgia,serif;font-size:26px;color:#f07b51}.em-value{font-size:11px;color:#cbd4d9}.em-card-bottom{width:100%;margin-top:15px;padding-top:12px;border-top:1px solid rgba(198,107,55,.32);text-align:center;font-size:10px;letter-spacing:.08em;color:#64c0e7}.em-page{max-width:1150px;margin:20px auto}.em-page-head{display:flex;justify-content:space-between;gap:25px;padding:28px;border:1px solid rgba(67,174,221,.35);border-radius:16px;background:#081725}.em-page h1,.em-page h2{font-family: Cambria, Georgia, serif;color:#eaa06d}.em-description{margin-top:14px;max-width:760px;line-height:1.65}.em-bigstats{display:flex;justify-content:center;background:#071522;margin:18px 0;padding:25px;border-radius:16px}.em-bigstats .em-meter{max-width:250px}.em-reveal,.em-ranking{background:#081725;border-radius:16px;padding:25px;margin:18px 0}.em-reveal-grid{display:grid;grid-template-columns:repeat(5,1fr);aspect-ratio:5/3.3;overflow:hidden;border-radius:12px;background:#02070b}.em-reveal-cell{position:relative;overflow:hidden}.em-reveal-cell img{position:absolute;width:500%;height:400%;max-width:none}.em-reveal-cell.locked img{display:none}.em-reveal-cell.locked:after{content:"?";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#07131e;color:rgba(101,197,239,.18);font:700 24px Georgia}.em-reveal-note{text-align:center;margin-top:12px;color:#78c6e8}.em-joined{padding:12px 18px;border:1px solid var(--farbe7);border-radius:6px;color:var(--farbe7)}.em-rank{width:50px;text-align:center;font-weight:bold}@media(max-width:850px){.em-card{grid-template-columns:1fr}.em-card-copy{align-items:flex-start;text-align:left}.em-card-stats{gap:10px}.em-meter{width:30%}.em-page-head{display:block}.em-join{margin-top:20px}}@media(max-width:560px){.em-meter{width:100%;border-left:0!important}.em-bigstats{display:block}.em-card-stats{display:block}.em-card-stats .em-meter{width:100%;margin:15px auto}}
.em-fill-0{height:0%}
.em-fill-1{height:1%}
.em-fill-2{height:2%}
.em-fill-3{height:3%}
.em-fill-4{height:4%}
.em-fill-5{height:5%}
.em-fill-6{height:6%}
.em-fill-7{height:7%}
.em-fill-8{height:8%}
.em-fill-9{height:9%}
.em-fill-10{height:10%}
.em-fill-11{height:11%}
.em-fill-12{height:12%}
.em-fill-13{height:13%}
.em-fill-14{height:14%}
.em-fill-15{height:15%}
.em-fill-16{height:16%}
.em-fill-17{height:17%}
.em-fill-18{height:18%}
.em-fill-19{height:19%}
.em-fill-20{height:20%}
.em-fill-21{height:21%}
.em-fill-22{height:22%}
.em-fill-23{height:23%}
.em-fill-24{height:24%}
.em-fill-25{height:25%}
.em-fill-26{height:26%}
.em-fill-27{height:27%}
.em-fill-28{height:28%}
.em-fill-29{height:29%}
.em-fill-30{height:30%}
.em-fill-31{height:31%}
.em-fill-32{height:32%}
.em-fill-33{height:33%}
.em-fill-34{height:34%}
.em-fill-35{height:35%}
.em-fill-36{height:36%}
.em-fill-37{height:37%}
.em-fill-38{height:38%}
.em-fill-39{height:39%}
.em-fill-40{height:40%}
.em-fill-41{height:41%}
.em-fill-42{height:42%}
.em-fill-43{height:43%}
.em-fill-44{height:44%}
.em-fill-45{height:45%}
.em-fill-46{height:46%}
.em-fill-47{height:47%}
.em-fill-48{height:48%}
.em-fill-49{height:49%}
.em-fill-50{height:50%}
.em-fill-51{height:51%}
.em-fill-52{height:52%}
.em-fill-53{height:53%}
.em-fill-54{height:54%}
.em-fill-55{height:55%}
.em-fill-56{height:56%}
.em-fill-57{height:57%}
.em-fill-58{height:58%}
.em-fill-59{height:59%}
.em-fill-60{height:60%}
.em-fill-61{height:61%}
.em-fill-62{height:62%}
.em-fill-63{height:63%}
.em-fill-64{height:64%}
.em-fill-65{height:65%}
.em-fill-66{height:66%}
.em-fill-67{height:67%}
.em-fill-68{height:68%}
.em-fill-69{height:69%}
.em-fill-70{height:70%}
.em-fill-71{height:71%}
.em-fill-72{height:72%}
.em-fill-73{height:73%}
.em-fill-74{height:74%}
.em-fill-75{height:75%}
.em-fill-76{height:76%}
.em-fill-77{height:77%}
.em-fill-78{height:78%}
.em-fill-79{height:79%}
.em-fill-80{height:80%}
.em-fill-81{height:81%}
.em-fill-82{height:82%}
.em-fill-83{height:83%}
.em-fill-84{height:84%}
.em-fill-85{height:85%}
.em-fill-86{height:86%}
.em-fill-87{height:87%}
.em-fill-88{height:88%}
.em-fill-89{height:89%}
.em-fill-90{height:90%}
.em-fill-91{height:91%}
.em-fill-92{height:92%}
.em-fill-93{height:93%}
.em-fill-94{height:94%}
.em-fill-95{height:95%}
.em-fill-96{height:96%}
.em-fill-97{height:97%}
.em-fill-98{height:98%}
.em-fill-99{height:99%}
.em-fill-100{height:100%}
.em-cell-0 img{left:-0%;top:-0%}
.em-cell-1 img{left:-100%;top:-0%}
.em-cell-2 img{left:-200%;top:-0%}
.em-cell-3 img{left:-300%;top:-0%}
.em-cell-4 img{left:-400%;top:-0%}
.em-cell-5 img{left:-0%;top:-100%}
.em-cell-6 img{left:-100%;top:-100%}
.em-cell-7 img{left:-200%;top:-100%}
.em-cell-8 img{left:-300%;top:-100%}
.em-cell-9 img{left:-400%;top:-100%}
.em-cell-10 img{left:-0%;top:-200%}
.em-cell-11 img{left:-100%;top:-200%}
.em-cell-12 img{left:-200%;top:-200%}
.em-cell-13 img{left:-300%;top:-200%}
.em-cell-14 img{left:-400%;top:-200%}
.em-cell-15 img{left:-0%;top:-300%}
.em-cell-16 img{left:-100%;top:-300%}
.em-cell-17 img{left:-200%;top:-300%}
.em-cell-18 img{left:-300%;top:-300%}
.em-cell-19 img{left:-400%;top:-300%}
/* 0.2.0: Einstiegsflyer + fest integrierbarer Fortschrittsbanner */
.em-promo{position:relative;min-height:300px;margin:18px 0;border:1px solid rgba(86,190,235,.55);border-radius:22px;overflow:hidden;background:#06131f;box-shadow:0 20px 48px rgba(0,0,0,.32);color:#e7eef2}
.em-promo-image{position:absolute;inset:0}.em-promo-image img{width:100%;height:100%;object-fit:cover}.em-promo-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,11,18,.1) 0%,rgba(3,11,18,.5) 40%,rgba(3,11,18,.96) 72%)}
.em-promo-copy{position:relative;z-index:2;width:54%;margin-left:auto;box-sizing:border-box;padding:35px 48px;text-align:center}.em-promo-town{font:400 12px Georgia,serif;letter-spacing:.55em;color:#70caf1}.em-promo-heading{margin:7px 0 0;font:700 42px/1 Georgia,serif;text-transform:uppercase;color:#e56d3e;text-shadow:0 2px 12px rgba(0,0,0,.8)}.em-promo-sub{font:700 22px Georgia,serif;letter-spacing:.08em;color:#d9e4ea}.em-promo-dates{margin:15px 0 12px;font-size:12px;letter-spacing:.12em}.em-promo-text{max-width:520px;margin:auto;line-height:1.55;color:#c9d4da}.em-promo-actions{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:22px}
.em-sign{position:relative;display:inline-block;padding:13px 24px 11px;border:2px solid #d39b68;border-radius:8px;background:linear-gradient(#7e2c1e,#49150f);box-shadow:inset 0 0 0 2px rgba(0,0,0,.35),0 8px 18px rgba(0,0,0,.35);color:#ffe1c1!important;text-decoration:none!important;font:700 16px Georgia,serif;letter-spacing:.08em}.em-sign:before,.em-sign:after{content:"";position:absolute;top:-18px;width:1px;height:18px;background:#b9c5ca}.em-sign:before{left:28%}.em-sign:after{right:28%}.em-more{color:#76c9ee!important;text-decoration:none!important;font-size:11px;letter-spacing:.12em}
.em-progress-banner{position:relative;display:grid;grid-template-columns:minmax(250px,.7fr) minmax(560px,1.3fr) 160px;min-height:205px;margin:12px 0;/*border:1px solid rgba(86,190,235,.52)*/;border-radius:20px;overflow:hidden;background:#06131f;color:#e5edf1!important;text-decoration:none!important;box-shadow:0 14px 38px rgba(0,0,0,.25)}
.em-progress-visual{position:relative;overflow:hidden}.em-progress-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.em-progress-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,13,21,.18),rgba(4,13,21,.9))}.em-progress-title{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-end;padding:24px;text-align:right}.em-progress-title small{letter-spacing:.45em;color:#72c9ee}.em-progress-title strong{margin-top:5px;font:700 27px Georgia,serif;color:#e56d3e;text-transform:uppercase}.em-progress-title span{font:700 13px Georgia,serif;letter-spacing:.08em}
.em-progress-meters{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;padding:12px 5px;background:rgba(4,14,23,.82)}.em-progress-meters .em-meter{min-width:150px}.em-progress-meters .em-lobster-frame{width:96px;height:118px;margin-top:4px}.em-progress-meters .em-lobster{width:72px;height:96px;left:12px;top:10px}.em-progress-meters .em-percent{font-size:21px}

.em-progress-bottom {
	width:100%;
	text-align:center;
	border-top:1px solid var(--farbe10);
	padding-top:7px;
	font-size:9px;
	letter-spacing:.08em;
	color:var(--text);
}
.em-door-sign{align-self:center;justify-self:center;position:relative;display:block;width:112px;padding:14px 8px 12px;border:2px solid #c89566;border-radius:8px;background:linear-gradient(#773021,#43150f);box-shadow:inset 0 0 0 2px rgba(0,0,0,.35),0 7px 18px rgba(0,0,0,.4);text-align:center;color:#ffe4c5;font:700 13px/1.25 Georgia,serif;letter-spacing:.04em}.em-door-sign:before,.em-door-sign:after{content:"";position:absolute;top:-25px;width:1px;height:25px;background:#aebbc0}.em-door-sign:before{left:30%}.em-door-sign:after{right:30%}
.em-style-red .em-promo-heading,.em-style-red .em-progress-title strong{color:#d74a3a}.em-style-red .em-sign,.em-style-red .em-door-sign{background:linear-gradient(#7a211d,#42100e)}
.em-style-gold .em-promo-heading,.em-style-gold .em-progress-title strong{color:#e1b45f}.em-style-gold .em-sign,.em-style-gold .em-door-sign{background:linear-gradient(#76602b,#3f3112)}
.em-style-ice .em-promo-heading,.em-style-ice .em-progress-title strong{color:#bcecff}.em-style-ice .em-sign,.em-style-ice .em-door-sign{background:linear-gradient(#245a70,#102f3d);border-color:#9fdcf4}
.em-style-green .em-promo-heading,.em-style-green .em-progress-title strong{color:#91c78c}.em-style-green .em-sign,.em-style-green .em-door-sign{background:linear-gradient(#315e37,#17331d)}
@media(max-width:1050px){.em-progress-banner{grid-template-columns:1fr}.em-progress-visual{min-height:150px}.em-progress-title{align-items:center;text-align:center}.em-door-sign{margin:16px auto 28px}.em-promo-copy{width:65%}}
@media(max-width:700px){.em-promo-copy{width:100%;padding:30px 20px;background:rgba(3,11,18,.72)}.em-promo-shade{background:rgba(3,11,18,.45)}.em-promo-heading{font-size:32px}.em-promo-actions{flex-direction:column}.em-progress-meters{display:block}.em-progress-meters .em-meter{width:100%;border-left:0;margin:12px auto}}

/* 0.2.5 – kompakter Index-Flyer für schmale MyBB-Layouts */
.em-promo{
  width:100%;max-width:100%;height:235px;min-height:0;box-sizing:border-box;
  margin:12px 0;border-radius:14px;overflow:hidden;position:relative;
}
.em-promo-image,.em-promo-image img{position:absolute;inset:0;width:100%;height:100%;max-width:100%;}
.em-promo-image img{display:block;object-fit:cover;object-position:center center;}
.em-promo-shade{background:linear-gradient(90deg,rgba(3,11,18,.10) 0%,rgba(3,11,18,.32) 38%,rgba(3,11,18,.91) 67%,rgba(3,11,18,.97) 100%);}
.em-promo-copy{
  position:absolute;z-index:2;top:0;right:0;bottom:0;width:55%;max-width:55%;
  margin:0;padding:19px 18px 16px;box-sizing:border-box;
  display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;
}
.em-promo-town{font-size:8px;letter-spacing:.45em;line-height:1.2;}
.em-promo-heading{font-size:24px;line-height:.95;margin:5px 0 3px;overflow-wrap:anywhere;}
.em-promo-sub{font-size:12px;line-height:1.1;letter-spacing:.07em;}
.em-promo-dates{margin:9px 0 7px;font-size:8px;line-height:1.2;letter-spacing:.06em;}
.em-promo-text{font-size:9px;line-height:1.35;max-height:38px;overflow:hidden;}
.em-promo-actions{gap:10px;margin-top:13px;flex-direction:column;}
.em-sign{padding:8px 13px 7px;border-radius:6px;font-size:10px;line-height:1.1;}
.em-sign:before,.em-sign:after{top:-10px;height:10px;}
.em-more{font-size:7px;letter-spacing:.08em;}

@media(max-width:430px){
 .em-promo{height:220px;}
 .em-promo-shade{background:linear-gradient(90deg,rgba(3,11,18,.28),rgba(3,11,18,.94) 58%);}
 .em-promo-copy{width:62%;max-width:62%;padding:14px 11px;}
 .em-promo-heading{font-size:20px;}
 .em-promo-sub{font-size:10px;}
 .em-promo-text{font-size:8px;max-height:34px;}
}

/* =========================================================
   0.2.6 – Einstiegsflyer als Modal-Popup
   ========================================================= */
.em-modal-layer{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:28px;box-sizing:border-box;opacity:1;transition:opacity .18s ease}
.em-modal-layer.em-modal-hidden{opacity:0;pointer-events:none}
.em-modal-backdrop{position:absolute;inset:0;background:rgba(5,13,21,.72);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.em-modal-card{position:relative;width:min(900px,calc(100vw - 56px));height:min(430px,calc(100vh - 70px));min-height:360px;overflow:hidden;border:1px solid rgba(86,190,235,.65);border-radius:26px;background:#06131f;color:#e7eef2;box-shadow:0 28px 90px rgba(0,0,0,.58),inset 0 0 0 1px rgba(255,255,255,.04)}
.em-modal-card:before{content:"";position:absolute;z-index:3;inset:10px;border:1px solid rgba(92,192,235,.24);border-radius:18px;pointer-events:none}
.em-modal-image{position:absolute;inset:0;overflow:hidden}
.em-modal-image img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center center}
.em-modal-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,10,16,.08) 0%,rgba(3,10,16,.24) 36%,rgba(3,10,16,.83) 59%,rgba(3,10,16,.97) 100%),linear-gradient(0deg,rgba(2,8,13,.42),transparent 45%)}
.em-modal-copy{position:relative;z-index:4;width:48%;height:100%;margin-left:auto;padding:55px 58px 42px 35px;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;text-shadow:0 2px 12px rgba(0,0,0,.8)}
.em-modal-town{font:400 15px/1.2 Cambria,Georgia, serif;letter-spacing:.5em;color:var(--farbe5);text-transform:uppercase}
.em-modal-heading{margin:10px 0 3px;font:700 35px/.95 Cambria,Georgia, serif;text-transform:uppercase;color:#e56d3e;overflow-wrap:anywhere}
.em-modal-sub{font:400 17px/1.15 Cambria,Georgia, serif;letter-spacing:.09em;color:var(--farbe5);text-transform:uppercase}
.em-modal-dates{margin:18px 0 12px;font-size:10px;line-height:1.3;letter-spacing:.13em;text-transform:uppercase;color:var(--farbe5)}
.em-modal-text{max-width:370px;max-height:115px;overflow-y:auto;overflow-x:hidden;font-size:13px;line-height:1.55;color:var(--farbe5);padding-right:8px}
.em-modal-actions{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:24px;min-height:66px}
.em-modal-joinform{margin:0;padding:0}
.em-hanging-sign{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:150px;min-height:48px;padding:8px 18px;box-sizing:border-box;border:1px solid #b66a37;border-radius:3px;background:linear-gradient(#61341d,#2c170d);box-shadow:0 5px 13px rgba(0,0,0,.45),inset 0 0 0 1px rgba(255,210,150,.12);color:#efc393!important;font:700 15px/1.25 Cambria,Georgia, serif;letter-spacing:.08em;text-decoration:none!important;text-transform:uppercase;cursor:pointer;transform:rotate(-1deg)}
.em-hanging-sign:before,.em-hanging-sign:after{content:"";position:absolute;top:-20px;width:1px;height:22px;background:#a7805e;transform-origin:bottom}
.em-hanging-sign:before{left:31%;transform:rotate(20deg)}.em-hanging-sign:after{right:31%;transform:rotate(-20deg)}
.em-hanging-sign:hover{filter:brightness(1.12);transform:rotate(0deg) translateY(-1px)}
.em-modal-more{color:var(--farbe5)!important;font-size:13px;letter-spacing:.12em;text-transform:uppercase;text-decoration:none!important;border-bottom:1px solid rgba(143,212,239,.4);padding-bottom:3px}
.em-modal-more:hover{color:#8fd4ef!important;border-color:#fff}
.em-modal-close{position:absolute;z-index:8;top:18px;right:20px;width:34px;height:34px;padding:0;border:1px solid rgba(123,205,239,.42);border-radius:50%;background:rgba(3,12,20,.68);color:#d7edf6;font:300 25px/30px Arial,sans-serif;text-align:center;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.25)}
.em-modal-close:hover{background:rgba(21,53,70,.9);color:#fff}
.em-style-red .em-modal-heading{color:#e05a4d}.em-style-red .em-hanging-sign{background:linear-gradient(#7a211d,#42100e)}
.em-style-gold .em-modal-heading{color:#e1b45f}.em-style-gold .em-hanging-sign{background:linear-gradient(#76602b,#3f3112)}
.em-style-ice .em-modal-heading{color:#bcecff}.em-style-ice .em-hanging-sign{background:linear-gradient(#245a70,#102f3d);border-color:#9fdcf4}
.em-style-green .em-modal-heading{color:#91c78c}.em-style-green .em-hanging-sign{background:linear-gradient(#315e37,#17331d)}
@media(max-width:760px){.em-modal-layer{padding:16px}.em-modal-card{width:calc(100vw - 32px);height:min(520px,calc(100vh - 32px));min-height:420px;border-radius:18px}.em-modal-shade{background:linear-gradient(0deg,rgba(3,10,16,.97) 0%,rgba(3,10,16,.82) 57%,rgba(3,10,16,.18) 100%)}.em-modal-copy{width:100%;height:65%;margin:35% 0 0;padding:24px 28px 28px;justify-content:flex-end}.em-modal-heading{font-size:32px}.em-modal-sub{font-size:15px}.em-modal-actions{margin-top:17px}.em-modal-close{top:12px;right:12px}}
@media(max-width:480px){.em-modal-copy{padding-left:18px;padding-right:18px}.em-modal-heading{font-size:27px}.em-modal-text{font-size:10px}.em-modal-actions{gap:12px;flex-direction:column}.em-hanging-sign{min-width:145px}.em-modal-more{font-size:8px}}

/* Lobster 0.2.6b – breite Maine-Hummerform wie im Designentwurf */
.em-lobster-frame .em-lobster{
    width:108px;
    height:136px;
    left:6px;
    top:7px;
}
.em-progress-meters .em-lobster-frame .em-lobster{
    width:88px;
    height:108px;
    left:4px;
    top:5px;
}


/* =========================================================
   FORUMSEITE – helle, offene Variante
   ========================================================= */
.em-page{
    width:100%;
    max-width:100%;
    margin:18px 0 28px;
    box-sizing:border-box;
    overflow:visible;
}
.em-page-head,
.em-bigstats,
.em-reveal,
.em-ranking{
    background:transparent;
    border:0;
    border-radius:0;
    box-shadow:none;
}
.em-page-head{
    padding:18px 14px 20px;
    border-bottom:1px solid rgba(61,78,103,.28);
}
.em-page h1,
.em-page h2{
    color: var(--text);
	font-family: Cambria, Georgia, serif;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;
}
.em-description{
    color:#4b5665;
}
.em-join{
    flex:0 0 auto;
}
.em-button,
.em-join-button{
    margin-top:0;
    padding:7px 13px;
    border:1px solid rgba(88,111,137,.55);
    border-radius:2px;
    background:rgba(255,255,255,.45);
    color:#43536a!important;
    font:700 11px Georgia,serif;
    letter-spacing:.08em;
    box-shadow:none;
}
.em-button:hover,
.em-join-button:hover{
    background: var(--farbe5);
    border-color:var(--farbe2);
}
.em-bigstats{
    margin:0;
    padding:22px 8px 18px;
    border-bottom:1px solid rgba(61,78,103,.28);
}
.em-meter+.em-meter{
    border-left:1px solid rgba(61,78,103,.25);
}
.em-meter-label{
    color: var(--text);
}
.em-percent{
    color:#b94e37;
}
.em-value{
    color:#4c5968;
}

/* Filigraner Gravur-Hummer. Keine dunkle Hinterlegung. */
.em-lobster-frame{
    width:150px;
    height:150px;
    border:1px solid rgba(73,111,139,.72);
    border-radius:50%;
    background:transparent;
    overflow:hidden;
}
.em-lobster-frame .em-lobster{
    position:absolute;
    width:126px;
    height:142px;
    left:12px;
    top:4px;
    overflow:hidden;
}
.em-lobster-base,
.em-lobster-red img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.em-lobster-base {
    position: absolute;
    inset: 0;
    opacity: .72;
}

.em-lobster-red {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 92px;
    overflow: hidden;
    transition: height .5s ease;
}

.em-lobster-red img {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 92px;
    height: 125px;
    object-fit: contain;
    max-width: none;
}
.em-lobster svg,
.em-lobster-fill {
    display: none !important;
}

/* Aufdeckbild offen ins helle Forum integrieren */
.em-reveal{
    margin:0;
    padding:24px 14px;
    border-bottom:1px solid rgba(61,78,103,.28);
}
.em-reveal-grid{
    border-radius:0;
    background:rgba(68,91,113,.08);
    border:1px solid rgba(61,78,103,.18);
}
.em-reveal-cell.locked:after{
    background:rgba(74,101,126,.07);
    color:rgba(63,103,132,.32);
}
.em-reveal-note{
    color:#496f8b;
}

/* Rangliste ohne schweren dunkelblauen Kasten */
.em-ranking{
    margin:0;
    padding:24px 14px 8px;
}

/* verhindert, dass breite Plugin-Elemente Footer/Banner abschneiden */
.em-page,
.em-page *{
    box-sizing:border-box;
}
.em-page img{
    max-width:100%;
}
.em-page table{
    max-width:100%;
}

/* Fortschrittsbanner ebenfalls nicht als massiver dunkelblauer Block */
.em-progress-banner{
    width:100%;
    max-width:100%;
    box-sizing:border-box;
    border-radius:0;
    box-shadow:none;
}

/* Progressbanner benutzt dieselbe Gravur, etwas kleiner */
.em-progress-meters .em-lobster-frame{
    width:104px;
    height:104px;
}
.em-progress-meters .em-lobster-frame .em-lobster{
    width:88px;
    height:98px;
    left:8px;
    top:3px;
}
.em-progress-meters .em-lobster-red img{
    height:98px;
}


/* =========================================================
   0.2.8 – Index: kompakt bei 958px + Mini-Aufdeckbild
   ========================================================= */
.em-progress-banner{
    display:grid;
    grid-template-columns:250px minmax(0,1fr) 150px;
    min-height:190px;
    margin:12px 0;
    overflow:hidden;
}
.em-progress-meters{
    min-width:0;
    padding:10px 4px 6px;
}
.em-progress-meters .em-meter{
    width:33.333%;
    min-width:0;
}
.em-progress-meters .em-lobster-frame{
    width:92px;
    height:92px;
}
.em-progress-meters .em-lobster-frame .em-lobster{
    width:78px;
    height:86px;
    left:7px;
    top:2px;
}
.em-progress-meters .em-lobster-red img{
    height:86px;
}
.em-progress-reveal{
    min-width:0;
    padding:13px 10px 9px;
    border-left:1px solid rgba(86,190,235,.22);
    background:rgba(4,14,23,.72);
    display:flex;
    flex-direction:column;
    justify-content:center;
}
.em-progress-reveal-title{
    margin-bottom:7px;
    text-align:center;
    font:700 9px Georgia,serif;
    letter-spacing:.16em;
    color:#73c5e8;
}
.em-progress-reveal-grid{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    grid-template-rows:repeat(4,1fr);
    width:128px;
    height:82px;
    margin:0 auto;
    overflow:hidden;
    border:1px solid rgba(111,196,234,.32);
    background:rgba(255,255,255,.05);
}
.em-progress-reveal-cell{
    position:relative;
    overflow:hidden;
}
.em-progress-reveal-cell img{
    position:absolute;
    width:500%;
    height:400%;
    max-width:none;
}
.em-progress-reveal-cell.locked img{
    display:none;
}
.em-progress-reveal-cell.locked:after{
    content:"";
    position:absolute;
    inset:0;
    background:rgba(91,116,135,.32);
    border:.5px solid rgba(151,190,207,.08);
}
.em-progress-reveal-note{
    margin-top:7px;
    text-align:center;
    font-size:8px;
    letter-spacing:.07em;
    color:#91cde6;
}
.em-progress-reveal-cell.em-cell-0 img,.em-reveal-cell.em-cell-0 img{left:0%;top:0%}
.em-progress-reveal-cell.em-cell-1 img,.em-reveal-cell.em-cell-1 img{left:-100%;top:0%}
.em-progress-reveal-cell.em-cell-2 img,.em-reveal-cell.em-cell-2 img{left:-200%;top:0%}
.em-progress-reveal-cell.em-cell-3 img,.em-reveal-cell.em-cell-3 img{left:-300%;top:0%}
.em-progress-reveal-cell.em-cell-4 img,.em-reveal-cell.em-cell-4 img{left:-400%;top:0%}
.em-progress-reveal-cell.em-cell-5 img,.em-reveal-cell.em-cell-5 img{left:0%;top:-100%}
.em-progress-reveal-cell.em-cell-6 img,.em-reveal-cell.em-cell-6 img{left:-100%;top:-100%}
.em-progress-reveal-cell.em-cell-7 img,.em-reveal-cell.em-cell-7 img{left:-200%;top:-100%}
.em-progress-reveal-cell.em-cell-8 img,.em-reveal-cell.em-cell-8 img{left:-300%;top:-100%}
.em-progress-reveal-cell.em-cell-9 img,.em-reveal-cell.em-cell-9 img{left:-400%;top:-100%}
.em-progress-reveal-cell.em-cell-10 img,.em-reveal-cell.em-cell-10 img{left:0%;top:-200%}
.em-progress-reveal-cell.em-cell-11 img,.em-reveal-cell.em-cell-11 img{left:-100%;top:-200%}
.em-progress-reveal-cell.em-cell-12 img,.em-reveal-cell.em-cell-12 img{left:-200%;top:-200%}
.em-progress-reveal-cell.em-cell-13 img,.em-reveal-cell.em-cell-13 img{left:-300%;top:-200%}
.em-progress-reveal-cell.em-cell-14 img,.em-reveal-cell.em-cell-14 img{left:-400%;top:-200%}
.em-progress-reveal-cell.em-cell-15 img,.em-reveal-cell.em-cell-15 img{left:0%;top:-300%}
.em-progress-reveal-cell.em-cell-16 img,.em-reveal-cell.em-cell-16 img{left:-100%;top:-300%}
.em-progress-reveal-cell.em-cell-17 img,.em-reveal-cell.em-cell-17 img{left:-200%;top:-300%}
.em-progress-reveal-cell.em-cell-18 img,.em-reveal-cell.em-cell-18 img{left:-300%;top:-300%}
.em-progress-reveal-cell.em-cell-19 img,.em-reveal-cell.em-cell-19 img{left:-400%;top:-300%}

/* Marathonseite: keine doppelte große Fortschrittsreihe */
.em-page .em-bigstats{display:none!important;}

@media(max-width:900px){
    .em-progress-banner{grid-template-columns:220px minmax(0,1fr) 135px}
    .em-progress-reveal-grid{width:112px;height:72px}
}


/* =========================================================
   0.2.9 – Indexbanner + frei verschiebbares Aufdeckbild
   ========================================================= */

/* Der Banner besteht wieder nur aus Motiv + drei Hummern. */
.em-progress-banner{
    display:grid;
    grid-template-columns:250px minmax(0,1fr)!important;
    min-height:190px;
}
.em-progress-meters{
    display:flex!important;
    flex-wrap:wrap;
    align-items:flex-start;
    justify-content:space-around;
    padding:12px 12px 28px;
}
.em-progress-meters .em-meter{
    flex:0 0 33.333%!important;
    width:33.333%!important;
    max-width:33.333%!important;
}
.em-progress-bottom{
    position:absolute;
    left:12px;
    right:12px;
    bottom:7px;
}
.em-progress-reveal{
    display:none!important;
}

/* Eigenständiges Aufdeckbild – bleibt beim Scrollen sichtbar. */
.em-reveal-float{
    position:fixed;
    top:155px;
    right:24px;
    width:245px;
    z-index:9998;
    border:1px solid rgba(92,129,151,.75);
    background:#071522;
    box-shadow:0 7px 22px rgba(0,0,0,.32);
    color:#b9d7e7;
    box-sizing:border-box;
}
.em-reveal-float-head{
    height:31px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:0 7px 0 10px;
    border-bottom:1px solid rgba(92,129,151,.55);
    font:700 10px Georgia,serif;
    letter-spacing:.16em;
    color:#73c5e8;
    cursor:move;
    user-select:none;
}
.em-reveal-float-close{
    width:23px;
    height:23px;
    padding:0;
    border:0;
    background:transparent;
    color:#b9d7e7;
    font:normal 20px/20px Georgia,serif;
    cursor:pointer;
}
.em-reveal-float-close:hover{
    color:#d96543;
}
.em-reveal-float-body{
    display:block;
    padding:10px;
    color:inherit!important;
    text-decoration:none!important;
}
.em-reveal-float .em-progress-reveal-grid{
    width:223px;
    height:143px;
    margin:0 auto;
}
.em-reveal-float .em-progress-reveal-cell.locked:after{
    content:"?";
    display:flex;
    align-items:center;
    justify-content:center;
    color:rgba(184,211,224,.55);
    font:700 13px Georgia,serif;
    background:rgba(91,116,135,.32);
    border:.5px solid rgba(151,190,207,.10);
}
.em-reveal-float .em-progress-reveal-note{
    margin:8px 0 0;
    font-size:9px;
}
body.em-reveal-dragging{
    user-select:none;
    cursor:move;
}

@media(max-width:1100px){
    .em-reveal-float{
        right:10px;
        width:210px;
    }
    .em-reveal-float .em-progress-reveal-grid{
        width:188px;
        height:120px;
    }
}


/* =========================================================
   0.2.10 – Banner wieder als klare 3-Spalten-Zeile
   ========================================================= */
.em-progress-banner{
    display:grid!important;
    grid-template-columns:290px minmax(0,1fr) 145px!important;
    width:100%;
    min-height:220px;
    overflow:hidden;
}
.em-progress-visual{
    width:auto!important;
    min-width:0;
    height:220px!important;
}
.em-progress-visual img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center center!important;
}
.em-progress-meters{
    position:relative;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-template-rows:1fr!important;
    align-items:center!important;
    padding:12px 8px 30px!important;
    flex-wrap:nowrap!important;
}
.em-progress-meters .em-meter{
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    height:auto!important;
    flex:none!important;
    align-self:center;
    border-left:1px solid rgba(86,190,235,.12);
}
.em-progress-meters .em-meter:first-child{
    border-left:0;
}
.em-progress-meters .em-lobster-frame{
    width:92px!important;
    height:92px!important;
}
.em-progress-bottom{
    grid-column:1 / -1;
    position:absolute!important;
    left:8px!important;
    right:8px!important;
    bottom:7px!important;
}
.em-progress-action{
    display:flex;
    align-items:center;
    justify-content:center;
    border-left:1px solid rgba(86,190,235,.18);
    background:#06131f;
}
.em-progress-button{
    display:block;
    width:112px;
    padding:10px 6px;
    border:2px solid #b36b43;
    outline:1px solid rgba(225,169,104,.45);
    background:#762d1d;
    color:#fff3dc!important;
    text-align:center;
    text-decoration:none!important;
    font:700 12px/1.15 Georgia,serif;
    letter-spacing:.02em;
    box-shadow:inset 0 0 0 2px rgba(49,18,12,.55);
}
.em-progress-button:hover{
    background:#8b3824;
    color:#fff!important;
}

@media(max-width:900px){
    .em-progress-banner{
        grid-template-columns:250px minmax(0,1fr) 125px!important;
    }
}
/* =========================================================
   SCHREIBMARATHON – Farben ans Eerie-Theme anpassen
   ========================================================= */

.em-progress-banner {
    background: var(--farbe2) !important;
}

/* Bereich mit den drei Hummern */
.em-progress-meters {
    background: var(--farbe11) !important;
}

/* rechter Bereich mit Button */
.em-progress-action {
    background: var(--farbe11) !important;
    border-left: 1px solid rgba(255,255,255,.12) !important;
}

/* Trennlinien zwischen den Hummern */
.em-progress-meters .em-meter {
    border-left-color: rgba(255,255,255,.10) !important;
}

/* ZUM MARATHON */
.em-progress-button {
    background: var(--farbe1) !important;
    border: 1px solid var(--farbe9) !important;
    outline: 1px solid rgba(255,255,255,.15) !important;
    color: var(--farbe3) !important;
    box-shadow: 0 2px 5px rgba(0,0,0,.18) !important;
}

/* Button beim Darüberfahren */
.em-progress-button:hover {
    background: #58647a !important;
    border-color: var(--farbe3) !important;
}
/* =========================================================
   SCHREIBMARATHON – Seitenkopf
   ========================================================= */

.em-page .em-page-head {
    display: block !important;
    padding: 0 0 22px !important;
}

/* Titelbalken ganz oben */
.em-page .em-marathon-title {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    text-align: center !important;
}

/* Inhalt unter dem Titel */
.em-page .em-marathon-head-content {
    display: block !important;
    width: 100% !important;
    padding: 18px 14px 0 !important;
    box-sizing: border-box !important;
}

/* Marathonnummer + Datum mittig */
.em-page .em-marathon-head-content .em-kicker,
.em-page .em-marathon-head-content .em-dates {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Erklärung über die Breite im Blocksatz */
.em-page .em-marathon-head-content .em-description {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 18px 0 0 !important;
    text-align: justify !important;
    line-height: 1.65 !important;
	    padding: 5px 30px;
}

/* Bin dabei mittig */
.em-page .em-marathon-head-content .em-join {
    display: flex !important;
    width: 100% !important;
    justify-content: center !important;
    margin: 18px 0 0 !important;
    padding: 0 !important;
}
.em-page {
    margin-bottom: 0 !important;
}

.em-page .em-reveal {
    margin-bottom: 0 !important;
    padding-bottom: 18px !important;
}
/* Hummerfüllung – rote und blaue Gravur exakt deckungsgleich */
.em-lobster-red {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    overflow: hidden;
    transition: height .5s ease;
}

.em-lobster-red img {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    max-width: none;
    object-fit: contain;
}

/* Größe des roten Bildes = vollständige Hummerhöhe */
.em-progress-meters .em-lobster-red img {
    height: 86px;
}

.em-page .em-lobster-red img {
    height: 142px;
}

/* =========================================================
   SCHREIBMARATHON INDEX – Button in die Fußzeile
   ========================================================= */

/* Banner nur noch: Motiv | Hummerbereich */
.em-progress-banner {
    grid-template-columns: 360px minmax(0, 1fr) !important;
    position: relative;
}

/* Buttonposition unten rechts innerhalb des Marathonbereichs */
.em-progress-action {
    position: absolute !important;
    right: 20px !important;
    bottom: -2px !important;
    width: auto !important;
    height: auto !important;
    display: block !important;
    background: transparent !important;
    border: 0 !important;
    z-index: 10;
}
/* Platz rechts in der unteren Inf Zeile */
.em-progress-bottom {
    left: 15px !important;
    right: 145px !important;
    bottom: 14px !important;
    text-align: center !important;
}

/* kleiner, aber klar erkennbarer Button */
.em-progress-button {
    display: block !important;
    width: auto !important;
    padding: 7px 13px !important;

    background: var(--farbe2) !important;
    outline: none !important;
    color: var(--farbe3) !important;
    font: 500 10px/1 Cambria,Georgia, serif !important;
    letter-spacing: .06em !important;
    text-transform: uppercase;
    white-space: nowrap;
}

/* Hover */
.em-progress-button:hover {
    background: #58647a !important;
    border-color: var(--farbe3) !important;
    color: #fff !important;
}
/* Transparenz hinter dem ausgefransten Marathonbild */
.em-progress-visual {
    background: transparent !important;
}

.em-progress-banner {
    background: var(--farbe11) !important;
}
/* Beim transparenten Indexbild keine rechteckige Abdunklung */
.em-progress-visual .em-progress-overlay {
    display: none !important;
}

/* Bildcontainer selbst vollständig transparent */
.em-progress-visual {
    background: transparent !important;
    overflow: visible !important;
    z-index: 2;
}
.em-progress-meters {
    position: relative;
    z-index: 1;
}.em-progress-visual img {
    width: calc(100% + 12px) !important;
    max-width: none !important;
}
/* Eerie Schreibmarathon 0.2.18 – breite Indexanzeige ohne Flyer */
.em-progress-banner.em-progress-wide {
    display: block !important;
    position: relative !important;
    min-height: 205px !important;
    background: var(--farbe11) !important;
    overflow: visible !important;
    margin: 12px 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.em-progress-wide .em-progress-meters {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    align-items: start !important;
    justify-items: center !important;
    width: 100% !important;
    min-height: 205px !important;
    padding: 14px 12px 40px !important;
    box-sizing: border-box !important;
    background: transparent !important;
    position: relative !important;
}
.em-progress-wide .em-progress-meters .em-meter {
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    text-align: center !important;
}
.em-progress-wide .em-progress-bottom {
    position: absolute !important;
    left: 18px !important;
    right: 145px !important;
    width: auto !important;
    bottom: 12px !important;
    text-align: center !important;
}
.em-progress-wide .em-progress-action {
    position: absolute !important;
    right: 18px !important;
    bottom: 4px !important;
    width: auto !important;
    height: auto !important;
    background: transparent !important;
    border: 0 !important;
    z-index: 5 !important;
}
.em-progress-wide .em-progress-button { white-space: nowrap !important; }

/* Halloween: nur Kürbisse verändern; Hummer-Standard bleibt unverändert */
.em-progress-wide .em-meter-halloween .em-lobster-frame {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    width: 120px !important;
    height: 112px !important;
    margin: 3px auto 4px !important;
}
.em-progress-wide .em-meter-halloween .em-lobster {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    width: 112px !important;
    height: 108px !important;
    margin: auto !important;
    overflow: visible !important;
}
.em-progress-wide .em-meter-halloween .em-lobster-base {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    filter: grayscale(1) brightness(1.45) opacity(.48) !important;
}
.em-progress-wide .em-meter-halloween .em-lobster-red {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    overflow: hidden !important;
    transition: height .5s ease !important;
}
.em-progress-wide .em-meter-halloween .em-lobster-red img {
    position: absolute !important;
    left: 0 !important;
    bottom: 0 !important;
    width: 112px !important;
    height: 108px !important;
    max-width: none !important;
    object-fit: contain !important;
    filter: sepia(.45) saturate(2.6) hue-rotate(-14deg) brightness(1.25) drop-shadow(0 0 5px rgba(255,116,22,.55)) !important;
}
@media (max-width: 600px) {
    .em-progress-wide .em-progress-meters { padding-left: 2px !important; padding-right: 2px !important; }
    .em-progress-wide .em-meter-halloween .em-lobster-frame { transform: scale(.8); transform-origin: center top; margin-bottom: -12px !important; }
    .em-progress-wide .em-progress-bottom { left: 6px !important; right: 110px !important; font-size: 9px !important; }
    .em-progress-wide .em-progress-action { right: 5px !important; }
}

/* =========================================================
   SCHREIBMARATHON 0.2.14e – HALLOWEEN-INDEX
   Aus Plugin-PHP ausgelagerte Gestaltungsregeln.
   ========================================================= */
.em-progress-halloween{display:flex!important;flex-wrap:wrap!important;align-items:stretch!important;position:relative!important;gap:0!important}
.em-progress-halloween .em-progress-visual{display:none!important}
.em-progress-halloween .em-halloween-heading{flex:0 0 100%!important;width:100%!important;box-sizing:border-box!important;display:flex!important;justify-content:center!important;align-items:center!important;gap:14px!important;text-align:center!important;padding:10px 10px 0px!important;color:#926746!important;border-top:1px solid var(--farbe10)}
.em-progress-halloween .em-halloween-heading-text strong{display:block!important;font-family:'Playfair Display SC'!important;font-size:clamp(20px,3vw,25px)!important;font-weight:normal!important;letter-spacing:.19em!important;line-height:1.20!important;text-transform:uppercase!important}
.em-progress-halloween .em-halloween-heading-text small{display:block!important;font-family:Cambria,Georgia,serif!important;font-size:12px!important;letter-spacing:.32em!important;margin-top:5px!important}
.em-progress-halloween .em-halloween-ornament{font-family:Georgia,serif!important;font-size:29px!important;font-weight:normal!important;opacity:.65!important;line-height:1!important}
.em-progress-halloween .em-halloween-ornament-right{transform:scaleX(-1)}
.em-progress-halloween .em-progress-meters{flex:1 1 0!important;min-width:0!important;width:auto!important;display:flex!important;flex-wrap:wrap!important;align-items:stretch!important;justify-content:space-around!important;gap:0!important}
.em-progress-halloween .em-meter-halloween{flex:1 1 0!important;min-width:0!important;width:auto!important;max-width:none!important;text-align:center!important;box-sizing:border-box!important;padding:10px 8px 6px!important}
/*.em-progress-halloween .em-meter-halloween + .em-meter-halloween{border-left:1px solid rgba(154,111,76,.23)!important}*/
.em-progress-halloween .em-meter-halloween .em-meter-label{font-family:Georgia,serif!important;letter-spacing:.19em!important;margin-bottom:10px!important}
/* Fertige transparente PNGs: kein nachtraeglicher Farbfilter oder Glow. */
.em-progress-halloween .em-pumpkin-stage{
 position:relative!important;display:flex!important;align-items:center!important;
 justify-content:center!important;width:140px!important;max-width:100%!important;
 margin:0 auto!important;overflow:visible!important;
}
.em-progress-halloween .em-pumpkin-image{
 display:block!important;position:relative!important;width:100%!important;
 height:auto!important;max-width:100%!important;object-fit:contain!important;
 border:0!important;background:transparent!important;margin:0 auto!important;
 filter:none!important;opacity:1!important;clip-path:none!important;
}
.em-progress-halloween .em-pumpkin-stage::before,
.em-progress-halloween .em-pumpkin-stage::after{content:none!important;display:none!important}
.em-progress-halloween .em-progress-bottom{flex:0 0 100%!important;text-align:center!important;margin:-10px 0!important}
.em-progress-halloween .em-progress-action{align-self:flex-end!important;flex:0 0 auto!important}
@media (max-width: 650px) {
    .em-progress-halloween .em-halloween-heading {
        gap: 10px !important;
    }

    .em-progress-halloween .em-halloween-ornament {
        display: none !important;
    }
}

/* Halloween Korrektur: gleiche Grundlinie, feste Groesse */
.em-progress-halloween .em-pumpkin-stage{width:105px!important;height:112px!important;display:flex!important;align-items:flex-end!important;justify-content:center!important;}
.em-progress-halloween .em-pumpkin-image{width:auto!important;height:auto!important;max-width:105px!important;max-height:108px!important;object-fit:contain!important;object-position:center bottom!important;}

/* Halloween finale Hummergroesse: feste Bildflaeche, identische Grundlinie */
.em-progress-halloween .em-pumpkin-stage{width:90px!important;height:100px!important;min-width:90px!important;max-width:90px!important;display:flex!important;align-items:flex-end!important;justify-content:center!important;margin:3px auto 5px!important;overflow:visible!important;}
.em-progress-halloween .em-pumpkin-image{display:block!important;width:60px!important;height:66px!important;min-width:60px!important;max-width:60px!important;max-height:66px!important;object-fit:contain!important;object-position:center bottom!important;position:static!important;transform:none!important;}
/* Schreibmarathon – filigrane Ornamente an den Kategorien */

.em-progress-halloween .em-meter-halloween .em-meter-label {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    white-space: nowrap;
}

.em-progress-halloween .em-meter-halloween .em-meter-label::before,
.em-progress-halloween .em-meter-halloween .em-meter-label::after {
    content: "";
    display: inline-block;
    width: 35px;
    height: 18px;
    flex-shrink: 0;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.em-progress-halloween .em-meter-halloween .em-meter-label::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 46 20'%3E%3Cpath d='M2 10 H27 C38 10 38 3 31 3 C23 3 25 16 35 16 C40 16 42 12 43 10' fill='none' stroke='%23ad8a68' stroke-width='1.2'/%3E%3Cpath d='M15 10 Q24 0 31 10' fill='none' stroke='%23ad8a68' stroke-width='.8'/%3E%3C/svg%3E");
}

.em-progress-halloween .em-meter-halloween .em-meter-label::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 46 20'%3E%3Cpath d='M44 10 H19 C8 10 8 3 15 3 C23 3 21 16 11 16 C6 16 4 12 3 10' fill='none' stroke='%23ad8a68' stroke-width='1.2'/%3E%3Cpath d='M31 10 Q22 0 15 10' fill='none' stroke='%23ad8a68' stroke-width='.8'/%3E%3C/svg%3E");
}
/* HALLOWEEN – Marathonkasten kompakter */

/* Gesamthöhe des Kastens */
.em-progress-banner.em-progress-halloween {
    min-height: 0 !important;
}

/* Weniger Abstand über und unter den drei Spalten */
.em-progress-halloween .em-progress-meters {
    min-height: 0 !important;
    padding: 8px 12px 28px !important;
}

/* Weniger Innenabstand pro Spalte */
.em-progress-halloween .em-meter-halloween {
    padding: 4px 8px 0 !important;
}

/* Beschriftung näher an den Kürbis */
.em-progress-halloween .em-meter-halloween .em-meter-label {
    margin-bottom: 0 !important;
}

/* Kürbisfläche verkürzen, Bildgröße beibehalten */
.em-progress-halloween .em-pumpkin-stage {
    height: 68px !important;
    margin: 0 auto 0 !important;
}

/* Prozentangabe näher an den Kürbis */
.em-progress-halloween .em-meter-halloween .em-percent {
    margin: 0 !important;
    line-height: 1.1 !important;
}

/* Zahlen unter der Prozentangabe */
.em-progress-halloween .em-meter-halloween .em-value {
    line-height: 1.2 !important;
}

/* =========================================================
   AUFDECKBILD – einheitliche Ausschnitte, Hochformat
   Betrifft nur das grosse Raster und die schwebende Vorschau.
   Das Seitenverhaeltnis 2/3 entspricht einem Hochformatmotiv.
   Falls die Originaldatei andere Abmessungen hat, den Wert
   --em-reveal-image-ratio entsprechend anpassen (Breite/Hoehe).
   ========================================================= */
.em-page .em-reveal-grid,
.em-reveal-float .em-progress-reveal-grid {
    --em-reveal-image-ratio: 2 / 3;
    aspect-ratio: var(--em-reveal-image-ratio) !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    grid-template-rows: repeat(4, minmax(0, 1fr)) !important;
    height: auto !important;
}

.em-page .em-reveal-grid {
    width: 100% !important;
}

.em-reveal-float .em-progress-reveal-grid {
    width: 223px !important;
    max-width: 100% !important;
}

/* Wichtig: die allgemeinen Bildgrenzen der Marathonseite
   duerfen die 500%-Ausschnittbilder nicht verkleinern. */
.em-page .em-reveal-cell img,
.em-reveal-float .em-progress-reveal-cell img {
    position: absolute !important;
    display: block;
    width: 500% !important;
    height: 400% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: fill !important;
}

@media (max-width: 1100px) {
    .em-reveal-float .em-progress-reveal-grid {
        width: 188px !important;
    }
}

/* Gesperrte Kacheln bleiben verdeckt – trotz Bildgroessen-Korrektur. */
.em-page .em-reveal-cell.locked img,
.em-reveal-float .em-progress-reveal-cell.locked img {
    display: none !important;
}

/* =========================================================
   HALLOWEEN – Marathonlink neben der unteren Infozeile
   Nur diese Variante; alle anderen Marathon-Designs bleiben erhalten.
   ========================================================= */
.em-progress-banner.em-progress-halloween .em-progress-bottom {
    left: 0 !important;
    right: 0 !important;
    bottom: 10px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
    white-space: nowrap !important;
    font: normal 9px/1.2 Cambria, Georgia, serif !important;
    letter-spacing: .08em !important;
}

/* Link direkt hinter der zentrierten Info, statt am rechten Rand. */
.em-progress-banner.em-progress-halloween .em-progress-action {
    position: absolute !important;
    left: calc(50% + 155px) !important;
    right: auto !important;
    bottom: 9px !important;
    width: auto !important;
    height: auto !important;
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    z-index: 10 !important;
}

.em-progress-banner.em-progress-halloween .em-progress-button {
    display: inline !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    color: #986c4b !important;
    font: normal 9px/1.2 Cambria, Georgia, serif !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

.em-progress-banner.em-progress-halloween .em-progress-button:hover {
    background: transparent !important;
    color: #c07848 !important;
    text-decoration: underline !important;
}

@media (max-width: 650px) {
    .em-progress-banner.em-progress-halloween .em-progress-bottom {
        bottom: 25px !important;
        white-space: normal !important;
    }
    .em-progress-banner.em-progress-halloween .em-progress-action {
        left: 0 !important;
        right: 0 !important;
        bottom: 7px !important;
        text-align: center !important;
    }
}
.em-progress-banner.em-progress-halloween .em-progress-button {
    white-space: nowrap !important;
    min-width: max-content !important;
    width: max-content !important;
    display: inline-block !important;
}

.em-progress-banner.em-progress-halloween .em-progress-action {
    width: max-content !important;
    min-width: max-content !important;
    white-space: nowrap !important;
}
.em-progress-banner.em-progress-halloween .em-progress-action {
    width: max-content !important;
    min-width: max-content !important;
    white-space: nowrap !important;
}

.em-progress-banner.em-progress-halloween .em-progress-button {
    display: inline-block !important;
    width: max-content !important;
    min-width: max-content !important;
    white-space: nowrap !important;
}
/* Mehr Abstand zur oberen Trennlinie */
.em-progress-banner.em-progress-halloween .em-progress-bottom {
    padding-top: 7px !important;
}
