:root{--kb-live-bg:#03111d;--kb-live-panel:#071c2b;--kb-live-line:#17425f;--kb-live-text:#f4fbff;--kb-live-dim:#9fc4da;--kb-live-green:#16d884;--kb-live-blue:#2f8fff;--kb-live-red:#ff334f;--kb-live-gold:#ffd34d}
.kb-live-studio-shell{min-height:100vh;background:radial-gradient(circle at 50% -10%,#123652 0,#071927 40%,#020a11 100%);color:var(--kb-live-text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
.kb-live-stage{width:min(1180px,calc(100% - 24px));margin:0 auto;padding:18px 0 40px}
.kb-live-scoreboard{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,.8fr) minmax(0,1fr);align-items:center;gap:18px;padding:18px 22px;border:1px solid #1f5f83;border-radius:20px;background:linear-gradient(180deg,rgba(5,35,55,.96),rgba(2,17,28,.96));box-shadow:0 18px 45px rgba(0,0,0,.35);overflow:hidden}
.kb-live-scoreboard:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(0,171,255,.06),transparent);pointer-events:none}
.kb-live-team{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:12px;min-width:0}.kb-live-team--away{grid-template-columns:minmax(0,1fr) 72px;text-align:right}.kb-live-team-logo{width:72px;height:72px;object-fit:contain;filter:drop-shadow(0 8px 10px rgba(0,0,0,.35))}.kb-live-team-fallback{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;border:1px solid #3c6381;background:#0b2639;font-weight:950}.kb-live-team-name{font-size:clamp(1rem,2vw,1.5rem);font-weight:950;line-height:1.1}.kb-live-venue{margin-top:5px;color:var(--kb-live-dim);font-size:.84rem}
.kb-live-center{text-align:center;position:relative;z-index:2}.kb-live-badge{display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border-radius:999px;background:#17263a;color:#fff;font-weight:950;letter-spacing:.08em;font-size:.78rem;text-transform:uppercase}.kb-live-badge[data-mode="prelive"],.kb-live-badge[data-mode="live"],.kb-live-badge[data-mode="halftime"]{background:#641626}.kb-live-dot{width:9px;height:9px;border-radius:50%;background:var(--kb-live-red);box-shadow:0 0 0 0 rgba(255,51,79,.7);animation:kbLivePulse 1.25s ease-out infinite}@keyframes kbLivePulse{70%{box-shadow:0 0 0 8px rgba(255,51,79,0)}100%{box-shadow:0 0 0 0 rgba(255,51,79,0)}}
.kb-live-score{margin-top:8px;font-size:clamp(2.25rem,7vw,4.8rem);font-weight:1000;line-height:.95;letter-spacing:-.04em}.kb-live-phase{margin-top:8px;color:#d9f3ff;font-weight:850}.kb-live-clock{margin-top:5px;color:var(--kb-live-gold);font-weight:950}.kb-live-countdown{margin-top:7px;font-size:1rem;color:#cde9f8;font-variant-numeric:tabular-nums}
.kb-live-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.7fr);gap:16px;margin-top:16px}.kb-live-card{border:1px solid var(--kb-live-line);border-radius:16px;background:rgba(6,26,40,.94);box-shadow:0 10px 26px rgba(0,0,0,.22);overflow:hidden}.kb-live-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 15px;border-bottom:1px solid #163a55;font-weight:950}.kb-live-card-body{padding:12px 14px}.kb-live-timeline{display:flex;flex-direction:column;gap:8px}.kb-live-event{display:grid;grid-template-columns:58px 34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 11px;border:1px solid #173a53;border-radius:12px;background:#081f30}.kb-live-event[data-side="home"]{border-left:4px solid #2da0ff}.kb-live-event[data-side="away"]{border-left:4px solid #26d77e}.kb-live-minute{font-weight:1000;font-size:1rem}.kb-live-event-icon{font-size:1.2rem}.kb-live-event-title{font-weight:900}.kb-live-event-sub{color:#a9cada;font-size:.82rem;margin-top:2px}.kb-live-event-score{font-weight:1000;color:#7dffc4}.kb-live-empty{padding:26px;text-align:center;color:var(--kb-live-dim)}
.kb-live-source-list{display:flex;flex-direction:column;gap:8px}.kb-live-source{padding:9px 10px;border-radius:10px;background:#0a2234;border:1px solid #193d57}.kb-live-source strong{display:block}.kb-live-source small{color:var(--kb-live-dim);word-break:break-all}.kb-live-status-ok{color:#61e9a9}.kb-live-status-warn{color:#ffd36b}
.kb-live-sound{display:inline-flex;align-items:center;gap:7px;border:1px solid #2d668c;background:#0c2c43;color:#fff;border-radius:999px;padding:7px 11px;font-weight:850;cursor:pointer}
.kb-live-media-overlay{position:fixed;inset:0;z-index:2147483000;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.86);backdrop-filter:blur(8px)}.kb-live-media-overlay[hidden]{display:none}.kb-live-media-box{position:relative;width:min(980px,96vw);max-height:92vh;border-radius:18px;overflow:hidden;border:1px solid #2a607e;background:#02080d;box-shadow:0 20px 80px #000}.kb-live-media-box img,.kb-live-media-box video{display:block;width:100%;max-height:82vh;object-fit:contain;background:#000}.kb-live-media-caption{padding:11px 14px;color:#fff;font-weight:850}.kb-live-media-close{position:absolute;right:10px;top:10px;z-index:3;width:38px;height:38px;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:rgba(0,0,0,.66);color:#fff;font-size:22px;cursor:pointer}
.kb-live-public-link{color:inherit;text-decoration:none}.kb-live-public-banner-wrap{position:fixed;left:0;right:0;top:0;z-index:2147483000;padding:8px 10px;pointer-events:none}.kb-live-public-banner{pointer-events:auto;position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,.62fr) minmax(0,1fr);align-items:center;gap:10px;width:min(1500px,calc(100% - 12px));margin:0 auto;padding:8px 14px;border:1px solid #245a77;border-radius:14px;background:linear-gradient(90deg,rgba(0,16,26,.78),rgba(0,22,34,.45),rgba(0,16,26,.78)),url('/assets/img/matchday/matchday-banner-bg.png') center 54%/cover no-repeat;box-shadow:0 12px 34px rgba(0,0,0,.42);backdrop-filter:blur(12px);color:#fff;overflow:hidden}.kb-live-public-banner:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.16),transparent 35% 65%,rgba(0,0,0,.16));pointer-events:none}.kb-live-public-banner>*{position:relative;z-index:1}.kb-live-public-team{display:flex;align-items:center;gap:8px;min-width:0}.kb-live-public-team--away{justify-content:flex-end;text-align:right}.kb-live-public-team img{width:42px;height:42px;object-fit:contain}.kb-live-public-team .kb-live-team-fallback{width:42px;height:42px;min-width:42px;font-size:.66rem}.kb-live-public-name{font-size:.86rem;font-weight:950;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kb-live-public-mid{text-align:center}.kb-live-public-score{font-size:1.35rem;font-weight:1000}.kb-live-public-meta{font-size:.72rem;color:#b7d8e8}.kb-live-login-spacer{height:78px}
.kb-live-inline{margin:8px 0 12px;border:1px solid #1f5474;border-radius:13px;background:#061d2c;overflow:hidden}.kb-live-inline[hidden]{display:none}.kb-live-inline-head{display:flex;align-items:center;justify-content:space-between;padding:8px 11px;background:#09273b}.kb-live-inline-events{display:flex;gap:7px;padding:8px;overflow-x:auto}.kb-live-inline-event{flex:0 0 auto;min-width:150px;max-width:240px;padding:7px 9px;border-radius:9px;background:#04131e;border:1px solid #1a3b50;font-size:.8rem}.kb-live-inline-event b{display:block}.kb-live-dashboard-badge{position:absolute;right:10px;top:10px;z-index:30;display:none;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#7a1325;color:#fff!important;font-size:.75rem;font-weight:1000;text-decoration:none;box-shadow:0 0 0 1px rgba(255,255,255,.18)}.kb-live-dashboard-badge.is-visible{display:inline-flex}
.kb-live-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.kb-live-form-row{display:grid;gap:6px;margin-bottom:10px}.kb-live-input,.kb-live-select,.kb-live-textarea{width:100%;box-sizing:border-box;border:1px solid #24516f;border-radius:10px;background:#04131f;color:#fff;padding:10px 11px;font:inherit}.kb-live-textarea{min-height:88px;resize:vertical}.kb-live-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #2878aa;border-radius:10px;background:#0b4c7a;color:#fff;padding:9px 12px;font-weight:900;cursor:pointer;text-decoration:none}.kb-live-btn--green{background:#087a4d;border-color:#16b873}.kb-live-btn--red{background:#781628;border-color:#b53149}.kb-live-chiprow{display:flex;gap:7px;flex-wrap:wrap}.kb-live-chip{border:1px solid #27516b;border-radius:999px;background:#0a2537;color:#fff;padding:7px 10px;font-weight:850;cursor:pointer}.kb-live-linkbox{display:flex;gap:8px}.kb-live-linkbox input{flex:1}.kb-live-copy{white-space:nowrap}
@media(max-width:760px){.kb-live-stage{width:min(100% - 12px,1180px);padding-top:8px}.kb-live-scoreboard{grid-template-columns:1fr 112px 1fr;gap:6px;padding:10px 7px}.kb-live-team{grid-template-columns:40px minmax(0,1fr);gap:5px}.kb-live-team--away{grid-template-columns:minmax(0,1fr) 40px}.kb-live-team-logo,.kb-live-team-fallback{width:40px;height:40px}.kb-live-team-name{font-size:.72rem}.kb-live-venue{display:none}.kb-live-badge{font-size:.62rem;padding:5px 7px}.kb-live-score{font-size:2rem}.kb-live-phase{font-size:.7rem}.kb-live-clock,.kb-live-countdown{font-size:.72rem}.kb-live-grid{grid-template-columns:1fr}.kb-live-event{grid-template-columns:42px 28px minmax(0,1fr) auto;gap:6px;padding:8px}.kb-live-public-banner{grid-template-columns:1fr 96px 1fr;padding:6px 8px}.kb-live-public-team img{width:32px;height:32px}.kb-live-public-team .kb-live-team-fallback{width:32px;height:32px;min-width:32px;font-size:.58rem}.kb-live-public-name{font-size:.68rem}.kb-live-public-score{font-size:1rem}.kb-live-public-meta{font-size:.6rem}.kb-live-login-spacer{height:65px}}

/* R357 Pre-Match-Musik */
.kb-live-public-mid .kb-live-sound{margin:4px auto 0;padding:2px 7px;font-size:.62rem;line-height:1.25}
@media(max-width:760px){.kb-live-public-mid .kb-live-sound{font-size:.56rem;padding:2px 5px}}

/* R358 — Fullscreen Stream-Event auf Login-Seite */
.kb-login-card{position:relative;z-index:8}
.kb-live-login-spacer{height:0!important}
.kb-live-public-banner-wrap{position:fixed;inset:0;z-index:1;padding:0;pointer-events:none;overflow:hidden;background:radial-gradient(circle at 50% 18%,rgba(28,92,145,.20),rgba(2,9,15,.25) 32%,rgba(1,7,12,.92) 85%)}
.kb-live-public-banner{pointer-events:auto;position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;gap:20px;width:100%;margin:0;padding:24px clamp(24px,4vw,62px) 18px;border:0;border-radius:0;background:
  linear-gradient(180deg,rgba(1,10,18,.84),rgba(1,10,18,.42) 22%,rgba(2,7,14,.74) 100%),
  radial-gradient(circle at 50% 16%,rgba(0,167,255,.26),transparent 28%),
  radial-gradient(circle at 16% 50%,rgba(32,144,255,.15),transparent 26%),
  radial-gradient(circle at 84% 50%,rgba(0,214,132,.12),transparent 26%),
  url('/assets/img/matchday/matchday-banner-bg.png') center center/cover no-repeat;
  box-shadow:none;backdrop-filter:none;color:#fff;overflow:hidden;text-decoration:none}
.kb-live-public-banner:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.18),transparent 28%,transparent 72%,rgba(0,0,0,.18));pointer-events:none}
.kb-live-public-banner:after{content:"";position:absolute;inset:auto 0 0 0;height:38%;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.24) 22%,rgba(0,0,0,.55));pointer-events:none}
.kb-live-public-banner>*{position:relative;z-index:1}
.kb-live-public-fx{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.kb-live-public-fx::before{content:"";position:absolute;inset:0;opacity:.34;background-image:radial-gradient(circle at 12% 18%,rgba(255,255,255,.75) 0 1px,transparent 1.5px),radial-gradient(circle at 42% 26%,rgba(255,255,255,.55) 0 1px,transparent 1.5px),radial-gradient(circle at 72% 15%,rgba(255,255,255,.7) 0 1px,transparent 1.5px),radial-gradient(circle at 84% 35%,rgba(255,255,255,.48) 0 1px,transparent 1.5px),radial-gradient(circle at 24% 68%,rgba(255,255,255,.45) 0 1px,transparent 1.5px),radial-gradient(circle at 65% 58%,rgba(255,255,255,.4) 0 1px,transparent 1.5px);animation:kbPublicTwinkle 9s linear infinite}
.kb-live-public-comet{position:absolute;width:180px;height:2px;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.92),rgba(125,210,255,0));filter:drop-shadow(0 0 8px rgba(166,225,255,.55));opacity:.0;transform:rotate(-20deg)}
.kb-live-public-comet--1{top:18%;left:-12%;animation:kbPublicComet 10s linear infinite}
.kb-live-public-comet--2{top:36%;left:-18%;animation:kbPublicComet 13s linear infinite 3s}
.kb-live-public-comet--3{top:12%;left:48%;animation:kbPublicCometShort 12s linear infinite 4s}
.kb-live-public-flash{position:absolute;inset:0;background:radial-gradient(circle at 50% 24%,rgba(255,255,255,.42),transparent 22%),linear-gradient(135deg,transparent 41%,rgba(255,255,255,.18) 49%,transparent 55%);mix-blend-mode:screen;opacity:.08}
.kb-live-public-grid{position:absolute;inset:auto 0 0;height:32%;background:repeating-linear-gradient(90deg,rgba(255,255,255,.06) 0 1px,transparent 1px 34px),linear-gradient(180deg,rgba(67,198,255,.16),rgba(67,198,255,0));opacity:.25;transform:perspective(420px) rotateX(72deg);transform-origin:center bottom}
.kb-live-public-topline,.kb-live-public-bottomline{display:flex;align-items:center;justify-content:space-between;gap:16px}
.kb-live-public-badgeline,.kb-live-public-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.kb-live-public-badge{display:inline-flex;align-items:center;justify-content:center;padding:9px 15px;border-radius:999px;background:linear-gradient(180deg,#d73248,#8a1729);box-shadow:0 10px 26px rgba(0,0,0,.3);font-size:.95rem;font-weight:1000;letter-spacing:.09em;text-transform:uppercase}
.kb-live-public-topnote,.kb-live-public-kickoff,.kb-live-public-bottomnote,.kb-live-public-venue{font-size:.95rem;color:#dbecf8}
.kb-live-public-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.9fr) minmax(0,1fr);align-items:center;gap:clamp(18px,4vw,64px);margin:auto 0;padding:0 0 10px}
.kb-live-public-team{display:flex;align-items:center;gap:16px;min-width:0}
.kb-live-public-team img{width:92px;height:92px;object-fit:contain;filter:drop-shadow(0 12px 18px rgba(0,0,0,.35))}
.kb-live-public-team .kb-live-team-fallback{width:92px;height:92px;min-width:92px;font-size:1rem;border-width:2px;background:rgba(11,38,57,.76)}
.kb-live-public-team--away{justify-content:flex-end;text-align:right}
.kb-live-public-name{max-width:min(34vw,420px);white-space:normal;overflow:visible;text-overflow:unset;font-size:clamp(1.25rem,2.2vw,2.2rem);font-weight:1000;line-height:1.05;text-shadow:0 2px 18px rgba(0,0,0,.45)}
.kb-live-public-center{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center}
.kb-live-public-streamtag{display:inline-flex;align-items:center;justify-content:center;padding:6px 12px;border-radius:999px;border:1px solid rgba(144,211,255,.42);background:rgba(4,28,50,.52);font-weight:900;letter-spacing:.18em;font-size:.82rem;text-transform:uppercase;color:#9fd0ff}
.kb-live-public-score{display:block;font-size:clamp(2rem,4.8vw,4.9rem);line-height:.94;font-weight:1000;letter-spacing:-.04em;text-shadow:0 8px 20px rgba(0,0,0,.45)}
.kb-live-public-countdown{display:block;font-size:clamp(1.25rem,3vw,2.35rem);font-weight:1000;letter-spacing:.12em;font-variant-numeric:tabular-nums;color:#f6fbff;text-shadow:0 2px 12px rgba(0,0,0,.45)}
.kb-live-public-meta{display:block;font-size:1rem;color:#cfe6f5;max-width:46ch}
.kb-live-public-venue{text-align:right;color:#8ee2be;font-weight:850}
.kb-live-public-bottomline{padding-top:8px;border-top:1px solid rgba(145,210,255,.18)}
.kb-live-sound{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid rgba(132,198,255,.38);background:rgba(9,45,76,.72);color:#fff;border-radius:12px;padding:10px 14px;font-weight:900;cursor:pointer;box-shadow:0 10px 24px rgba(0,0,0,.18)}
.kb-live-sound[data-active="1"]{background:rgba(8,82,58,.76);border-color:rgba(102,233,177,.45)}
.kb-live-public-banner[data-scene="countdown"] .kb-live-public-badge{background:linear-gradient(180deg,#2d8fff,#1753b9)}
.kb-live-public-banner[data-scene="countdown"] .kb-live-public-countdown{animation:kbPublicCountdownPulse 1.5s ease-in-out infinite}
.kb-live-public-banner[data-scene="lineup"] .kb-live-public-streamtag{background:rgba(55,22,80,.58);border-color:rgba(255,201,90,.45);color:#ffd977;box-shadow:0 0 0 1px rgba(255,206,112,.12),0 0 24px rgba(255,188,56,.16)}
.kb-live-public-banner[data-scene="lineup"] .kb-live-public-score{color:#fff4c0;animation:kbPublicHeroPulse 1.15s ease-in-out infinite;text-shadow:0 0 12px rgba(255,202,97,.35),0 0 38px rgba(255,143,43,.18),0 8px 20px rgba(0,0,0,.45)}
.kb-live-public-banner[data-scene="lineup"] .kb-live-public-countdown{color:#ffe6a7}
.kb-live-public-banner[data-scene="lineup"] .kb-live-public-flash{opacity:.28;animation:kbPublicLightning 5.2s linear infinite}
.kb-live-public-banner[data-scene="lineup"] .kb-live-public-grid{opacity:.38;animation:kbPublicGridMove 4.8s linear infinite}
.kb-live-public-banner[data-scene="lineup"]:before{background:linear-gradient(90deg,rgba(57,16,72,.20),transparent 28%,transparent 72%,rgba(21,46,99,.22)),radial-gradient(circle at 50% 24%,rgba(255,149,64,.16),transparent 26%)}
.kb-live-public-banner[data-scene="live"] .kb-live-public-badge{background:linear-gradient(180deg,#ff3a53,#8b1628)}
.kb-live-public-banner[data-scene="live"] .kb-live-public-score{color:#fff;animation:kbPublicLiveGlow 2.2s ease-in-out infinite}
.kb-live-public-banner[data-scene="live"] .kb-live-public-streamtag{background:rgba(112,17,38,.48);border-color:rgba(255,110,132,.42);color:#ffdce2}
@keyframes kbPublicTwinkle{0%,100%{opacity:.2}50%{opacity:.42}}
@keyframes kbPublicComet{0%{transform:translate3d(0,0,0) rotate(-20deg);opacity:0}8%{opacity:.72}24%{opacity:.1}100%{transform:translate3d(128vw,44vh,0) rotate(-20deg);opacity:0}}
@keyframes kbPublicCometShort{0%{transform:translate3d(0,0,0) rotate(-28deg);opacity:0}12%{opacity:.64}30%{opacity:.08}100%{transform:translate3d(48vw,26vh,0) rotate(-28deg);opacity:0}}
@keyframes kbPublicCountdownPulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.04);opacity:.92}}
@keyframes kbPublicHeroPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.04)}}
@keyframes kbPublicLightning{0%,7%,11%,100%{opacity:.08}8%,10%{opacity:.36}9%{opacity:.18}}
@keyframes kbPublicGridMove{from{transform:perspective(420px) rotateX(72deg) translateY(0)}to{transform:perspective(420px) rotateX(72deg) translateY(18px)}}
@keyframes kbPublicLiveGlow{0%,100%{text-shadow:0 0 0 rgba(255,81,107,0),0 8px 20px rgba(0,0,0,.45)}50%{text-shadow:0 0 18px rgba(255,81,107,.35),0 8px 20px rgba(0,0,0,.45)}}
@media(max-width:980px){
  .kb-live-public-main{grid-template-columns:1fr;gap:20px;padding-top:10px}
  .kb-live-public-team,.kb-live-public-team--away{justify-content:center;text-align:center}
  .kb-live-public-team--away{flex-direction:row-reverse}
  .kb-live-public-name{max-width:82vw;font-size:clamp(1.1rem,3vw,1.7rem)}
  .kb-live-public-bottomline,.kb-live-public-topline{flex-direction:column;align-items:center;text-align:center}
  .kb-live-public-venue{text-align:center}
}
@media(max-width:640px){
  .kb-live-public-banner{padding:16px 14px 12px}
  .kb-live-public-team img,.kb-live-public-team .kb-live-team-fallback{width:64px;height:64px;min-width:64px}
  .kb-live-public-score{font-size:clamp(1.6rem,7vw,2.5rem)}
  .kb-live-public-countdown{font-size:clamp(1.05rem,5vw,1.5rem);letter-spacing:.08em}
  .kb-live-public-topnote,.kb-live-public-kickoff,.kb-live-public-bottomnote,.kb-live-public-venue,.kb-live-public-meta{font-size:.82rem}
  .kb-live-public-badge{font-size:.78rem;padding:8px 12px}
  .kb-live-public-main{gap:14px}
  .kb-live-sound{font-size:.78rem;padding:8px 11px}
}

/* R359 — Firefox-sicherer Stream-Layer */
.kb-live-public-banner{pointer-events:none!important}
.kb-live-public-controls,.kb-live-public-open,.kb-live-public-sound,.kb-live-sound{pointer-events:auto}
.kb-live-public-open{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:12px;border:1px solid rgba(86,214,151,.42);background:rgba(8,94,61,.78);color:#fff!important;text-decoration:none!important;font-weight:1000;letter-spacing:.04em;box-shadow:0 10px 24px rgba(0,0,0,.18)}
.kb-live-public-open:hover{filter:brightness(1.08)}
@supports not (backdrop-filter:blur(2px)){
  .kb-login-card{background:rgba(4,8,16,.96)!important}
  .kb-live-sound,.kb-live-public-open{background-color:#0a3551}
}
@-moz-document url-prefix(){
  body.kb-bg{min-height:100vh;min-height:100dvh}
  .kb-live-public-banner-wrap{width:100vw;height:100vh;height:100dvh;overflow:hidden}
  .kb-live-public-banner{width:100vw;height:100vh;height:100dvh;min-height:100vh;min-height:100dvh}
  .kb-login-card{z-index:50;background:rgba(4,8,16,.94)!important;backdrop-filter:none!important}
}


/* R360 — Desktop 100%-Skalierung für Login-Event-Stream */
@media (min-width: 901px){
  .kb-live-public-banner-wrap{
    position:fixed;
    inset:0;
    padding:0;
    z-index:2147482990;
  }
  .kb-live-public-banner{
    width:100vw;
    max-width:none;
    min-height:100vh;
    min-height:100dvh;
    height:100vh;
    height:100dvh;
    margin:0;
    border-radius:0;
    border-left:0;
    border-right:0;
    padding:18px clamp(20px,3.2vw,44px) clamp(245px,29vh,310px);
  }
  .kb-live-public-main{
    gap:clamp(18px,3.2vw,56px);
    align-items:center;
  }
  .kb-live-public-team img,
  .kb-live-public-team .kb-live-team-fallback{
    width:86px;
    height:86px;
    min-width:86px;
  }
  .kb-live-public-name{
    max-width:min(32vw,420px);
    font-size:clamp(1.18rem,2vw,2rem);
  }
  .kb-live-public-score{
    font-size:clamp(1.95rem,4.5vw,4.6rem);
  }
  .kb-live-public-countdown{
    font-size:clamp(1.12rem,2.5vw,2.15rem);
  }
  .kb-live-public-meta,
  .kb-live-public-topnote,
  .kb-live-public-kickoff,
  .kb-live-public-bottomnote,
  .kb-live-public-venue{
    font-size:.92rem;
  }
  .kb-live-public-topline,
  .kb-live-public-bottomline{
    gap:12px 18px;
  }
  .kb-live-public-banner-wrap ~ .kb-login-card{
    position:fixed;
    left:50%;
    bottom:max(18px, env(safe-area-inset-bottom));
    transform:translateX(-50%);
    width:min(320px, calc(100vw - 32px));
    max-width:calc(100vw - 32px);
    margin:0;
    z-index:2147483002;
  }
  .kb-live-public-banner-wrap ~ .kb-login-card .kb-showcase-wrap{
    height:72px;
  }
  .kb-live-public-banner-wrap ~ .kb-login-card .kb-preview-card{
    width:120px;
    height:56px;
  }
  .kb-live-public-banner-wrap ~ .kb-login-ambient{
    opacity:.28;
    filter:blur(4px);
  }
}

@media (min-width: 901px) and (max-height: 980px){
  .kb-live-public-banner{
    padding-top:14px;
    padding-bottom:230px;
  }
  .kb-live-public-team img,
  .kb-live-public-team .kb-live-team-fallback{
    width:76px;
    height:76px;
    min-width:76px;
  }
  .kb-live-public-name{
    font-size:clamp(1.08rem,1.8vw,1.7rem);
  }
  .kb-live-public-score{
    font-size:clamp(1.75rem,4vw,3.8rem);
  }
  .kb-live-public-countdown{
    font-size:clamp(1.02rem,2.2vw,1.7rem);
  }
}

@media (min-width: 901px) and (max-height: 860px){
  .kb-live-public-banner{
    padding-top:10px;
    padding-bottom:206px;
  }
  .kb-live-public-main{
    gap:clamp(14px,2.6vw,30px);
  }
  .kb-live-public-team img,
  .kb-live-public-team .kb-live-team-fallback{
    width:66px;
    height:66px;
    min-width:66px;
  }
  .kb-live-public-name{
    font-size:clamp(.98rem,1.55vw,1.35rem);
  }
  .kb-live-public-score{
    font-size:clamp(1.45rem,3.4vw,2.9rem);
  }
  .kb-live-public-countdown{
    font-size:clamp(.96rem,1.9vw,1.4rem);
    letter-spacing:.06em;
  }
  .kb-live-public-meta,
  .kb-live-public-topnote,
  .kb-live-public-kickoff,
  .kb-live-public-bottomnote,
  .kb-live-public-venue{
    font-size:.82rem;
  }
  .kb-live-public-banner-wrap ~ .kb-login-card{
    width:min(302px, calc(100vw - 24px));
    bottom:12px;
  }
  .kb-live-public-banner-wrap ~ .kb-login-card .kb-showcase-wrap{
    height:66px;
  }
  .kb-live-public-banner-wrap ~ .kb-login-card .kb-preview-card{
    width:108px;
    height:50px;
  }
}

/* R361 — feste Zonen: Topbar / Stream / Login / Bottom-Info ohne Überdeckung */
@media (min-width:901px){
  body.kb-bg{
    --kb-r361-top-h:76px;
    --kb-r361-info-h:58px;
    --kb-r361-login-h:356px;
    min-height:100vh;
    min-height:100dvh;
    overflow:hidden!important;
  }

  .kb-live-public-banner-wrap{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100vh!important;
    height:100dvh!important;
    padding:0!important;
    overflow:hidden!important;
  }

  .kb-live-public-banner{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    padding:0!important;
    display:block!important;
    overflow:hidden!important;
  }

  .kb-live-public-topline{
    position:absolute!important;
    z-index:5!important;
    left:clamp(18px,3vw,46px)!important;
    right:clamp(18px,3vw,46px)!important;
    top:12px!important;
    min-height:52px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:14px!important;
    margin:0!important;
    padding:0!important;
  }

  .kb-live-public-main{
    position:absolute!important;
    z-index:3!important;
    left:clamp(22px,4vw,64px)!important;
    right:clamp(22px,4vw,64px)!important;
    top:var(--kb-r361-top-h)!important;
    bottom:calc(var(--kb-r361-login-h) + var(--kb-r361-info-h) + 34px)!important;
    margin:0!important;
    padding:0!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(245px,.82fr) minmax(0,1fr)!important;
    align-items:center!important;
    gap:clamp(16px,3vw,50px)!important;
    min-height:0!important;
  }

  .kb-live-public-team{
    min-width:0!important;
    gap:14px!important;
  }
  .kb-live-public-team img,
  .kb-live-public-team .kb-live-team-fallback{
    width:clamp(62px,7vh,86px)!important;
    height:clamp(62px,7vh,86px)!important;
    min-width:clamp(62px,7vh,86px)!important;
  }
  .kb-live-public-name{
    max-width:min(31vw,390px)!important;
    font-size:clamp(1.02rem,1.65vw,1.72rem)!important;
    line-height:1.04!important;
  }
  .kb-live-public-center{gap:6px!important}
  .kb-live-public-score{
    font-size:clamp(1.55rem,3.6vw,3.6rem)!important;
    line-height:.96!important;
  }
  .kb-live-public-countdown{
    font-size:clamp(1rem,2vw,1.72rem)!important;
    letter-spacing:.08em!important;
  }
  .kb-live-public-meta{font-size:.88rem!important}

  /* Login bekommt eine garantiert freie eigene Zone. */
  .kb-live-public-banner-wrap ~ .kb-login-card{
    position:fixed!important;
    z-index:2147483002!important;
    left:50%!important;
    bottom:calc(var(--kb-r361-info-h) + 14px)!important;
    transform:translateX(-50%)!important;
    transform-origin:center bottom!important;
    width:min(318px,calc(100vw - 30px))!important;
    max-width:calc(100vw - 30px)!important;
    max-height:var(--kb-r361-login-h)!important;
    margin:0!important;
    padding:12px 14px!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }
  .kb-live-public-banner-wrap ~ .kb-login-card .kb-logo-wrap{margin-bottom:6px!important}
  .kb-live-public-banner-wrap ~ .kb-login-card .kb-logo-image{width:68px!important;max-width:68px!important}
  .kb-live-public-banner-wrap ~ .kb-login-card .kb-info-wrap{height:30px!important;margin-top:6px!important;border-radius:10px!important}
  .kb-live-public-banner-wrap ~ .kb-login-card .kb-info-text{font-size:.78rem!important;line-height:28px!important}
  .kb-live-public-banner-wrap ~ .kb-login-card .kb-showcase-wrap{height:58px!important;margin-top:6px!important;border-radius:10px!important}
  .kb-live-public-banner-wrap ~ .kb-login-card .kb-preview-card{width:104px!important;height:46px!important;border-radius:8px!important}
  .kb-live-public-banner-wrap ~ .kb-login-card form{margin-top:8px!important}
  .kb-live-public-banner-wrap ~ .kb-login-card .kb-input{min-height:40px!important;padding-top:8px!important;padding-bottom:8px!important;margin-bottom:7px!important}
  .kb-live-public-banner-wrap ~ .kb-login-card .kb-btn{min-height:40px!important;padding-top:8px!important;padding-bottom:8px!important}
  .kb-live-public-banner-wrap ~ .kb-login-card .kb-links{margin-top:7px!important;gap:7px!important;font-size:.82rem!important}
  .kb-live-public-banner-wrap ~ .kb-login-card .kb-note{min-height:0!important;margin-top:4px!important;font-size:.72rem!important;line-height:1.2!important}

  /* Hinweise liegen immer unterhalb der Login-Zone in eigener Leiste. */
  .kb-live-public-bottomline{
    position:absolute!important;
    z-index:6!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    height:var(--kb-r361-info-h)!important;
    min-height:var(--kb-r361-info-h)!important;
    box-sizing:border-box!important;
    margin:0!important;
    padding:10px clamp(18px,3vw,46px)!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:18px!important;
    border-top:1px solid rgba(145,210,255,.22)!important;
    background:linear-gradient(180deg,rgba(2,15,26,.80),rgba(2,11,19,.96))!important;
    box-shadow:0 -10px 32px rgba(0,0,0,.22)!important;
  }
  .kb-live-public-bottomnote{
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:.82rem!important;
  }
  .kb-live-public-venue{
    max-width:42vw!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:.82rem!important;
  }
}

@media (min-width:901px) and (max-height:820px){
  body.kb-bg{
    --kb-r361-top-h:66px;
    --kb-r361-info-h:50px;
    --kb-r361-login-h:318px;
  }
  .kb-live-public-topline{top:8px!important;min-height:46px!important}
  .kb-live-public-main{
    bottom:calc(var(--kb-r361-login-h) + var(--kb-r361-info-h) + 22px)!important;
    gap:16px!important;
  }
  .kb-live-public-team img,
  .kb-live-public-team .kb-live-team-fallback{
    width:58px!important;height:58px!important;min-width:58px!important;
  }
  .kb-live-public-name{font-size:clamp(.94rem,1.45vw,1.26rem)!important}
  .kb-live-public-score{font-size:clamp(1.32rem,3vw,2.55rem)!important}
  .kb-live-public-countdown{font-size:clamp(.9rem,1.7vw,1.22rem)!important}
  .kb-live-public-meta{font-size:.78rem!important}
  .kb-live-public-topnote,.kb-live-public-kickoff{font-size:.78rem!important}
  .kb-live-public-badge{font-size:.72rem!important;padding:7px 10px!important}
  .kb-live-sound,.kb-live-public-open{font-size:.75rem!important;padding:7px 10px!important}
  .kb-live-public-banner-wrap ~ .kb-login-card{
    width:min(292px,calc(100vw - 24px))!important;
    padding:9px 12px!important;
  }
  .kb-live-public-banner-wrap ~ .kb-login-card .kb-logo-image{width:54px!important;max-width:54px!important}
  .kb-live-public-banner-wrap ~ .kb-login-card .kb-info-wrap{height:27px!important}
  .kb-live-public-banner-wrap ~ .kb-login-card .kb-info-text{font-size:.72rem!important;line-height:25px!important}
  .kb-live-public-banner-wrap ~ .kb-login-card .kb-input,
  .kb-live-public-banner-wrap ~ .kb-login-card .kb-btn{min-height:36px!important}
  .kb-live-public-banner-wrap ~ .kb-login-card .kb-links{font-size:.76rem!important;margin-top:5px!important}
  .kb-live-public-banner-wrap ~ .kb-login-card .kb-note{font-size:.66rem!important}
  .kb-live-public-bottomline{padding-top:7px!important;padding-bottom:7px!important}
  .kb-live-public-bottomnote,.kb-live-public-venue{font-size:.74rem!important}
}

@media (min-width:901px) and (max-height:700px){
  body.kb-bg{
    --kb-r361-top-h:58px;
    --kb-r361-info-h:46px;
    --kb-r361-login-h:286px;
  }
  .kb-live-public-main{bottom:calc(var(--kb-r361-login-h) + var(--kb-r361-info-h) + 16px)!important}
  .kb-live-public-banner-wrap ~ .kb-login-card{transform:translateX(-50%) scale(.92)!important}
  .kb-live-public-bottomnote{max-width:62vw!important}
}
