/* ==========================================================
   Our stars align · Inplay-Kalender im Header (Sternenkarte)
   Komplette Datei: ersetzt deine inplaykalender.css (Header + Vollansicht, nichts doppelt).
   Alles steht unter ".ik", die Vollansicht inplaykalender.php
   bleibt dadurch unveraendert.
   ========================================================== */
@import url(https://fonts.googleapis.com/css2?family=Italiana&family=Archivo:wght@400;600;800&display=swap);

.ik{
--ik-dk:#2d2a63;--ik-navy:#1f3366;--ik-tit:#1f1d4f;--ik-l1:#e1daf0;--ik-l2:#bfcce4;--ik-line:rgba(255,255,255,.8);--ik-glass:rgba(255,255,255,.62);
--ik-s:#3d3a78;--ik-g:#d9b25f;--ik-t:#5e9f7f;--ik-e:#4f9ea6;
--ik-stars:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 220'%3E%3Cpolyline points='110,215 160,150 205,178 250,100 292,132' fill='none' stroke='white' stroke-opacity='.45' stroke-width='1.4'/%3E%3Cg fill='white' fill-opacity='.5'%3E%3Ccircle cx='110' cy='215' r='3'/%3E%3Ccircle cx='160' cy='150' r='3'/%3E%3Ccircle cx='205' cy='178' r='3'/%3E%3Ccircle cx='250' cy='100' r='3.5'/%3E%3Ccircle cx='292' cy='132' r='3'/%3E%3C/g%3E%3C/svg%3E");
--ik-stripes:repeating-linear-gradient(135deg,rgba(255,255,255,.38) 0 14px,rgba(255,255,255,.12) 14px 28px),linear-gradient(150deg,var(--ik-l1),var(--ik-l2));
--ik-disp:'Italiana','Times New Roman',serif;--ik-body:'Archivo',system-ui,sans-serif;
display:flex;flex-direction:column;gap:12px;padding:14px;margin-bottom:20px;
background:rgba(255,255,255,.35);border:1px solid rgba(255,255,255,.7);font-family:var(--ik-body);box-sizing:border-box}
.ik *{box-sizing:border-box}

/* Kopf */
.ik-head{display:flex;align-items:center;gap:14px;padding:14px 20px;min-height:54px;background:var(--ik-stripes);border:1px solid var(--ik-line)}
.ik-title{flex:1;font:400 26px/1.2 var(--ik-disp);letter-spacing:.09em;text-transform:uppercase;color:var(--ik-tit);-webkit-text-stroke:.8px var(--ik-tit)}
.ik-title b{font-weight:400;margin:0 .35em;opacity:.6;-webkit-text-stroke:0}
.ik-title a{color:inherit;text-decoration:none;border-bottom:2px solid var(--ik-tit)}
.ik-title a:hover{color:var(--ik-navy);border-color:var(--ik-navy)}
.ik-map{width:38px;height:38px;display:grid;place-items:center;font-size:20px;background:var(--ik-glass);border:1px solid var(--ik-line);color:var(--ik-dk);text-decoration:none}
.ik-map:hover{box-shadow:inset 0 -3px 0 var(--ik-navy)}

/* Sternenkarte */
.ik-sky{padding:20px 22px 18px;border:1px solid var(--ik-line);background:var(--ik-stars) right bottom/640px auto no-repeat,linear-gradient(150deg,var(--ik-l1),var(--ik-l2))}
.ik-months{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:26px}
.ik-m{min-width:0}
.ik-mh{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:8px;font:400 22px/1 var(--ik-disp);letter-spacing:.1em;text-transform:uppercase;color:var(--ik-tit);-webkit-text-stroke:.8px var(--ik-tit)}
.ik-mh small{font:800 10px var(--ik-body);letter-spacing:.18em;color:var(--ik-dk);-webkit-text-stroke:0}

/* Tabelle: alle Standard-Rahmen und -Hintergruende aus MyBB weg */
.ik table.ik-t{width:100%;border:0!important;border-collapse:separate;border-spacing:0 4px;background:none!important;table-layout:fixed}
.ik .ik-t th{padding:4px 0!important;border:0!important;background:none!important;font:800 9px var(--ik-body);letter-spacing:.14em;text-transform:uppercase;color:var(--ik-dk);opacity:.75;text-align:center}
.ik .ik-t td.inplaykalender_tag{position:relative;height:32px;padding:0!important;border:0!important;background:none!important;text-align:center;vertical-align:middle;
 font:600 11.5px/32px var(--ik-body)!important;letter-spacing:0;color:var(--ik-dk)}
.ik .ik-t td.inplaykalender_tag>a{position:relative;display:block;color:inherit;text-decoration:none}
.ik .ik-t td.inplaykalender_tag strong{color:inherit!important;font-weight:800}

/* Tage mit Eintraegen: runde Sterne, bei mehreren Eintraegen geteilt */
.ik .ik-t td[class*="szenen"],.ik .ik-t td[class*="geburtstag"],.ik .ik-t td[class*="timeline"],.ik .ik-t td[class*="event"]{color:#fff;text-shadow:0 0 3px rgba(31,29,79,.9),0 0 1px rgba(31,29,79,.9)}
.ik .ik-t td.szenen::before,.ik .ik-t td.geburtstag::before,.ik .ik-t td.timeline::before,.ik .ik-t td.event::before,
.ik .ik-t td[class*="szenen"]::before,.ik .ik-t td[class*="geburtstag"]::before,.ik .ik-t td[class*="timeline"]::before,.ik .ik-t td[class*="event"]::before{
 content:"";position:absolute;left:50%;top:50%;width:26px;height:26px;margin:-13px 0 0 -13px;border-radius:50%}
.ik td.szenen::before{background:var(--ik-s)}
.ik td.geburtstag::before{background:var(--ik-g)}
.ik td.timeline::before{background:var(--ik-t)}
.ik td.event::before{background:var(--ik-e)}
.ik td.szenengeburtstag::before{background:linear-gradient(135deg,var(--ik-s) 0.0% 50.0%,var(--ik-g) 50.0% 100.0%)}
.ik td.szenentimeline::before{background:linear-gradient(135deg,var(--ik-s) 0.0% 50.0%,var(--ik-t) 50.0% 100.0%)}
.ik td.szenenevent::before{background:linear-gradient(135deg,var(--ik-s) 0.0% 50.0%,var(--ik-e) 50.0% 100.0%)}
.ik td.geburtstagtimeline::before{background:linear-gradient(135deg,var(--ik-g) 0.0% 50.0%,var(--ik-t) 50.0% 100.0%)}
.ik td.geburtstagevent::before{background:linear-gradient(135deg,var(--ik-g) 0.0% 50.0%,var(--ik-e) 50.0% 100.0%)}
.ik td.timelineevent::before{background:linear-gradient(135deg,var(--ik-t) 0.0% 50.0%,var(--ik-e) 50.0% 100.0%)}
.ik td.szenengeburtstagtimeline::before{background:linear-gradient(135deg,var(--ik-s) 0.0% 33.33%,var(--ik-g) 33.33% 66.67%,var(--ik-t) 66.67% 100.0%)}
.ik td.szenengeburtstagevent::before{background:linear-gradient(135deg,var(--ik-s) 0.0% 33.33%,var(--ik-g) 33.33% 66.67%,var(--ik-e) 66.67% 100.0%)}
.ik td.szenentimelineevent::before{background:linear-gradient(135deg,var(--ik-s) 0.0% 33.33%,var(--ik-t) 33.33% 66.67%,var(--ik-e) 66.67% 100.0%)}
.ik td.geburtstagtimelineevent::before{background:linear-gradient(135deg,var(--ik-g) 0.0% 33.33%,var(--ik-t) 33.33% 66.67%,var(--ik-e) 66.67% 100.0%)}
.ik td.szenengeburtstagtimelineevent::before{background:linear-gradient(135deg,var(--ik-s) 0.0% 25.0%,var(--ik-g) 25.0% 50.0%,var(--ik-t) 50.0% 75.0%,var(--ik-e) 75.0% 100.0%)}
.ik .ik-t td.inplaykalender_tag>a{z-index:1}
.ik .ik-t td[class*="szenen"]:hover::before,.ik .ik-t td[class*="geburtstag"]:hover::before,.ik .ik-t td[class*="timeline"]:hover::before,.ik .ik-t td[class*="event"]:hover::before{box-shadow:0 0 0 2px var(--ik-navy)}

/* Legende */
.ik-legend{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:16px;font:800 10px var(--ik-body);letter-spacing:.16em;text-transform:uppercase;color:var(--ik-dk)}
.ik-legend i{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:8px;vertical-align:-2px}

@media (max-width:640px){
 .ik-title{font-size:18px}
 .ik-months{grid-template-columns:1fr}
}

/* ==========================================================
   Our stars align · Inplay-Kalender Vollansicht
   An das ENDE der inplaykalender.css anhaengen.
   Die alten .calpop-/.pop-/.tcat_inplaykalender-Regeln werden
   nicht mehr gebraucht (schaden aber nicht).
   Der Header-Kalender (.ik) bleibt unberuehrt.
   ========================================================== */

.ikv,.ikv-nav,.ikv-pop{
--v-dk:#2d2a63;--v-navy:#1f3366;--v-tit:#1f1d4f;--v-l1:#e1daf0;--v-l2:#bfcce4;--v-line:rgba(255,255,255,.8);--v-glass:rgba(255,255,255,.62);
--v-s:#3d3a78;--v-g:#d9b25f;--v-t:#5e9f7f;--v-e:#4f9ea6;
--v-stars:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 220'%3E%3Cpolyline points='110,215 160,150 205,178 250,100 292,132' fill='none' stroke='white' stroke-opacity='.45' stroke-width='1.4'/%3E%3Cg fill='white' fill-opacity='.5'%3E%3Ccircle cx='110' cy='215' r='3'/%3E%3Ccircle cx='160' cy='150' r='3'/%3E%3Ccircle cx='205' cy='178' r='3'/%3E%3Ccircle cx='250' cy='100' r='3.5'/%3E%3Ccircle cx='292' cy='132' r='3'/%3E%3C/g%3E%3C/svg%3E");
--v-stripes:repeating-linear-gradient(135deg,rgba(255,255,255,.38) 0 14px,rgba(255,255,255,.12) 14px 28px),linear-gradient(150deg,var(--v-l1),var(--v-l2));
--v-disp:'Italiana','Times New Roman',serif;--v-body:'Archivo',system-ui,sans-serif;
font-family:var(--v-body);box-sizing:border-box}
.ikv *,.ikv-nav *,.ikv-pop *{box-sizing:border-box}

/* Seitenaufbau */
.ikv-page{display:grid;grid-template-columns:210px minmax(0,1fr);gap:14px;align-items:start;width:96%;max-width:1400px;margin:14px auto 24px}
.ikv{display:flex;flex-direction:column;gap:12px;min-width:0}

/* Navigation */
.ikv-nav{background:var(--v-glass);border:1px solid var(--v-line)}
.ikv-nh{padding:12px 16px;font:800 10px var(--v-body);letter-spacing:.18em;text-transform:uppercase;color:var(--v-dk);background:var(--v-stripes)}
.ikv-nav a{display:block;padding:11px 16px;font:600 12px var(--v-body);letter-spacing:.12em;text-transform:uppercase;color:var(--v-tit);text-decoration:none;border-top:1px solid var(--v-line);border-left:3px solid transparent}
.ikv-nav a:hover{background:rgba(255,255,255,.5);border-left-color:var(--v-navy)}

/* Kopf */
.ikv-head{display:flex;align-items:center;gap:14px;padding:14px 20px;min-height:54px;background:var(--v-stripes);border:1px solid var(--v-line)}
.ikv-title{flex:1;font:400 26px/1.2 var(--v-disp);letter-spacing:.09em;text-transform:uppercase;color:var(--v-tit);-webkit-text-stroke:.8px var(--v-tit)}
.ikv-year{font:400 24px var(--v-disp);letter-spacing:.1em;color:var(--v-tit);-webkit-text-stroke:.6px var(--v-tit)}

/* Legende + Spaltenwahl */
.ikv-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}
.ikv-legend{display:flex;flex-wrap:wrap;gap:8px}
.ikv-lg{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;background:var(--v-glass);border:1px solid var(--v-line);font:800 10px var(--v-body);letter-spacing:.14em;text-transform:uppercase;color:var(--v-dk)}
.ikv-lg i{width:12px;height:12px;border-radius:50%;display:inline-block}
.ikv-s{background:var(--v-s)}.ikv-g{background:var(--v-g)}.ikv-t{background:var(--v-t)}.ikv-e{background:var(--v-e)}
.ikv-cols{display:flex;gap:4px}
.ikv-cols button{width:34px;height:30px;font:800 11px var(--v-body);color:var(--v-dk);background:var(--v-glass);border:1px solid var(--v-line);cursor:pointer;padding:0}
.ikv-cols button.on{background:var(--v-dk);color:#fff;border-color:var(--v-dk)}

/* Monatskarten */
.ikv-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}
.ikv-grid[data-c="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}
.ikv-grid[data-c="4"]{grid-template-columns:repeat(4,minmax(0,1fr))}
.ikv-m{min-width:0;padding:16px 18px 12px;border:1px solid var(--v-line);background:var(--v-stars) right bottom/340px auto no-repeat,linear-gradient(150deg,var(--v-l1),var(--v-l2))}
.ikv-mh{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:6px;font:400 22px/1 var(--v-disp);letter-spacing:.1em;text-transform:uppercase;color:var(--v-tit);-webkit-text-stroke:.8px var(--v-tit)}
.ikv-mh small{font:800 10px var(--v-body);letter-spacing:.18em;color:var(--v-dk);-webkit-text-stroke:0}

/* Tabelle: MyBB-Standardrahmen raus */
.ikv table.ikv-t{width:100%;border:0!important;border-collapse:separate;border-spacing:0 4px;background:none!important;table-layout:fixed;margin:0}
.ikv .ikv-t th{padding:4px 0!important;border:0!important;background:none!important;font:800 9px var(--v-body);letter-spacing:.12em;text-transform:uppercase;color:var(--v-dk);opacity:.75;text-align:center}
.ikv .ikv-t td.inplaykalender_tag{position:relative;height:32px;padding:0!important;border:0!important;background:none!important;text-align:center;vertical-align:middle;
 font:600 11.5px/32px var(--v-body)!important;letter-spacing:0;color:var(--v-dk)}
.ikv .ikv-t td.inplaykalender_tag>a{position:relative;display:block;color:inherit;text-decoration:none}
.ikv .ikv-t td.inplaykalender_tag strong{color:inherit!important;font-weight:800}
.ikv-grid[data-c="4"] .ikv-t td.inplaykalender_tag{font-size:10.5px!important}
.ikv-grid[data-c="4"] .ikv-mh{font-size:18px}

/* Tage mit Eintraegen */
.ikv .ikv-t td[class*="szenen"],.ikv .ikv-t td[class*="geburtstag"],.ikv .ikv-t td[class*="timeline"],.ikv .ikv-t td[class*="event"]{color:#fff;text-shadow:0 0 3px rgba(31,29,79,.9),0 0 1px rgba(31,29,79,.9)}
.ikv .ikv-t td[class*="szenen"]::before,.ikv .ikv-t td[class*="geburtstag"]::before,.ikv .ikv-t td[class*="timeline"]::before,.ikv .ikv-t td[class*="event"]::before{
 content:"";position:absolute;left:50%;top:50%;width:26px;height:26px;margin:-13px 0 0 -13px;border-radius:50%}
.ikv-grid[data-c="4"] .ikv-t td[class*="szenen"]::before,.ikv-grid[data-c="4"] .ikv-t td[class*="geburtstag"]::before,.ikv-grid[data-c="4"] .ikv-t td[class*="timeline"]::before,.ikv-grid[data-c="4"] .ikv-t td[class*="event"]::before{width:23px;height:23px;margin:-11.5px 0 0 -11.5px}
.ikv .ikv-t td[class*="szenen"]:hover::before,.ikv .ikv-t td[class*="geburtstag"]:hover::before,.ikv .ikv-t td[class*="timeline"]:hover::before,.ikv .ikv-t td[class*="event"]:hover::before{box-shadow:0 0 0 2px var(--v-navy)}
.ikv td.szenen::before{background:var(--v-s)}
.ikv td.geburtstag::before{background:var(--v-g)}
.ikv td.timeline::before{background:var(--v-t)}
.ikv td.event::before{background:var(--v-e)}
.ikv td.szenengeburtstag::before{background:linear-gradient(135deg,var(--v-s) 0 50%,var(--v-g) 50% 100%)}
.ikv td.szenentimeline::before{background:linear-gradient(135deg,var(--v-s) 0 50%,var(--v-t) 50% 100%)}
.ikv td.szenenevent::before{background:linear-gradient(135deg,var(--v-s) 0 50%,var(--v-e) 50% 100%)}
.ikv td.geburtstagtimeline::before{background:linear-gradient(135deg,var(--v-g) 0 50%,var(--v-t) 50% 100%)}
.ikv td.geburtstagevent::before{background:linear-gradient(135deg,var(--v-g) 0 50%,var(--v-e) 50% 100%)}
.ikv td.timelineevent::before{background:linear-gradient(135deg,var(--v-t) 0 50%,var(--v-e) 50% 100%)}
.ikv td.szenengeburtstagtimeline::before{background:linear-gradient(135deg,var(--v-s) 0 33.33%,var(--v-g) 33.33% 66.67%,var(--v-t) 66.67% 100%)}
.ikv td.szenengeburtstagevent::before{background:linear-gradient(135deg,var(--v-s) 0 33.33%,var(--v-g) 33.33% 66.67%,var(--v-e) 66.67% 100%)}
.ikv td.szenentimelineevent::before{background:linear-gradient(135deg,var(--v-s) 0 33.33%,var(--v-t) 33.33% 66.67%,var(--v-e) 66.67% 100%)}
.ikv td.geburtstagtimelineevent::before{background:linear-gradient(135deg,var(--v-g) 0 33.33%,var(--v-t) 33.33% 66.67%,var(--v-e) 66.67% 100%)}
.ikv td.szenengeburtstagtimelineevent::before{background:linear-gradient(135deg,var(--v-s) 0 25%,var(--v-g) 25% 50%,var(--v-t) 50% 75%,var(--v-e) 75% 100%)}

/* Popup per Anker (#datum, wie dein altes .calpop:target) und per jQuery-Modal */
.ikv-pop{display:none}
.ikv-pop:target,.ikv-pop.ikv-open{display:block;position:fixed;inset:0;margin:auto;height:fit-content;z-index:1000}
.ikv-bg{display:none}
.ikv-pop:target .ikv-bg,.ikv-pop.ikv-open .ikv-bg{display:block;position:fixed;inset:0;z-index:-1;background:rgba(18,23,43,.5);cursor:default}
.ikv-x{position:absolute;top:12px;right:12px;width:30px;height:30px;display:grid;place-items:center;background:var(--v-glass);border:1px solid var(--v-line);color:var(--v-dk);font:400 18px/1 var(--v-body);text-decoration:none;z-index:2}
.ikv-pop.modal .ikv-x,.ikv-pop.modal .ikv-bg{display:none!important}
/* Popup (jQuery-Modal: das Element wird nach <body> verschoben, deshalb eigene Klasse) */
.ikv-pop,.ikv-pop.modal{width:min(560px,92vw)!important;max-width:none!important;max-height:82vh;overflow:auto;padding:0!important;margin:0;border-radius:0!important;
 background:none!important;border:0!important;box-shadow:none!important;
 color:#1b2a36;font:400 13px/1.55 var(--v-body)!important;text-align:left;text-shadow:none!important;letter-spacing:0}
.ikv-pop a.close-modal{top:12px!important;right:12px!important;width:30px;height:30px;background:var(--v-glass)!important;border:1px solid var(--v-line);border-radius:0!important;text-indent:0;color:var(--v-dk);display:grid;place-items:center;font-size:0!important;overflow:hidden;white-space:nowrap;text-decoration:none;background-image:none!important}
.ikv-pop a.close-modal::before{content:"\00d7";font:400 18px/1 var(--v-body)}
.ikv-ph{padding:16px 56px 16px 18px;background:var(--v-stripes)}
.ikv-pt{font:400 21px/1.2 var(--v-disp);letter-spacing:.09em;text-transform:uppercase;color:var(--v-tit);-webkit-text-stroke:.8px var(--v-tit)}
.ikv-ph,.ikv-pb{border-left:1px solid var(--v-line);border-right:1px solid var(--v-line)}
.ikv-pb{border-bottom:1px solid var(--v-line);background:linear-gradient(180deg,#e8edf6,#dbe3f0);box-shadow:0 20px 50px rgba(18,23,43,.35)}
.ikv-pb{display:flex;flex-direction:column;gap:14px;padding:16px 18px 18px}
.ikv-sec:has(.ikv-sb:empty){display:none}
.ikv-sh{display:flex;align-items:center;gap:10px;margin-bottom:6px;font:800 10px var(--v-body);letter-spacing:.18em;text-transform:uppercase;color:var(--v-dk)}
.ikv-sh::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--c)}
.ikv-sh::after{content:"";flex:1;height:8px;background:var(--v-stripes)}
.ikv-sec-s{--c:var(--v-s)}.ikv-sec-t{--c:var(--v-t)}.ikv-sec-e{--c:var(--v-e)}.ikv-sec-g{--c:var(--v-g)}
.ikv-sb{padding:9px 14px;background:rgba(255,255,255,.55);border:1px solid var(--v-line);text-align:left}
.ikv-sb a{color:var(--v-navy);font-weight:600;text-decoration:none}
.ikv-sb a:hover{text-decoration:underline}
.ikv-pop .inplaykalender-eventlist{max-height:90px;overflow:auto;padding-right:6px;margin-top:2px;text-align:justify;hyphens:auto}

@media (max-width:1000px){.ikv-page{grid-template-columns:1fr}.ikv-grid,.ikv-grid[data-c]{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.ikv-grid,.ikv-grid[data-c]{grid-template-columns:1fr}.ikv-cols{display:none}}