
* { margin:0; padding:0; box-sizing:border-box; }
html,body { width:100%; height:100%; background:#000; overflow:hidden; }
#stage { position:fixed; inset:0; background:#000; cursor:default; }
#img, #vid {
  position:absolute; inset:0; width:100%; height:100%;
  object-fit:contain; background:#000;
  opacity:0; transition:opacity .25s ease; pointer-events:none;
}
#img.on, #vid.on { opacity:1; }

/* Player-Controls (nur bei Video-Folien), blenden bei Inaktivitaet aus */
#controls {
  position:fixed; left:0; right:0; bottom:0; z-index:8;
  display:none; align-items:center; gap:16px;
  padding:16px 26px 20px;
  background:linear-gradient(0deg, rgba(0,0,0,.6) 0%, rgba(0,0,0,0) 100%);
  opacity:0; transition:opacity .3s ease;
}
#controls.show { opacity:1; }
#pp {
  flex:0 0 auto; width:48px; height:48px; border-radius:50%;
  border:none; cursor:pointer; background:#af1a20; color:#fff;
  font-size:18px; line-height:1; box-shadow:0 3px 10px rgba(0,0,0,.4);
}
#pp:hover { background:#931015; }
#controls .t {
  flex:0 0 auto; color:#fff; font-family:Georgia,serif; font-size:16px;
  min-width:54px; text-align:center; text-shadow:0 1px 2px rgba(0,0,0,.6);
}
#seek {
  flex:1 1 auto; height:8px; cursor:pointer; accent-color:#af1a20;
}

/* Startbildschirm */
#start {
  position:fixed; inset:0; z-index:10;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:34px; background:radial-gradient(120% 90% at 50% 40%, #fbf6ec 0%, #f0e7d6 60%, #e6dcc6 100%);
}
#start .startlogo { width:min(60vw, 760px); height:auto; filter:drop-shadow(0 6px 14px rgba(60,30,20,.25)); }
#startbtn {
  font-family: Georgia, "Times New Roman", serif; font-size:clamp(20px,3vw,34px);
  font-weight:700; color:#fff; background:#af1a20; border:none; border-radius:10px;
  padding:18px 46px; cursor:pointer; box-shadow:0 6px 16px rgba(120,20,20,.35);
  letter-spacing:.02em;
}
#startbtn:hover { background:#931015; }
#start .hint {
  font-family: Georgia, serif; font-style:italic; color:#5a5044;
  font-size:clamp(13px,1.5vw,18px); text-align:center; line-height:1.7;
}
#start #dl {
  font-family: Georgia, serif; font-size:clamp(13px,1.4vw,17px);
  color:#7a4a18; text-decoration:none; border:1px solid #b9925f;
  border-radius:8px; padding:10px 20px; background:rgba(255,255,255,.55);
  box-shadow:0 2px 6px rgba(60,30,20,.12); transition:background .2s ease;
}
#start #dl:hover { background:#fff; }
