  /* Einlauf Tab */
  #einlaufTab { display:none; grid-column:1/-1; height:100%; min-height:0; overflow:hidden; padding:12px; background:#e9eef5; }
  .einlauf-workspace { flex:1; width:100%; min-height:0; display:grid; grid-template-columns:132px minmax(0,1fr); gap:10px; }
  .einlauf-control { min-height:0; display:flex; flex-direction:column; gap:8px; }
  #nextEinlaufBtn { flex:1; width:100%; min-height:0; padding:18px 10px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:14px; border:0; border-radius:14px; background:var(--blue); color:#fff; cursor:pointer; box-shadow:0 4px 14px rgba(7,94,181,.28); touch-action:manipulation; }
  #nextEinlaufBtn span { font-size:18px; font-weight:900; letter-spacing:.02em; }
  #nextEinlaufBtn b { font-size:42px; line-height:1; }
  #nextEinlaufBtn:active { background:var(--blue-dark); transform:scale(.985); }
  #nextEinlaufBtn.is-finish { background:var(--red); box-shadow:0 4px 14px rgba(185,43,37,.32); }
  #nextEinlaufBtn.is-finish:active { background:#98231f; }
  #previousEinlaufBtn { flex:0 0 58px; width:100%; display:flex; align-items:center; justify-content:center; gap:6px; border:1px solid #cbd5e1; border-radius:12px; background:#fff; color:#344054; cursor:pointer; font-size:13px; font-weight:850; box-shadow:0 2px 7px rgba(16,24,40,.07); touch-action:manipulation; }
  #previousEinlaufBtn:active { background:#e9eef5; transform:scale(.985); }
  #previousEinlaufBtn:disabled { opacity:.42; cursor:not-allowed; transform:none; }
  .einlauf-stage { min-width:0; min-height:0; display:flex; flex-direction:column; gap:10px; }
  .einlauf-toolbar { flex:0 0 auto; min-height:62px; padding:10px 12px 10px 16px; display:flex; align-items:center; justify-content:space-between; gap:14px; border:1px solid #dbe3ec; border-radius:14px; background:#fff; box-shadow:0 3px 12px rgba(16,24,40,.07); }
  .einlauf-kicker { display:block; margin-bottom:2px; color:var(--muted); font-size:11px; font-weight:850; letter-spacing:.07em; text-transform:uppercase; }
  #matchDayDisplay { margin:0; color:#172b4d; font-size:22px; text-align:left; }
  #einlaufProgress { min-width:86px; color:var(--muted); font-size:13px; font-weight:800; text-align:right; }
  .einlauf-part-tabs { flex:0 0 auto; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; padding:6px; border:1px solid #dbe3ec; border-radius:12px; background:#fff; box-shadow:0 2px 8px rgba(16,24,40,.05); }
  .einlauf-part-tab { min-width:0; padding:9px 10px; display:flex; align-items:center; justify-content:center; gap:8px; border-radius:8px; color:#667085; font-size:13px; font-weight:850; }
  .einlauf-part-tab span { width:22px; height:22px; display:inline-flex; align-items:center; justify-content:center; border-radius:50%; background:#e9eef5; color:#475467; font-size:11px; }
  .einlauf-part-tab.is-active { background:#eaf2ff; color:#075eb5; }
  .einlauf-part-tab.is-active span { background:var(--blue); color:#fff; }
  .einlauf-part-tab.is-complete { color:#16794b; }
  .einlauf-part-tab.is-complete span { background:#16794b; color:#fff; }
  .einlauf-part-tab.is-empty { opacity:.48; }
  .einlauf-list { position:relative; flex:1; min-height:0; overflow:hidden; }
  .einlauf-team { width:100%; height:100%; min-width:0; min-height:0; display:none; flex-direction:column; overflow:hidden; border:1px solid #dbe3ec; border-radius:14px; background:#fff; box-shadow:0 3px 12px rgba(16,24,40,.07); }
  .einlauf-team.is-active { display:flex; }
  .einlauf-team h3 { flex:0 0 auto; margin:0; padding:11px 14px; overflow:hidden; background:#172b4d; color:#fff; font-size:16px; text-align:left; white-space:nowrap; text-overflow:ellipsis; }
  #einlaufRight h3 { background:var(--blue); }
  #einlaufMid h3 { background:#344054; }
  .einlauf-script { flex:0 0 auto; margin:8px 8px 0; padding:11px 13px; border-left:3px solid var(--blue); border-radius:7px; background:#eef5ff; color:#253347; font-size:17px; font-weight:750; line-height:1.4; }
  .einlauf-script[hidden] { display:none; }
  .einlauf-team > ul { flex:1; min-height:0; margin:0; padding:8px; display:flex; flex-direction:column; gap:5px; overflow-y:auto; list-style:none; }
  #einlaufLeft > ul, #einlaufRight > ul { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); grid-template-rows:repeat(var(--einlauf-rows,1),auto); grid-auto-flow:column; align-content:start; }
  #einlaufMid.is-active { position:static; width:100%; height:auto; max-height:100%; transform:none; }
  #einlaufMid > ul { flex:0 1 auto; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .einlauf-card { flex:0 0 auto; min-height:38px; padding:7px 9px; display:flex; align-items:center; gap:9px; border:1px solid #e2e8f0; border-radius:9px; background:#f8fafc; color:#253347; font-size:14px; line-height:1.2; transition:background .12s ease,border-color .12s ease,box-shadow .12s ease,transform .12s ease; }
  .einlauf-card.einlauf-captain-card { border-color:#e0b54d; background:linear-gradient(135deg,#fffdf5,#fff8df); }
  .einlauf-captain-badge { flex:0 0 28px; width:28px; height:28px; display:grid; place-items:center; border-radius:50%; background:#d99b14; color:#fff; font-size:12px; font-weight:950; box-shadow:0 2px 5px rgba(134,91,0,.2); }
  .einlauf-number { flex:0 0 34px; padding:5px 3px; border-radius:7px; background:#eaf2ff; color:#174ea6; font-size:13px; font-weight:900; text-align:center; }
  .einlauf-name { min-width:0; overflow:hidden; font-weight:750; white-space:nowrap; text-overflow:ellipsis; }
  .einlauf-title { flex:0 0 92px; color:#47698f; font-size:11px; font-weight:850; line-height:1.15; text-transform:uppercase; }
  .einlauf-coaches { flex:0 0 auto; padding:8px; border-top:1px solid #dbe3ec; background:#eef4fb; }
  .einlauf-coaches strong { display:block; margin:0 2px 6px; color:#475467; font-size:11px; letter-spacing:.05em; text-transform:uppercase; }
  .einlauf-coach-list { margin:0; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:5px; list-style:none; }
  .einlauf-coach-card::before { content:"COACH"; flex:0 0 auto; padding:4px 6px; border-radius:6px; background:#dce9f8; color:#285784; font-size:10px; font-weight:900; letter-spacing:.04em; }
  .template-grid { width:100%; max-width:100%; min-width:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .template-grid .field { min-width:0; }
  .template-grid .field textarea { width:100%; max-width:100%; min-width:0; min-height:190px; }
  .einlauf-outro-wrap { flex:0 0 auto; padding:8px; border-top:1px solid #dbe3ec; background:#fff8ed; }
  .einlauf-outro-wrap strong { display:block; margin:0 2px 6px; color:#8a4b08; font-size:11px; letter-spacing:.05em; text-transform:uppercase; }
  .einlauf-outro-wrap .einlauf-script { margin:0; border-left-color:#e78313; background:#fff3df; }
  .template-placeholders { width:100%; max-width:100%; min-width:0; margin-bottom:14px; padding:11px 13px; display:flex; align-items:center; flex-wrap:wrap; gap:7px; overflow:hidden; border:1px solid #cfe0f4; border-radius:9px; background:#f4f8fd; color:#475467; font-size:13px; }
  .template-placeholders strong { margin-right:3px; color:#253347; }
  .template-placeholders code { padding:4px 7px; border-radius:6px; background:#dce9f8; color:#174ea6; font-family:inherit; font-weight:850; }
  .active-einlauf { z-index:1; border-color:#11623d!important; background:#16794b!important; color:#fff!important; box-shadow:0 3px 10px rgba(22,121,75,.3); transform:translateX(3px); }
  .active-einlauf .einlauf-number { background:#fff; color:#11623d; }
  .active-einlauf .einlauf-name, .active-einlauf .einlauf-title { color:#fff; }

  .visually-hidden { position:absolute!important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
  @media (max-width: 900px) {
    :root { --header-height:52px; }
    body { grid-template-rows:52px minmax(0,1fr); }
    .tab-content { grid-template-columns:minmax(165px,.8fr) minmax(330px,1.5fr) minmax(165px,.8fr); }
    .side { padding:5px 3px; }
    .timeout-tracker { width:min(100%,160px); padding:7px; }
    .timeout-periods { gap:6px 8px; }
    .timeout-dot { width:22px; height:22px; flex-basis:22px; }
    .player-row { gap:4px; }
    .player-btn { width:58px; font-size:18px; }
    .foul-btn { width:52px; font-size:16px; }
    .correct-btn { width:42px; }
    .center { padding:5px; gap:5px; }
    .logs-container, .clear-row { gap:5px; }
    .log { padding:8px; font-size:16px; }
    .clear-button { padding:9px 6px; font-size:15px; }
    #einlaufTab { padding:9px; }
    .einlauf-workspace { grid-template-columns:112px minmax(0,1fr); }
  }
  @media (max-width: 680px) {
    :root { --header-height:54px; }
    body { height:auto; min-height:100dvh; display:block; }
    .tab-nav { position:sticky; top:0; min-height:54px; z-index:50; overflow-x:auto; }
    .tab-nav button { flex:0 0 auto; min-width:112px; font-size:14px; padding:0 8px; white-space:nowrap; }
    .tab-nav .cache-clear-btn { min-width:auto; }
    .tab-content { grid-template-columns:1fr; overflow:visible; }
    .side { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); overflow:visible; }
    .player-row { min-height:58px; }
    .center { grid-row:1; border:0; min-height:65dvh; }
    .logs-container { min-height:48vh; }
    #einlaufTab { min-height:calc(100dvh - 54px); height:auto; padding:8px; overflow:visible; }
    .einlauf-toolbar { align-items:flex-start; }
    .einlauf-workspace { grid-template-columns:86px minmax(0,1fr); }
    .einlauf-list { overflow:visible; }
    .einlauf-team { min-height:420px; }
    .einlauf-team > ul { overflow:visible; }
    #einlaufMid.is-active { position:static; width:100%; max-height:none; transform:none; }
    #einlaufMid > ul { grid-template-columns:1fr; }
    .einlauf-control { position:sticky; top:62px; height:calc(100dvh - 70px); }
    #nextEinlaufBtn span { font-size:14px; }
    #nextEinlaufBtn b { font-size:32px; }
    .template-grid { grid-template-columns:1fr; }
    .player-inputs { grid-template-columns:1fr; }
    .intercom-presets { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .intercom-url-grid { grid-template-columns:1fr; }
    .intercom-status-summary { grid-template-columns:1fr auto; }
    .intercom-status-summary-item:nth-child(2) { grid-row:2; }
    .intercom-status-summary-arrow { grid-column:2; grid-row:1/3; }
    .intercom-connection-panel { align-items:stretch; flex-direction:column; }
    .intercom-pairing { justify-content:flex-end; }
  }
  @media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior:auto!important; transition:none!important; } }
