/* Ukulele-Musikwerkstatt 0.4 – Layout speziell für iPads im Querformat und Beamer. */
.umw{--ink:#203346;--muted:#5c6d7b;--line:#cbd6dd;--wash:#f4f7fa;--accent:#255d83;--accent-light:#e6f0f6;color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;line-height:1.3;max-width:1380px;margin:0 auto}
.umw *{box-sizing:border-box}
.umw p,.umw h2,.umw h3{margin:0}
.umw button,.umw select{font:inherit}
.umw .umw-kicker{display:block;font-size:.67rem;font-weight:800;letter-spacing:.1em;color:var(--muted);line-height:1.15;margin:0 0 3px}
.umw-color-1{--accent:#24647f;--accent-light:#dfeef4}
.umw-color-2{--accent:#94601f;--accent-light:#fcf0d9}
.umw-color-3{--accent:#2e7552;--accent-light:#e2f2e9}
.umw-color-4{--accent:#7555a0;--accent-light:#eee8f7}
.umw-color-5{--accent:#a44559;--accent-light:#fae6ea}
.umw-color-refrain{--accent:#244f88;--accent-light:#e5edf8}
.umw-color-refrain_reduced{--accent:#64728c;--accent-light:#ebeff4}
.umw-color-intro,.umw-color-postchorus{--accent:#687b86;--accent-light:#ecf1f3}
.umw .umw-card{background:white;border:1px solid var(--line);border-radius:11px;padding:13px;min-width:0}
.umw .umw-card h3{font-size:1.1rem;font-weight:800;color:var(--ink);line-height:1.15;margin:0 0 7px}
.umw .umw-muted{font-size:.84rem;color:var(--muted)}
.umw .umw-button{display:inline-flex;justify-content:center;align-items:center;gap:5px;font-size:.83rem;font-weight:750;border:1px solid var(--accent);color:var(--accent);background:#fff;border-radius:8px;padding:8px 12px;min-height:40px;cursor:pointer}
.umw .umw-button:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.umw .umw-button:disabled{opacity:.45;cursor:not-allowed}
.umw .umw-hint{margin:8px 0 0;border-top:1px solid #e5ebef;padding-top:7px;font-size:.84rem}
.umw .umw-hint summary{cursor:pointer;font-weight:750;color:var(--accent);list-style:disclosure-closed}
.umw .umw-hint p{padding:5px 0 1px;color:var(--muted)}
.umw .umw-message{padding:22px;background:#f3f7fa;border:1px solid #c8d6df;border-radius:12px}

/* Header bewusst ohne Hintergrund oder Rahmen, dreispaltig. */
.umw.umw-group{max-width:1260px;padding:8px 9px;display:grid;gap:9px}
.umw .umw-group-header{display:grid;grid-template-columns:1.2fr .46fr 1.12fr;align-items:center;column-gap:14px;padding:2px 5px 6px;border-bottom:2px solid var(--accent-light);min-height:49px}
.umw .umw-group-header>div{min-width:0}
.umw .umw-group-header strong{display:block;color:var(--accent);font-size:clamp(1rem,1.55vw,1.35rem);line-height:1.2;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.umw .umw-group-top{display:grid;grid-template-columns:1.1fr 1fr;gap:9px;min-width:0}
.umw .umw-task>p{font-size:.9rem;line-height:1.25}
.umw .umw-task ol{margin:6px 0;padding-left:22px;font-size:.88rem;line-height:1.25}
.umw .umw-task li{margin-bottom:3px}
.umw .umw-task .umw-chords{display:inline-block;font-size:.86rem;background:var(--accent-light);border-radius:7px;padding:5px 9px;margin-top:2px}
.umw .umw-task .umw-chords strong{color:var(--accent)}
.umw .umw-listen .umw-audio-label{font-size:.87rem;font-weight:750;color:var(--accent);display:block;margin:2px 0 4px}
.umw audio{width:100%;display:block;height:39px;margin:2px 0 4px}
.umw .umw-listen .umw-hint{margin-top:8px}
.umw .umw-listen .umw-hint audio{margin:6px 0 0}
.umw .umw-editor-card{padding:10px 12px 12px}
.umw .umw-editor-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:8px}
.umw .umw-editor-heading h3{margin:0}
.umw .umw-editor-heading p{font-size:.79rem;color:var(--muted)}
.umw .umw-optional{vertical-align:middle;color:var(--accent);background:var(--accent-light);font-size:.68rem;padding:3px 7px;border-radius:12px;font-weight:750;margin-left:5px}
.umw .umw-patterns{width:100%;min-width:0}
.umw .umw-rhythm-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;border:1px solid #aebdca;border-radius:7px;overflow:hidden;text-align:center;margin:0}
.umw .umw-rhythm-table .umw-label-col{width:134px}
.umw .umw-rhythm-table .umw-delete-col{width:50px}
.umw .umw-rhythm-table th,.umw .umw-rhythm-table td{padding:0!important;vertical-align:middle;border:0;min-width:0;text-align:center}
.umw .umw-rhythm-table thead th{height:31px;font-size:.92rem;background:var(--accent);color:#fff;font-weight:800}
.umw .umw-rhythm-table thead th.umw-end{background:var(--accent-light);color:var(--accent)}
.umw .umw-rhythm-table thead th.umw-table-title,.umw .umw-rhythm-table thead th.umw-delete-heading{background:var(--accent-light);color:var(--accent);font-size:.74rem;letter-spacing:.04em}
.umw .umw-rhythm-table thead th.umw-half,.umw .umw-rhythm-table tbody td.umw-half{border-right:1px dashed #9babb9}
.umw .umw-rhythm-table thead th.umw-end,.umw .umw-rhythm-table tbody td.umw-end{border-right:2px solid #9fadb9}
.umw .umw-rhythm-table tbody tr+tr>th,.umw .umw-rhythm-table tbody tr+tr>td{border-top:1px solid #c2cbd2}
.umw .umw-pattern-label{background:var(--accent-light);white-space:nowrap;height:56px;text-align:left!important;padding:0 5px!important}
.umw .umw-pattern-number{font-weight:800;font-size:.87rem;color:var(--accent);padding-right:5px}
.umw .umw-chord-select{width:88px;height:31px;border:1px solid #a7b8c6;border-radius:5px;color:#33485b;background:#fff;font-size:.72rem;padding:2px}
.umw .umw-chord-tag{display:inline-block;margin-left:4px;font-size:.68rem;font-weight:750;color:var(--accent)}
.umw .umw-beat-cell{height:56px;background:white}
.umw .umw-beat-button{display:flex;align-items:center;justify-content:center;width:100%;height:56px;margin:0;border:0!important;border-radius:0;background:transparent;color:var(--accent);font-weight:800;font-size:clamp(2.7rem,3.5vw,3.3rem);line-height:1;padding:0!important;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.umw .umw-beat-button:focus-visible{outline:2px solid var(--accent);outline-offset:-3px;background:var(--accent-light)}
.umw .umw-beat-button:hover{background:var(--accent-light)}
.umw .umw-remove-cell{background:#f6f8fa}
.umw .umw-remove{display:flex;align-items:center;justify-content:center;cursor:pointer;min-width:37px;width:100%;height:54px;border:0!important;background:transparent;color:#8b3c4c;font-size:1.6rem;font-weight:700;padding:0}
.umw .umw-remove:hover,.umw .umw-remove:focus-visible{background:#fae4e9;outline:2px solid #9a4055;outline-offset:-3px}
.umw .umw-editor-actions{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:8px}
.umw .umw-save-controls{display:flex;align-items:center;gap:8px;min-width:0}
.umw .umw-status{font-size:.76rem;color:var(--muted);max-width:420px}
.umw .umw-editor-actions .umw-add{background:var(--accent-light)}

/* Chronologischer Songablauf als Projektion: Gruppenfarben erscheinen identisch wieder. */
.umw.umw-master{max-width:1480px;padding:10px}
.umw .umw-master-top{display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:2px solid #e5ebef;padding:0 0 12px;margin:0 0 12px}
.umw .umw-master-top h2{font-size:clamp(1.55rem,2vw,2rem);font-weight:850;line-height:1.1;color:var(--ink);margin:2px 0}
.umw .umw-master-top p{font-size:.88rem;color:var(--muted)}
.umw .umw-master-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.umw .umw-master-status{font-size:.79rem;color:var(--muted)}
.umw .umw-master-results{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;align-items:stretch}
.umw .umw-board-card{min-width:0;border:1px solid #d0d8df;border-top:5px solid var(--accent);border-radius:9px;padding:8px;background:#fff;display:flex;flex-direction:column;gap:6px;position:relative}
.umw .umw-board-card:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.umw .umw-board-heading{display:flex;align-items:center;gap:8px;background:var(--accent-light);padding:5px 6px;border-radius:5px;min-height:31px}
.umw .umw-board-index{font-size:.77rem;font-weight:850;color:var(--accent)}
.umw .umw-board-heading h3{font-size:.89rem;color:var(--accent);margin:0;line-height:1.1;font-weight:800}
.umw .umw-board-note{font-size:.72rem;font-weight:650;color:#734d20;background:#fff3d6;padding:3px 5px;border-radius:4px}
.umw .umw-board-empty{color:var(--muted);font-size:.75rem;font-style:italic;padding:8px 3px 13px;margin:auto 0}
.umw .umw-table-compact{border-color:#cfdae1}
.umw .umw-table-compact .umw-label-col{width:38px}
.umw .umw-table-compact thead th{height:23px;font-size:.69rem}
.umw .umw-table-compact thead th.umw-table-title{font-size:.55rem;letter-spacing:0}
.umw .umw-table-compact .umw-pattern-label{height:29px;padding:0 2px!important}
.umw .umw-table-compact .umw-pattern-number{font-size:.64rem;padding-right:0}
.umw .umw-table-compact .umw-chord-tag{display:block;margin:0;line-height:1;font-size:.58rem}
.umw .umw-table-compact .umw-beat-cell{height:29px}
.umw .umw-table-compact .umw-beat-static{display:flex;align-items:center;justify-content:center;font-weight:850;color:var(--accent);font-size:1.25rem;line-height:1}
.umw .umw-master-foot{font-size:.73rem;color:var(--muted);margin-top:10px}
@media(max-width:1100px){.umw .umw-master-results{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){
  .umw .umw-group-top{grid-template-columns:1fr}
  .umw .umw-group-header{grid-template-columns:1fr .35fr 1fr;gap:8px}
  .umw .umw-group-header strong{font-size:1rem}
  .umw .umw-editor-heading{display:block}.umw .umw-editor-heading p{margin-top:5px}
  .umw .umw-rhythm-table .umw-label-col{width:94px}.umw .umw-rhythm-table .umw-delete-col{width:38px}
  .umw .umw-chord-select{width:63px;font-size:.65rem}
  .umw .umw-beat-button{font-size:2.35rem}
  .umw .umw-master-results{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:480px){
  .umw .umw-group-header{grid-template-columns:1fr auto;gap:5px}
  .umw .umw-group-header>div:last-child{grid-column:span 2}
  .umw .umw-editor-actions,.umw .umw-save-controls{align-items:flex-start;flex-direction:column}
  .umw .umw-pattern-number{font-size:.72rem}.umw .umw-rhythm-table .umw-label-col{width:70px}
  .umw .umw-chord-select{width:49px;font-size:.59rem}.umw .umw-beat-button{font-size:1.9rem}
  .umw .umw-master-results{grid-template-columns:1fr}
}
@media print{
  .umw .umw-button,.umw .umw-master-status{display:none!important}
  .umw .umw-master-results{grid-template-columns:repeat(4,minmax(0,1fr))}
  .umw .umw-board-card{break-inside:avoid}
}

/* v0.3: synchronisiertes, großflächiges Aufführungs-Tafelbild. */
.umw [hidden]{display:none!important}
.umw.umw-master{max-width:1600px;width:100%;padding:10px 12px}
.umw .umw-master-top{padding-bottom:7px;margin-bottom:8px}
.umw .umw-master-top h2{font-size:clamp(1.35rem,1.75vw,1.85rem)}
.umw .umw-view-switch{display:flex;gap:7px;margin-bottom:9px}
.umw .umw-view-switch .umw-mode-active{background:#203346;color:#fff;border-color:#203346}
.umw .umw-sequence{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin:0 0 10px}
.umw .umw-sequence-chip{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;min-height:52px;gap:2px;padding:6px 7px;border-radius:7px;border:1px solid #c6d2d9;border-left:5px solid var(--accent);background:var(--accent-light);color:#263846;font-weight:750;font-size:.78rem;line-height:1.08;text-align:left;cursor:pointer}
.umw .umw-sequence-chip .umw-sequence-index{font-size:.63rem;letter-spacing:.07em;color:var(--accent)}
.umw .umw-sequence-chip.umw-is-current{outline:3px solid #205b7c;outline-offset:-2px;box-shadow:0 0 0 2px #b5d8e7;background:#fff}
.umw .umw-sequence-chip.umw-is-next{outline:3px dashed #b87921;outline-offset:-2px;background:#fff6e5}
.umw .umw-sequence-chip:focus-visible{outline:3px solid #111;outline-offset:2px}
.umw .umw-performance-panels{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:12px;align-items:stretch}
.umw .umw-now,.umw .umw-up-next{min-width:0}
.umw .umw-live-panel{background:white;border:2px solid var(--accent);border-radius:11px;padding:13px;display:flex;flex-direction:column;gap:10px;height:100%;min-height:240px}
.umw .umw-up-next .umw-live-panel{border-color:#b87921;background:#fffcf6}
.umw .umw-live-heading{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;border-bottom:1px solid #dce5eb;padding-bottom:7px}
.umw .umw-live-heading h3{font-size:clamp(1.27rem,2.35vw,2.3rem);font-weight:850;color:var(--accent);line-height:1.08;margin:0;flex:1}
.umw .umw-up-next .umw-live-heading h3{font-size:clamp(1.15rem,1.8vw,1.65rem)}
.umw .umw-live-eyebrow{display:inline-block;padding:4px 7px;border-radius:5px;background:var(--accent-light);color:var(--accent);font-size:.8rem;font-weight:900;letter-spacing:.06em}
.umw .umw-up-next .umw-live-eyebrow{background:#ffe8b9;color:#85500a}
.umw .umw-live-section-number{font-size:.72rem;color:var(--muted);font-weight:700}
.umw .umw-live-panel .umw-rhythm-table .umw-label-col{width:72px}
.umw .umw-live-panel .umw-rhythm-table thead th{font-size:1.05rem;height:32px}
.umw .umw-live-panel .umw-pattern-label,.umw .umw-live-panel .umw-beat-cell{height:52px}
.umw .umw-live-panel .umw-beat-static{display:flex;align-items:center;justify-content:center;color:var(--accent);font-size:clamp(1.65rem,2.35vw,2.45rem);font-weight:850;line-height:1;min-height:50px}
.umw .umw-up-next .umw-live-panel .umw-label-col{width:46px}
.umw .umw-up-next .umw-live-panel .umw-pattern-label,.umw .umw-up-next .umw-live-panel .umw-beat-cell{height:42px}
.umw .umw-up-next .umw-live-panel .umw-beat-static{font-size:clamp(1.35rem,1.85vw,2.05rem);min-height:42px}
.umw .umw-up-next .umw-live-panel .umw-rhythm-table thead th{height:28px;font-size:.89rem}
.umw .umw-live-panel .umw-rhythm-table thead th.umw-beat-main{background:#f3bb48;color:#402a0b;box-shadow:inset 0 0 0 2px #a16c10}
.umw .umw-live-panel .umw-rhythm-table thead th.umw-beat-sub{background:#fff0af;color:#533609;box-shadow:inset 0 0 0 2px #be922c}
.umw .umw-live-panel .umw-beat-cell.umw-beat-main{background:#ffebbd!important;box-shadow:inset 0 0 0 2px #c18b2c}
.umw .umw-live-panel .umw-beat-cell.umw-beat-sub{background:#fff6d6!important;box-shadow:inset 0 0 0 2px #be922c}
.umw .umw-live-panel .umw-beat-main .umw-beat-static,.umw .umw-live-panel .umw-beat-sub .umw-beat-static{color:#513209}
.umw .umw-live-empty{display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:1rem;min-height:64px;flex:1}
.umw .umw-countdown{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:6px 10px;background:#fff1d1;border:1px solid #c48a32;color:#795015;border-radius:7px;margin-top:auto}
.umw .umw-countdown-caption{font-size:.89rem;font-weight:850}.umw .umw-countdown-number{font-size:2rem;font-variant-numeric:tabular-nums;line-height:1}.umw .umw-countdown-units{font-size:.87rem}
.umw .umw-countdown-urgent{background:#ffdf91;border-width:2px;color:#6e3906}
.umw .umw-transport{display:grid;gap:5px;margin-top:10px;background:#f3f7fa;padding:9px 12px;border:1px solid #cbd6dd;border-radius:10px}
.umw .umw-transport-head{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;gap:10px}
.umw .umw-transport-time{font-variant-numeric:tabular-nums;color:var(--muted)}
.umw .umw-transport audio{height:36px;width:100%;margin:0}
.umw .umw-sync-status{color:var(--muted);font-size:.76rem}
.umw .umw-transport-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.umw .umw-transport-actions .umw-button{min-height:34px;padding:5px 9px}
.umw .umw-transport-help{color:var(--muted);font-size:.7rem;margin-left:auto}
.umw .umw-overview .umw-master-results{display:grid;grid-template-columns:minmax(0,1fr);gap:9px}
.umw .umw-overview .umw-board-card{padding:11px 13px;gap:9px}
.umw .umw-overview .umw-board-heading h3{font-size:1.12rem}
.umw .umw-overview .umw-board-card .umw-rhythm-table .umw-label-col{width:105px}
.umw .umw-overview .umw-board-card .umw-beat-cell{height:43px}
.umw .umw-overview .umw-board-card .umw-beat-static{display:flex;align-items:center;justify-content:center;font-size:1.75rem;color:var(--accent);font-weight:800}
.umw .umw-overview .umw-board-card .umw-pattern-label{height:43px}
.umw:fullscreen{background:#fafcff;max-width:none;padding:15px 24px;overflow:auto}
@media(max-width:1100px){.umw .umw-sequence{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:780px){.umw .umw-performance-panels{grid-template-columns:1fr}.umw .umw-sequence{grid-template-columns:repeat(4,minmax(0,1fr))}.umw .umw-transport-help{display:none}}
@media(max-width:480px){.umw .umw-sequence{grid-template-columns:repeat(3,minmax(0,1fr))}.umw .umw-master-actions{gap:5px}.umw .umw-live-panel .umw-rhythm-table .umw-label-col{width:45px}.umw .umw-live-panel .umw-beat-static{font-size:1.35rem}}
@media print{.umw .umw-view-switch,.umw .umw-transport,.umw .umw-master-actions{display:none!important}.umw .umw-overview{display:block!important}.umw .umw-performance{display:none!important}}

/* v0.5: gemeinsamer Ausschnittplayer mit erzeugtem Vierer-Vorzähler. */
.umw .umw-clip-player{display:grid;gap:7px;margin:3px 0 0}
.umw .umw-clip-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.umw .umw-clip-controls .umw-button{min-height:46px;font-size:.96rem;touch-action:manipulation}
.umw .umw-clip-play{background:var(--accent);color:#fff;border-color:var(--accent)}
.umw .umw-clip-play[aria-pressed="true"]{background:#842e3c;color:#fff;border-color:#842e3c}
.umw .umw-clip-loop.umw-loop-active{background:var(--accent-light);color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}
.umw .umw-countin{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}
.umw .umw-countin span{display:flex;justify-content:center;align-items:center;min-height:30px;border-radius:6px;background:#eef3f7;color:#63727d;font-size:.9rem;font-weight:800}
.umw .umw-countin span.umw-countin-active{background:var(--accent);color:#fff}
.umw .umw-clip-status{font-size:.76rem;color:var(--muted);min-height:1.2em}

/* v0.6 – Tempowahl: schlank auf iPad, lesbar im Tafelbild. */
.umw .umw-tempo-line{display:flex;align-items:center;justify-content:space-between;gap:6px;font-size:.76rem;font-weight:750;color:var(--accent);margin:0}
.umw .umw-clip-tempo{min-width:0;max-width:72%;background:#fff;border:1px solid var(--line);border-radius:6px;min-height:29px;padding:3px 5px;color:var(--ink);font-size:.77rem}
.umw .umw-master-tempo-controls{display:flex;flex-wrap:wrap;gap:9px;align-items:center;font-size:.78rem;color:var(--ink)}
.umw .umw-master-tempo-controls label{display:inline-flex;align-items:center;gap:5px;font-weight:750}
.umw .umw-master-tempo-controls select{background:#fff;border:1px solid var(--line);border-radius:6px;padding:4px 7px;max-width:245px;font-size:.8rem}
.umw .umw-effective-bpm{font-weight:800;color:#245e7e;margin-left:auto}
@media(max-width:780px){.umw .umw-master-tempo-controls{gap:6px}.umw .umw-effective-bpm{margin-left:0}}
