.overlay-error {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 7px;
  padding: 28px 35px;
  background: #fff;
  color: var(--ink);
  border-left: 6px solid var(--lime);
  box-shadow: 10px 10px 0 var(--purple);
}

.overlay-error strong {
  font: 700 20px 'Arial Black';
}

.overlay-error span {
  color: var(--muted);
  font-size: 12px;
}

.readability-settings output {
  float: right;
  color: var(--purple);
}

.readability-settings input[type="range"] {
  padding: 0;
  accent-color: var(--purple);
}

.toggle-label {
  display: flex !important;
  align-items: center;
  gap: 8px;
  margin-top: 14px;
  font-family: 'Trebuchet MS', sans-serif !important;
  font-size: 10px !important;
  letter-spacing: 0 !important;
  cursor: pointer;
}

.toggle-label input {
  width: 16px;
  margin: 0;
  accent-color: var(--purple);
}

.edit-grid textarea,
.play-grid button {
  font-size: var(--cell-font-size, 18px);
  font-family: var(--card-font-family, 'Trebuchet MS', Arial, sans-serif);
  line-height: 1.15;
}

.editable-card .board-title,
.live-board .board-title {
  font-family: var(--card-font-family, 'Trebuchet MS', Arial, sans-serif);
}

.high-contrast .edit-grid textarea,
.high-contrast .play-grid button {
  font-weight: 800;
  letter-spacing: .01em;
  text-shadow: 0 1px 0 rgba(255,255,255,.8);
  border-width: 2px;
  border-color: #17152d;
}

.high-contrast.theme-midnight .edit-grid textarea,
.high-contrast.theme-midnight .play-grid button {
  color: #fff;
  text-shadow: 0 2px 2px #000;
  border-color: #fff;
}

.login-screen{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:30px;background:radial-gradient(circle at 70% 20%,rgba(115,83,255,.24),transparent 30%),#f7f5fb}.login-screen[hidden]{display:none}.login-card{width:min(520px,100%);padding:48px;background:#fff;border:1px solid var(--line);box-shadow:16px 16px 0 var(--lime);text-align:center}.login-card>.brand{justify-content:center;margin-bottom:35px}.login-icon{display:grid;place-items:center;width:60px;height:60px;margin:0 auto 22px;border-radius:18px;background:#9146ff;color:#fff;font-size:28px}.login-card h1{margin:0 0 20px;font:700 48px/.95 'Arial Black';letter-spacing:-3px}.login-card h1 em{color:var(--purple);font-style:normal}.login-card p{color:var(--muted);line-height:1.6}.twitch-login{display:flex;align-items:center;justify-content:center;gap:10px;margin:28px 0 15px;padding:16px;background:#9146ff;color:#fff;border-radius:8px;text-decoration:none;font-weight:700}.login-card>small{display:block;color:var(--muted);font-size:10px;line-height:1.5}.legal-links{display:flex;justify-content:center;gap:22px;margin-top:28px}.legal-links a,.site-footer a{color:var(--muted);font-size:11px}.site-footer{display:flex;justify-content:space-between;padding:25px 8vw;background:#17152d;color:#aaa7bc;font-size:11px}.site-footer>div{display:flex;gap:22px}.legal-view{background:#f3f0f8;padding:60px 20px}.legal-page{max-width:760px;margin:auto;padding:48px;background:#fff;border:1px solid var(--line);box-shadow:10px 10px 0 var(--lime)}.legal-page>.brand{margin-bottom:45px}.legal-page h1{font:700 46px 'Arial Black';letter-spacing:-2px}.legal-page h2{margin-top:32px;font:700 20px 'Arial Black'}.legal-page p{color:#5f5b70;line-height:1.7}.legal-page address{font-style:normal;line-height:1.8;color:#5f5b70}.overlay-mode .play-grid button{cursor:default;pointer-events:none}@media(max-width:600px){.login-card{padding:30px 22px}.login-card h1{font-size:38px}.legal-page{padding:30px 22px}}

/* OBS erhält ausschließlich die Karte auf einem vollständig transparenten Canvas. */
html.overlay-mode,html.overlay-mode body,body.overlay-mode,body.overlay-mode main,body.overlay-mode .live-view,body.overlay-mode .stream-stage{background:transparent!important;background-image:none!important}
body.overlay-mode .display-controls,body.overlay-mode .grain,body.overlay-mode .stage-lights,body.overlay-mode .topbar,body.overlay-mode .live-toolbar,body.overlay-mode .obs-hint,body.overlay-mode .site-footer,body.overlay-mode .kofi-support,body.overlay-mode .toast{display:none!important}

.site-footer{gap:24px;align-items:flex-start}.site-footer>span{flex:0 0 auto}.site-footer>div{min-width:0;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px 22px}.site-footer a{white-space:normal;line-height:1.5}@media(max-width:600px){.site-footer>div{justify-content:flex-start}}
