/* Modern presentation for the .39 Set List Editor (DS-03 / SET-01..19). Presentation only: the
 * editor's IDs, handlers, drag reorder, row actions, timing and save path are .39's. Loads last;
 * tokens come from modern-ui-schedule.css. */

/* ---------- Page shell ---------- */
html body .overlay .sheet.setlist-sheet:has(#setlistRows){
  width:100%!important;max-width:720px!important;margin:0 auto!important;border-radius:16px 16px 0 0!important;
  padding:12px 12px 0!important;background:#fff!important;box-shadow:0 -2px 18px #0c18311f!important;font-family:var(--mc-font)!important;color:var(--mc-ink)!important;
}
html body .overlay:has(>.sheet.setlist-sheet #setlistRows){padding:0!important}
/* The schedule's People / tagline / group row is not part of the Set List page (DS-03). */
html body:has(.sheet.setlist-sheet) #app .topbar.mc-header .mc-header-tools{visibility:hidden}

/* Title row: Back + list name (the name stays an editable field, styled as the page title). */
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-navigation-head{position:relative!important;min-height:0!important;height:0!important;margin:0!important;padding:0!important;border:0!important}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-navigation-head h2{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-navigation-head #setlistClose{position:absolute!important;left:-4px!important;top:2px!important;width:36px!important;height:36px!important;min-height:36px!important;padding:0!important;display:grid!important;place-items:center!important;border:0!important;background:transparent!important;z-index:2}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-navigation-head #setlistClose::after{content:"";position:absolute;inset:-4px}
html body .sheet.setlist-sheet:has(#setlistRows) #setlistName{
  width:100%!important;min-height:40px!important;height:40px!important;margin:0!important;padding:0 4px 0 32px!important;border:0!important;border-radius:8px!important;
  background:transparent!important;box-shadow:none!important;font:800 24px/1.15 var(--mc-font)!important;color:#14254a!important;
}
html body .sheet.setlist-sheet:has(#setlistRows) #setlistName:focus{background:#f3f6fb!important;outline:2px solid var(--mc-blue)!important;outline-offset:0}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-editor-summary{margin:2px 0 10px 32px!important;padding:0!important}
html body .sheet.setlist-sheet:has(#setlistRows) #setlistCountSummary{font:400 15px/1.3 var(--mc-font)!important;color:#5b6577!important}

/* ---------- Stage View / Library / Save Set List (SET-06..08) and footer (SET-17..19) ---------- */
html body .sheet.setlist-sheet:has(#setlistRows) .mc-setlist-actions,html body .sheet.setlist-sheet:has(#setlistRows) .mc-setlist-footer{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;margin:0 0 10px!important;padding:0!important;background:transparent!important;border:0!important}
html body .sheet.setlist-sheet:has(#setlistRows) .mc-setlist-footer{position:sticky!important;bottom:0!important;z-index:3!important;margin:0 -12px!important;padding:10px 12px max(10px,env(safe-area-inset-bottom))!important;background:#fff!important;border-top:1px solid #e3e8ef!important}
html body .sheet.setlist-sheet:has(#setlistRows) .mc-setlist-actions .btn,html body .sheet.setlist-sheet:has(#setlistRows) .mc-setlist-footer .btn{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;min-width:0!important;min-height:44px!important;height:44px!important;margin:0!important;padding:0 6px!important;
  border:1.5px solid #c3d1e4!important;border-radius:10px!important;background:#fff!important;color:#1e3a6e!important;box-shadow:none!important;
  font:600 14px/1.1 var(--mc-font)!important;letter-spacing:-.01em!important;white-space:nowrap!important;overflow:hidden!important;
}
html body .sheet.setlist-sheet:has(#setlistRows) .mc-setlist-actions .btn span,html body .sheet.setlist-sheet:has(#setlistRows) .mc-setlist-footer .btn span{overflow:hidden;text-overflow:ellipsis}
html body .sheet.setlist-sheet:has(#setlistRows) .mc-setlist-actions .btn.primary,html body .sheet.setlist-sheet:has(#setlistRows) .mc-setlist-footer .btn.primary{border-color:#3a6fd0!important;background:#3a6fd0!important;color:#fff!important}
html body .sheet.setlist-sheet:has(#setlistRows) .mc-setlist-actions .btn img,html body .sheet.setlist-sheet:has(#setlistRows) .mc-setlist-footer .btn img{width:18px!important;height:18px!important;flex:none!important;filter:brightness(0) saturate(100%) invert(18%) sepia(46%) saturate(1500%) hue-rotate(198deg) brightness(92%)!important}
html body .sheet.setlist-sheet:has(#setlistRows) .mc-setlist-actions .btn.primary img,html body .sheet.setlist-sheet:has(#setlistRows) .mc-setlist-footer .btn.primary img{filter:brightness(0) invert(1)!important}
html body .sheet.setlist-sheet:has(#setlistRows) .mc-setlist-actions .btn:disabled{opacity:.5!important}

/* ---------- Timing & Order (expandable section, MC-C16) ---------- */
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-editor-options{margin:0 0 10px!important;border:1px solid #dfe5ee!important;border-radius:10px!important;background:#f7f9fc!important}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-editor-options>summary{display:flex;align-items:center;gap:8px;min-height:40px;padding:0 12px;cursor:pointer;list-style:none;font:600 14px/1.2 var(--mc-font);color:#1e3557}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-editor-options>summary::-webkit-details-marker{display:none}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-editor-options>summary small{margin-left:auto;font:400 12.5px/1.2 var(--mc-font);color:#5b6577}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-editor-options>summary::after{content:"";width:16px;height:16px;background:url(/icons/heroicons/chevron-down.svg) center/16px no-repeat;transition:transform .15s}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-editor-options[open]>summary::after{transform:rotate(180deg)}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-editor-options[open]{padding-bottom:10px!important}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-editor-options>:not(summary){margin-left:10px!important;margin-right:10px!important}

/* ---------- Song table (SET-09..16) ---------- */
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-columns,html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-row{
  display:grid!important;grid-template-columns:30px minmax(0,1fr) 56px 46px 30px 32px!important;align-items:center!important;column-gap:2px!important;
}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-columns{margin:0!important;padding:0!important;min-height:34px!important;background:#eef2f8!important;border:1px solid #dfe5ee!important;border-bottom:0!important;border-radius:10px 10px 0 0!important;font:500 13px/1.2 var(--mc-font)!important;color:#4b5568!important}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-columns>span{grid-column:auto!important;padding:0!important;margin:0!important;text-align:left!important}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-columns>span:nth-child(1),html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-columns>span:nth-child(3),html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-columns>span:nth-child(4){text-align:center!important}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-list{border:1px solid #dfe5ee!important;border-top:0!important;border-radius:0 0 10px 10px!important;overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;background:#fff!important;margin:0 0 10px!important;padding:0!important}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-row{min-height:44px!important;margin:0!important;padding:0!important;border:0!important;border-bottom:1px solid #e6eaf0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-row:last-child{border-bottom:0!important}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-row-number{display:grid!important;place-items:center!important;position:static!important;font:400 14px/1 var(--mc-font)!important;color:#4b5568!important;margin:0!important;padding:0!important}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-title{
  all:unset;box-sizing:border-box;display:block;min-width:0;padding:10px 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  font:400 15.5px/1.25 var(--mc-font);color:#1d283c;cursor:pointer;text-align:left;
}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-title small{display:inline!important;margin-left:6px!important;font-size:11.5px!important}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-singer{display:grid!important;place-items:center!important;font:400 13px/1 var(--mc-font)!important;color:#68758a!important}
html body .sheet.setlist-sheet:has(#setlistRows) .mc-singer-chip{display:inline-block;max-width:58px;min-width:34px;padding:5px 9px;border-radius:999px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;font:600 12.5px/1.1 var(--mc-font);color:#4a3f55;background:#e6e1f2}
html body .sheet.setlist-sheet:has(#setlistRows) .mc-singer-chip[data-singer-tone="0"]{background:#f6cfd0;color:#7a3438}
html body .sheet.setlist-sheet:has(#setlistRows) .mc-singer-chip[data-singer-tone="1"]{background:#fbd8b0;color:#7b4a16}
html body .sheet.setlist-sheet:has(#setlistRows) .mc-singer-chip[data-singer-tone="2"]{background:#cfe0f4;color:#2c4f7a}
html body .sheet.setlist-sheet:has(#setlistRows) .mc-singer-chip[data-singer-tone="3"]{background:#d6e8c8;color:#3d5b25}
html body .sheet.setlist-sheet:has(#setlistRows) .mc-singer-chip[data-singer-tone="4"]{background:#e6dbf6;color:#5a3e86}
html body .sheet.setlist-sheet:has(#setlistRows) .mc-singer-chip[data-singer-tone="5"]{background:#f3e3b8;color:#6a5413}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-duration{display:block!important;text-align:center!important;font:400 14px/1.2 var(--mc-font)!important;color:#1d283c!important;white-space:nowrap!important}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-duration small{display:block;font-size:10.5px;color:#68758a}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-estimated-start{display:none!important} /* times stay in Stage View, the timing summary and print */
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-row .setlist-remove,html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-row .setlist-handle{
  position:relative!important;display:grid!important;place-items:center!important;width:34px!important;min-width:34px!important;height:44px!important;margin:0!important;padding:0!important;
  border:0!important;background:transparent!important;box-shadow:none!important;
}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-row .setlist-remove img{width:22px!important;height:22px!important;filter:brightness(0) saturate(100%) invert(16%) sepia(33%) saturate(1500%) hue-rotate(190deg) brightness(92%)!important}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-row .setlist-handle img{width:22px!important;height:22px!important;opacity:.55!important}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-row .setlist-handle{cursor:grab!important;touch-action:none}
/* Break rows (SET-16): soft blue band, cup icon, blue title with its length. */
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-row.setlist-break{background:#e7f0fb!important}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-row.setlist-break .setlist-row-number img{width:20px!important;height:20px!important;filter:brightness(0) saturate(100%) invert(35%) sepia(70%) saturate(1300%) hue-rotate(196deg) brightness(92%)!important}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-row.setlist-break .setlist-edit-title{color:#2c6cc4;font-weight:500}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-row.setlist-set{background:#f3f5f9!important}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-row.setlist-set .setlist-edit-title{font-weight:700}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-empty{padding:18px 12px!important;color:#68758a!important;text-align:center!important}
/* Unequal button widths as in DS-03, so the longer labels fit at 390px. */
html body .sheet.setlist-sheet:has(#setlistRows) .mc-setlist-actions{grid-template-columns:minmax(0,1.05fr) minmax(0,.82fr) minmax(0,1.23fr)!important;gap:7px!important}
html body .sheet.setlist-sheet:has(#setlistRows) .mc-setlist-footer{grid-template-columns:minmax(0,1.22fr) minmax(0,1fr) minmax(0,1fr)!important;gap:7px!important}
/* Compact rows (DS-03): the whole row opens the song, so it is the touch target. */
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-row{min-height:36px!important}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-title{padding:7px 4px!important;font-size:14.5px!important}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-row .setlist-remove,html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-row .setlist-handle{height:36px!important}
html body .sheet.setlist-sheet:has(#setlistRows) .mc-singer-chip{padding:4px 8px;font-size:12px}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-duration{font-size:13.5px!important}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-row .setlist-remove,html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-row .setlist-handle,html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-title{min-height:0!important;max-height:36px!important}
/* Break length is presentation only (the row text stays the break's name). */
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-title[data-break-length]::after{content:attr(data-break-length)}
/* Drag handle: 44 x 44 touch target (spec MC-C17) inside the compact 37px row. */
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-columns,html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-row{grid-template-columns:30px minmax(0,1fr) 56px 46px 30px 44px!important}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-row .setlist-handle{width:44px!important;min-width:44px!important;height:44px!important;max-height:44px!important;margin:-4px 0!important;align-self:center!important}

/* =================== Edit Song (DS-04 / SON-01..19) =================== */
html body .overlay:has(>.sheet.mc-song-form){padding:0!important}
html body .sheet.setlist-sheet.mc-song-form{width:100%!important;max-width:720px!important;margin:0 auto!important;border-radius:16px 16px 0 0!important;padding:10px 12px 0!important;background:#f7f9fc!important;font-family:var(--mc-font)!important;color:var(--mc-ink)!important}
html body .sheet.mc-song-form .setlist-navigation-head{display:flex!important;align-items:center!important;gap:6px!important;min-height:40px!important;margin:0 0 8px!important;padding:0!important;border:0!important;background:transparent!important}
html body .sheet.mc-song-form .setlist-navigation-head #setlistClose{width:34px!important;height:34px!important;min-height:34px!important;padding:0!important;border:0!important;background:transparent!important;display:grid!important;place-items:center!important}
html body .sheet.mc-song-form .setlist-navigation-head h2{flex:1!important;margin:0!important;font:800 22px/1.15 var(--mc-font)!important;color:#14254a!important;text-align:left!important}
html body .sheet.mc-song-form .mc-song-top-save{all:unset;box-sizing:border-box;min-height:40px;padding:0 6px;cursor:pointer;font:600 18px/40px var(--mc-font);color:#2f66c8}
html body .sheet.mc-song-form .mc-song-context{display:flex;align-items:center;gap:8px;margin:0 0 10px;padding:9px 12px;border:1px solid #d4e2f4;border-radius:10px;background:#e8f0fb;font:400 14.5px/1.25 var(--mc-font);color:#24324d}
html body .sheet.mc-song-form .mc-song-context b{color:#1f4f9e;font-weight:700}
html body .sheet.mc-song-form .mc-song-context img{width:20px;height:20px;filter:brightness(0) saturate(100%) invert(26%) sepia(60%) saturate(1500%) hue-rotate(205deg) brightness(92%)}
html body .sheet.mc-song-form .setlist-song-fields{display:block!important;padding:0!important;margin:0!important}
html body .sheet.mc-song-form .mc-song-card{display:block;margin:0 0 10px!important;padding:12px!important;border:1px solid #dfe5ee!important;border-radius:12px!important;background:#fff!important}
html body .sheet.mc-song-form .mc-song-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 10px}
html body .sheet.mc-song-form .mc-song-card-head h3{margin:0!important;font:800 20px/1.2 var(--mc-font)!important;color:#14254a!important}
html body .sheet.mc-song-form #setlistSongSearch{display:inline-flex!important;align-items:center!important;gap:6px!important;min-height:36px!important;height:36px!important;margin:0!important;padding:0 12px!important;border:1.5px solid #3a6fd0!important;border-radius:10px!important;background:#fff!important;color:#2f66c8!important;font:600 14px/1 var(--mc-font)!important;box-shadow:none!important;white-space:nowrap!important}
html body .sheet.mc-song-form #setlistSongSearch img{width:18px!important;height:18px!important;filter:brightness(0) saturate(100%) invert(33%) sepia(80%) saturate(1300%) hue-rotate(205deg) brightness(90%)!important}
html body .sheet.mc-song-form .mc-song-query{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:8px;min-height:42px;margin:0 0 10px;padding:0 10px;border:1px solid #d6dde8;border-radius:10px;background:#f3f6fb}
html body .sheet.mc-song-form .mc-song-query img{width:20px;height:20px;opacity:.55}
html body .sheet.mc-song-form #setlistSongQuery{all:unset;box-sizing:border-box;width:100%;min-height:40px;font:400 16px/1.2 var(--mc-font);color:var(--mc-ink)}
html body .sheet.mc-song-form #setlistSongQuery::placeholder{color:#8a94a6}
/* Candidates (SON-09/10): compact two-line rows with a radio marker. */
html body .sheet.mc-song-form #setlistSuggestedMatches{margin:0 0 10px!important;padding:0!important;border:1px solid #dfe5ee!important;border-radius:10px!important;overflow:hidden!important;background:#fff!important}
html body .sheet.mc-song-form #setlistSuggestedMatches>b{display:none!important}
html body .sheet.mc-song-form .setlist-catalog-result{position:relative!important;border-bottom:1px solid #e6eaf0!important;padding:0!important;background:#fff!important}
html body .sheet.mc-song-form .setlist-catalog-result:last-child{border-bottom:0!important}
html body .sheet.mc-song-form .setlist-catalog-result.is-selected{background:#e8f0fb!important}
html body .sheet.mc-song-form .setlist-catalog-result>button{all:unset;box-sizing:border-box;display:grid;grid-template-columns:30px minmax(0,1fr);grid-template-rows:auto auto;column-gap:8px;width:100%;min-height:52px;padding:7px 10px 7px 8px;cursor:pointer}
html body .sheet.mc-song-form .setlist-catalog-result>button::before{content:"";grid-row:1/3;align-self:center;justify-self:center;width:20px;height:20px;border:2px solid #9aa3b1;border-radius:50%;box-sizing:border-box}
html body .sheet.mc-song-form .setlist-catalog-result.is-selected>button::before{border-color:#2f66c8;background:radial-gradient(circle,#2f66c8 0 5px,#fff 5.5px)}
html body .sheet.mc-song-form .setlist-catalog-result>button b{grid-column:2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:600 15px/1.25 var(--mc-font);color:#14254a}
html body .sheet.mc-song-form .setlist-catalog-result.is-selected>button b{color:#1f4f9e}
html body .sheet.mc-song-form .setlist-catalog-result>button small{grid-column:2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:400 12.5px/1.3 var(--mc-font);color:#8a94a6}
html body .sheet.mc-song-form .setlist-catalog-result.has-cover{grid-template-columns:44px minmax(0,1fr)!important;column-gap:0!important;padding-left:8px!important}
/* Status strip: neutral / success / error. */
html body .sheet.mc-song-form #setlistError{margin:0!important;padding:0!important;font:400 14px/1.3 var(--mc-font)!important;color:#24324d!important;border-radius:8px!important}
html body .sheet.mc-song-form #setlistError:not(:empty){padding:9px 12px!important;background:#e3f4e9!important;border:1px solid #c8e8d3!important}
html body .sheet.mc-song-form #setlistError.error:not(:empty){background:#fdecec!important;border-color:#f3c9c9!important;color:#9b1c1c!important}
/* Song Details rows (SON-11..15): label column + field. */
html body .sheet.mc-song-form .mc-song-details .mc-song-row{display:grid!important;grid-template-columns:minmax(0,40%) minmax(0,1fr)!important;align-items:center!important;gap:10px!important;margin:0 0 8px!important;padding:0!important}
html body .sheet.mc-song-form .mc-song-details .mc-song-row:last-child{margin-bottom:0!important}
html body .sheet.mc-song-form .mc-song-details .mc-song-row>label{margin:0!important;font:400 14.5px/1.25 var(--mc-font)!important;color:#24324d!important}
html body .sheet.mc-song-form .mc-song-details input,html body .sheet.mc-song-form .mc-song-details textarea,html body .sheet.mc-song-form .mc-song-details select{min-height:38px!important;height:38px!important;width:100%!important;margin:0!important;padding:0 10px!important;border:1px solid #d6dde8!important;border-radius:9px!important;background:#fff!important;font:400 16px/1.2 var(--mc-font)!important;color:var(--mc-ink)!important;box-shadow:none!important}
html body .sheet.mc-song-form .mc-song-details textarea{height:38px!important;min-height:38px!important;padding:8px 10px!important;resize:vertical!important}
html body .sheet.mc-song-form .mc-song-details .setlist-title-search{display:block!important}
html body .sheet.mc-song-form .mc-song-details .mc-singer-picker{display:flex;align-items:center;gap:6px;min-width:0}
html body .sheet.mc-song-form .mc-song-details .mc-singer-picker #setlistSongSinger{flex:1 1 auto;min-width:0;margin:0!important}
html body .sheet.mc-song-form .mc-song-details .mc-singer-pick{position:relative;flex:none;display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--mc-border,#d6dde8);border-radius:10px;background:#fff}
html body .sheet.mc-song-form .mc-song-details .mc-singer-pick img,html body .sheet.mc-song-form .mc-song-details .mc-singer-pick svg{width:18px;height:18px;pointer-events:none}
html body .sheet.mc-song-form .mc-song-details .mc-singer-pick select{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;opacity:0!important;cursor:pointer!important;margin:0!important;padding:0!important;font-size:16px!important}
html body .sheet.mc-song-form .mc-singer-chip-inline{flex:none;display:grid;place-items:center;min-width:32px;height:28px;padding:0 7px;border-radius:999px;font:700 12px/1 var(--mc-font);background:#e6dbf6;color:#5a3e86}
html body .sheet.mc-song-form .mc-singer-chip-inline[data-singer-tone="0"]{background:#f6cfd0;color:#7a3438}
html body .sheet.mc-song-form .mc-singer-chip-inline[data-singer-tone="1"]{background:#fbd8b0;color:#7b4a16}
html body .sheet.mc-song-form .mc-singer-chip-inline[data-singer-tone="2"]{background:#cfe0f4;color:#2c4f7a}
html body .sheet.mc-song-form .mc-singer-chip-inline[data-singer-tone="3"]{background:#d6e8c8;color:#3d5b25}
html body .sheet.mc-song-form .mc-singer-chip-inline[data-singer-tone="5"]{background:#f3e3b8;color:#6a5413}
/* Advanced / Review (SON-16). */
html body .sheet.mc-song-form .mc-song-advanced{padding:0!important;background:#f3f6fb!important}
html body .sheet.mc-song-form .mc-song-advanced>summary{display:grid;grid-template-columns:28px minmax(0,1fr) 18px;align-items:center;gap:8px;min-height:52px;padding:6px 12px;cursor:pointer;list-style:none}
html body .sheet.mc-song-form .mc-song-advanced>summary::-webkit-details-marker{display:none}
html body .sheet.mc-song-form .mc-song-advanced>summary::after{content:"";width:18px;height:18px;background:url(/icons/heroicons/chevron-down.svg) center/18px no-repeat;transition:transform .15s}
html body .sheet.mc-song-form .mc-song-advanced[open]>summary::after{transform:rotate(180deg)}
html body .sheet.mc-song-form .mc-song-advanced>summary img{width:24px;height:24px;opacity:.7}
html body .sheet.mc-song-form .mc-song-advanced>summary b{display:block;font:600 15px/1.2 var(--mc-font);color:#1f4f9e}
html body .sheet.mc-song-form .mc-song-advanced>summary small{display:block;font:400 12px/1.3 var(--mc-font);color:#68758a}
html body .sheet.mc-song-form .mc-song-advanced[open]{padding-bottom:12px!important}
html body .sheet.mc-song-form .mc-song-advanced>:not(summary){margin-left:12px!important;margin-right:12px!important}
/* Footer (SON-17..19). */
html body .sheet.mc-song-form .setlist-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;position:sticky!important;bottom:0!important;margin:0 -12px!important;padding:10px 12px 6px!important;background:#f7f9fc!important;border-top:1px solid #e3e8ef!important}
html body .sheet.mc-song-form .setlist-actions .btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-height:46px!important;height:46px!important;margin:0!important;border-radius:11px!important;font:600 16px/1 var(--mc-font)!important;box-shadow:none!important}
html body .sheet.mc-song-form #setlistSongCancel{border:1.5px solid #3a6fd0!important;background:#fff!important;color:#2f66c8!important}
html body .sheet.mc-song-form #setlistSongDone{border:1.5px solid #3a6fd0!important;background:#3a6fd0!important;color:#fff!important}
html body .sheet.mc-song-form #setlistSongDone img{width:20px!important;height:20px!important;filter:brightness(0) invert(1)!important}
html body .sheet.mc-song-form .mc-song-delete{all:unset;box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:44px;margin:0 0 6px;cursor:pointer;font:500 15px/1 var(--mc-font);color:#c0392b}
html body .sheet.mc-song-form .mc-song-delete img{width:18px;height:18px;filter:brightness(0) saturate(100%) invert(27%) sepia(83%) saturate(2200%) hue-rotate(350deg) brightness(88%)}
html body .sheet.mc-song-form .mc-song-card-head h3{font-size:18px!important}
/* Search-related disclosures inside the Song Library Search card (Recognition Context, Additional Options). */
html body .sheet.mc-song-form .mc-song-search details{margin:0 0 8px!important;padding:0!important;border:1px solid #e3e8ef!important;border-radius:10px!important;background:#f7f9fc!important;box-shadow:none!important}
html body .sheet.mc-song-form .mc-song-search details>summary{display:flex!important;align-items:center!important;gap:8px!important;min-height:38px!important;padding:0 12px!important;cursor:pointer!important;list-style:none!important;font:500 14px/1.2 var(--mc-font)!important;color:#1e3557!important}
html body .sheet.mc-song-form .mc-song-search details>summary::-webkit-details-marker{display:none}
html body .sheet.mc-song-form .mc-song-search details>summary::after{content:"";margin-left:auto;width:16px;height:16px;background:url(/icons/heroicons/chevron-down.svg) center/16px no-repeat;transition:transform .15s}
html body .sheet.mc-song-form .mc-song-search details[open]>summary::after{transform:rotate(180deg)}
html body .sheet.mc-song-form .mc-song-search details[open]{padding-bottom:10px!important}
html body .sheet.mc-song-form .mc-song-search details>:not(summary){margin-left:10px!important;margin-right:10px!important}
html body .sheet.mc-song-form .mc-song-search .mc-song-genre{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;align-items:center!important;gap:10px!important;margin:0 0 8px!important;padding:0!important}
html body .sheet.mc-song-form .mc-song-search .mc-song-genre label{margin:0!important;font:500 14px/1.2 var(--mc-font)!important;color:#1e3557!important}
html body .sheet.mc-song-form .mc-song-search .mc-song-genre select{min-height:38px!important;margin:0!important}

/* ---------- Song Library (DS-07, proposed) — manage and choose modes ---------- */
html body .sheet.mc-song-library{background:#fff!important}
html body .sheet.mc-song-library .setlist-navigation-head{display:flex!important;align-items:center!important;gap:8px!important;min-height:52px!important;padding-right:0!important;margin-right:0!important}
html body .sheet.mc-song-library .setlist-navigation-head>:not(.settings-back):not(h2):not(.mc-library-add):not(.ya-more-x){display:none!important}
html body .sheet.mc-song-library .setlist-navigation-head h2{flex:1 1 auto!important;min-width:0!important;margin:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;font:800 22px/1.15 var(--mc-font)!important;color:#14325a!important;letter-spacing:-.01em}
html body .sheet.mc-song-library .mc-library-add{flex:none!important;display:inline-flex!important;flex-direction:row!important;align-items:center!important;gap:6px!important;width:auto!important;min-width:0!important;height:42px!important;min-height:42px!important;padding:0 14px!important;border-radius:10px!important;background:var(--mc-blue,#3877c8)!important;border:0!important;color:#fff!important;font:600 15px/1 var(--mc-font)!important;box-shadow:0 1px 2px rgba(12,24,49,.15)!important}
html body .sheet.mc-song-library .mc-library-add img,html body .sheet.mc-song-library .mc-library-add svg{width:18px!important;height:18px!important;filter:brightness(0) invert(1)!important}
html body .sheet.mc-song-library .setlist-search{display:flex!important;align-items:center!important;gap:8px!important;height:46px!important;margin:4px 0 10px!important;padding:0 12px!important;border:1px solid var(--mc-line,#cbd7e7)!important;border-radius:12px!important;background:#fff!important}
html body .sheet.mc-song-library .setlist-search img,html body .sheet.mc-song-library .setlist-search svg{width:20px!important;height:20px!important;opacity:.7}
html body .sheet.mc-song-library #setlistLibrarySearch{flex:1!important;min-width:0!important;height:100%!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;outline:none!important;font:400 16px/1.2 var(--mc-font)!important;color:var(--mc-ink,#0c1831)!important}
html body .sheet.mc-song-library .setlist-select-all{display:flex!important;align-items:center!important;gap:8px!important;margin:0 0 8px!important;padding:0 2px!important;font:500 14px/1.2 var(--mc-font)!important;color:#33445c!important}
html body .sheet.mc-song-library #setlistLibraryCount{margin-left:auto!important;color:var(--mc-muted,#68758a)!important;font-weight:400!important}
html body .sheet.mc-song-library #setlistLibraryRows{border:1px solid var(--mc-panel-line,#d6e0ec)!important;border-radius:14px!important;overflow:auto!important;background:#fff!important;padding:0!important}
html body .sheet.mc-song-library #setlistLibraryRows:not(:has(.mc-library-row)){border:0!important}
html body .sheet.mc-song-library .mc-library-head,
html body .sheet.mc-song-library .mc-library-row{display:grid!important;grid-template-columns:26px minmax(0,1fr) 40px 44px!important;align-items:center!important;column-gap:4px!important;margin:0!important;padding:0 8px 0 10px!important;border:0!important;border-bottom:1px solid #e6ebf2!important;background:#fff!important}
html body .sheet.mc-song-library .mc-library-head:has(span:nth-child(5)),
html body .sheet.mc-song-library .mc-library-row.mc-library-manage{grid-template-columns:26px minmax(0,1fr) 40px 44px 34px!important}
html body .sheet.mc-song-library .mc-library-head{position:sticky!important;top:0!important;z-index:1!important;height:34px!important;background:#eef3f9!important;font:700 12px/1 var(--mc-font)!important;color:#36506f!important}
html body .sheet.mc-song-library .mc-library-head span:nth-child(n+3){text-align:center!important}
html body .sheet.mc-song-library .mc-library-row{min-height:60px!important}
html body .sheet.mc-song-library .mc-library-row:last-child{border-bottom:0!important}
html body .sheet.mc-song-library .mc-library-row input[type=checkbox]{width:20px!important;height:20px!important;margin:0!important}
html body .sheet.mc-song-library .mc-library-row .setlist-song-pick{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;gap:3px!important;min-width:0!important;min-height:58px!important;margin:0!important;padding:6px 0!important;border:0!important;background:transparent!important;box-shadow:none!important;text-align:left!important}
html body .sheet.mc-song-library .mc-library-row .setlist-song-pick b{display:block!important;max-width:100%!important;font:500 15px/1.25 var(--mc-font)!important;color:var(--mc-ink,#0c1831)!important;overflow-wrap:anywhere!important}
html body .sheet.mc-song-library .mc-library-row .setlist-song-pick small{display:block!important;max-width:100%!important;font:400 13px/1.25 var(--mc-font)!important;color:var(--mc-muted,#68758a)!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
html body .sheet.mc-song-library .mc-library-singer{display:grid!important;place-items:center!important}
html body .sheet.mc-song-library .mc-singer-chip{display:inline-grid;place-items:center;min-width:32px;height:32px;padding:0 6px;border-radius:999px;font:700 12px/1 var(--mc-font);background:#e6dbf6;color:#5a3e86;box-sizing:border-box}
html body .sheet.mc-song-library .mc-singer-chip[data-singer-tone="0"]{background:#f6cfd0;color:#7a3438}
html body .sheet.mc-song-library .mc-singer-chip[data-singer-tone="1"]{background:#fbd8b0;color:#7b4a16}
html body .sheet.mc-song-library .mc-singer-chip[data-singer-tone="2"]{background:#cfe0f4;color:#2c4f7a}
html body .sheet.mc-song-library .mc-singer-chip[data-singer-tone="3"]{background:#d6e8c8;color:#3d5b25}
html body .sheet.mc-song-library .mc-singer-chip[data-singer-tone="5"]{background:#f3e3b8;color:#6a5413}
html body .sheet.mc-song-library .mc-library-none{color:var(--mc-faint,#9aa3b1)}
html body .sheet.mc-song-library .mc-library-duration{text-align:center!important;font:500 15px/1 var(--mc-font)!important;color:var(--mc-ink,#0c1831)!important;font-variant-numeric:tabular-nums}
html body .sheet.mc-song-library .mc-library-edit{display:grid!important;place-items:center!important;width:34px!important;height:44px!important;min-width:34px!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
html body .sheet.mc-song-library .mc-library-edit img,html body .sheet.mc-song-library .mc-library-edit svg{width:20px!important;height:20px!important;opacity:.75}
html body .sheet.mc-song-library .setlist-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;padding-top:10px!important}
html body .sheet.mc-song-library .setlist-actions .btn{min-height:46px!important;border-radius:12px!important;font:600 15px/1 var(--mc-font)!important}
html body .sheet.mc-song-library .setlist-actions .btn.primary{background:var(--mc-blue,#3877c8)!important;border-color:var(--mc-blue,#3877c8)!important;color:#fff!important}
html body .sheet.mc-song-library .setlist-actions .btn.ghost{background:#fff!important;border:1px solid var(--mc-line,#cbd7e7)!important;color:#1e3557!important}
html body .sheet.mc-song-library #setlistLibraryDelete:not(:disabled){color:#b42318!important;border-color:#f1c4c0!important}
html body .sheet.mc-song-library .setlist-empty{padding:28px 16px!important;border-radius:14px!important;background:#f3f6fa!important;text-align:center!important}
@media (max-width:360px){
 html body .sheet.mc-song-library .setlist-navigation-head h2{font-size:20px!important}
 html body .sheet.mc-song-library .mc-library-add{padding:0 10px!important;font-size:14px!important}
 html body .sheet.mc-song-library .setlist-actions .btn{font-size:14px!important;padding:0 6px!important}
}
/* No modal close button on these sheets (Back is in the header), so the header uses its full width. */
html body #overlayRoot .sheet.mc-song-library>.sheet-head.setlist-navigation-head,
html body #overlayRoot .sheet.mc-song-form>.sheet-head.setlist-navigation-head{padding-right:0!important}
html body .sheet.mc-song-library .setlist-search[hidden],html body .sheet.mc-song-library .setlist-select-all[hidden]{display:none!important}
html body .sheet.mc-song-form .mc-song-imported{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:3px!important;margin:0 0 10px!important;padding:10px 12px!important;border-radius:10px!important;background:#fff7e6!important;border:1px solid #f3dfb2!important}
html body .sheet.mc-song-form .mc-song-imported small{font:400 13px/1.3 var(--mc-font)!important;color:#5b4a1f!important}
html body .sheet.mc-song-form .mc-song-imported .btn{margin-top:6px!important;min-height:38px!important;border-radius:10px!important}

/* ---------- Set List viewer (read-only performance view) — rows match the editor (DS-03) ---------- */
html body .sheet.setlist-sheet:has(.mc-view-table) .setlist-view-controls{display:flex!important;justify-content:flex-end!important;margin:0 0 6px!important}
html body .sheet.setlist-sheet:has(.mc-view-table) .setlist-view-only{padding:4px 10px!important;border-radius:999px!important;background:#e7eef7!important;color:#36506f!important;font:600 12px/1 var(--mc-font)!important}
html body .sheet.setlist-sheet .mc-view-heading{margin:0 0 12px!important;padding:14px!important;border:1px solid #e3e9f1!important;border-radius:14px!important;background:#f7f9fc!important;text-align:center!important;font-family:var(--mc-font)!important}
html body .sheet.setlist-sheet .mc-view-heading h3{margin:0 0 2px!important;font:800 19px/1.2 var(--mc-font)!important;color:#14325a!important}
html body .sheet.setlist-sheet .mc-view-heading b{display:block!important;font:700 16px/1.3 var(--mc-font)!important;color:var(--mc-ink,#0c1831)!important}
html body .sheet.setlist-sheet .mc-view-heading p{margin:4px 0 2px!important;font:400 14px/1.35 var(--mc-font)!important;color:#53627a!important}
html body .sheet.setlist-sheet .mc-view-heading small{font:500 13px/1.3 var(--mc-font)!important;color:var(--mc-muted,#68758a)!important}
html body .sheet.setlist-sheet .mc-view-table{border:1px solid var(--mc-panel-line,#d6e0ec)!important;border-radius:14px!important;overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;background:#fff!important;font-family:var(--mc-font)!important}
html body .sheet.setlist-sheet .mc-view-head,html body .sheet.setlist-sheet .mc-view-row{display:grid!important;grid-template-columns:24px minmax(0,1fr) 58px 46px 48px!important;align-items:center!important;column-gap:6px!important;padding:0 10px!important;border-bottom:1px solid #e6ebf2!important}
html body .sheet.setlist-sheet .mc-view-head{position:sticky!important;top:0!important;z-index:1!important;height:32px!important;background:#eef3f9!important;font:700 12px/1 var(--mc-font)!important;color:#36506f!important}
html body .sheet.setlist-sheet .mc-view-head span:nth-child(n+3){text-align:center!important}
html body .sheet.setlist-sheet .mc-view-row{min-height:48px!important;margin:0!important;background:#fff!important}
html body .sheet.setlist-sheet .mc-view-row:last-child{border-bottom:0!important}
html body .sheet.setlist-sheet .mc-view-num{font:500 14px/1 var(--mc-font)!important;color:var(--mc-muted,#68758a)!important;text-align:center!important}
html body .sheet.setlist-sheet .mc-view-title b{display:block!important;font:500 15px/1.25 var(--mc-font)!important;color:var(--mc-ink,#0c1831)!important;overflow-wrap:anywhere!important}
html body .sheet.setlist-sheet .mc-view-singer{display:grid!important;place-items:center!important;min-width:0!important}
html body .sheet.setlist-sheet .mc-view-row .mc-singer-chip{display:inline-block;max-width:58px;min-width:30px;padding:4px 8px;border-radius:999px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;font:600 12px/1.1 var(--mc-font);background:#e6dbf6;color:#5a3e86;box-sizing:border-box}
html body .sheet.setlist-sheet .mc-view-row .mc-singer-chip[data-singer-tone="0"]{background:#f6cfd0;color:#7a3438}
html body .sheet.setlist-sheet .mc-view-row .mc-singer-chip[data-singer-tone="1"]{background:#fbd8b0;color:#7b4a16}
html body .sheet.setlist-sheet .mc-view-row .mc-singer-chip[data-singer-tone="2"]{background:#cfe0f4;color:#2c4f7a}
html body .sheet.setlist-sheet .mc-view-row .mc-singer-chip[data-singer-tone="3"]{background:#d6e8c8;color:#3d5b25}
html body .sheet.setlist-sheet .mc-view-row .mc-singer-chip[data-singer-tone="5"]{background:#f3e3b8;color:#6a5413}
html body .sheet.setlist-sheet .mc-view-duration{text-align:center!important;font:500 14px/1.1 var(--mc-font)!important;color:var(--mc-ink,#0c1831)!important;font-variant-numeric:tabular-nums}
html body .sheet.setlist-sheet .mc-view-duration small{display:block!important;font:400 10px/1.1 var(--mc-font)!important;color:var(--mc-muted,#68758a)!important}
html body .sheet.setlist-sheet .mc-view-start{text-align:center!important;font:400 13px/1 var(--mc-font)!important;color:var(--mc-muted,#68758a)!important;font-variant-numeric:tabular-nums}
html body .sheet.setlist-sheet .mc-view-break{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-height:42px!important;margin:0!important;padding:0 10px!important;border-bottom:1px solid #e6ebf2!important;background:#f3f6fa!important;font:600 14px/1.2 var(--mc-font)!important;color:#36506f!important}
html body .sheet.setlist-sheet .mc-view-break img,html body .sheet.setlist-sheet .mc-view-break svg{width:18px!important;height:18px!important;opacity:.75}
html body .sheet.setlist-sheet:has(.mc-view-table) .setlist-tools{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;margin:10px 0 0!important}
html body .sheet.setlist-sheet:has(.mc-view-table) .setlist-tools .btn{width:100%!important;min-height:44px!important;margin:0!important;border-radius:12px!important;box-shadow:none!important;font:600 15px/1.1 var(--mc-font)!important}
html body .sheet.setlist-sheet:has(.mc-view-table) .setlist-tools .btn.primary,html body .sheet.setlist-sheet:has(.mc-view-table) #setlistViewerDone{background:var(--mc-blue,#3877c8)!important;border:1px solid var(--mc-blue,#3877c8)!important;color:#fff!important}
html body .sheet.setlist-sheet:has(.mc-view-table) .setlist-tools .btn.ghost{background:#fff!important;border:1px solid var(--mc-line,#cbd7e7)!important;color:#1e3557!important}
html body .sheet.setlist-sheet:has(.mc-view-table) #setlistViewerDone{min-height:48px!important;border-radius:12px!important;font:600 17px/1 var(--mc-font)!important}
html body .sheet.setlist-sheet:has(.mc-view-table) .setlist-stage-options{margin:10px 0 0!important;padding:12px 14px!important;border:1px solid #e3e9f1!important;border-radius:14px!important;background:#fff!important}

/* ---------- Full screen (Gary, Oct 18) ----------
   Set list screens (editor, viewer, Edit Song, Song Library, choosers) cover the whole screen, including
   the app header and bottom bar; each has its own Back. Bottom action sheets (.setlist-bottom-sheet) and the
   .39 full-screen output/stage screens (.setlist-screen) keep their own layout. Safe-area padding keeps content clear of the iPhone notch and home indicator. */
/* height:100dvh (Gary, Oct 27, BETA-7.19): on the iPhone home-screen app a 100% height counted the status bar too, so the
   screen ran past the bottom and cut off the bottom buttons (Set Lists: Delete Selected / Create New). Same as the main app. */
html body #overlayRoot>.overlay:has(>.sheet.setlist-sheet:not(.setlist-bottom-sheet):not(.setlist-screen)){position:fixed!important;inset:0!important;top:0!important;right:0!important;left:0!important;bottom:auto!important;height:100%!important;height:100dvh!important;padding:0!important;align-items:stretch!important;justify-content:stretch!important;background:#fff!important}
html body #overlayRoot>.overlay>.sheet.setlist-sheet:not(.setlist-bottom-sheet):not(.setlist-screen){width:100%!important;max-width:none!important;height:100%!important;max-height:100dvh!important;margin:0!important;border-radius:0!important;box-shadow:none!important;padding-top:calc(env(safe-area-inset-top,0px) + 10px)!important;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 10px)!important;padding-left:max(14px,env(safe-area-inset-left,0px))!important;padding-right:max(14px,env(safe-area-inset-right,0px))!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important}
/* Wide screens: keep the content column readable inside the full-screen page. */
@media (min-width:760px){html body #overlayRoot>.overlay>.sheet.setlist-sheet:not(.setlist-bottom-sheet):not(.setlist-screen){padding-left:calc((100% - 720px)/2)!important;padding-right:calc((100% - 720px)/2)!important}}

/* ---------- Find a Song (Gary, Oct 18; "Find Song in iTunes" mockup) ---------- */
/* Add Song starts with search only; details show after a pick or "Enter song details manually". */
html body .sheet.mc-song-form[data-song-view="find"] :is(.mc-song-info,.mc-song-itunes,.mc-song-details,.mc-song-advanced){display:none!important}
html body .sheet.mc-song-form[data-song-view="details"] :is(.mc-song-search,.mc-song-manual){display:none!important}
html body .sheet.mc-song-form .mc-song-manual{display:block;width:100%;margin:0 0 12px;padding:10px;border:0;background:transparent;box-shadow:none;font:600 15px/1.2 var(--mc-font);color:var(--mc-blue-strong,#245fae);text-align:center;cursor:pointer}
html body .sheet.mc-song-form .mc-song-manual[hidden]{display:none}
/* Filter (optional) and Search Options on one row. */
html body .sheet.mc-song-form .mc-song-filter-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;margin:0 0 10px}
html body .sheet.mc-song-form .mc-song-filter-row:not(:has(.mc-song-genre)){grid-template-columns:auto;justify-content:start}
html body .sheet.mc-song-form .mc-song-search .mc-song-filter-row .mc-song-genre{display:block!important;margin:0!important;min-width:0!important}
html body .sheet.mc-song-form .mc-song-search .mc-song-filter-row .mc-song-genre label{display:block!important;margin:0 0 4px!important;font:500 13px/1.2 var(--mc-font)!important;color:#53627a!important}
html body .sheet.mc-song-form .mc-song-search .mc-song-filter-row .mc-song-genre select{width:100%!important;min-height:40px!important;height:40px!important;padding:0 34px 0 12px!important;border:1px solid var(--mc-line,#cbd7e7)!important;border-radius:10px!important;-webkit-appearance:none!important;appearance:none!important;background:#fff url(/icons/heroicons/chevron-down.svg) right 10px center/16px no-repeat!important;font:400 15px/1.2 var(--mc-font)!important;text-overflow:ellipsis!important}
html body .sheet.mc-song-form .mc-song-options-toggle{display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 12px;border:1px solid var(--mc-line,#cbd7e7);border-radius:10px;background:#fff;box-shadow:none;font:600 14px/1 var(--mc-font);color:#1e3557;white-space:nowrap;cursor:pointer}
html body .sheet.mc-song-form .mc-song-options-toggle img,html body .sheet.mc-song-form .mc-song-options-toggle svg{width:18px;height:18px}
html body .sheet.mc-song-form .mc-song-options-toggle.is-open{border-color:var(--mc-blue,#3877c8);background:#eaf2fc;color:var(--mc-blue-strong,#245fae)}
html body .sheet.mc-song-form .mc-song-options-panel{margin:0 0 10px;padding:10px;border:1px solid #e3e9f1;border-radius:12px;background:#f7f9fc}
html body .sheet.mc-song-form .mc-song-options-panel[hidden]{display:none}
html body .sheet.mc-song-form .mc-song-options-panel details{background:#fff!important}
/* Results: count, artwork, title / artist / album · genre, duration and chevron; selected row in blue. */
html body .sheet.mc-song-form #setlistSuggestedMatches{border:0!important;border-radius:0!important;background:transparent!important;overflow:visible!important}
html body .sheet.mc-song-form #setlistSuggestedMatches>b{display:block!important;margin:2px 2px 6px!important;font:600 13px/1.2 var(--mc-font)!important;color:#53627a!important}
html body .sheet.mc-song-form #setlistLocalMatches{border:1px solid #dfe5ee;border-radius:12px;overflow:hidden;background:#fff}
html body .sheet.mc-song-form .setlist-catalog-result{display:grid!important;grid-template-columns:minmax(0,1fr)!important;align-items:center!important}
html body .sheet.mc-song-form .setlist-catalog-result.has-cover{grid-template-columns:56px minmax(0,1fr)!important;padding-left:8px!important}
html body .sheet.mc-song-form .setlist-catalog-cover{display:block;width:48px;height:48px;border-radius:6px;overflow:hidden;background:#e3e9f1}
html body .sheet.mc-song-form .setlist-catalog-cover img{display:block;width:48px;height:48px;object-fit:cover}
html body .sheet.mc-song-form .setlist-catalog-result>button{grid-template-columns:minmax(0,1fr) auto 16px!important;grid-template-rows:auto auto auto!important;column-gap:8px!important;row-gap:1px!important;min-height:64px!important;padding:8px 10px!important;align-items:center!important}
html body .sheet.mc-song-form .setlist-catalog-result>button::before{display:none!important}
html body .sheet.mc-song-form .setlist-catalog-result>button::after{content:"";grid-column:3;grid-row:1/4;width:16px;height:16px;background:url(/icons/heroicons/chevron-right.svg) center/16px no-repeat;opacity:.6}
html body .sheet.mc-song-form .setlist-catalog-result>button b{grid-column:1!important;grid-row:1;font:700 15px/1.25 var(--mc-font)!important;color:var(--mc-ink,#0c1831)!important}
html body .sheet.mc-song-form .setlist-catalog-result>button .mc-res-artist{grid-column:1;grid-row:2;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:500 14px/1.25 var(--mc-font);color:#1e3557}
html body .sheet.mc-song-form .setlist-catalog-result>button small{grid-column:1!important;grid-row:3;font:400 12.5px/1.3 var(--mc-font)!important;color:var(--mc-muted,#68758a)!important}
html body .sheet.mc-song-form .setlist-catalog-result>button .mc-res-time{grid-column:2;grid-row:1/4;font:500 14px/1 var(--mc-font);color:#33445c;font-variant-numeric:tabular-nums}
html body .sheet.mc-song-form .setlist-catalog-result.is-selected{background:#e3eefb!important;box-shadow:inset 3px 0 0 var(--mc-blue,#3877c8)}
html body .sheet.mc-song-form .setlist-catalog-result.is-selected>button b{color:#1f4f9e!important}
html body .sheet.mc-song-form .mc-song-options-panel .field:has(#setlistRecognitionBand){margin:0 0 8px!important}
html body .sheet.mc-song-form .setlist-catalog-result>button b{white-space:normal!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important}

/* ---------- Edit Song details view (Gary, Oct 18 mockup) ---------- */
html body .sheet.mc-song-form .mc-required{color:#c62828;font-weight:700}
html body .sheet.mc-song-form .mc-song-info-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start}
html body .sheet.mc-song-form .mc-song-info-grid:not(:has(.mc-song-cover:not([hidden]))){grid-template-columns:minmax(0,1fr)}
html body .sheet.mc-song-form .mc-song-info .mc-song-stack{display:block!important;margin:0 0 10px!important;padding:0!important;border:0!important}
html body .sheet.mc-song-form .mc-song-info .mc-song-stack>label{display:block!important;margin:0 0 4px!important;font:600 14px/1.2 var(--mc-font)!important;color:#1e3557!important}
html body .sheet.mc-song-form .mc-song-info .mc-song-stack input{width:100%!important;min-height:42px!important;border-radius:10px!important;font-size:16px!important}
html body .sheet.mc-song-form .mc-song-cover{width:116px;height:116px;margin-top:22px;border-radius:10px;overflow:hidden;background:#e3e9f1;box-shadow:0 2px 8px rgba(12,24,49,.18)}
html body .sheet.mc-song-form .mc-song-cover[hidden]{display:none}
html body .sheet.mc-song-form .mc-song-cover img{display:block;width:100%;height:100%;object-fit:cover}
html body .sheet.mc-song-form .mc-song-album{margin:0!important;font:400 14px/1.3 var(--mc-font)!important;color:#53627a!important}
html body .sheet.mc-song-form .mc-song-album[hidden]{display:none}
html body .sheet.mc-song-form .mc-song-itunes{margin:0 0 12px;text-align:center}
html body .sheet.mc-song-form .mc-song-itunes-button{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:48px;padding:0 14px;border:1px solid #b9d0ee;border-radius:12px;background:#eaf2fc;box-shadow:none;font:600 16px/1 var(--mc-font);color:var(--mc-blue-strong,#245fae);text-decoration:none;cursor:pointer;box-sizing:border-box}
html body .sheet.mc-song-form .mc-song-itunes-button[hidden]{display:none}
html body .sheet.mc-song-form .mc-song-itunes-button img,html body .sheet.mc-song-form .mc-song-itunes-button svg{width:20px;height:20px}
html body .sheet.mc-song-form .mc-song-itunes small{display:block;margin-top:6px;font:400 12.5px/1.3 var(--mc-font);color:var(--mc-muted,#68758a)}
html body .sheet.mc-song-form .mc-song-details label small{font-weight:400;color:var(--mc-muted,#68758a)}
html body .sheet.mc-song-form .mc-duration-stepper{display:grid;grid-template-columns:minmax(0,1fr) 40px 40px;gap:6px;align-items:center}
html body .sheet.mc-song-form .mc-duration-stepper input{min-width:0!important}
html body .sheet.mc-song-form .mc-step{display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid var(--mc-line,#cbd7e7);border-radius:10px;background:#fff;box-shadow:none;cursor:pointer}
html body .sheet.mc-song-form .mc-step img,html body .sheet.mc-song-form .mc-step svg{width:22px;height:22px}
html body .sheet.mc-song-form .mc-song-details #setlistSongAliases{min-height:60px!important}
html body .sheet.mc-song-form>#setlistError,html body .sheet.mc-song-form .mc-song-context+#setlistError{margin:0 0 10px!important}
html body .sheet.mc-song-form .mc-song-itunes-button.is-secondary{min-height:36px;margin-top:4px;border:0;background:transparent;font-size:14px}
html body .sheet.mc-song-form .mc-song-itunes-button.is-secondary img,html body .sheet.mc-song-form .mc-song-itunes-button.is-secondary svg{width:16px;height:16px}

/* Apple Music preview sheet (Gary, Oct 18): Done / X close it and stop the preview. */
html body .mc-apple-preview-layer{position:fixed;inset:0;z-index:20000;display:flex;align-items:flex-end;justify-content:center;background:rgba(12,24,49,.45)}
html body .mc-apple-preview{width:100%;max-width:520px;padding:10px 14px calc(env(safe-area-inset-bottom,0px) + 16px);border-radius:18px 18px 0 0;background:#fff;box-shadow:0 -8px 30px rgba(12,24,49,.25);font-family:var(--mc-font)}
html body .mc-apple-preview-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;min-height:44px}
html body .mc-apple-preview-head b{text-align:center;font:700 16px/1.2 var(--mc-font);color:var(--mc-ink,#0c1831)}
html body .mc-apple-done{min-height:40px;padding:0 6px;border:0;background:transparent;box-shadow:none;font:600 17px/1 var(--mc-font);color:var(--mc-blue-strong,#245fae);cursor:pointer}
html body .mc-apple-close{display:grid;place-items:center;width:36px;height:36px;padding:0;border:0;border-radius:50%;background:#eef2f7;box-shadow:none;cursor:pointer}
html body .mc-apple-close img,html body .mc-apple-close svg{width:18px;height:18px}
html body .mc-apple-title{margin:2px 0 8px;text-align:center;font:600 15px/1.3 var(--mc-font);color:#33445c}
html body .mc-apple-player{display:block;width:100%;height:175px;border:0;border-radius:12px;overflow:hidden;background:#f3f6fa}
html body .mc-apple-hint{margin:8px 0 10px;text-align:center;font:400 13px/1.3 var(--mc-font);color:var(--mc-muted,#68758a)}
html body .sheet.mc-song-form #setlistSongOpenItunes>img:last-child,html body .sheet.mc-song-form #setlistSongOpenItunes>svg:last-child{display:none}
/* Find a Song (Gary, Oct 19): the search box matches the Song Library search box; Genre + "This genre only" on one
   row; a full-width Search button below. One clean box on every device: the inputs inside never draw their own frame. */
html body .sheet.mc-song-form .mc-song-search .mc-song-query:not(#_){display:flex!important;align-items:center!important;gap:8px!important;height:46px!important;min-height:46px!important;margin:0 0 12px!important;padding:0 12px!important;border:1px solid var(--mc-line,#cbd7e7)!important;border-radius:12px!important;background:#fff!important;box-shadow:none!important}
html body .sheet.mc-song-form .mc-song-search .mc-song-query:not(#_) :is(img,svg){flex:none!important;width:20px!important;height:20px!important;opacity:.7!important}
html body :is(.sheet.mc-song-form #setlistSongQuery,.sheet.mc-song-library #setlistLibrarySearch):not(#_){-webkit-appearance:none!important;appearance:none!important;flex:1!important;min-width:0!important;width:auto!important;height:100%!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;outline:none!important;font:400 16px/1.2 var(--mc-font)!important;color:var(--mc-ink,#0c1831)!important}
html body :is(.sheet.mc-song-form #setlistSongQuery,.sheet.mc-song-library #setlistLibrarySearch):not(#_):focus{border:0!important;box-shadow:none!important;outline:none!important}
html body .sheet.mc-song-form #setlistSongQuery::-webkit-search-decoration,html body .sheet.mc-song-form #setlistSongQuery::-webkit-search-cancel-button{-webkit-appearance:none}
html body :is(.sheet.mc-song-form .mc-song-query,.sheet.mc-song-library .setlist-search):not(#_):focus-within{border-color:var(--mc-blue,#3877c8)!important;box-shadow:0 0 0 3px rgba(56,119,200,.15)!important}
html body .sheet.mc-song-form .mc-song-search .mc-song-filter-row:not(#_){display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:end!important;gap:12px!important;margin:0 0 12px!important}
html body .sheet.mc-song-form .mc-song-search .mc-song-filter-row:not(#_) .mc-song-genre label{margin:0 0 4px!important;font:600 13px/1.2 var(--mc-font)!important;color:#53627a!important}
html body .sheet.mc-song-form .mc-genre-only{display:flex;align-items:center;gap:8px;height:40px;margin:0;font:500 15px/1.2 var(--mc-font);color:#1e3557;white-space:nowrap;cursor:pointer}
html body .sheet.mc-song-form .mc-genre-only input[type=checkbox]{flex:none;width:22px!important;height:22px!important;margin:0!important}
html body .sheet.mc-song-form .mc-song-search #setlistSongSearch.mc-song-search-go:not(#_){display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;width:100%!important;height:46px!important;min-height:46px!important;margin:0 0 12px!important;padding:0 16px!important;border:0!important;border-radius:12px!important;background:var(--mc-blue,#3877c8)!important;color:#fff!important;font:600 16px/1 var(--mc-font)!important;box-shadow:0 1px 2px rgba(12,24,49,.15)!important}
html body .sheet.mc-song-form .mc-song-search #setlistSongSearch.mc-song-search-go:not(#_) :is(img,svg){width:18px!important;height:18px!important;filter:brightness(0) invert(1)!important}
html body .sheet.mc-song-form .mc-song-search #setlistSongSearch.mc-song-search-go:not(#_):disabled{opacity:.6!important}
html body .sheet.mc-song-form .mc-song-options-toggle[hidden]{display:none!important}
/* Edit Song as a settings screen (Gary, Oct 19): gray caps titles above white cards; rows with the label left and the
   value right, hairline separators, no boxed inputs. Notes & Cues rows stack the label over a borderless text area. */
html body .sheet.mc-song-form[data-song-view="find"] :is(.mc-song-group-title,.mc-song-group-card,.mc-song-group-foot){display:none!important}
html body .sheet.mc-song-form .mc-song-group-title:not(#_){margin:18px 0 7px 16px!important;padding:0!important;font:400 13px/1.3 var(--mc-font)!important;color:#6D6D72!important;text-transform:uppercase!important;letter-spacing:.02em!important}
html body .sheet.mc-song-form .mc-song-group-title:not(#_):first-child,html body .sheet.mc-song-form .mc-song-search+.mc-song-manual+.mc-song-group-title:not(#_){margin-top:6px!important}
html body .sheet.mc-song-form .mc-song-group-foot:not(#_){margin:7px 16px 0!important;font:400 13px/1.35 var(--mc-font)!important;color:#6D6D72!important}
html body .sheet.mc-song-form .mc-song-group-card:not(#_){margin:0!important;padding:0!important;border:0!important;border-radius:12px!important;background:#fff!important;box-shadow:0 0 0 1px #e3e8f0!important;overflow:hidden!important}
html body .sheet.mc-song-form .mc-song-group-card:not(#_)>.mc-song-imported{margin:0!important;padding:12px 16px!important}
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:not(#_){display:grid!important;grid-template-columns:minmax(0,auto) minmax(0,1fr)!important;align-items:center!important;gap:12px!important;min-height:50px!important;margin:0!important;padding:3px 16px!important;border:0!important;background:linear-gradient(#e5e5ea,#e5e5ea) 16px 0/calc(100% - 16px) 1px no-repeat!important}
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:not(#_):first-child,html body .sheet.mc-song-form .mc-song-group-card>[hidden]+.mc-set-row:not(#_),html body .sheet.mc-song-form .mc-song-group-card>.mc-song-imported+.mc-set-row:not(#_){background:none!important}
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:not(#_)>label{margin:0!important;font:400 16px/1.25 var(--mc-font)!important;color:#0c1831!important;white-space:nowrap!important}
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:not(#_)>label small{display:block!important;font:400 12px/1.3 var(--mc-font)!important;color:#8a94a6!important}
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:not(#_) :is(input:not([type=checkbox]),textarea){-webkit-appearance:none!important;appearance:none!important;box-sizing:border-box!important;width:100%!important;min-width:0!important;height:44px!important;min-height:44px!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;outline:none!important;text-align:right!important;font:400 16px/1.3 var(--mc-font)!important;color:#3c4a63!important}
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:not(#_) :is(input,textarea)::placeholder{color:#a3abb9!important}
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:not(#_) :is(input,textarea):focus{color:#0c1831!important}
/* Default Singer: the name, then a small chevron that opens the member list. */
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:not(#_) .mc-singer-picker{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;min-width:0!important}
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:not(#_) .mc-singer-pick{position:relative!important;flex:none!important;display:grid!important;place-items:center!important;width:28px!important;height:28px!important;border:0!important;border-radius:0!important;background:transparent!important}
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:not(#_) .mc-singer-pick :is(img,svg){width:16px!important;height:16px!important;opacity:.5!important}
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:not(#_) .mc-singer-pick select{position:absolute!important;inset:0!important;opacity:0!important;width:100%!important;height:100%!important}
/* Performance Duration: m:ss, then − and +. */
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:not(#_) .mc-duration-stepper{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:4px!important}
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:not(#_) .mc-duration-stepper input{flex:1 1 auto!important;width:auto!important;max-width:90px!important;margin-right:6px!important}
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:not(#_) .mc-step{flex:none!important;display:grid!important;place-items:center!important;width:34px!important;height:34px!important;min-height:34px!important;padding:0!important;border:0!important;border-radius:50%!important;background:#eef2f8!important;box-shadow:none!important}
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:not(#_) .mc-step :is(img,svg){width:22px!important;height:22px!important;opacity:.75!important}
/* Extra Pause: number + "sec". */
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:not(#_) .mc-unit{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important}
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:not(#_) .mc-unit input{max-width:80px!important}
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:not(#_) .mc-unit small{font:400 16px/1 var(--mc-font)!important;color:#8a94a6!important}
/* Notes & Cues: label over a borderless text area. */
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row.is-stacked:not(#_){display:block!important;padding:10px 16px 6px!important}
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row.is-stacked:not(#_)>label{display:block!important;margin:0 0 2px!important;font:500 14px/1.25 var(--mc-font)!important;color:#53627a!important}
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row.is-stacked:not(#_) textarea{display:block!important;height:44px;min-height:44px!important;padding:6px 0!important;text-align:left!important;resize:none!important;overflow:hidden!important;line-height:1.35!important}
html body .sheet.mc-song-form .mc-song-advanced[hidden]{display:none!important}
html body .sheet.mc-song-form .mc-song-itunes:not(#_){margin-bottom:0!important}
/* Set List Editor as a settings screen (Gary, Oct 19): settings rows with icon tiles; Timing & Order and Stage View
   are pages inside the same sheet; the list has no drag handles (Reorder Songs is the one way to move rows). */
html body .sheet.mc-editor-ios .mc-editor-top-save:not(#_){margin-left:auto!important;padding:6px 4px!important;border:0!important;background:transparent!important;box-shadow:none!important;font:600 17px/1 var(--mc-font)!important;color:var(--mc-blue,#3877c8)!important;cursor:pointer}
html body .sheet.mc-editor-ios .mc-editor-top-save:not(#_):disabled{opacity:.45!important}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .mc-set-group{margin:0 0 14px}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .mc-set-title:not(#_){margin:14px 0 7px 16px!important;padding:0!important;font:400 13px/1.3 var(--mc-font)!important;color:#6D6D72!important;text-transform:uppercase!important;letter-spacing:.02em!important}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .mc-set-card{overflow:hidden;border-radius:12px;background:#fff;box-shadow:0 0 0 1px #e3e8f0}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .mc-set-foot:not(#_){margin:7px 16px 0!important;padding:0!important;font:400 13px/1.35 var(--mc-font)!important;color:#6D6D72!important;background:none!important;border:0!important}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .mc-set-nav:not(#_){display:flex!important;align-items:center!important;gap:12px!important;width:100%!important;min-height:50px!important;height:auto!important;margin:0!important;padding:6px 12px 6px 16px!important;border:0!important;border-radius:0!important;background:#fff linear-gradient(#e5e5ea,#e5e5ea) 16px 0/calc(100% - 16px) 1px no-repeat!important;box-shadow:none!important;text-align:left!important;font:400 16px/1.25 var(--mc-font)!important;color:#0c1831!important;cursor:pointer}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .mc-set-card>.mc-set-nav:first-child:not(#_),html body .sheet:is(.mc-editor-ios,.sp-sheet) .mc-set-card>[hidden]+.mc-set-nav:not(#_){background:#fff!important}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .mc-set-nav:has(.mc-set-icon):not(#_){background-position:58px 0!important;background-size:calc(100% - 58px) 1px!important}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .mc-set-nav .mc-set-label{flex:1 1 auto;min-width:0;font:400 16px/1.25 var(--mc-font);color:#0c1831}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .mc-set-nav .mc-set-value:not(#_){flex:0 1 auto;min-width:0;margin:0!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:400 15px/1.25 var(--mc-font)!important;color:#8a94a6!important}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .mc-set-nav .mc-set-chev{flex:none;display:grid;place-items:center;width:16px;height:16px}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .mc-set-nav .mc-set-chev :is(img,svg){width:14px;height:14px;opacity:.4}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .mc-set-icon{flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:7px;background:#3478f6}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .mc-set-icon[data-tone="purple"]{background:#7c5cdb}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .mc-set-icon :is(img,svg){width:18px;height:18px;filter:brightness(0) invert(1)}
html body .sheet.mc-editor-ios .mc-editor-main-settings{margin:4px 0 0}
/* Songs header with Reorder. */
html body .sheet.mc-editor-ios .mc-editor-songs-head{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;margin:0 0 7px}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .mc-editor-songs-head .mc-set-title:not(#_){margin:6px 0 0 16px!important}
html body .sheet.mc-editor-ios .mc-editor-reorder-link{display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:0 6px;border:0;background:transparent;box-shadow:none;font:600 15px/1 var(--mc-font);color:var(--mc-blue,#3877c8);cursor:pointer}
html body .sheet.mc-editor-ios .mc-editor-reorder-link :is(img,svg){width:17px;height:17px;filter:brightness(0) saturate(100%) invert(39%) sepia(63%) saturate(1000%) hue-rotate(195deg) brightness(92%)}
/* No drag handles in the list. */
html body .sheet.mc-editor-ios:has(#setlistRows) .setlist-handle:not(#_){position:absolute!important;width:1px!important;height:1px!important;min-width:0!important;min-height:0!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;border:0!important;white-space:nowrap!important}
/* Handles stay for keyboard users (Up/Down arrows) but are not shown; Reorder Songs is the visible way to move rows. */
html body .sheet.mc-editor-ios:has(#setlistRows) :is(.setlist-edit-columns,.setlist-edit-row):not(#_){grid-template-columns:30px minmax(0,1fr) 60px 50px 40px!important}
/* Pages. */
html body .sheet.mc-editor-ios .mc-editor-page,html body .sheet.mc-editor-ios .mc-editor-page[hidden]{display:none!important}
html body .sheet.mc-editor-ios[data-editor-page="timing"] .mc-editor-page[data-page="timing"],html body .sheet.mc-editor-ios[data-editor-page="stage"] .mc-editor-page[data-page="stage"]{display:block!important}
html body .sheet.mc-editor-ios:is([data-editor-page="timing"],[data-editor-page="stage"]) .setlist-navigation-head #setlistClose{display:none!important}
/* Save stays at the top right on the Timing & Order and Stage View pages. */
html body .sheet.mc-editor-ios:is([data-editor-page="timing"],[data-editor-page="stage"]) :is(#setlistName,.setlist-editor-summary,.mc-editor-main-settings,.mc-editor-songs-head,.setlist-edit-columns,.setlist-edit-list,.mc-setlist-footer,.mc-setlist-actions,.setlist-editor-options){display:none!important}
html body .sheet.mc-editor-ios .mc-editor-page-head{display:flex;align-items:center;gap:8px;min-height:48px;margin:0 0 4px}
html body .sheet.mc-editor-ios .mc-editor-page-back{display:grid;place-items:center;width:36px;height:36px;padding:0;border:0;border-radius:50%;background:transparent;box-shadow:none;cursor:pointer}
html body .sheet.mc-editor-ios .mc-editor-page-back :is(img,svg){width:22px;height:22px}
html body .sheet.mc-editor-ios .mc-editor-page-head h2{margin:0;font:700 22px/1.2 var(--mc-font);color:#14254a}
/* Stage options as switch rows. */
html body .sheet.mc-editor-ios .mc-editor-page #setlistStageOptionsPanel:not(#_){display:block!important;margin:0!important;padding:0!important;border:0!important;background:#fff!important;box-shadow:none!important}
html body .sheet.mc-editor-ios .mc-editor-page #setlistStageOptionsPanel .setlist-export-fields:not(#_){display:block!important;margin:0!important;padding:0!important;border:0!important}
html body .sheet.mc-editor-ios .mc-editor-page #setlistStageOptionsPanel .setlist-export-fields>label:not(#_){display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;min-height:50px!important;margin:0!important;padding:0 16px!important;background:linear-gradient(#e5e5ea,#e5e5ea) 16px 0/calc(100% - 16px) 1px no-repeat!important;font:400 16px/1.25 var(--mc-font)!important;color:#0c1831!important;flex-direction:row-reverse!important}
html body .sheet.mc-editor-ios .mc-editor-page #setlistStageOptionsPanel .setlist-export-fields>label:first-child:not(#_){background:none!important}
html body .sheet.mc-editor-ios .mc-editor-page #setlistStageOptionsPanel input[type=checkbox]:not(#_){-webkit-appearance:none!important;appearance:none!important;flex:none!important;position:relative!important;width:51px!important;height:31px!important;margin:0!important;border:0!important;border-radius:16px!important;background:#e9e9eb!important;box-shadow:none!important;transition:background .2s;cursor:pointer}
html body .sheet.mc-editor-ios .mc-editor-page #setlistStageOptionsPanel input[type=checkbox]:not(#_)::after{content:"";position:absolute;top:2px;left:2px;width:27px;height:27px;border-radius:50%;background:#fff;box-shadow:0 3px 8px rgba(0,0,0,.15),0 1px 1px rgba(0,0,0,.16);transition:transform .2s}
html body .sheet.mc-editor-ios .mc-editor-page #setlistStageOptionsPanel input[type=checkbox]:not(#_):checked{background:#34c759!important}
html body .sheet.mc-editor-ios .mc-editor-page #setlistStageOptionsPanel input[type=checkbox]:not(#_):checked::after{transform:translateX(20px)}
html body .sheet.mc-editor-ios .mc-editor-page #setlistStageOptionsPanel input[type=checkbox]:not(#_):disabled{opacity:.5}
html body .sheet.mc-editor-ios .mc-editor-page #setlistStageOptionsPanel>.setlist-status:not(#_){margin:0!important;padding:0 16px!important}
html body .sheet.mc-editor-ios .mc-editor-page #setlistStageOptionsPanel>.setlist-status:empty{display:none!important}
html body .sheet.mc-editor-ios .mc-editor-page #setlistStageOptionsPanel .setlist-stage-order:not(#_){margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:linear-gradient(#e5e5ea,#e5e5ea) 16px 0/calc(100% - 16px) 1px no-repeat!important}
html body .sheet.mc-editor-ios .mc-editor-page #setlistStageOptionsPanel .setlist-stage-order>summary{display:flex;align-items:center;min-height:50px;padding:0 16px;list-style:none;font:400 16px/1.25 var(--mc-font);color:#0c1831;cursor:pointer}
html body .sheet.mc-editor-ios .mc-editor-page #setlistStageOptionsPanel .setlist-stage-order>summary::-webkit-details-marker{display:none}
html body .sheet.mc-editor-ios .mc-editor-page #setlistStageOptionsPanel .setlist-stage-order>summary::after{content:"";margin-left:auto;width:14px;height:14px;background:url(/icons/heroicons/chevron-down.svg) center/14px no-repeat;opacity:.45;transition:transform .15s}
html body .sheet.mc-editor-ios .mc-editor-page #setlistStageOptionsPanel .setlist-stage-order[open]>summary::after{transform:rotate(180deg)}
html body .sheet.mc-editor-ios .mc-editor-page #setlistStageOptionsPanel .setlist-order-row{display:grid;grid-template-columns:minmax(0,1fr) 40px 40px;align-items:center;gap:6px;min-height:44px;padding:0 12px 0 32px;font:400 15px/1.25 var(--mc-font);color:#24324d}
html body .sheet.mc-editor-ios .mc-editor-page #setlistStageOptionsPanel .setlist-order-row .btn{min-height:34px!important;height:34px!important;padding:0!important;border-radius:8px!important}
/* Set List viewer: Stage View and Stage Options move to the Event (code kept). */
html body .sheet .setlist-tools.mc-stage-moved[hidden]{display:none!important}
html body .sheet.mc-editor-ios .mc-setlist-actions[hidden]:not(#_){display:none!important}
html body .sheet.mc-editor-ios:has(#setlistRows) .setlist-navigation-head .mc-editor-top-save:not(#_){position:absolute!important;right:-2px!important;top:4px!important;height:34px!important;margin:0!important;z-index:2}
html body .sheet.mc-editor-ios:has(#setlistRows) #setlistName:not(#_){padding-right:58px!important}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .mc-editor-main-settings .mc-set-value{display:none!important}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .mc-set-nav:not(#_)::after,html body .sheet:is(.mc-editor-ios,.sp-sheet) .mc-set-nav:not(#_)::before{content:none!important;display:none!important}
html body .sheet.mc-editor-ios .mc-editor-page #setlistStageOptionsPanel:not(#_){max-height:none!important;overflow:visible!important}
/* Reorder Songs: a break has a handle and moves like a song (shaded so it reads as a break). */
html body .setlist-reorder-row.setlist-reorder-break{background:#f3f6fb!important}
html body .setlist-reorder-row.setlist-reorder-break .setlist-reorder-number :is(img,svg){width:18px;height:18px;opacity:.7}
html body .sheet.mc-editor-ios .mc-editor-page #setlistStageOptionsPanel>.btn:not(#_){display:block!important;width:100%!important;min-height:44px!important;margin:0!important;padding:0 16px!important;border:0!important;border-radius:0!important;background:linear-gradient(#e5e5ea,#e5e5ea) 16px 0/calc(100% - 16px) 1px no-repeat!important;box-shadow:none!important;text-align:left!important;font:400 16px/44px var(--mc-font)!important;color:var(--mc-blue,#3877c8)!important}
html body .sheet.mc-editor-ios .mc-editor-page #setlistStageOptionsPanel>.btn[hidden]:not(#_){display:none!important}
html body .sheet.mc-editor-ios .mc-editor-page #setlistStageOptionsPanel>.setlist-status:not(:empty):not(#_){padding:10px 16px!important;font:400 13px/1.35 var(--mc-font)!important;color:#b42318!important;background:linear-gradient(#e5e5ea,#e5e5ea) 16px 0/calc(100% - 16px) 1px no-repeat!important}
html body .sheet.mc-song-form .mc-song-info .mc-song-short>label small{font:400 13px/1.2 var(--mc-font);color:#8a94a6;margin-left:4px}
/* Narrow phones: a row with a control group (− / + or the singer picker) keeps the control whole and lets the label wrap. */
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:has(.mc-duration-stepper,.mc-singer-picker):not(#_):not(#__){grid-template-columns:minmax(0,1fr) auto!important}
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:has(.mc-duration-stepper,.mc-singer-picker):not(#_):not(#__)>label{white-space:normal!important}
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:not(#_):not(#__) .mc-duration-stepper input{flex:0 0 64px!important;width:64px!important;min-width:64px!important}
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:not(#_):not(#__) .mc-singer-picker #setlistSongSinger{width:150px!important;max-width:44vw!important}
/* Timing & Order / Stage View pages: only the page's own back arrow (the editor's back arrow was showing on top of it). */
html body .sheet.mc-editor-ios:is([data-editor-page="timing"],[data-editor-page="stage"]):has(#setlistRows):not(#_):not(#__) .setlist-navigation-head #setlistClose{display:none!important}
/* Save state (Gary, Oct 19): green "Saved" when nothing has changed since the last save, blue "Save" after a change. */
html body .sheet.mc-editor-ios .mc-editor-top-save.is-saved:not(#_):not(#__){color:#1f9d4c!important}
html body .sheet.mc-editor-ios .mc-editor-top-save.is-dirty:not(#_):not(#__){color:var(--mc-blue,#3877c8)!important}
/* Stage View with the Song Layout (Gary, Oct 19): dark stage screen; each song or break is up to three lines —
   small print above, the song line, small print below. */
html body #overlayRoot .sheet.setlist-performance.setlist-screen:not(#_){background:#0b0f17!important;color:#fff!important}
html body #overlayRoot .sheet.setlist-performance.setlist-screen:not(#_) .setlist-performance-items{background:#0b0f17!important}
html body #overlayRoot .sheet.setlist-performance.setlist-screen:not(#_) .setlist-stage-note{color:#8f9bb0!important;font-size:13px!important}
html body #overlayRoot .sheet.setlist-performance.setlist-screen:not(#_) .setlist-screen-bar .close img{filter:invert(1)!important}
html body #overlayRoot .sheet.setlist-performance.setlist-screen:not(#_) .setlist-performance-row.sl3{display:flex!important;flex-direction:column!important;gap:4px!important;padding:16px 0!important;border-bottom:1px solid #1f2633!important;grid-template-columns:none!important}
html body #overlayRoot .sheet.setlist-performance .sl3-main{display:flex;align-items:baseline;gap:14px;min-width:0}
html body #overlayRoot .sheet.setlist-performance .sl3-main>span{flex:none;white-space:nowrap;font-size:clamp(18px,2.6vw,24px);font-weight:500;color:#c9d1de}
html body #overlayRoot .sheet.setlist-performance .sl3-main>:is(.sl3-title,.sl3-short){flex:1 1 auto;min-width:0;white-space:normal;overflow-wrap:anywhere;font-size:clamp(24px,4vw,34px);font-weight:700;line-height:1.2;color:#fff}
html body #overlayRoot .sheet.setlist-performance .sl3-main>.sl3-num{min-width:2ch;font-weight:700;color:#fff}
html body #overlayRoot .sheet.setlist-performance .sl3-main>.sl3-key{color:#f2c46d}
html body #overlayRoot .sheet.setlist-performance .sl3-small{font-size:clamp(15px,2.2vw,20px);line-height:1.35;color:#8f9bb0;overflow-wrap:anywhere}
html body #overlayRoot .sheet.setlist-performance.setlist-screen:not(#_) .setlist-performance-row.sl3-break{margin:6px 0!important;padding:12px 12px!important;border:0!important;border-radius:10px!important;background:#141a26!important}
html body #overlayRoot .sheet.setlist-performance.setlist-screen:not(#_) .setlist-performance-divider{background:#1a2230!important;color:#fff!important;border-radius:8px}
html body #overlayRoot .sheet.setlist-performance.setlist-screen:not(#_) #setlistFollowTime{background:#1f2633!important;color:#fff!important;border-color:#2c3646!important}

/* Song Layout editor (Set List editor page, Event View options button, Print Options). */
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-layout .sl-line{display:flex;gap:10px;padding:10px 12px 12px 16px}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-layout .sl-line+.sl-line{border-top:1px solid #e5e5ea}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-line-name{flex:none;width:56px;padding-top:30px}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-line-name b{display:block;font:600 15px/1.2 var(--mc-font);color:#0c1831}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-line-name small{display:block;font:400 11.5px/1.25 var(--mc-font);color:#8a94a6}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-chips{flex:1 1 auto;min-width:0;display:flex;flex-wrap:wrap;gap:8px 6px}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-chip-wrap{display:flex;flex-direction:column;align-items:center;gap:4px}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-arrows{display:flex;gap:2px}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-arrows button:not(#_){display:grid!important;place-items:center!important;width:30px!important;height:28px!important;min-height:28px!important;padding:0!important;border:0!important;border-radius:8px!important;background:#eef2f8!important;color:#1e3557!important;box-shadow:none!important;cursor:pointer}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-arrows button:not(#_):disabled{background:transparent!important;color:#c9d0db!important;cursor:default}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-chip{display:inline-flex;align-items:center;min-height:32px;padding:0 12px;border-radius:16px;background:#f3f6fb;box-shadow:inset 0 0 0 1px #cbd7e7;font:400 14px/1 var(--mc-font);color:#1e3557;white-space:nowrap}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-chip.is-name{background:#14254a;box-shadow:none;color:#fff;font-weight:600}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-empty{padding-top:34px;font:400 14px/1.2 var(--mc-font);color:#a3abb9}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-field{display:flex;align-items:center;gap:12px;min-height:48px;padding:0 16px}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-field+.sl-field{border-top:1px solid #e5e5ea}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-check{position:relative;flex:none;display:grid;place-items:center;width:26px;height:26px;cursor:pointer}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-check input:not(#_){position:absolute!important;inset:0!important;width:100%!important;height:100%!important;margin:0!important;opacity:0!important;cursor:pointer}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-check span{width:24px;height:24px;box-sizing:border-box;border:1.5px solid #b9c4d4;border-radius:6px;background:#fff}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-check input:checked+span{border:0;background:#3877c8 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='m4.5 12.75 6 6 9-13.5'/%3E%3C/svg%3E") center/16px no-repeat}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-check input:focus-visible+span{outline:2px solid #3877c8;outline-offset:2px}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-field select:not(#_){-webkit-appearance:none!important;appearance:none!important;flex:none!important;width:56px!important;height:34px!important;min-height:34px!important;margin:0!important;padding:0 22px 0 12px!important;border:1px solid #cbd7e7!important;border-radius:9px!important;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2353627a' stroke-width='2.4'%3E%3Cpath d='m19.5 8.25-7.5 7.5-7.5-7.5'/%3E%3C/svg%3E") right 7px center/12px no-repeat!important;font:400 15px/1 var(--mc-font)!important;color:#0c1831!important;box-shadow:none!important}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-field select:not(#_):disabled{opacity:.55!important}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-field:not(.is-on) :is(.sl-field-name,select){color:#8a94a6!important}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-field-name{font:400 16px/1.25 var(--mc-font);color:#0c1831}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-field-note{margin-left:auto;font:400 12px/1.2 var(--mc-font);color:#8a94a6}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-msg{margin:6px 16px 0;font:400 13px/1.35 var(--mc-font);color:#b42318}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-msg:empty{display:none}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-switch-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:50px;padding:0 16px;font:400 16px/1.25 var(--mc-font);color:#0c1831;cursor:pointer}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-switch-row input[type=checkbox]:not(#_){-webkit-appearance:none!important;appearance:none!important;flex:none!important;position:relative!important;width:51px!important;height:31px!important;margin:0!important;border:0!important;border-radius:16px!important;background:#e9e9eb!important;box-shadow:none!important;transition:background .2s;cursor:pointer}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-switch-row input[type=checkbox]:not(#_)::after{content:"";position:absolute;top:2px;left:2px;width:27px;height:27px;border-radius:50%;background:#fff;box-shadow:0 3px 8px rgba(0,0,0,.15),0 1px 1px rgba(0,0,0,.16);transition:transform .2s}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-switch-row input[type=checkbox]:not(#_):checked{background:#34c759!important}
html body .sheet:is(.mc-editor-ios,.sp-sheet) .sl-switch-row input[type=checkbox]:not(#_):checked::after{transform:translateX(20px)}
html body .sheet.mc-stage-options-sheet .mc-editor-page{padding-bottom:16px}
/* Print Options (Gary, Oct 19): row fields and column order come from the Song Layout. */
html body .setlist-print-options-panel .setlist-column-order{display:none!important}
html body .setlist-print-options-panel .setlist-print-song-layout #setlistPrintSongLayout{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:44px;padding:0 14px;border:1px solid var(--mc-line,#cbd7e7);border-radius:12px;background:#fff url(/icons/heroicons/chevron-right.svg) right 12px center/14px no-repeat;font:500 15px/1.2 var(--mc-font);color:#1e3557;text-align:left}
html body .setlist-print-options-panel .setlist-print-song-layout small{display:block;margin-top:4px;font:400 12.5px/1.3 var(--mc-font);color:#6D6D72}
/* Stage View close button on the dark screen. */
html body #overlayRoot .sheet.setlist-performance.setlist-screen:not(#_) .setlist-screen-bar,html body #overlayRoot .sheet.setlist-performance.setlist-screen:not(#_) .setlist-screen-bar .close{background:transparent!important;border:0!important;box-shadow:none!important}

/* Song Layout preview (Gary, Oct 19): a small Stage View above the layout editor. */
#overlayRoot .sl-preview{background:#0f1625;border-radius:14px;padding:4px 14px;color:#fff}
#overlayRoot .sl-preview .sl3{display:flex;flex-direction:column;gap:2px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.08)}
#overlayRoot .sl-preview .sl3:last-child{border-bottom:0}
#overlayRoot .sl-preview .sl3-main{display:flex;align-items:baseline;gap:10px;min-width:0}
#overlayRoot .sl-preview .sl3-main>span{flex:none;white-space:nowrap;font-size:14px;font-weight:500;color:#c9d1de}
#overlayRoot .sl-preview .sl3-main>:is(.sl3-title,.sl3-short){flex:1 1 auto;min-width:0;white-space:normal;overflow-wrap:anywhere;font-size:18px;font-weight:600;color:#fff}
#overlayRoot .sl-preview .sl3-main>.sl3-num{min-width:2ch;font-weight:700;color:#fff}
#overlayRoot .sl-preview .sl3-main>.sl3-key{color:#f2c46d}
#overlayRoot .sl-preview .sl3-small{font-size:12px;line-height:1.3;color:#8f9bb0;overflow-wrap:anywhere}
#overlayRoot .sl-preview .sl3-break{margin:6px 0;padding:7px 10px;border:0;border-radius:8px;background:rgba(255,255,255,.07)}
html body #overlayRoot .sheet.setlist-performance .sl3-main>.sl3-breakname{flex:1 1 auto;min-width:0;white-space:normal;font-size:clamp(20px,3vw,28px);font-weight:700;color:#fff}
#overlayRoot .sl-preview .sl3-main>.sl3-breakname{flex:1 1 auto;min-width:0;white-space:normal;font-size:16px;font-weight:700;color:#fff}
.sl-field .sl-line-fixed{flex:none;width:56px;height:34px}

/* Set List Preview (Gary, Oct 19): pinned preview, style buttons, Header / Song Layout rows, fixed actions. */
html body #overlayRoot .sheet.sp-sheet:not(#_){display:flex!important;flex-direction:column!important;overflow:hidden!important;background:#F2F2F7!important}
html body #overlayRoot .sheet.sp-sheet:not(#_)>.setlist-navigation-head{position:relative;flex:none}
html body #overlayRoot .sheet.sp-sheet .sp-full{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:36px;height:36px;border-radius:18px;border:1px solid #E5E5EA;background:#fff;display:grid;place-items:center;color:#1C1C1E;padding:0}
html body #overlayRoot .sheet.sp-sheet .sp-preview{flex:none;background:#E4E6EB;padding:8px 12px;border-bottom:.5px solid #C6C6C8}
html body #overlayRoot .sheet.sp-sheet:not(.setlist-preview-full) .sp-preview .setlist-export-preview:not(#_){height:250px!important;max-height:250px!important;overflow:auto!important;margin:0!important}
html body #overlayRoot .sheet.sp-sheet .sp-preview #setlistError:empty{display:none}
html body #overlayRoot .sheet.sp-sheet .sp-styles:not(#_){flex:none;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;padding:12px 16px 10px!important;margin:0!important}
html body #overlayRoot .sheet.sp-sheet .sp-styles>.btn:not(#_){min-height:44px!important;margin:0!important;border-radius:12px!important;font:600 clamp(13px,3.9vw,15px)/1.1 var(--mc-font)!important;white-space:nowrap!important;padding:0 4px!important}
html body #overlayRoot .sheet.sp-sheet .sp-card{flex:0 1 auto;min-height:0;display:flex;flex-direction:column;margin:0 16px 10px;background:#fff;border-radius:22px;overflow:hidden}
html body #overlayRoot .sheet.sp-sheet .sp-card.sp-layout-open{flex:1 1 auto}
html body #overlayRoot .sheet.sp-sheet .sp-row{flex:none;display:flex;align-items:center;gap:12px;width:100%;min-height:50px;padding:0 14px;border:0;border-radius:0;background:transparent;font:400 17px var(--mc-font);color:#000;text-align:left}
html body #overlayRoot .sheet.sp-sheet .sp-row+.sp-header-body+.sp-row,html body #overlayRoot .sheet.sp-sheet .sp-header-body[hidden]+.sp-row{border-top:.5px solid #C6C6C8}
html body #overlayRoot .sheet.sp-sheet .sp-tile{flex:none;width:29px;height:29px;border-radius:7px;display:grid;place-items:center}
html body #overlayRoot .sheet.sp-sheet .sp-tile[data-tone="blue"]{background:#2F6FEB}
html body #overlayRoot .sheet.sp-sheet .sp-tile[data-tone="purple"]{background:#5E5CE6}
html body #overlayRoot .sheet.sp-sheet .sp-label{flex:1 1 auto}
html body #overlayRoot .sheet.sp-sheet .sp-value{font-size:15px;color:#8A8A8E}
html body #overlayRoot .sheet.sp-sheet .sp-chev{display:grid;place-items:center;color:#C4C4C7;transition:transform .15s}
html body #overlayRoot .sheet.sp-sheet .sp-chev img,html body #overlayRoot .sheet.sp-sheet .sp-chev svg{width:15px;height:15px;opacity:.5}
html body #overlayRoot .sheet.sp-sheet .sp-row[aria-expanded="true"] .sp-chev{transform:rotate(90deg)}
html body #overlayRoot .sheet.sp-sheet .sp-header-body{flex:none;background:#FAFAFC;border-top:.5px solid #C6C6C8}
html body #overlayRoot .sheet.sp-sheet .sp-switch-row{display:flex;align-items:center;gap:12px;min-height:42px;padding:0 16px 0 55px;margin:0;font:400 16px var(--mc-font)}
html body #overlayRoot .sheet.sp-sheet .sp-switch-row+.sp-switch-row{border-top:.5px solid #E0E0E5}
html body #overlayRoot .sheet.sp-sheet .sp-switch-row>span{flex:1 1 auto}
html body #overlayRoot .sheet.sp-sheet .sp-switch-row input[type=checkbox]{-webkit-appearance:none;appearance:none;position:relative;flex:none;width:51px;height:31px;margin:0;border-radius:16px;background:#E9E9EB;cursor:pointer;transition:background .2s}
html body #overlayRoot .sheet.sp-sheet .sp-switch-row input[type=checkbox]::before{content:"";position:absolute;top:2px;left:2px;width:27px;height:27px;border-radius:50%;background:#fff;box-shadow:0 2px 4px rgba(0,0,0,.2);transition:transform .2s}
html body #overlayRoot .sheet.sp-sheet .sp-switch-row input[type=checkbox]:checked{background:#34C759}
html body #overlayRoot .sheet.sp-sheet .sp-switch-row input[type=checkbox]:checked::before{transform:translateX(20px)}
/* Gary, Oct 21: one switch per Header Details row, no leftover checkmark (the common checkbox style adds one) */
html body #overlayRoot .sheet.sp-sheet .sp-switch-row input[type=checkbox]::after{content:none!important;display:none!important}
html body #overlayRoot .sheet.sp-sheet .sp-layout-body{flex:1 1 auto;min-height:0;overflow-y:auto;background:#FAFAFC;border-top:.5px solid #C6C6C8;padding:10px 10px 6px}
html body #overlayRoot .sheet.sp-sheet .sp-layout-body .setlist-export-defaults{display:block;margin:6px auto 4px;border:0;background:transparent;color:#007AFF;font:400 15px var(--mc-font)}
html body #overlayRoot .sheet.sp-sheet .setlist-preview-actions:not(#_){flex:none;margin:0!important;padding:10px 16px 16px!important;border-top:.5px solid #C6C6C8;background:#F2F2F7}

/* Song Library import (Gary, Oct 19): one editable text box, then one song at a time. */
.setlist-import-lines{display:block;width:100%;box-sizing:border-box;min-height:260px;padding:12px 14px;border:1px solid #D1D1D6;border-radius:14px;background:#FFF;color:#000;font:400 16px/1.45 -apple-system,BlinkMacSystemFont,'SF Pro Text','Segoe UI',Roboto,sans-serif;resize:vertical}
.setlist-import-lines:focus{outline:none;border-color:#007AFF;box-shadow:0 0 0 3px rgba(0,122,255,.15)}
#setlistImportCount.error{color:#C4291C}
.setlist-import-walk{display:flex;align-items:center;gap:12px;margin:0 0 10px;padding:10px 12px 10px 14px;border-radius:14px;background:#EEF4FF;border:1px solid #D6E4FF}
.setlist-import-walk-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.setlist-import-walk-text b{font:600 13px/1.2 -apple-system,BlinkMacSystemFont,'SF Pro Text','Segoe UI',Roboto,sans-serif;color:#1D4ED8;text-transform:uppercase;letter-spacing:.03em}
.setlist-import-walk-text span{font:500 16px/1.3 -apple-system,BlinkMacSystemFont,'SF Pro Text','Segoe UI',Roboto,sans-serif;color:#000;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.setlist-import-walk .btn{flex:none;min-height:36px;padding:0 16px;border-radius:18px}
/* Import Songs (Gary, Oct 20): grouped rows with a second line. */
html body #overlayRoot .sheet.sp-sheet .sp-note{margin:4px 32px 12px!important;font:400 14px/1.4 var(--mc-font)!important;color:#6D6D72!important}
html body #overlayRoot .sheet.sp-sheet .sp-row.sp-row-two{min-height:64px!important;padding:10px 14px!important;gap:12px!important;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
html body #overlayRoot .sheet.sp-sheet .sp-row-two+.sp-row-two{border-top:.5px solid #C6C6C8!important}
html body #overlayRoot .sheet.sp-sheet .sp-row-two:active{background:#E5E5EA!important}
html body #overlayRoot .sheet.sp-sheet .sp-row-two .sp-label{display:flex!important;flex-direction:column!important;gap:3px!important;min-width:0!important;font:400 17px/1.25 var(--mc-font)!important;color:#000!important}
html body #overlayRoot .sheet.sp-sheet .sp-row-two .sp-label small{font:400 14px/1.3 var(--mc-font)!important;color:#8A8A8E!important}
html body #overlayRoot .sheet.sp-sheet .setlist-photo-picker .setlist-photo-native-retry[hidden]{display:none!important}

/* Song finder and import text box (Gary, Oct 20 mockup). */
html body #overlayRoot .sheet.sf-sheet .sf-body{flex:1 1 auto;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:7px;padding:14px 16px 16px;-webkit-overflow-scrolling:touch}
html body #overlayRoot .sheet.sf-sheet .sf-body>.sp-card{margin:0!important;flex:none}
html body #overlayRoot .sheet.sf-sheet .sf-caption{margin:10px 16px 0;font:400 13px/1.35 var(--mc-font);color:#6D6D72;text-transform:uppercase;letter-spacing:.02em}
html body #overlayRoot .sheet.sf-sheet .sf-caption:first-child{margin-top:4px}
html body #overlayRoot .sheet.sf-sheet .sf-caption b{font-weight:600;color:#3C3C43}
html body #overlayRoot .sheet.sf-sheet .sf-caption-row{display:flex;justify-content:space-between;gap:12px}
html body #overlayRoot .sheet.sf-sheet .sf-caption-row #setlistImportCount{text-transform:none}
html body #overlayRoot .sheet.sf-sheet .sf-caption-row #setlistImportCount.error{color:#C4291C;font-weight:600}
html body #overlayRoot .sheet.sf-sheet .sf-tip{margin-top:4px;text-transform:none;letter-spacing:0}
html body #overlayRoot .sheet.sf-sheet .sf-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
html body #overlayRoot .sheet.sf-sheet .sf-text-card{flex:1 1 auto!important;min-height:280px;padding:12px 16px;box-sizing:border-box}
html body #overlayRoot .sheet.sf-sheet .sf-text-card .setlist-import-lines:not(#_){flex:1 1 auto;width:100%;height:100%;min-height:256px;border:0!important;outline:none;box-shadow:none!important;border-radius:0!important;padding:0!important;margin:0!important;background:transparent!important;resize:none;font:400 17px/1.55 var(--mc-font)!important;color:#000}
html body #overlayRoot .sheet.sf-sheet .sf-actions{flex:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:12px 16px calc(14px + env(safe-area-inset-bottom));background:#F2F2F7;border-top:.5px solid #D1D1D6}
html body #overlayRoot .sheet.sf-sheet .sf-actions .btn:not(#_){height:50px;min-height:50px;margin:0;border-radius:14px;font:600 17px var(--mc-font)}
html body #overlayRoot .sheet.sf-sheet .sf-actions .btn.ghost:not(#_){background:#fff;border:0;color:#2F6FEB}
html body #overlayRoot .sheet.sf-sheet .sf-actions .btn.primary:not(#_){background:#2F6FEB;border:0;color:#fff}
html body #overlayRoot .sheet.sf-sheet .sf-actions .btn.primary:disabled{background:#A9C2F2!important;color:#fff!important;opacity:1}
html body #overlayRoot .sheet.sf-sheet .sf-progress{display:flex;align-items:center;gap:12px;margin:0 4px 4px}
/* BETA-7.16 (Gary, Oct 26): Song N of M and Skip stay at the top while the list scrolls */
html body #overlayRoot .sheet.sf-sheet .sf-progress{position:sticky;top:-14px;z-index:4;margin:-14px -16px 4px;padding:14px 20px 8px;background:var(--sf-sticky-bg,#f2f2f7)}
html body #overlayRoot .sheet.sf-sheet .sf-progress-text{flex:1 1 auto;display:flex;flex-direction:column;gap:6px;min-width:0}
html body #overlayRoot .sheet.sf-sheet .sf-progress-text b{font:600 13px var(--mc-font);color:#2F6FEB;text-transform:uppercase;letter-spacing:.03em}
html body #overlayRoot .sheet.sf-sheet .sf-bar{display:block;height:4px;border-radius:2px;background:#DCE4F5;overflow:hidden}
html body #overlayRoot .sheet.sf-sheet .sf-bar i{display:block;height:4px;background:#2F6FEB}
html body #overlayRoot .sheet.sf-sheet .sf-skip:not(#_){flex:none;height:34px;min-height:34px;margin:0;padding:0 16px;border-radius:17px;border:0;background:#fff;color:#2F6FEB;font:600 15px var(--mc-font)}
html body #overlayRoot .sheet.sf-sheet .sf-row{display:flex;align-items:center;gap:10px;min-height:52px;padding:0 14px 0 16px;margin:0;font:400 17px var(--mc-font);color:#000}
html body #overlayRoot .sheet.sf-sheet .sf-row+.sf-row{border-top:.5px solid #C6C6C8}
html body #overlayRoot .sheet.sf-sheet .sf-label{flex:none;width:58px}
html body #overlayRoot .sheet.sf-sheet .sf-row input[type=search]:not(#_){flex:1 1 auto;min-width:0;height:44px;border:0!important;outline:none;box-shadow:none!important;background:transparent!important;padding:0!important;margin:0;font:400 17px var(--mc-font)!important;color:#000;-webkit-appearance:none;appearance:none}
html body #overlayRoot .sheet.sf-sheet .sf-row select:not(#_){flex:1 1 auto;min-width:0;height:44px;border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;margin:0;font:400 17px var(--mc-font)!important;color:#8A8A8E}
html body #overlayRoot .sheet.sf-sheet .sf-only{flex:none;display:flex;align-items:center;gap:8px;margin:0;font:400 15px var(--mc-font);color:#000;white-space:nowrap}
html body #overlayRoot .sheet.sf-sheet .sf-only input{width:22px;height:22px;margin:0;accent-color:#2F6FEB}
html body #overlayRoot .sheet.sf-sheet .sf-only input:disabled+*,html body #overlayRoot .sheet.sf-sheet .sf-only:has(input:disabled){color:#AEAEB2}
html body #overlayRoot .sheet.sf-sheet .sf-results{display:flex;flex-direction:column;gap:7px}
html body #overlayRoot .sheet.sf-sheet .sf-list{padding:0!important}
html body #overlayRoot .sheet.sf-sheet .sf-item:not(#_){display:flex;align-items:center;gap:12px;width:100%;min-height:60px;margin:0;padding:8px 14px;border:0;border-radius:0;background:#fff;box-shadow:none;font:inherit;color:#000;text-align:left}
html body #overlayRoot .sheet.sf-sheet .sf-item+.sf-item{border-top:.5px solid #E5E5EA}
html body #overlayRoot .sheet.sf-sheet .sf-item.selected:not(#_){background:#EEF4FF}
html body #overlayRoot .sheet.sf-sheet .sf-check{flex:none;width:24px;height:24px;border-radius:12px;box-sizing:border-box;border:1.5px solid #C7C7CC;background:#fff;display:grid;place-items:center}
html body #overlayRoot .sheet.sf-sheet .sf-check svg{opacity:0}
html body #overlayRoot .sheet.sf-sheet .sf-item.selected .sf-check{border:0;background:#2F6FEB}
html body #overlayRoot .sheet.sf-sheet .sf-item.selected .sf-check svg{opacity:1}
html body #overlayRoot .sheet.sf-sheet .sf-text{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}
html body #overlayRoot .sheet.sf-sheet .sf-title{font:600 16px/1.25 var(--mc-font);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html body #overlayRoot .sheet.sf-sheet .sf-title.sf-plain{font-weight:400}
html body #overlayRoot .sheet.sf-sheet .sf-sub{font:400 14px/1.25 var(--mc-font);color:#6D6D72;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html body #overlayRoot .sheet.sf-sheet .sf-time{flex:none;font:400 15px var(--mc-font);color:#6D6D72;font-variant-numeric:tabular-nums}
html body #overlayRoot .sheet.sf-sheet .sf-link:not(#_){align-self:flex-start;margin:8px 16px 0;padding:6px 0;border:0;background:none;box-shadow:none;font:400 15px var(--mc-font);color:#2F6FEB;min-height:0}
html body #overlayRoot .sheet.sf-sheet #setlistError:empty{display:none}
html body #overlayRoot .sheet.sf-sheet .sf-results>.sp-card{margin:0!important}
html body #overlayRoot .sheet.sf-sheet .sf-label{width:52px}
html body #overlayRoot .sheet.sf-sheet .sf-row select:not(#_){flex:1 1 auto;min-width:96px;font-size:16px!important;text-overflow:ellipsis}
html body #overlayRoot .sheet.sf-sheet .sf-only{gap:6px;font-size:14px}
html body #overlayRoot .sheet.sf-sheet .sf-cover{flex:none;width:40px;height:40px;border-radius:6px;overflow:hidden;background:#EEEEF0;display:grid;place-items:center}
html body #overlayRoot .sheet.sf-sheet .sf-cover img{display:block;width:40px;height:40px;object-fit:cover}
html body #overlayRoot .sheet.sf-sheet .sf-cover-empty img,html body #overlayRoot .sheet.sf-sheet .sf-cover-empty svg{width:18px;height:18px;opacity:.35}
html body #overlayRoot .sheet.sf-sheet .sf-item:not(#_){gap:10px}
/* Circle outside the box; tap the box to listen (Gary, Oct 20). */
html body #overlayRoot .sheet.sf-sheet .sf-list:not(#_){display:flex;flex-direction:column;gap:8px;margin:0!important;padding:0!important;background:transparent!important}
html body #overlayRoot .sheet.sf-sheet .sf-pick{display:flex;align-items:center;gap:6px}
html body #overlayRoot .sheet.sf-sheet .sf-dot:not(#_){flex:none;width:36px;height:52px;min-height:0;margin:0 0 0 -6px;padding:0;border:0;border-radius:10px;background:transparent;box-shadow:none;display:grid;place-items:center}
html body #overlayRoot .sheet.sf-sheet .sf-pick .sf-check{border:1.5px solid #C7C7CC;background:#fff}
html body #overlayRoot .sheet.sf-sheet .sf-pick .sf-check svg{opacity:0}
html body #overlayRoot .sheet.sf-sheet .sf-pick.selected .sf-check{border:0;background:#2F6FEB}
html body #overlayRoot .sheet.sf-sheet .sf-pick.selected .sf-check svg{opacity:1}
html body #overlayRoot .sheet.sf-sheet .sf-pick .sf-item:not(#_):not(#__){position:relative;flex:1 1 auto;min-width:0;min-height:60px;padding:8px 12px 8px 10px;border-radius:14px;border:1.5px solid transparent;background:#fff}
html body #overlayRoot .sheet.sf-sheet .sf-pick.selected .sf-item:not(#_):not(#__){background:#EEF4FF;border-color:#2F6FEB}
html body #overlayRoot .sheet.sf-sheet .sf-pick .sf-item:active{background:#F2F2F7}
html body #overlayRoot .sheet.sf-sheet .sf-play{position:absolute;left:36px;bottom:10px;width:17px;height:17px;border-radius:9px;background:rgba(0,0,0,.62);display:grid;place-items:center;padding-left:1px;box-sizing:border-box;pointer-events:none}
html body #overlayRoot .sheet.sf-sheet .sf-list-typed .sf-item:not(#_):not(#__){min-height:56px}
html body #overlayRoot .sheet.sf-sheet .sf-chev{flex:none;display:grid;place-items:center;margin-left:-4px;opacity:.4}html body #overlayRoot .sheet.sf-sheet .sf-chev img,html body #overlayRoot .sheet.sf-sheet .sf-chev svg{width:13px;height:13px}
/* Gary, Oct 20: Song Library opens with Add Song / Import Songs rows (Group screen style). */
html body #overlayRoot .sheet.mc-song-library .mc-lib-card{flex:none;display:flex;flex-direction:column;margin:0 0 12px;background:#fff;border:.5px solid #D1D1D6;border-radius:16px;overflow:hidden}
html body #overlayRoot .sheet.mc-song-library .mc-lib-row{display:flex!important;align-items:center;gap:12px;width:100%!important;min-height:50px!important;margin:0!important;padding:0 14px!important;border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;color:#000!important;font:400 17px var(--ios-font,-apple-system,system-ui,sans-serif)!important;text-align:left!important;cursor:pointer}
html body #overlayRoot .sheet.mc-song-library .mc-lib-row+.mc-lib-row{border-top:.5px solid #D1D1D6!important}
html body #overlayRoot .sheet.mc-song-library .mc-lib-row:disabled{opacity:.45;cursor:default}
html body #overlayRoot .sheet.mc-song-library .mc-lib-tile{flex:none;width:29px;height:29px;border-radius:7px;display:grid;place-items:center;background:#2F6FEB}
html body #overlayRoot .sheet.mc-song-library .mc-lib-tile[data-tone="purple"]{background:#5E5CE6}
html body #overlayRoot .sheet.mc-song-library .mc-lib-label{flex:1 1 auto;min-width:0}
html body #overlayRoot .sheet.mc-song-library .mc-lib-chev{display:grid;place-items:center}
html body #overlayRoot .sheet.mc-song-library .mc-lib-chev img,html body #overlayRoot .sheet.mc-song-library .mc-lib-chev svg{width:15px;height:15px;opacity:.45}
html body #overlayRoot .sheet.mc-song-library .mc-library-delete-bar[hidden]{display:none!important}
html body #overlayRoot .sheet.mc-song-library .mc-library-delete-bar .btn{width:100%}
/* Gary, Oct 20: view-only Song Library (no checkboxes, Select All, Delete or edit column). */
html body #overlayRoot .sheet.mc-song-library .mc-lib-viewonly{flex-direction:row;align-items:center;gap:12px;padding:10px 14px}
html body #overlayRoot .sheet.mc-song-library .mc-lib-tile[data-tone="gray"]{background:#8E8E93}
html body #overlayRoot .sheet.mc-song-library .mc-lib-viewonly .mc-lib-label{display:flex;flex-direction:column;gap:2px}
html body #overlayRoot .sheet.mc-song-library .mc-lib-viewonly b{font:600 16px var(--ios-font,-apple-system,system-ui,sans-serif);color:#000}
html body #overlayRoot .sheet.mc-song-library .mc-lib-viewonly small{font:400 13px/1.3 var(--ios-font,-apple-system,system-ui,sans-serif);color:#6D6D72}
/* Share (BETA-7.48.18): view-only Song Library rows have a checkbox too (to pick songs to share), so they use the usual columns */
html body #overlayRoot .sheet.mc-song-library .setlist-actions.mc-library-delete-bar{display:grid!important;grid-template-columns:minmax(0,1fr)!important}
html body #overlayRoot .sheet.mc-song-library .setlist-actions.mc-library-delete-bar[hidden]{display:none!important}
html body #overlayRoot .sheet.mc-song-library.mc-library-readonly .setlist-actions.mc-library-delete-bar{grid-template-columns:1fr!important}
html body #overlayRoot .sheet.mc-song-library #setlistLibraryDelete[hidden]{display:none!important}
html body #overlayRoot .sheet.mc-song-library .setlist-actions.mc-library-delete-bar .btn{width:100%!important;max-width:none!important}
/* Gary, Oct 20: search service problem reads as a plain sentence, not a section caption. */
html body #overlayRoot .sheet.sf-sheet .sf-caption.sf-caption-problem{text-transform:none;letter-spacing:0;font-size:14px;color:#C0392B}
/* Song Library (Gary, Oct 20): Delete and Send to… side by side. */
html body #overlayRoot .sheet.mc-song-library .setlist-actions.mc-library-delete-bar:not(#_):has(#setlistLibrarySend){grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:10px!important}
/* Typed delete confirmation (Gary, Oct 20) */
.ya-typed-confirm-backdrop{position:fixed;inset:0;z-index:20000;display:grid;place-items:center;padding:16px;background:rgba(12,24,49,.45)}
.ya-typed-confirm{width:min(340px,100%);box-sizing:border-box;padding:18px 16px 14px;border-radius:16px;background:#fff;box-shadow:0 18px 50px rgba(15,23,42,.3);font-family:var(--mc-font,system-ui)}
.ya-typed-confirm h3{margin:0 0 8px;font:700 19px/1.25 var(--mc-font,system-ui);color:#0c1831}
.ya-typed-confirm .ya-typed-warning{margin:0 0 12px;padding:10px 12px;border-radius:10px;background:#FDECEC;color:#8A1C1C;font:400 14px/1.4 var(--mc-font,system-ui)}
.ya-typed-confirm label{display:block;margin:0 0 6px;font:400 14px var(--mc-font,system-ui);color:#3C3C43}
.ya-typed-confirm input{width:100%;box-sizing:border-box;height:42px;padding:0 12px;border:1px solid #D1D1D6;border-radius:10px;font:600 16px var(--mc-font,system-ui);letter-spacing:.04em}
.ya-typed-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
.ya-typed-actions .btn{min-height:44px;margin:0}
/* Song Layout (Gary, Oct 21): Default button on the Layout title; grey samples in the preview; Save on the page title row. */
html body .sheet .mc-set-title.sl-layout-title{display:flex!important;align-items:center!important;justify-content:space-between!important}
html body .sheet .sl-layout-title .sl-default{border:0;background:transparent;padding:2px 2px;font:600 15px var(--mc-font);color:var(--mc-blue,#3877c8);text-transform:none;letter-spacing:0;cursor:pointer}
html body .sheet .sl-preview .sl3-sample{color:#8a93a6!important;font-weight:400!important;font-style:italic}
html body .sheet.mc-editor-ios .mc-editor-page-head .mc-editor-top-save:not(#_){position:static!important;margin-left:auto!important;height:34px!important}
/* Song Layout editor (Gary, Oct 21 mockup): square field boxes with ‹ ▲ ▼ › and ✕; fields not included below. */
html body .sheet .sl-layout .sl-boxes{display:flex;flex-wrap:wrap;gap:8px;flex:1 1 auto;min-width:0}
html body .sheet .sl-layout .sl-box{box-sizing:border-box;min-width:96px;padding:6px 6px 5px;border:1px solid #c9d3e3;border-radius:8px;background:#f7f9fc;color:#14254a}
html body .sheet .sl-layout .sl-box.is-name{background:#14254a;border-color:#14254a;color:#fff}
html body .sheet .sl-layout .sl-box-top{display:flex;align-items:flex-start;gap:6px;margin:0 0 5px 2px}
html body .sheet .sl-layout .sl-box-label{flex:1 1 auto;font:600 14px/1.2 var(--mc-font);white-space:nowrap}
html body .sheet .sl-layout .sl-box-x{flex:none;width:20px;height:20px;margin:-2px -2px 0 0;padding:0;border:0;background:transparent;color:#8a93a6;font:600 13px/20px var(--mc-font);cursor:pointer}
html body .sheet .sl-layout .sl-box-ctl{display:flex;gap:4px}
html body .sheet .sl-layout .sl-box-ctl button{display:grid;place-items:center;width:22px;height:22px;min-height:22px;padding:0;border:0;border-radius:5px;background:#e3eaf5;color:#3877c8;cursor:pointer}
html body .sheet .sl-layout .sl-box.is-name .sl-box-ctl button{background:#2c3f66;color:#fff}
html body .sheet .sl-layout .sl-box-ctl button:disabled{opacity:.3;cursor:default}
html body .sheet .sl-off .sl-off-row{display:flex;align-items:center;gap:12px;min-height:44px;padding:0 14px;margin:0;font:400 16px var(--mc-font);color:#14254a;cursor:pointer}
html body .sheet .sl-off .sl-off-row+.sl-off-row{border-top:.5px solid #E0E0E5}
html body .sheet .sl-off .sl-off-row .sl-field-note{margin-left:auto;color:#8a93a6;font-size:12px}
html body .sheet .sl-off .sl-off-empty{padding:12px 14px;margin:0}
/* Breaks (Gary, Oct 21): their own row, right-aligned — Stage View, the Song Layout preview and print. */
html body #overlayRoot .sl3-break .sl3-main{justify-content:flex-end!important}
html body #overlayRoot .sl3-break .sl3-main>.sl3-breakname{flex:0 1 auto!important;text-align:right!important}
/* Gary, Oct 21: no empty strip above the Song Layout / Timing pages (Save is on the page title row there). */
html body #overlayRoot .sheet.mc-editor-ios:is([data-editor-page="stage"],[data-editor-page="timing"]):not(#_) .setlist-navigation-head{display:none!important}
/* Set List Preview (Gary, Oct 21): title row left-justified across the width, circled X on the right — also in full screen. */
html body #overlayRoot .sheet.sp-sheet:not(#_) .setlist-navigation-head{position:relative!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;align-self:stretch!important;width:auto!important;padding-right:52px!important}
html body #overlayRoot .sheet.sp-sheet.setlist-preview-full:not(#_)>.sheet-head h2{display:block!important}
html body #overlayRoot .sheet.sp-sheet:not(#_) .sp-preview .setlist-export-preview{cursor:zoom-in}
html body #overlayRoot .sheet.sp-sheet.setlist-preview-full:not(#_) .setlist-export-preview{cursor:default}

/* Full-screen Set List Preview (Gary, Oct 21): only the preview, with "Set List Preview" on the left and the X on the right. */
html body #overlayRoot .sheet.sp-sheet.setlist-preview-full:not(#_){display:flex!important;flex-direction:column!important}
html body #overlayRoot .sheet.sp-sheet.setlist-preview-full:not(#_)>:is(.setlist-print-layouts,#setlistPrintOptionsPanel,.setlist-preview-actions),html body #overlayRoot .sheet.sp-sheet.setlist-preview-full:not(#_) :is(#setlistError,#setlistClose){display:none!important}
html body #overlayRoot .sheet.sp-sheet.setlist-preview-full:not(#_)>.sp-preview{flex:1 1 auto!important;min-height:0!important;display:flex!important;flex-direction:column!important}
html body #overlayRoot .sheet.sp-sheet.setlist-preview-full:not(#_)>.sp-preview>.setlist-export-preview{flex:1 1 auto!important;min-height:0!important;height:auto!important;max-height:none!important;overflow:auto!important}
html body #overlayRoot .sheet.sp-sheet.setlist-preview-full:not(#_)>.sheet-head{align-self:stretch!important;height:auto!important;min-height:52px!important;padding-left:16px!important}
/* Add a Song (Gary, Oct 24 mockup): title on the gray background (no white box), a bordered search box, a genre dropdown and
   an "Only this genre" switch, results in labeled groups with ▶ previews, and "Can't find it?" as its own row. */
html body #overlayRoot .sheet.sf-sheet .setlist-navigation-head:not(#_):not(#__){background:transparent!important;border:0!important;box-shadow:none!important;padding:6px 4px 2px!important;min-height:44px!important;margin:0!important;display:flex!important;align-items:center!important;gap:6px!important}
html body #overlayRoot .sheet.sf-sheet .setlist-navigation-head:not(#_) h2{flex:1!important;margin:0!important;font:800 22px/1.2 var(--mc-font)!important;color:#0c1831!important;text-align:left!important}
html body #overlayRoot .sheet.sf-sheet .sf2-intro{margin:0 18px 10px;font:400 14px/1.4 var(--mc-font);color:#5b6475}
html body #overlayRoot .sheet.sf-sheet .sf2-card{background:#fff;border-radius:14px;margin:0 2px;overflow:hidden;flex:none}
html body #overlayRoot .sheet.sf-sheet .sf2-search{display:flex;align-items:center;gap:8px;margin:12px;padding:0 10px;height:44px;border:1.5px solid #c9d3e2;border-radius:12px;background:#fff}
html body #overlayRoot .sheet.sf-sheet .sf2-search:focus-within{border-color:#2F6FEB;box-shadow:0 0 0 3px rgba(47,111,235,.15)}
html body #overlayRoot .sheet.sf-sheet .sf2-search>svg,html body #overlayRoot .sheet.sf-sheet .sf2-search>img{width:18px;height:18px;flex:none;opacity:.55}
html body #overlayRoot .sheet.sf-sheet .sf2-search input:not(#_):not(#__){flex:1 1 auto;min-width:0;height:40px!important;min-height:0!important;border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;margin:0!important;font:500 16px var(--mc-font)!important;color:#0c1831!important;outline:none!important}
html body #overlayRoot .sheet.sf-sheet .sf2-search input::-webkit-search-cancel-button{display:none}
html body #overlayRoot .sheet.sf-sheet .sf2-clear:not(#_){flex:none;width:22px;height:22px;min-height:0;padding:0;margin:0;border:0;border-radius:11px;background:#c7ccd6;display:grid;place-items:center;cursor:pointer}
html body #overlayRoot .sheet.sf-sheet .sf2-clear[hidden]{display:none}
html body #overlayRoot .sheet.sf-sheet .sf2-clear svg,html body #overlayRoot .sheet.sf-sheet .sf2-clear img{width:12px;height:12px;filter:brightness(0) invert(1)}
html body #overlayRoot .sheet.sf-sheet .sf2-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:48px;padding:0 14px;border-top:.5px solid #E5E5EA;font:400 16px var(--mc-font);color:#0c1831}
html body #overlayRoot .sheet.sf-sheet .sf2-row label{margin:0;font:inherit;color:inherit}
html body #overlayRoot .sheet.sf-sheet .sf2-select{position:relative;display:inline-flex}
html body #overlayRoot .sheet.sf-sheet .sf2-select select:not(#_):not(#__){-webkit-appearance:none;appearance:none;height:36px!important;min-height:0!important;margin:0!important;padding:0 30px 0 12px!important;border:1.5px solid #c9d3e2!important;border-radius:10px!important;background:#fff!important;font:600 15px var(--mc-font)!important;color:#0c1831!important;max-width:200px}
html body #overlayRoot .sheet.sf-sheet .sf2-select::after{content:"";position:absolute;right:12px;top:50%;width:7px;height:7px;margin-top:-6px;border-right:2px solid #6D6D72;border-bottom:2px solid #6D6D72;transform:rotate(45deg);pointer-events:none}
html body #overlayRoot .sheet.sf-sheet .sf2-switch:not(#_){-webkit-appearance:none;appearance:none;flex:none;width:51px;height:31px;margin:0;border-radius:16px;background:#E9E9EB;position:relative;cursor:pointer;transition:background .2s}
html body #overlayRoot .sheet.sf-sheet .sf2-switch::after{content:"";position:absolute;left:2px;top:2px;width:27px;height:27px;border-radius:14px;background:#fff;box-shadow:0 2px 4px rgba(0,0,0,.2);transition:left .2s}
html body #overlayRoot .sheet.sf-sheet .sf2-switch:checked{background:#34C759}
html body #overlayRoot .sheet.sf-sheet .sf2-switch:checked::after{left:22px}
html body #overlayRoot .sheet.sf-sheet .sf2-switch:disabled{opacity:.45}
html body #overlayRoot .sheet.sf-sheet .sf2-help{margin:6px 18px 2px;font:400 12.5px/1.3 var(--mc-font);color:#6D6D72}
html body #overlayRoot .sheet.sf-sheet .sf2-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:28px 30px;text-align:center;font:400 14px/1.4 var(--mc-font);color:#8a94a6}
html body #overlayRoot .sheet.sf-sheet .sf2-empty svg,html body #overlayRoot .sheet.sf-sheet .sf2-empty img{width:30px;height:30px;opacity:.6}
html body #overlayRoot .sheet.sf-sheet .sf2-sec:not(#_){display:flex;justify-content:space-between;gap:8px;margin:12px 16px 0;font:700 12px/1.3 var(--mc-font);color:#6D6D72;text-transform:uppercase;letter-spacing:.03em}
html body #overlayRoot .sheet.sf-sheet .sf2-tip{text-transform:none;letter-spacing:0;font-weight:500}
html body #overlayRoot .sheet.sf-sheet .sf2-play:not(#_){flex:none;width:34px;height:34px;min-height:0;margin:0 0 0 4px;padding:0;border:1.5px solid #c9d3e2;border-radius:17px;background:#fff;color:#2F6FEB;display:grid;place-items:center;cursor:pointer}
html body #overlayRoot .sheet.sf-sheet .sf2-manual:not(#_){display:flex;align-items:center;justify-content:space-between;width:auto;min-height:48px;margin:12px 2px 0;padding:0 14px;border:0;border-radius:14px;background:#fff;font:600 15px var(--mc-font);color:#2F6FEB;cursor:pointer;flex:none}
html body #overlayRoot .sheet.sf-sheet .sf2-manual svg,html body #overlayRoot .sheet.sf-sheet .sf2-manual img{width:14px;height:14px;opacity:.5}
/* Import Set List review (Gary, Oct 24) */
html body #overlayRoot .sheet .slr-wait{display:flex;flex-direction:column;align-items:center;gap:8px;padding:40px 24px;text-align:center;font:400 14px/1.4 var(--mc-font);color:#5b6475}
html body #overlayRoot .sheet .slr-wait b{font:700 17px var(--mc-font);color:#0c1831}
html body #overlayRoot .sheet .slr-reading{max-height:220px;overflow:auto;white-space:pre-wrap;background:#fff;border-radius:10px;padding:10px;font:12.5px/1.4 ui-monospace,Menlo,monospace;color:#3c4658;text-align:left;width:100%;box-sizing:border-box}
html body #overlayRoot .sheet.slr-sheet .slr-body{flex:1 1 auto;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding:0 2px 8px}
html body #overlayRoot .sheet.slr-sheet .slr-sub{margin:0 4px;font:400 13px/1.35 var(--mc-font);color:#5b6475}
html body #overlayRoot .sheet.slr-sheet .slr-summary{display:flex;flex-wrap:wrap;gap:6px;margin:0 2px}
html body #overlayRoot .sheet.slr-sheet .slr-pill{display:inline-flex;align-items:center;font:700 12px/1 var(--mc-font);border-radius:999px;padding:5px 9px;white-space:nowrap}
html body #overlayRoot .sheet.slr-sheet .slr-ok{background:#E3F3E8;color:#146c33}
html body #overlayRoot .sheet.slr-sheet .slr-check{background:#FEF3C7;color:#8a5a00}
html body #overlayRoot .sheet.slr-sheet .slr-new{background:#E6EEFB;color:#1F5FD1}
html body #overlayRoot .sheet.slr-sheet .slr-skip{background:#EEF1F5;color:#6D6D72}
html body #overlayRoot .sheet.slr-sheet .slr-warn{background:#FFF6E5;border-radius:12px;padding:8px 12px;font:400 13px/1.4 var(--mc-font);color:#8a5a00}
html body #overlayRoot .sheet.slr-sheet .slr-details{margin:0 2px;font:600 13px var(--mc-font);color:#2F6FEB}
html body #overlayRoot .sheet.slr-sheet .slr-details summary{cursor:pointer;padding:4px 2px}
html body #overlayRoot .sheet.slr-sheet .slr-rows{display:flex;flex-direction:column;gap:8px}
html body #overlayRoot .sheet.slr-sheet .slr-card{background:#fff;border-radius:14px;padding:10px 12px}
html body #overlayRoot .sheet.slr-sheet .slr-card.slr-skipped{opacity:.6}
html body #overlayRoot .sheet.slr-sheet .slr-read{font:12px/1.3 ui-monospace,Menlo,monospace;color:#8a94a6;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html body #overlayRoot .sheet.slr-sheet .slr-head{display:flex;align-items:center;gap:8px}
html body #overlayRoot .sheet.slr-sheet .slr-title{flex:1 1 auto;min-width:0;font:700 16px/1.25 var(--mc-font);color:#0c1831;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html body #overlayRoot .sheet.slr-sheet .slr-link:not(#_){flex:none;min-height:0;height:auto;margin:0;padding:2px 4px;border:0;background:none;font:600 12.5px var(--mc-font);color:#2F6FEB;cursor:pointer}
html body #overlayRoot .sheet.slr-sheet .slr-x:not(#_){flex:none;width:26px;height:26px;min-height:0;margin:0;padding:0;border:0;border-radius:13px;background:#EEF1F5;display:grid;place-items:center;cursor:pointer}
html body #overlayRoot .sheet.slr-sheet .slr-x svg,html body #overlayRoot .sheet.slr-sheet .slr-x img{width:12px;height:12px;opacity:.6}
html body #overlayRoot .sheet.slr-sheet .slr-fields{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}
html body #overlayRoot .sheet.slr-sheet .slr-fields:empty{display:none}
html body #overlayRoot .sheet.slr-sheet .slr-chip{font:400 12.5px/1.2 var(--mc-font);border:1px solid #D9DEE7;border-radius:8px;padding:4px 7px;color:#3c4658;background:#fff}
html body #overlayRoot .sheet.slr-sheet .slr-chip s{color:#9aa3b2}
html body #overlayRoot .sheet.slr-sheet .slr-chip-diff,html body #overlayRoot .sheet.slr-sheet .slr-chip-add{border-color:#e8a23a;background:#FFF6E5}
html body #overlayRoot .sheet.slr-sheet .slr-diff{display:flex;flex-wrap:wrap;align-items:center;gap:6px;width:100%}
html body #overlayRoot .sheet.slr-sheet .slr-ask{font:400 12.5px var(--mc-font);color:#8a5a00}
html body #overlayRoot .sheet.slr-sheet .slr-btn:not(#_){min-height:0;height:auto;margin:0;padding:5px 9px;border:1px solid #D1D1D6;border-radius:8px;background:#fff;font:600 12.5px var(--mc-font);color:#0c1831;cursor:pointer}
html body #overlayRoot .sheet.slr-sheet .slr-btn.on:not(#_){background:#2F6FEB;border-color:#2F6FEB;color:#fff}
html body #overlayRoot .sheet.slr-sheet .slr-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}
html body #overlayRoot .sheet.slr-sheet .slr-alt{display:flex;flex-direction:column;gap:6px;margin-top:6px}
html body #overlayRoot .sheet.slr-sheet .slr-alt label{display:flex;align-items:center;gap:8px;margin:0;font:400 14px var(--mc-font);color:#0c1831}
html body #overlayRoot .sheet.slr-sheet .slr-alt input{width:18px;height:18px;margin:0;accent-color:#2F6FEB}
html body #overlayRoot .sheet.slr-sheet .slr-picked{margin-top:6px;font:400 13.5px var(--mc-font);color:#3c4658}
html body #overlayRoot .sheet.sf-sheet .sf2-row[hidden],html body #overlayRoot .sheet.sf-sheet .sf2-help[hidden]{display:none!important}
/* Edit Song (Gary, Oct 24): header on the gray background with no Save behind the X; Play Song in iTunes and Find a
   different recording inside Song Information under the album; band singer, key, tempo (and any start, transition and
   notes) listed in Song Information. */
html body .sheet.mc-song-form .setlist-navigation-head:not(#_):not(#__){background:transparent!important;box-shadow:none!important;border:0!important}
html body .sheet.mc-song-form .mc-song-info .mc-song-itunes:not(#_){display:flex;flex-direction:column;gap:8px;margin:10px 0 0;padding:0}
html body .sheet.mc-song-form .mc-song-info .mc-song-itunes-button:not(#_):not(#__){min-height:40px!important;height:40px!important;margin:0!important;border-radius:10px!important;font:600 15px var(--mc-font)!important}
html body .sheet.mc-song-form .mc-song-info #setlistSongOpenItunes:not(#_):not(#__){background:#EAF1FF!important;border:0!important;color:#1F5FD1!important}
html body .sheet.mc-song-form .mc-song-info #setlistSongFind:not(#_):not(#__){background:#fff!important;border:1.5px solid #c9d3e2!important;color:#1F5FD1!important}
html body .sheet.mc-song-form .mc-song-info #setlistSongItunesNote{display:none!important}
html body .sheet.mc-song-form .mc-song-info-extra:not(#_):not(#__){margin:12px -14px -12px!important;border:0!important;border-top:.5px solid #E5E5EA!important;border-radius:0 0 14px 14px!important;box-shadow:none!important;background:transparent!important}
html body .sheet.mc-song-form .mc-song-info-extra .mc-set-row>label:first-child{white-space:nowrap}
/* Edit Song (Gary, Oct 24 mockup): Title, Short Name, Artist and Album on the left; the cover with Play in iTunes and Find
   Other on the right; then Duration, Band Singer, Key, Tempo, Starts, Transition and Notes as label/value rows. */
html body .sheet.mc-song-form .mc-song-info .mc-song-info-grid:not(#_){display:grid!important;grid-template-columns:minmax(0,1fr) 96px!important;gap:12px!important;align-items:start!important}
html body .sheet.mc-song-form .mc-song-side{display:flex;flex-direction:column;gap:6px;padding-top:22px}
html body .sheet.mc-song-form .mc-song-info .mc-song-cover:not(#_){width:96px!important;height:96px!important;margin:0!important;display:grid;place-items:center}
html body .sheet.mc-song-form .mc-song-cover img[hidden]{display:none}
html body .sheet.mc-song-form .mc-song-cover .mc-song-cover-empty{display:none;font-size:34px;color:#9aa8bd}
html body .sheet.mc-song-form .mc-song-cover.is-empty .mc-song-cover-empty{display:block}
html body .sheet.mc-song-form .mc-song-info .mc-song-side .mc-song-itunes:not(#_){display:flex!important;flex-direction:column!important;gap:6px!important;margin:4px 0 0!important;padding:0!important}
html body .sheet.mc-song-form .mc-song-info .mc-song-side .mc-song-itunes-button:not(#_):not(#__):not(#___){display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:5px!important;width:100%!important;min-height:36px!important;height:auto!important;padding:4px 7px!important;border:0!important;border-radius:6px!important;background:#1F6FD1!important;color:#fff!important;font:600 13px/1.1 var(--mc-font)!important;text-align:left!important;text-decoration:none!important}
html body .sheet.mc-song-form .mc-song-info .mc-song-side .mc-song-itunes-button[hidden]:not(#_):not(#__):not(#___){display:none!important}
html body .sheet.mc-song-form .mc-song-info .mc-song-side .mc-song-itunes-button :is(img,svg){flex:none;width:16px!important;height:16px!important;filter:brightness(0) invert(1)}
html body .sheet.mc-song-form .mc-song-info .mc-song-album:not(#_){margin:-4px 0 0!important;font:400 13px/1.3 var(--mc-font)!important;color:#53627a!important}
html body .sheet.mc-song-form .mc-song-info .mc-song-album[hidden]{display:none!important}
html body .sheet.mc-song-form .mc-song-group-card:is(.mc-song-info-extra,.mc-song-band) .mc-set-row:not(.is-stacked):not(#_):not(#__) textarea{display:block!important;min-height:26px!important;height:26px;align-self:center!important;padding:2px 0!important;text-align:right!important;resize:none!important;overflow:hidden!important;border:0!important;background:transparent!important;font:400 16px/1.35 var(--mc-font)!important}
html body .sheet.mc-song-form .mc-song-info-extra .mc-set-row:not(#_):not(#__){grid-template-columns:auto minmax(0,1fr)!important}
html body .sheet.mc-song-form .mc-song-info-extra .mc-set-row:has(.mc-singer-picker):not(#_):not(#__){grid-template-columns:minmax(0,1fr) auto!important}
html body .sheet.mc-song-form .mc-song-group-card:is(.mc-song-info-extra,.mc-song-band) .mc-set-row:not(#_):not(#__) .mc-duration-stepper input{flex:0 0 72px!important;width:72px!important;margin-right:0!important}
html body .sheet.mc-song-form .mc-song-group-card:is(.mc-song-info-extra,.mc-song-band) .mc-set-row:not(#_):not(#__) .mc-step[hidden]{display:none!important}
html body .sheet.mc-song-form .mc-song-band .mc-song-band-title{margin:0;padding:12px 16px 6px;font:500 14px/1.2 var(--mc-font);color:#8a94a6;border-bottom:.5px solid #E5E5EA}
html body .sheet.mc-song-form .mc-song-band .mc-song-band-title+.mc-set-row:not(#_):not(#__){border-top:0!important}
html body .sheet.mc-song-form .mc-song-info .mc-song-album:not(#_){margin:-6px 0 10px!important}
html body .sheet.mc-song-form .mc-song-info .mc-song-ref input{max-width:150px}
html body .sheet.mc-song-form .mc-song-info:has(+.mc-song-band){margin-bottom:0!important;border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}
html body .sheet.mc-song-form .mc-song-info+.mc-song-band:not(#_){margin-top:0!important;border-top-left-radius:0!important;border-top-right-radius:0!important;border-top:.5px solid #E5E5EA!important}
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:not(#_):not(#__) #setlistSongShortName{min-height:44px!important;height:44px!important;border:0!important;background:transparent!important;text-align:right!important}
/* Gary, Oct 24: "Enter song details yourself" is a light box button (white, like the song rows), not a blue link */
html body #overlayRoot .sheet.sf-sheet .sf-link#setlistSongManual:not(#_):not(#__){align-self:center;display:flex;align-items:center;justify-content:center;min-height:44px;margin:10px auto 0;padding:0 22px;border:1px solid #D9DEE7;border-radius:12px;background:#fff;box-shadow:none;font:600 15px var(--mc-font);color:#1F5FD1;cursor:pointer}
/* Gary, Oct 24: Edit Song in two outlined boxes like Settings. The iTunes information is one grey outlined box; Our Version
   has its label above its own grey outlined box, with each item a white row (like Settings) and its note under it. */
html body .sheet.mc-song-form:not(#_):not(#__):not(#___) .mc-song-info{margin:0 0 4px!important;padding:12px!important;background:#EDF1F7!important;border:1px solid #D5DCE6!important;border-radius:18px!important}
html body .sheet.mc-song-form:not(#_):not(#__):not(#___) .mc-song-info+.mc-song-band-title{display:block;margin:18px 6px 8px!important;padding:0!important;border:0!important;font:600 15px/1.2 var(--mc-font)!important;color:#8a94a6!important}
html body .sheet.mc-song-form[data-song-view="find"]:not(#_) .mc-song-band-title{display:none!important}
html body .sheet.mc-song-form:not(#_):not(#__):not(#___) .mc-song-band{margin:0!important;padding:8px!important;background:#EDF1F7!important;border:1px solid #D5DCE6!important;border-radius:24px!important;box-shadow:none!important;display:flex!important;flex-direction:column!important;gap:8px!important}
html body .sheet.mc-song-form:not(#_):not(#__):not(#___) .mc-song-band>.mc-set-row{margin:0!important;padding-left:16px!important;padding-right:16px!important;min-height:48px!important;background:#fff!important;border:0!important;border-radius:16px!important}
html body .sheet.mc-song-form:not(#_):not(#__):not(#___) .mc-song-band>.mc-set-row::before,html body .sheet.mc-song-form:not(#_):not(#__):not(#___) .mc-song-band>.mc-set-row::after{display:none!important}
html body .sheet.mc-song-form:not(#_):not(#__):not(#___) .mc-song-band>.mc-song-row-help{margin:-2px 0 2px!important;padding:0 16px!important;font:400 13px/1.35 var(--mc-font)!important;color:#6D6D72!important}
html body .sheet.mc-song-form:not(#_):not(#__):not(#___) .mc-song-band>.mc-song-card-head[hidden]{display:none!important}
/* Play in iTunes / Find Other: icon on the left, the label beside it, centered in the button both ways. */
html body .sheet.mc-song-form .mc-song-info .mc-song-side .mc-song-itunes-button:not(#_):not(#__):not(#___):not(#____){justify-content:center!important;align-items:center!important;gap:7px!important;padding:5px 8px!important}
html body .sheet.mc-song-form .mc-song-info .mc-song-side .mc-song-itunes-button:not(#_):not(#__):not(#___):not(#____)>span{flex:0 1 auto;text-align:left}
/* Import Songs: notes about the reading (for example an unclear line) on the first song, in normal case */
html body #overlayRoot .sheet.sf-sheet .sf-caption.sf-context:not(#_){text-transform:none!important;letter-spacing:0!important;font:400 13px/1.35 var(--mc-font)!important;color:#8a5a00!important}
html body #overlayRoot .sheet.sf-sheet .sf-context .slr-warn{margin:0;padding:7px 10px;border-radius:10px;background:#FFF6E5}
/* Add Song: one box for song, artist, or song by artist (Gary, Oct 24) */
html body #overlayRoot .sheet.sf-sheet .sf-hint:not(#_){margin:6px 16px 0;font:400 12.5px/1.35 var(--mc-font);color:#6D6D72}
html body #overlayRoot .sheet.sf-sheet .sf-row>.sf-label:not(#_){white-space:nowrap;width:auto;min-width:52px}
/* Gary, Oct 24: Set Lists, the Song Library and the Set List Editor opened from Group look the same as when opened from an
   event: white page, no white title strip with a line under it (the Group screens' management header), Save beside the X. */
html body #overlayRoot .overlay.management-overlay>.sheet.management-workspace.setlist-sheet:not(#_):not(#__){background:#fff!important}
html body #overlayRoot .sheet.management-workspace.setlist-sheet>.sheet-head:not(.share-preview-header):not(#_):not(#__){border-bottom:0!important;background:transparent!important;box-shadow:none!important;margin-bottom:8px!important}
/* Gary, Oct 24: Edit Set List title row (< Edit Set List ... Save X) and the Set List view's card above the songs. */
html body #overlayRoot .sheet.mc-editor-ios:has(#setlistRows)>.setlist-navigation-head:not(#_):not(#__){position:relative!important;display:flex!important;align-items:center!important;height:auto!important;min-height:44px!important;margin:0 0 10px!important;padding:0 0 0 36px!important}
html body #overlayRoot .sheet.mc-editor-ios:has(#setlistRows)>.setlist-navigation-head:not(#_):not(#__) h2{position:static!important;width:auto!important;height:auto!important;clip:auto!important;flex:1 1 auto!important;min-width:0!important;margin:0!important;padding-right:130px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font:800 22px/1.15 var(--mc-font)!important;color:#14325a!important;text-align:left!important}
html body #overlayRoot .sheet.mc-editor-ios:has(#setlistRows)>.setlist-navigation-head:not(#_):not(#__) #setlistClose{top:50%!important;transform:translateY(-50%)!important}
html body #overlayRoot .sheet.mc-editor-ios:has(#setlistRows)>.setlist-navigation-head:not(#_):not(#__) .mc-editor-top-save{top:50%!important;transform:translateY(-50%)!important}
html body .sheet.mc-editor-ios .mc-editor-heading:not(#_){margin:0 0 12px!important}
html body .sheet.mc-editor-ios:has(#setlistRows) .mc-editor-heading #setlistName:not(#_):not(#__){display:block!important;width:100%!important;height:34px!important;min-height:34px!important;margin:0!important;padding:0 8px!important;border:1px dashed transparent!important;border-radius:8px!important;background:transparent!important;text-align:center!important;font:700 17px/1.2 var(--mc-font)!important;color:var(--mc-ink,#0c1831)!important}
html body .sheet.mc-editor-ios:has(#setlistRows) .mc-editor-heading #setlistName:not(#_):not(#__):hover{border-color:#c9d5e6!important}
html body .sheet.mc-editor-ios:has(#setlistRows) .mc-editor-heading #setlistName:not(#_):not(#__):focus{background:#fff!important;border:1px solid var(--mc-blue,#3877c8)!important;outline:0!important}
html body .sheet.mc-editor-ios:has(#setlistRows) .mc-editor-heading .setlist-editor-summary:not(#_):not(#__){margin:0!important;padding:0!important}
html body .sheet.mc-editor-ios:has(#setlistRows) .mc-editor-heading #setlistCountSummary:not(#_):not(#__){font:500 13px/1.3 var(--mc-font)!important;color:var(--mc-muted,#68758a)!important}
/* Gary, Oct 24: the band name on the Set List view and Edit Set List card is the small gray capitals line in every route. */
html body #overlayRoot .sheet.setlist-sheet .mc-view-heading>h3:not(#_):not(#__){margin:0 0 4px!important;font:700 13px/1.2 var(--mc-font)!important;color:#53627a!important;text-transform:uppercase!important;letter-spacing:.06em!important}
/* Set List Preview layouts (Gary, Oct 24 mockup): a bigger preview, Default layouts, My layouts (dashed "Same as default" /
   solid "Changed" with an orange dot), and a closed Change Layout row with one line of small checkboxes. */
html body #overlayRoot .sheet.sp-sheet:not(.setlist-preview-full):not(#_) .sp-preview{flex:1 1 0;min-height:200px;display:flex;flex-direction:column}
html body #overlayRoot .sheet.sp-sheet:not(.setlist-preview-full):not(#_) .sp-preview .setlist-export-preview:not(#_){flex:1 1 auto!important;min-height:0!important;height:auto!important;max-height:none!important}
html body #overlayRoot .sheet.sp-sheet .sp-picker{flex:0 0 auto;max-height:58%;min-height:0;overflow-y:auto;padding:2px 16px 10px;background:#F2F2F7}
html body #overlayRoot .sheet.sp-sheet .sp-sec:not(#_),html body #overlayRoot .sheet.sp-sheet .sp-sec-row h4:not(#_){margin:10px 2px 6px!important;padding:0!important;font:700 12px/1.2 var(--mc-font)!important;letter-spacing:.06em!important;color:#53627a!important;text-transform:uppercase!important}
html body #overlayRoot .sheet.sp-sheet .sp-sec-row:not(#_){display:flex;align-items:baseline;justify-content:space-between;margin:0!important;text-transform:none!important;letter-spacing:0!important}
html body #overlayRoot .sheet.sp-sheet .sp-link:not(#_){margin:0 2px!important;padding:4px 0!important;min-height:0!important;border:0!important;background:transparent!important;box-shadow:none!important;color:var(--mc-blue,#3877c8)!important;font:600 13px/1.2 var(--mc-font)!important}
html body #overlayRoot .sheet.sp-sheet .sp-seg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;padding:3px;border-radius:12px;background:#E3E6EC}
html body #overlayRoot .sheet.sp-sheet .sp-seg>button:not(#_){min-height:40px!important;margin:0!important;padding:0 4px!important;border:0!important;border-radius:10px!important;background:transparent!important;box-shadow:none!important;color:#1e3557!important;font:600 clamp(13px,3.8vw,15px)/1.1 var(--mc-font)!important;white-space:nowrap}
html body #overlayRoot .sheet.sp-sheet .sp-seg>button.is-on:not(#_){background:var(--mc-blue,#3877c8)!important;color:#fff!important}
html body #overlayRoot .sheet.sp-sheet .sp-mine{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
html body #overlayRoot .sheet.sp-sheet .sp-mine>button:not(#_){display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:2px!important;min-height:48px!important;margin:0!important;padding:5px 2px!important;border:1px dashed #c3cfdf!important;border-radius:10px!important;background:#fafbfd!important;box-shadow:none!important;color:#53627a!important}
html body #overlayRoot .sheet.sp-sheet .sp-mine>button.is-changed:not(#_){border:1px solid #cbd7e7!important;background:#fff!important;color:#1e3557!important}
html body #overlayRoot .sheet.sp-sheet .sp-mine>button.is-on:not(#_){border:1px solid var(--mc-blue,#3877c8)!important;background:var(--mc-blue,#3877c8)!important;color:#fff!important}
html body #overlayRoot .sheet.sp-sheet .sp-mine-name{display:flex;align-items:center;gap:4px;font:600 clamp(12px,3.5vw,13.5px)/1.15 var(--mc-font);white-space:nowrap}
html body #overlayRoot .sheet.sp-sheet .sp-mine small{font:500 11px/1.2 var(--mc-font);color:#8a94a3}
html body #overlayRoot .sheet.sp-sheet .sp-mine>button.is-on small{color:#dbe7f7}
html body #overlayRoot .sheet.sp-sheet .sp-dot{flex:none;width:7px;height:7px;border-radius:50%;background:#e8912d}
html body #overlayRoot .sheet.sp-sheet .sp-mine>button.is-on .sp-dot{background:#ffd27a}
html body #overlayRoot .sheet.sp-sheet .sp-change{margin-top:10px;border:1px solid #e3e9f1;border-radius:12px;background:#fff;overflow:hidden}
html body #overlayRoot .sheet.sp-sheet .sp-change-head:not(#_){display:flex!important;align-items:center!important;width:100%!important;min-height:44px!important;margin:0!important;padding:0 14px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#1e3557!important;font:600 15px/1.2 var(--mc-font)!important;text-align:left!important}
html body #overlayRoot .sheet.sp-sheet .sp-caret{margin-left:auto;display:grid;place-items:center;transition:transform .15s}
html body #overlayRoot .sheet.sp-sheet .sp-caret :is(img,svg){width:16px;height:16px;opacity:.5}
html body #overlayRoot .sheet.sp-sheet .sp-change.is-open .sp-caret{transform:rotate(180deg)}
html body #overlayRoot .sheet.sp-sheet .sp-fields{display:flex;padding:2px 4px 8px;border-top:1px solid #edf0f4;background:#fafbfd}
html body #overlayRoot .sheet.sp-sheet .sp-field:not(#_){flex:1 1 0;min-width:0;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-end!important;gap:5px!important;margin:0!important;padding:8px 0 2px!important;font:600 11px/1.15 var(--mc-font)!important;color:#33445c!important;text-align:center!important;cursor:pointer}
html body #overlayRoot .sheet.sp-sheet .sp-field input[type=checkbox]:not(#_):not(#__){-webkit-appearance:none!important;appearance:none!important;flex:none!important;width:20px!important;height:20px!important;min-height:0!important;margin:0!important;padding:0!important;border:2px solid #9fb3cc!important;border-radius:5px!important;background:#fff!important;box-shadow:none!important;cursor:pointer}
html body #overlayRoot .sheet.sp-sheet .sp-field input[type=checkbox]:not(#_):not(#__):checked{border-color:var(--mc-blue,#3877c8)!important;background:var(--mc-blue,#3877c8) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 10.5l3.2 3L15 7'/%3E%3C/svg%3E") center/14px no-repeat!important}
html body #overlayRoot .sheet.sp-sheet .sp-field input[type=checkbox]:not(#_):not(#__):disabled{opacity:.55!important;cursor:default}
html body #overlayRoot .sheet.sp-sheet .sp-field input[type=checkbox]:not(#_):not(#__)::after{content:none!important;display:none!important}
html body #overlayRoot .sheet.sp-sheet .sp-change-note{margin:0;padding:2px 14px 4px;background:#fafbfd;font:400 12.5px/1.35 var(--mc-font);color:#68758a}
html body #overlayRoot .sheet.sp-sheet .sp-adv-link:not(#_){display:flex!important;align-items:center!important;gap:4px!important;width:100%!important;min-height:0!important;margin:0!important;padding:4px 14px 10px!important;border:0!important;border-radius:0!important;background:#fafbfd!important;box-shadow:none!important;color:var(--mc-blue,#3877c8)!important;font:600 13px/1.2 var(--mc-font)!important}
html body #overlayRoot .sheet.sp-sheet .sp-adv-link :is(img,svg){width:12px;height:12px}
html body #overlayRoot .sheet.sp-sheet .sp-advanced{border-top:1px solid #edf0f4;background:#fff}
html body #overlayRoot .sheet.sp-sheet .sp-advanced .sp-layout-body{max-height:none}
html body #overlayRoot .sheet.sp-sheet.setlist-preview-full:not(#_)>.sp-picker{display:none!important}
html body #overlayRoot .sheet.sp-sheet:not(.setlist-preview-full) .setlist-preview-actions:not(#_):not(#__){display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}
html body #overlayRoot .sheet.sp-sheet .setlist-preview-actions>[hidden]:not(#_){display:none!important}
html body #overlayRoot .sheet.sp-sheet .setlist-preview-actions:not(.sp-two-stage)>#setlistPreviewStage:not(#_){grid-column:span 2!important}
html body #overlayRoot .sheet.sp-sheet .setlist-preview-actions.sp-two-stage>:is(#setlistPreviewStage,#setlistPreviewStageMine):not(#_){grid-column:auto!important;white-space:normal!important;line-height:1.1!important;font-size:13.5px!important;padding:0 4px!important}
/* Edit Set List (Gary, Oct 24 mockup): timing side by side, Reorder Songs and Preview above the songs, the view's columns
   (# Song Singer Time Start), and Advanced (Song Layout) below the songs. */
html body .sheet.mc-editor-ios .mc-editor-timing{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 12px;border:1px solid #e3e9f1;border-radius:12px;overflow:hidden;background:#fff}
html body .sheet.mc-editor-ios .mc-editor-timing>.mc-timing-cell:not(#_):not(#__){display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;width:auto!important;min-height:52px!important;height:auto!important;margin:0!important;padding:7px 4px!important;border:0!important;border-left:1px solid #edf0f4!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;cursor:pointer;text-align:center}
html body .sheet.mc-editor-ios .mc-editor-timing>.mc-timing-cell:first-child:not(#_):not(#__){border-left:0!important}
html body .sheet.mc-editor-ios .mc-editor-timing small{font:600 10.5px/1.15 var(--mc-font);letter-spacing:.04em;color:#68758a;text-transform:uppercase}
html body .sheet.mc-editor-ios .mc-editor-timing .mc-set-value:not(#_):not(#__){display:block!important;margin:0!important;font:600 15px/1.2 var(--mc-font)!important;color:var(--mc-blue,#3877c8)!important;white-space:nowrap!important;overflow:visible!important}
html body .sheet.mc-editor-ios .mc-editor-mid:not(#_):not(#__){display:flex!important;gap:8px!important;margin:0 0 10px!important;padding:0!important}
html body .sheet.mc-editor-ios .mc-editor-mid>:is(.mc-editor-reorder-link,.mc-editor-preview-link):not(#_):not(#__){flex:1 1 0!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;min-height:42px!important;margin:0!important;padding:0 8px!important;border-radius:12px!important;font:600 15px/1.1 var(--mc-font)!important;box-shadow:none!important;cursor:pointer}
html body .sheet.mc-editor-ios .mc-editor-mid>.mc-editor-reorder-link:not(#_):not(#__){background:#eaf2fc!important;border:1px solid #bcd3f0!important;color:#2c66b0!important}
html body .sheet.mc-editor-ios .mc-editor-mid>.mc-editor-preview-link:not(#_):not(#__){background:#fff!important;border:1px solid #cbd7e7!important;color:#1e3557!important}
html body .sheet.mc-editor-ios .mc-editor-mid :is(img,svg){width:16px;height:16px}
html body .sheet.mc-editor-ios:has(#setlistRows) :is(.setlist-edit-columns,.setlist-edit-row):not(#_):not(#__){grid-template-columns:26px minmax(0,1fr) 48px 44px 48px 34px!important}
html body .sheet.mc-editor-ios:has(#setlistRows) .setlist-edit-columns>span:nth-child(4):not(#_),html body .sheet.mc-editor-ios:has(#setlistRows) .setlist-edit-columns>span:nth-child(5):not(#_){text-align:right!important}
html body .sheet.mc-editor-ios:has(#setlistRows) .setlist-edit-row .setlist-edit-duration:not(#_):not(#__){text-align:right!important;font-weight:600!important}
html body .sheet.mc-editor-ios:has(#setlistRows) .setlist-edit-row .setlist-estimated-start:not(#_):not(#__){display:block!important;text-align:right!important;font:400 12.5px/1.2 var(--mc-font)!important;color:#68758a!important;white-space:nowrap!important}
html body .sheet.mc-editor-ios .mc-editor-advanced{margin:12px 0 4px}
html body .sheet.mc-editor-ios:is([data-editor-page="timing"],[data-editor-page="stage"]) :is(.mc-editor-heading,.mc-editor-timing,.mc-editor-mid,.mc-editor-advanced):not(#_){display:none!important}
html body .sheet.mc-editor-ios .mc-editor-timing>.mc-timing-cell:not(#_):not(#__)::after,html body .sheet.mc-editor-ios .mc-editor-timing>.mc-timing-cell:not(#_):not(#__)::before{content:none!important;display:none!important}
/* Reorder Songs (Gary, Oct 24): the phone scrolls the list itself (smooth, with momentum); a row is picked up by holding it
   or by its handle, and while one is being dragged the list doesn't pan. */
html body #setlistReorderRows:not(#_){overflow-y:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y}
html body #setlistReorderRows .setlist-reorder-row:not(#_){touch-action:pan-y;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}
html body #setlistReorderRows .setlist-reorder-handle:not(#_),html body #setlistReorderRows.is-dragging:not(#_),html body #setlistReorderRows.is-dragging .setlist-reorder-row:not(#_){touch-action:none}
/* Stage View with an Edit Layout grid (Gary, Oct 25): each line has left / center / right boxes at its own size. */
html body .setlist-performance-row.slg:not(#_){display:block!important}
html body .setlist-performance-row.slg .slg-line{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);column-gap:10px;align-items:baseline;white-space:nowrap;line-height:1.2}
html body .setlist-performance-row.slg .slg-line.slg-no-center{grid-template-columns:minmax(0,1fr) auto}
html body .setlist-performance-row.slg .slg-zone{min-width:0;overflow:hidden;text-overflow:ellipsis}
html body .setlist-performance-row.slg .slg-z1{text-align:center}html body .setlist-performance-row.slg .slg-z2{text-align:right}
html body .setlist-performance-row.slg :is(.sl3-title,.sl3-short){font-weight:700}
/* Edit Layout (Gary, Oct 25 mockup): Header and Row sections; each line has Font on the left and three boxes (left, center,
   right); light-blue field tags; Unused fields below each section; drag or tap a field, then a box. */
html body #overlayRoot .sheet.ge-sheet:not(#_){background:#fff!important}
html body #overlayRoot .sheet.ge-sheet .setlist-navigation-head:not(#_):not(#__){position:relative!important;display:flex!important;align-items:center!important;gap:6px!important;height:auto!important;min-height:44px!important;margin:0 0 6px!important;padding:0 96px 0 0!important;background:transparent!important;border:0!important}
html body #overlayRoot .sheet.ge-sheet .setlist-navigation-head h2:not(#_){position:static!important;width:auto!important;height:auto!important;clip:auto!important;margin:0!important;font:800 22px/1.15 var(--mc-font)!important;color:#14325a!important}
html body #overlayRoot .sheet.ge-sheet .ge-preview:not(#_){position:absolute!important;right:46px!important;top:50%!important;transform:translateY(-50%)!important;min-height:30px!important;margin:0!important;padding:0 12px!important;border:1px solid #cbd7e7!important;border-radius:9px!important;background:#fff!important;box-shadow:none!important;color:#1e3557!important;font:700 12.5px/1 var(--mc-font)!important;letter-spacing:.04em;text-transform:uppercase}
html body .sheet.ge-sheet .ge-seg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;padding:3px;margin:0 0 8px;border-radius:12px;background:#E3E6EC}
html body .sheet.ge-sheet .ge-seg>button:not(#_){min-height:36px!important;margin:0!important;padding:0 2px!important;border:0!important;border-radius:10px!important;background:transparent!important;box-shadow:none!important;color:#1e3557!important;font:600 clamp(12px,3.5vw,14px)/1.1 var(--mc-font)!important;white-space:nowrap}
html body .sheet.ge-sheet .ge-seg>button.is-on:not(#_){background:var(--mc-blue,#3877c8)!important;color:#fff!important}
html body .sheet.ge-sheet .ge-hint{margin:0 2px 4px;font:400 13px/1.35 var(--mc-font);color:#53627a}
html body .sheet.ge-sheet .ge-msg{margin:0 2px 4px;font:600 13px/1.35 var(--mc-font);color:#b42318}html body .sheet.ge-sheet .ge-msg:empty{display:none}
html body .sheet.ge-sheet .ge-section{margin:10px 0 0;padding:8px;border:1px solid #e3e9f1;border-radius:14px;background:#fafbfd}
html body .sheet.ge-sheet .ge-section h4{margin:2px 2px 6px;font:700 12px/1.2 var(--mc-font);letter-spacing:.06em;color:#53627a;text-transform:uppercase}
html body .sheet.ge-sheet .ge-section h5{margin:10px 2px 4px;font:600 13px/1.2 var(--mc-font);color:#33445c}
html body .sheet.ge-sheet .ge-line{display:grid;grid-template-columns:46px repeat(3,minmax(0,1fr));gap:5px;margin:0 0 5px}
html body .sheet.ge-sheet .ge-font-col{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}
html body .sheet.ge-sheet .ge-font-col small{font:500 10.5px/1 var(--mc-font);color:#68758a}
html body .sheet.ge-sheet .ge-font:not(#_):not(#__){width:44px!important;min-height:28px!important;height:28px!important;margin:0!important;padding:0 2px!important;border:1px solid #cbd7e7!important;border-radius:7px!important;background:#fff!important;font:600 13px/1 var(--mc-font)!important;color:#1e3557!important;text-align:center}
html body .sheet.ge-sheet .ge-remove:not(#_){width:22px!important;height:20px!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;color:#8a94a3!important;font:600 12px/1 var(--mc-font)!important}
html body .sheet.ge-sheet .ge-zone{min-height:52px;display:flex;flex-direction:column;align-items:stretch;gap:4px;padding:5px;border:1px solid #d5deea;border-radius:9px;background:#fff}
html body .sheet.ge-sheet .ge-zone.ge-unused{min-height:40px;flex-direction:row;flex-wrap:wrap;background:#fff}
html body .sheet.ge-sheet.ge-picking .ge-zone,html body .sheet.ge-sheet.ge-dragging .ge-zone{border-style:dashed;border-color:#8fb1dc}
html body .sheet.ge-sheet .ge-zone.is-over{background:#eaf2fc;border-color:var(--mc-blue,#3877c8)}
html body .ge-chip:not(#_):not(#__){display:block!important;min-height:28px!important;margin:0!important;padding:4px 6px!important;border:1px solid #9fb8d8!important;border-radius:7px!important;background:#c9daf0!important;box-shadow:none!important;color:#14325a!important;font:600 12px/1.15 var(--mc-font)!important;text-align:center!important;touch-action:pan-y;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;cursor:grab;white-space:normal;overflow-wrap:anywhere}
html body .sheet.ge-sheet .ge-unused .ge-chip:not(#_):not(#__){flex:0 0 auto}
html body .ge-chip.is-picked:not(#_):not(#__){background:var(--mc-blue,#3877c8)!important;border-color:var(--mc-blue,#3877c8)!important;color:#fff!important}
html body .ge-chip.is-lifted:not(#_):not(#__){opacity:.35}
html body .ge-chip.ge-ghost:not(#_):not(#__){position:fixed!important;z-index:2147483000!important;pointer-events:none!important;width:auto!important;box-shadow:0 6px 16px rgba(0,0,0,.25)!important;cursor:grabbing}
html body .sheet.ge-sheet .ge-add:not(#_),html body .sheet.ge-sheet .ge-reset:not(#_){display:block!important;margin:4px auto 0!important;min-height:30px!important;padding:0 10px!important;border:0!important;background:transparent!important;box-shadow:none!important;color:var(--mc-blue,#3877c8)!important;font:600 13.5px/1 var(--mc-font)!important}
html body .sheet.ge-sheet .ge-reset:not(#_){margin:12px auto 18px!important}html body .sheet.ge-sheet .ge-reset:disabled{opacity:.4}
/* Stage View grid lines on a phone (Gary, Oct 25): the name side takes the room it needs; center follows it; right stays right. */
html body .setlist-performance-row.slg .slg-line:not(#_){display:flex!important;align-items:baseline;gap:12px}
html body .setlist-performance-row.slg .slg-z0:not(#_){flex:1 1 auto;min-width:0}
html body .setlist-performance-row.slg .slg-z1:not(#_){flex:0 1 auto;min-width:0;text-align:center}
html body .setlist-performance-row.slg .slg-z2:not(#_){flex:0 0 auto;margin-left:auto;text-align:right}
html body .setlist-performance-row.slg .slg-z1:not(#_):not(#__){flex:0 4 auto}
/* Preview/Edit Set List (Gary, Oct 25): My buttons read "My" over the layout name, * in the corner when changed, a
   "* changed" note under the row, and one Edit control (Edit Layout). */
html body #overlayRoot .sheet.sp-sheet .sp-mine>button:not(#_):not(#__){position:relative!important;gap:0!important;min-height:50px!important;border:1px solid #cbd7e7!important;background:#fff!important;color:#1e3557!important}
html body #overlayRoot .sheet.sp-sheet .sp-mine>button.is-on:not(#_):not(#__){border-color:var(--mc-blue,#3877c8)!important;background:var(--mc-blue,#3877c8)!important;color:#fff!important}
html body #overlayRoot .sheet.sp-sheet .sp-mine-my{font:500 12px/1.1 var(--mc-font);opacity:.8}
html body #overlayRoot .sheet.sp-sheet .sp-mine .sp-mine-name:not(#_){display:block;font:600 clamp(13px,3.7vw,15px)/1.15 var(--mc-font);white-space:nowrap}
html body #overlayRoot .sheet.sp-sheet .sp-star{position:absolute;top:2px;right:7px;font:800 17px/1 var(--mc-font);color:#e8912d}
html body #overlayRoot .sheet.sp-sheet .sp-mine>button.is-on .sp-star{color:#ffd27a}
html body #overlayRoot .sheet.sp-sheet .sp-mine-note{margin:5px 4px 0;font:500 12px/1.2 var(--mc-font);color:#68758a}
html body #overlayRoot .sheet.sp-sheet .sp-edit:not(#_):not(#__){display:flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;width:100%!important;min-height:44px!important;margin:12px 0 0!important;padding:0 12px!important;border:1px solid #cbd7e7!important;border-radius:12px!important;background:#fff!important;box-shadow:none!important;color:var(--mc-blue,#3877c8)!important;font:600 15px/1 var(--mc-font)!important}
html body #overlayRoot .sheet.sp-sheet .sp-edit :is(img,svg){width:17px;height:17px}
/* Pause (Gary, Oct 25): name (optional) and a − / + length in 5-second steps. */
html body .sheet:is(.setlist-pause-sheet,:has(#setlistBreakLength)) .setlist-pause-stepper{display:flex;align-items:center;gap:12px}
html body .sheet:is(.setlist-pause-sheet,:has(#setlistBreakLength)) .setlist-pause-stepper .btn:not(#_){width:48px!important;min-width:48px!important;height:44px!important;min-height:44px!important;padding:0!important;border-radius:12px!important;font:600 24px/1 var(--mc-font)!important}
html body .sheet :is(#setlistPauseLength,#setlistBreakLength){min-width:84px;text-align:center;font:700 20px/1 var(--mc-font);color:#14325a}
html body .sheet:is(.setlist-pause-sheet,:has(#setlistBreakLength)) .setlist-pause-help{display:block;margin-top:4px;font:400 12.5px/1.3 var(--mc-font);color:#68758a}
html body .sheet.setlist-sheet:has(#setlistRows) .setlist-edit-title.setlist-pause-title{color:#5b6577!important;font-style:italic}
/* Footer with three adds (Gary, Oct 25): Add Song | Add Break | Add Pause fit on a phone. */
html body .sheet.setlist-sheet:has(#setlistRows) .mc-setlist-footer .btn:not(#_):not(#__){gap:4px!important;padding:0 4px!important;font-size:clamp(13px,3.7vw,15px)!important;white-space:nowrap!important}
html body .sheet.setlist-sheet:has(#setlistRows) .mc-setlist-footer .btn:not(#_):not(#__) :is(img,svg){width:14px!important;height:14px!important;flex:none}
/* Show time (Gary, Oct 25): Pause and Break forms */
html body #overlayRoot .sheet .setlist-show-time{display:flex;align-items:center;gap:10px;margin:12px 0 4px;font:600 15px/1.2 var(--mc-font);color:#1f2a3d}
html body #overlayRoot .sheet .setlist-show-time input{width:22px;height:22px;margin:0;accent-color:#2f6fe4;flex:none}
/* Edit Layout (Gary, Oct 25): standard blue Preview; a larger X above Font removes a row or song line; a down arrow on the
   font box; the Breaks note under the song lines */
html body #overlayRoot .sheet.ge-sheet .ge-preview:not(#_):not(#__){border:0!important;background:var(--mc-blue,#3877c8)!important;color:#fff!important;font:600 14px/1 var(--mc-font)!important;letter-spacing:0;text-transform:none;min-height:34px!important;padding:0 16px!important}
html body .sheet.ge-sheet .ge-font-col{justify-content:flex-start;padding-top:2px}
html body .sheet.ge-sheet .ge-remove:not(#_):not(#__){display:flex!important;align-items:center;justify-content:center;width:28px!important;height:28px!important;margin:0 0 3px!important;border-radius:50%!important;background:#eef2f8!important;color:#4b5a70!important}
html body .sheet.ge-sheet .ge-remove :is(svg,img){width:16px;height:16px}
html body .sheet.ge-sheet .ge-font-wrap{position:relative;display:inline-flex;align-items:center}
html body .sheet.ge-sheet .ge-font:not(#_):not(#__){-webkit-appearance:none;appearance:none;padding:0 14px 0 4px!important;text-align:left}
html body .sheet.ge-sheet .ge-font-wrap :is(svg,img){position:absolute;right:4px;width:11px;height:11px;pointer-events:none;color:#4b5a70}
html body .sheet.ge-sheet .ge-note{margin:2px 2px 6px;font:400 12.5px/1.35 var(--mc-font);color:#68758a}
/* Stage View (Gary, Oct 25): pauses, and breaks with My Stage View's lines, are one centered line */
html body #overlayRoot .slg-center .slg-line{display:block!important;text-align:center!important}
html body #overlayRoot .slg-center .sl3-breakname{display:inline!important;text-align:center!important;font-weight:700}
html body #overlayRoot .sl3-pause .sl3-main{justify-content:center!important}
html body #overlayRoot .sl3-pause .sl3-main>.sl3-breakname{flex:0 1 auto!important;text-align:center!important;font-weight:700}
/* Break form (Gary, Oct 25): fields sit together at the top instead of spreading down the screen */
html body #overlayRoot .sheet .setlist-song-fields:has(#setlistBreakLength){align-content:start!important;grid-auto-rows:min-content!important;flex:0 0 auto!important}
html body #overlayRoot .sheet .setlist-song-fields:has(#setlistBreakLength) .setlist-show-time{margin:2px 0 4px}
/* Break/Pause rows (Gary, Oct 25) */
html body .sheet.ge-sheet .ge-break-head{margin:10px 2px 4px}
html body .sheet.ge-sheet .ge-line-break .ge-zone{background:#f6f3ea;border-style:dashed;min-height:44px}
/* Edit Layout: Start Time can also go on the Break/Pause row (Gary, Oct 25) */
html body .sheet.ge-sheet .ge-break-extra{min-height:0;flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 6px 51px;padding:5px 8px;border-style:dashed;background:#f6f3ea}
html body .sheet.ge-sheet .ge-extra-label{font:500 12px/1.2 var(--mc-font);color:#68758a}
/* Add Song (Gary, Oct 25 mockup): Song / Artist box, then Genres (Use Band Genre, Other Genres chips), then results with the
   Song Library first and Browse all */
html body #overlayRoot .sheet.sf-sheet .sf-head{display:block;margin:12px 16px 5px;font:400 13px/1.3 var(--mc-font);color:#6D6D72;text-transform:uppercase;letter-spacing:.02em}
html body #overlayRoot .sheet.sf-sheet:not(#_):not(#__):not(#___) input.sf-query{display:block!important;box-sizing:border-box!important;width:calc(100% - 32px)!important;margin:0 16px!important;height:44px!important;min-height:44px!important;padding:0 14px!important;border:1.5px solid #9bbcf0!important;border-radius:12px!important;background:#fff!important;box-shadow:none!important;font:400 16px/1.2 var(--mc-font)!important;color:var(--mc-ink,#14213d)!important}
html body #overlayRoot .sheet.sf-sheet .sf-genres{margin:0 16px;padding:10px 12px;border-radius:12px;background:#fff;display:flex;flex-direction:column;gap:8px}
html body #overlayRoot .sheet.sf-sheet .sf-useband{display:flex;align-items:center;gap:10px;font:400 15px/1.3 var(--mc-font);color:#14213d}
html body #overlayRoot .sheet.sf-sheet .sf-useband input{width:20px;height:20px;margin:0;accent-color:#2f6fe4;flex:none}
html body #overlayRoot .sheet.sf-sheet .sf-useband b{font-weight:700}
html body #overlayRoot .sheet.sf-sheet .sf-noband{margin:0;font:400 13px/1.35 var(--mc-font);color:#6D6D72}
html body #overlayRoot .sheet.sf-sheet .sf-chips{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
html body #overlayRoot .sheet.sf-sheet .sf-chip{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 4px 0 10px;border-radius:14px;background:#e6efff;color:#1f4fa8;font:600 13px/1 var(--mc-font)}
html body #overlayRoot .sheet.sf-sheet .sf-chip button{all:unset;cursor:pointer;width:20px;height:20px;display:grid;place-items:center;font:700 15px/1 var(--mc-font);color:#1f4fa8}
html body #overlayRoot .sheet.sf-sheet .sf-add-genre{all:unset;cursor:pointer;height:28px;padding:0 10px;border-radius:14px;border:1.5px solid #9bbcf0;color:#2f6fe4;font:600 13px/25px var(--mc-font)}
html body #overlayRoot .sheet.sf-sheet .sf-lib-head{display:flex;align-items:center;justify-content:space-between}
html body #overlayRoot .sheet.sf-sheet .sf-browse{all:unset;cursor:pointer;color:#2f6fe4;font:600 13px/1.3 var(--mc-font);text-transform:none;letter-spacing:0}
html body .anchored-choice-menu.share-options-menu.genre-choice-menu:not(#_):not(#__):not(#___) .menu-item.genre-sub{padding-left:34px!important;font-size:15px!important}
html body .genre-choice-menu .genre-menu-heading{padding:8px 14px 4px;font:600 12px/1.2 var(--mc-font,-apple-system,sans-serif);color:#6D6D72;text-transform:uppercase;letter-spacing:.02em}
/* Set List Start Time (Gary, Oct 25, BETA-7.6): one card row like the event's Time page — clock, Start Time on the left, the
   time (or Set Time) on the right; tapping the row opens the Select Time wheel. */
html body #overlayRoot .sheet .setlist-time-card:not(#_){overflow:hidden;margin:6px 0 0;border-radius:12px;background:#fff;box-shadow:0 0 0 1px #e3e8f0}
html body #overlayRoot .sheet .setlist-time-card .setlist-time-row:not(#_):not(#__){display:flex!important;align-items:center!important;gap:12px!important;min-height:48px!important;margin:0!important;padding:2px 16px!important;border:0!important;cursor:pointer}
html body #overlayRoot .sheet .setlist-time-card .setlist-time-ico{flex:none;display:inline-flex;color:#6D6D72}
html body #overlayRoot .sheet .setlist-time-card .setlist-time-row:not(#_):not(#__)>label{flex:1 1 auto!important;margin:0!important;font:400 16px/1.25 var(--mc-font)!important;color:#0c1831!important;white-space:nowrap!important;text-transform:none!important;letter-spacing:0!important;cursor:pointer}
html body #overlayRoot .sheet .setlist-time-card .setlist-time-row:not(#_):not(#__) .time-button{flex:none!important;width:auto!important;min-width:0!important;height:auto!important;min-height:0!important;margin:0!important;padding:6px 0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;font:400 16px/1.25 var(--mc-font)!important;color:#3c4a63!important;text-align:right!important;cursor:pointer}
html body #overlayRoot .sheet .setlist-time-foot{margin:7px 16px 12px;font:400 13px/1.35 var(--mc-font);color:#6D6D72}
/* Edit Set List columns (Gary, Oct 25, BETA-7.6): the Time heading reads Estimated Duration on two lines, and every heading
   lines up with its column: # and Singer centered, Song left (same inset as the titles), Estimated Duration and Start right.
   Header and rows reserve the same scrollbar gutter, so a desktop scrollbar on the rows no longer shifts them. */
html body .sheet.mc-editor-ios:has(#setlistRows) :is(.setlist-edit-columns,.setlist-edit-row):not(#_):not(#__):not(#___){grid-template-columns:26px minmax(0,1fr) 46px 52px 48px 34px!important}
html body .sheet.mc-editor-ios:has(#setlistRows) .setlist-edit-columns:not(#_):not(#__){overflow:hidden!important;scrollbar-gutter:stable!important;align-items:center!important}
html body .sheet.mc-editor-ios:has(#setlistRows) #setlistRows:not(#_){scrollbar-gutter:stable!important}
html body .sheet.mc-editor-ios:has(#setlistRows) .setlist-edit-columns>span:not(#_):not(#__){min-width:0!important}
html body .sheet.mc-editor-ios:has(#setlistRows) .setlist-edit-columns>span:nth-child(1):not(#_):not(#__),html body .sheet.mc-editor-ios:has(#setlistRows) .setlist-edit-row>.setlist-row-number:not(#_):not(#__){text-align:center!important;justify-self:stretch!important}
html body .sheet.mc-editor-ios:has(#setlistRows) .setlist-edit-columns>span:nth-child(3):not(#_):not(#__){text-align:center!important}
html body .sheet.mc-editor-ios:has(#setlistRows) .setlist-edit-row>.setlist-edit-singer:not(#_):not(#__){display:flex!important;justify-content:center!important;text-align:center!important}
html body .sheet.mc-editor-ios:has(#setlistRows) .setlist-edit-columns>span:is(:nth-child(4),:nth-child(5)):not(#_):not(#__){text-align:right!important}
html body .sheet.mc-editor-ios:has(#setlistRows) .setlist-edit-columns>.setlist-col-duration:not(#_):not(#__){white-space:normal!important;font-size:10.5px!important;line-height:1.1!important;padding:3px 0!important}
html body .sheet.mc-editor-ios:has(#setlistRows) .setlist-edit-columns>span:nth-child(2):not(#_):not(#__){padding-left:4px!important}
/* Edit Layout headings (Gary, Oct 25, BETA-7.6): Header, Song Row and Break/Pause Row share one style, in Title Case like the
   Unused … Fields labels (no all caps). */
html body .sheet.ge-sheet .ge-section h4:not(#_){margin:2px 2px 6px;font:700 14px/1.2 var(--mc-font);letter-spacing:0;color:#33445c;text-transform:none}
html body .sheet.ge-sheet .ge-section h4.ge-break-head:not(#_){margin-top:14px}
/* Add Song (Gary, Oct 25, BETA-7.7): "No songs found with this genre." reads as a plain sentence, not a heading or an error */
html body #overlayRoot .sheet.sf-sheet .sf-caption.sf-caption-note{text-transform:none;letter-spacing:0;font-size:15px;color:#3c4a63}
/* Set List view columns (Gary, Oct 25, BETA-7.9): like Edit Set List — "Estimated Duration" on two lines, each heading over its
   column: # and Singer centered, Song at the titles' inset, Estimated Duration and Start right; same scrollbar gutter. */
html body .sheet.setlist-sheet :is(.mc-view-head,.mc-view-row):not(#_):not(#__){grid-template-columns:24px minmax(0,1fr) 46px 52px 48px!important}
html body .sheet.setlist-sheet .mc-view-head>span:nth-child(1):not(#_),html body .sheet.setlist-sheet .mc-view-row>.mc-view-num:not(#_){text-align:center!important;justify-self:stretch!important}
html body .sheet.setlist-sheet .mc-view-head>span:nth-child(3):not(#_){text-align:center!important}
html body .sheet.setlist-sheet .mc-view-row>.mc-view-singer:not(#_){display:flex!important;justify-content:center!important}
html body .sheet.setlist-sheet .mc-view-head>span:is(:nth-child(4),:nth-child(5)):not(#_),html body .sheet.setlist-sheet .mc-view-row>:is(.mc-view-duration,.mc-view-start):not(#_){text-align:right!important;justify-self:stretch!important}
html body .sheet.setlist-sheet .mc-view-head>.mc-view-col-duration:not(#_){white-space:normal!important;font-size:10.5px!important;line-height:1.1!important;padding:3px 0!important}
/* Update All Songs from Library (Gary, Oct 25, BETA-7.9): a light full-width row under Reorder Songs and Preview/Edit */
html body .sheet.mc-editor-ios .mc-editor-update-link:not(#_){all:unset;box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:38px;margin:0 0 8px;border:1px solid #d5dde8;border-radius:10px;background:#fff;font:600 14.5px/1.2 var(--mc-font);color:#2f6fe4;cursor:pointer}
html body .sheet.mc-editor-ios .mc-editor-update-link img,html body .sheet.mc-editor-ios .mc-editor-update-link svg{width:17px;height:17px}
html body .sheet.mc-editor-ios:is([data-editor-page="timing"],[data-editor-page="stage"]) .mc-editor-update-link{display:none!important}
/* Stage View with a person's Edit Layout (Gary, Oct 25, BETA-7.10): nothing cut off with "…"; a long box pushes the others
   over and they wrap to the next line. */
html body .setlist-performance-row.slg .slg-line:not(#_):not(#__){flex-wrap:wrap!important;white-space:normal!important}
html body .setlist-performance-row.slg .slg-zone:not(#_):not(#__){overflow:visible!important;text-overflow:clip!important;white-space:normal!important;overflow-wrap:anywhere}
html body .setlist-performance-row.slg .slg-z0:not(#_):not(#__){flex:0 1 auto}
html body .setlist-performance-row.slg .slg-z1:not(#_):not(#__):not(#___){flex:1 1 auto}
html body .setlist-performance-row.slg .slg-z2:not(#_):not(#__){flex:0 1 auto;margin-left:auto}
/* Set list heading (Gary, Oct 25, BETA-7.10, mockup A): the band as a small label above; Edit Set List has a labeled
   Set List Name box (so it reads as editable, not as a venue); then the event, if any, and "22 songs · 2:00 hours (estimated)".
   The Set List view: band above the card, the card has the name and the event (or "Set list · not on an event"). */
html body .sheet .mc-band-label:not(#_){margin:2px 2px 6px;font:700 12px/1.2 var(--mc-font);letter-spacing:.06em;text-transform:uppercase;color:#53627a;text-align:left}
html body .sheet.mc-editor-ios .mc-editor-heading.mc-editor-name-block:not(#_):not(#__):not(#___){display:block!important;margin:0 0 10px!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important;text-align:left!important}
html body .sheet.mc-editor-ios .mc-editor-name-block .mc-name-label:not(#_){display:block;margin:0 2px 5px;font:600 13px/1.2 var(--mc-font);color:#33445c}
html body .sheet.mc-editor-ios:has(#setlistRows) .mc-editor-name-block #setlistName:not(#_):not(#__):not(#___){box-sizing:border-box!important;height:44px!important;min-height:44px!important;padding:0 12px!important;border:1px solid #c9d6ea!important;border-radius:10px!important;background:#fff!important;font:500 17px/1.2 var(--mc-font)!important;color:#0c1831!important;text-align:left!important}
html body .sheet.mc-editor-ios .mc-editor-name-block .mc-editor-event:not(#_){margin:6px 2px 0;font:400 14px/1.3 var(--mc-font);color:#33445c;text-align:left}
html body .sheet.mc-editor-ios:has(#setlistRows) .mc-editor-name-block .setlist-editor-summary:not(#_):not(#__):not(#___){margin:6px 2px 0!important;text-align:left!important}
html body .sheet.mc-editor-ios:has(#setlistRows) .mc-editor-name-block #setlistCountSummary:not(#_):not(#__):not(#___){font:400 14px/1.3 var(--mc-font)!important;color:#5a6679!important}
html body .sheet .setlist-view-controls>.mc-band-label:not(#_){margin:8px 4px 6px}
html body .sheet p.mc-set-summary:not(#_){margin:6px 0 10px;text-align:center;font:400 14px/1.3 var(--mc-font);color:#5a6679}
/* Copy a Set List: a heading per other band (Gary, Oct 25, BETA-7.10) */
html body #overlayRoot .setlist-copy-band{margin:14px 4px 6px;font:700 12px/1.2 var(--mc-font);letter-spacing:.06em;text-transform:uppercase;color:#53627a}
/* Stage View (Gary, Oct 25, BETA-7.11): a blank pause or break is a blank row as tall as a song row */
/* Edit Layout Row Space (Gary, Oct 25, BETA-7.11): under the Font column, same size as Font, its label wrapped and centered
   like Font's; + Add Song Line stays centered under the boxes on the same line. */
html body .sheet.ge-sheet .ge-add-row{display:grid;grid-template-columns:46px minmax(0,1fr);gap:5px;align-items:end;margin:2px 0 4px}
html body .sheet.ge-sheet .ge-add-row .ge-space-col small{text-align:center;line-height:1.1}
html body .sheet.ge-sheet .ge-add-row .ge-add:not(#_){margin:0!important;justify-self:center;text-align:center;min-height:28px!important;height:28px!important;padding-top:0!important;padding-bottom:0!important;display:flex!important;align-items:center}
/* Edit Layout Page Margin (Gary, Oct 25, BETA-7.12) */
.ge-page-row{display:flex;align-items:center;gap:10px;margin:0 2px 8px}
.ge-margin:not(#_):not(#__){width:62px!important}
.ge-page-note{font:400 12px/1.3 var(--mc-font);color:#68758a}
/* Edit Layout: Bold per row (Gary, Oct 26, BETA-7.13): a small check beside the word, under the Font size */
html body .sheet.ge-sheet .ge-bold:not(#_){display:flex;flex-direction:row;align-items:center;justify-content:center;gap:3px;margin-top:5px;font:800 10.5px/1 var(--mc-font,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif);color:#374151;cursor:pointer;white-space:nowrap}
/* Gary, Oct 27 (BETA-7.21): Bold uses the app's standard checkbox (rounded square, gray border; blue with a white check when on) */
html body .sheet.ge-sheet .ge-bold:not(#_) input[type=checkbox]{-webkit-appearance:none!important;appearance:none!important;flex:none!important;width:20px!important;height:20px!important;min-width:0!important;min-height:0!important;margin:0!important;padding:0!important;border:2px solid #9fb3cc!important;border-radius:6px!important;background:#fff center/14px no-repeat!important;cursor:pointer!important}
html body .sheet.ge-sheet .ge-bold:not(#_) input[type=checkbox]:checked{border-color:var(--mc-blue,#3877c8)!important;background-color:var(--mc-blue,#3877c8)!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 10.5l4 4 8-9'/%3E%3C/svg%3E")!important}
html body .sheet.ge-sheet .ge-bold:not(#_){gap:5px}
/* Edit Layout row strip (Gary, Oct 26, BETA-7.13, idea 1): each row's Font, Bold and Remove sit on one thin line above its
   three boxes, so the boxes use the full width; Row Space reads on one line with its dropdown. */
html body .sheet.ge-sheet .ge-line:not(#_){grid-template-columns:repeat(3,minmax(0,1fr));row-gap:4px;margin:0 0 9px}
html body .sheet.ge-sheet .ge-line>.ge-font-col:not(#_){grid-column:1/-1;flex-direction:row;align-items:center;justify-content:flex-start;gap:8px;padding:0 2px!important}
html body .sheet.ge-sheet .ge-line>.ge-font-col>small{font:600 12px/1 var(--mc-font)!important;color:#6b7280}
html body .sheet.ge-sheet .ge-line>.ge-font-col .ge-bold:not(#_){margin:0 0 0 2px;font-size:12px}
html body .sheet.ge-sheet .ge-line>.ge-font-col>.ge-remove:not(#_):not(#__){order:9;margin:0 0 0 auto!important;width:auto!important;height:28px!important;padding:0 2px!important;border-radius:6px!important;background:transparent!important;color:#c0392b!important;font:600 12.5px/1 var(--mc-font)!important}
html body .sheet.ge-sheet .ge-add-row:not(#_){display:flex;align-items:center;gap:8px;margin:2px 2px 6px}
html body .sheet.ge-sheet .ge-add-row .ge-space-col:not(#_){flex-direction:row;align-items:center;gap:8px}
html body .sheet.ge-sheet .ge-add-row .ge-space-col small{font:600 12.5px/1 var(--mc-font)!important;color:#374151;white-space:nowrap}
html body .sheet.ge-sheet .ge-add-row .ge-add:not(#_){margin-left:auto!important;justify-self:auto}
/* Margin reads on one line like Row Space, and its dropdown is wide enough for 0.25" (BETA-7.13) */
html body .sheet.ge-sheet .ge-page-row .ge-margin-col:not(#_){flex-direction:row;align-items:center;gap:8px}
html body .sheet.ge-sheet .ge-page-row .ge-margin-col small{font:600 12.5px/1 var(--mc-font)!important;color:#374151}
html body .sheet.ge-sheet select.ge-font.ge-margin:not(#_):not(#__){width:64px!important}
/* Save & Next (Gary, Oct 26, BETA-7.14): while importing, the circle is a blue round button; one tap saves that song and goes on */
html body #overlayRoot .sheet.sf-sheet .sf-dot.sf-go:not(#_):not(#__){display:grid;place-items:center;background:transparent!important}
html body #overlayRoot .sheet.sf-sheet .sf-dot.sf-go:not(#_):not(#__)::before{content:"";position:absolute;width:34px;height:34px;border-radius:50%;background:#2f6fd6;box-shadow:0 1px 2px rgba(0,0,0,.2)}
html body #overlayRoot .sheet.sf-sheet .sf-dot.sf-go{position:relative}
html body #overlayRoot .sheet.sf-sheet .sf-dot.sf-go svg{position:relative;z-index:1;width:23px;height:23px}
html body #overlayRoot .sheet.sf-sheet .sf-dot.sf-go:active::before{background:#2558ad}
html body #overlayRoot .sheet.sf-sheet .sf-go-hint{margin:2px 4px 8px;font:400 13px/1.35 var(--mc-font,system-ui);color:#4b5563}
html body #overlayRoot .sheet.sf-sheet .sf-go-mini{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#2f6fd6;vertical-align:-5px}
html body #overlayRoot .sheet.sf-sheet .sf-go-mini svg{width:15px;height:15px}
/* Edit Layout saved status (BETA-7.14): Saving… / Saved / Not saved, beside Preview */
html body .sheet.ge-sheet .ge-saved:not(#_){align-self:center!important;font:600 14px/1 var(--mc-font,system-ui);white-space:nowrap;margin-right:6px!important}
html body .sheet.ge-sheet .ge-saved.is-saved{color:#1f9d4c}
html body .sheet.ge-sheet .ge-saved.is-saving{color:#6b7280}
html body .sheet.ge-sheet .ge-saved.is-error{color:#c0392b}
/* Room for Saved beside Preview: the title stays on one line */
html body #overlayRoot .sheet.ge-sheet>.sheet-head h2:not(#_):not(#__):not(#___){white-space:nowrap!important}
html body #overlayRoot .sheet.ge-sheet .ge-preview:not(#_):not(#__):not(#___){padding:0 11px!important;font-size:13.5px!important}
html body #overlayRoot .sheet.ge-sheet .ge-saved:not(#_):not(#__){font-size:13px;margin-right:2px!important}
html body #overlayRoot .sheet.ge-sheet .ge-saved:not(#_):not(#__):not(#___){display:inline-flex!important;align-items:center;height:34px;min-height:34px!important}
/* Import Set List / Import Songs (Gary, Oct 26, BETA-7.15): the choices sit in a bordered box like Create Set List's, so they
   read as controls on a white screen too */
html body #overlayRoot .sheet.sp-sheet>.sp-card:not(#_){border:1px solid #d5dce6;box-shadow:0 1px 0 rgba(20,50,90,.04)}
/* Pages (BETA-7.18): the pages of a set list photo import, in order, with + Add Page */
.slp-pages{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:12px;margin:6px 0 10px}
.slp-page{position:relative;margin:0;background:#fff;border:1px solid #d5dce6;border-radius:10px;padding:6px;box-shadow:0 1px 4px rgba(20,50,90,.08)}
.slp-page img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:6px;background:#eef2f7}
.slp-page figcaption{text-align:center;font:500 13px/1.3 var(--mc-font,system-ui);color:#4b5563;margin-top:5px}
.slp-remove{position:absolute;top:-8px;right:-8px;width:26px;height:26px;border-radius:50%;border:0;background:#1f2937;color:#fff;font:600 17px/26px system-ui;padding:0;cursor:pointer}
.slp-add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:150px;border:2px dashed #9db4d3;border-radius:10px;color:#2f6fbd;font:600 14px/1.2 var(--mc-font,system-ui);cursor:pointer;background:#f6f9fd}
.slp-add span{font:300 34px/1 system-ui}
/* View only note on any sheet (Set Lists, BETA-7.18), same look as the Song Library's */
html body #overlayRoot .sheet .mc-viewonly-note{flex:none;display:flex;flex-direction:row;align-items:center;gap:12px;margin:0 0 12px;padding:10px 14px;background:#fff;border:.5px solid #D1D1D6;border-radius:16px}
html body #overlayRoot .sheet .mc-viewonly-note .mc-lib-tile{flex:none;width:29px;height:29px;border-radius:7px;display:grid;place-items:center;background:#8E8E93}
html body #overlayRoot .sheet .mc-viewonly-note .mc-lib-label{display:flex;flex-direction:column;gap:2px;flex:1 1 auto;min-width:0}
html body #overlayRoot .sheet .mc-viewonly-note b{font:600 16px var(--ios-font,-apple-system,system-ui,sans-serif);color:#000}
html body #overlayRoot .sheet .mc-viewonly-note small{font:400 13px/1.3 var(--ios-font,-apple-system,system-ui,sans-serif);color:#6D6D72}
html body #overlayRoot .sheet.mc-lists-viewonly .setlist-select-all[hidden],html body #overlayRoot .sheet.mc-lists-viewonly .setlist-collection-actions[hidden]{display:none!important}
html body #overlayRoot .sheet.mc-lists-viewonly [data-collection-select]{display:none!important}
html body #overlayRoot .sheet.mc-lists-viewonly .setlist-collection-row{grid-template-columns:minmax(0,1fr)!important}
/* Preview/Edit Set List buttons (Gary, Oct 27, BETA-7.18): [Share][   Edit   ] / [Print][PDF][Save Image] / [Stage View].
   Share is the one blue button; Stage View looks like Stage View (black); Edit matches the others (no pencil). */
html body #overlayRoot .sheet.sp-sheet:not(.setlist-preview-full) .setlist-preview-actions:not(#_):not(#__):not(#___){grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:8px!important;padding:10px 16px max(12px,env(safe-area-inset-bottom,0px))!important}
html body #overlayRoot .sheet.sp-sheet .setlist-preview-actions>.btn:not(#_):not(#__):not(#___){grid-column:span 2!important;min-height:44px!important;margin:0!important;padding:0 6px!important;border-radius:12px!important;font:600 15px/1.1 var(--mc-font)!important;white-space:nowrap!important}
/* Save Image is made "primary" by the app-wide Save rule, so style everything but Share and Stage View here */
html body #overlayRoot .sheet.sp-sheet .setlist-preview-actions>.btn:not(#setlistShare):not(#setlistPreviewStage):not(#_):not(#__){border:1px solid #cbd7e7!important;background:#fff!important;box-shadow:none!important;color:#1e3557!important}
html body #overlayRoot .sheet.sp-sheet .setlist-preview-actions>#setlistEditLayout:not(#_):not(#__):not(#___){grid-column:span 4!important}
html body #overlayRoot .sheet.sp-sheet .setlist-preview-actions>#setlistPreviewStage:not(#_):not(#__):not(#___){grid-column:1/-1!important;border:1px solid #000!important;background:#000!important;color:#fff!important}
html body #overlayRoot .sheet.sp-sheet .setlist-preview-actions>.btn:disabled:not(#_):not(#__):not(#___){opacity:.5!important}
/* Default layouts: three separate buttons the same width as the My buttons (same grid and gap). */
html body #overlayRoot .sheet.sp-sheet .sp-seg:not(#_){gap:6px;padding:0;border-radius:0;background:transparent}
html body #overlayRoot .sheet.sp-sheet .sp-seg>button:not(#_):not(#__){min-height:44px!important;border-radius:12px!important;background:#E3E6EC!important}
html body #overlayRoot .sheet.sp-sheet .sp-seg>button.is-on:not(#_):not(#__){background:var(--mc-blue,#3877c8)!important;color:#fff!important}
/* "* changed" sits next to MY LAYOUTS, with the same orange * as the buttons. */
html body #overlayRoot .sheet.sp-sheet .sp-sec-row h4 .sp-mine-note:not(#_){margin:0 0 0 8px;font:500 12px/1.2 var(--mc-font);letter-spacing:0;text-transform:none;color:#68758a}
html body #overlayRoot .sheet.sp-sheet .sp-star-inline{font:800 14px/1 var(--mc-font);color:#e8912d}
/* The preview takes whatever height is left on the device. */
html body #overlayRoot .sheet.sp-sheet:not(.setlist-preview-full):not(#_):not(#__) .sp-preview{flex:1 1 0;min-height:160px}
html body #overlayRoot .sheet.sp-sheet .sp-picker:not(#_){padding-bottom:4px}

/* Set Lists (Gary, Oct 27, BETA-7.19): the Archive / Copy / Delete / Create New bar stays at the bottom of the screen,
   above the iPhone home indicator, even when the list scrolls. */
html body #overlayRoot .sheet.setlist-sheet .setlist-collection-actions:not(#_){position:sticky!important;bottom:calc(-10px - env(safe-area-inset-bottom,0px))!important;z-index:3!important;margin:12px -14px calc(-10px - env(safe-area-inset-bottom,0px))!important;padding:10px 14px calc(10px + env(safe-area-inset-bottom,0px))!important;background:#fff!important}
/* Full screens (Gary, Oct 27, BETA-7.19): the top bar (back, title, Main, X) and the bottom buttons always stay on screen;
   only what's between them scrolls. */
html body #overlayRoot>.overlay>.sheet.setlist-sheet:not(.setlist-bottom-sheet):not(.setlist-screen):not(.sp-sheet):not(.sf-sheet)>.setlist-navigation-head:first-child:not(#_):not(#__){position:sticky!important;top:calc(-10px - env(safe-area-inset-top,0px))!important;z-index:6!important;flex:none!important;margin-top:calc(-10px - env(safe-area-inset-top,0px))!important;padding-top:calc(10px + env(safe-area-inset-top,0px))!important;background:inherit!important}
html body #overlayRoot>.overlay>.sheet.setlist-sheet:not(.setlist-bottom-sheet):not(.setlist-screen):not(.sp-sheet):not(.sf-sheet)>.setlist-actions:last-child:not([hidden]):not(#_):not(#__){position:sticky!important;bottom:calc(-10px - env(safe-area-inset-bottom,0px))!important;z-index:5!important;flex:none!important;margin-bottom:calc(-10px - env(safe-area-inset-bottom,0px))!important;padding-bottom:calc(10px + env(safe-area-inset-bottom,0px))!important;background:inherit!important}
/* Edit Song (Gary, Oct 27, BETA-7.19): Find is a magnifying glass on the right of the song name, the same height as the
   name box; the album cover's top lines up with the Artist box (both lined up in code). */
html body .sheet.mc-song-form .mc-song-info .mc-song-side>.mc-song-find-icon:not(#_):not(#__):not(#___):not(#____){flex:none!important;align-self:flex-start!important;justify-content:center!important;width:48px!important;min-width:48px!important;min-height:40px!important;height:48px;margin:0!important;padding:0!important;border:0!important;border-radius:10px!important;background:#1F6FD1!important;color:#fff!important}
html body .sheet.mc-song-form .mc-song-info .mc-song-side>.mc-song-find-icon:not(#_):not(#__):not(#___):not(#____)>span{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}
html body .sheet.mc-song-form .mc-song-info .mc-song-side>.mc-song-find-icon:not(#_) :is(img,svg){width:22px!important;height:22px!important;filter:brightness(0) invert(1)}
html body .sheet.mc-song-form .mc-song-info .mc-song-side:has(>.mc-song-find-icon):not(#_){padding-top:0!important}
/* Full screens built like the main screen (Gary, Oct 27, BETA-7.19): top bar and bottom buttons fixed, the middle scrolls. */
html body #overlayRoot .sheet.setlist-sheet.fs-pinned:not(#_):not(#__):not(#___){display:flex!important;flex-direction:column!important;overflow:hidden!important}
html body #overlayRoot .sheet.setlist-sheet.fs-pinned>:not(.fs-scroll):not(#_):not(#__){flex:none!important}
html body #overlayRoot .sheet.setlist-sheet.fs-pinned>.fs-scroll:not(#_){flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
html body #overlayRoot .sheet.setlist-sheet.fs-pinned>.fs-scroll>.setlist-add{align-self:flex-end;margin:7px 0 2px;min-width:44px;min-height:44px}
/* Edit Song top box (Gary, Oct 27, BETA-7.19 mockup): search box on top; cover on the left with a play button for the
   preview and Play in iTunes under it; a song found in iTunes is shown (not edited); a song typed in says so. */
html body .sheet.mc-song-form .mc-song-findbar:not(#_){display:flex;align-items:center;gap:8px;height:42px;margin:0 0 10px;padding:0 12px;border:1px solid #c9d3e1;border-radius:12px;background:#fff;box-sizing:border-box}
html body .sheet.mc-song-form[data-song-view="find"] .mc-song-findbar{display:none!important}
html body .sheet.mc-song-form .mc-song-findbar :is(svg,img){flex:none;width:19px;height:19px;opacity:.65;cursor:pointer}
html body .sheet.mc-song-form .mc-song-findbar input:not(#_):not(#__){flex:1 1 auto;min-width:0;height:100%!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;outline:0;background:transparent!important;box-shadow:none!important;font:400 16px var(--mc-font)!important;color:#0c1831}
html body .sheet.mc-song-form .mc-song-info #setlistSongFind:not(#_):not(#__):not(#___):not(#____),html body .sheet.mc-song-form .mc-song-info #setlistSongItunesNote:not(#_):not(#__):not(#___):not(#____){display:none!important}
html body .sheet.mc-song-form .mc-song-info .mc-song-info-grid:not(#_):not(#__){grid-template-columns:112px minmax(0,1fr)!important;gap:14px!important}
html body .sheet.mc-song-form .mc-song-info .mc-song-side:not(#_):not(#__){order:-1;padding-top:0!important;gap:8px!important}
html body .sheet.mc-song-form .mc-song-info .mc-song-cover:not(#_):not(#__){position:relative;width:112px!important;height:112px!important;margin:0!important;border-radius:12px!important}
html body .sheet.mc-song-form .mc-song-info.is-typed .mc-song-cover:not(#_):not(#__){margin-top:22px!important}
html body .sheet.mc-song-form .mc-song-cover-play:not(#_):not(#__){position:absolute!important;right:7px;bottom:7px;display:grid!important;place-items:center;width:34px!important;height:34px!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;border-radius:50%!important;background:rgba(255,255,255,.95)!important;box-shadow:0 1px 5px rgba(0,0,0,.3)!important;cursor:pointer}
html body .sheet.mc-song-form .mc-song-cover-play[hidden]:not(#_):not(#__){display:none!important}
html body .sheet.mc-song-form .mc-song-cover-play i{display:block;width:0;height:0;margin-left:3px;border-left:12px solid #1F6FD1;border-top:8px solid transparent;border-bottom:8px solid transparent}
html body .sheet.mc-song-form .mc-song-info .mc-song-side .mc-song-itunes:not(#_):not(#__){margin:0!important}
html body .sheet.mc-song-form .mc-song-info .mc-song-side #setlistSongOpenItunes:not(#_):not(#__):not(#___):not(#____){justify-content:center!important;width:112px!important;min-height:34px!important;height:34px!important;padding:0 6px!important;border-radius:8px!important;font:600 12.5px/1 var(--mc-font)!important;white-space:nowrap!important}
html body .sheet.mc-song-form .mc-song-info.is-found .mc-song-info-fields:not(#_),html body .sheet.mc-song-form .mc-song-info.is-found .mc-song-album:not(#_){display:none!important}
html body .sheet.mc-song-form .mc-song-found[hidden]{display:none!important}
html body .sheet.mc-song-form .mc-song-found{min-width:0;padding-top:2px}
html body .sheet.mc-song-form .mc-song-found-title{font:700 18px/1.2 var(--mc-font);color:#0c1831;overflow-wrap:anywhere}
html body .sheet.mc-song-form .mc-song-found-artist{margin-top:3px;font:500 15px/1.3 var(--mc-font);color:#245fae}
html body .sheet.mc-song-form .mc-song-found-album{margin-top:6px;font:600 13.5px/1.35 var(--mc-font);color:#0c1831}
html body .sheet.mc-song-form .mc-song-found-album[hidden]{display:none}
html body .sheet.mc-song-form .mc-song-found-length{margin-top:4px;font:400 13.5px/1.35 var(--mc-font);color:#5b6678}
html body .sheet.mc-song-form .mc-song-found-from{margin-top:8px;font:500 11.5px var(--mc-font);color:#8a94a6}
html body .sheet.mc-song-form .mc-song-manual-note:not(#_){margin:0 0 10px!important;padding:7px 10px!important;border-radius:10px;background:#FFF6E5;font:400 12.5px/1.35 var(--mc-font)!important;color:#8a5a00!important}
html body .sheet.mc-song-form .mc-song-manual-note[hidden]{display:none!important}
/* View / Edit Set List (Gary, Oct 27, BETA-7.19, mockup B): Reorder, Preview/Edit and Update the same size in one row,
   icon over the label; Update opens a menu. Songs that differ from the Song Library get an orange dot and a line above the table. */
html body .sheet.mc-editor-ios .mc-editor-mid.mc-editor-tools:not(#_):not(#__){display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;align-items:stretch!important}
html body .sheet.mc-editor-ios .mc-editor-tools>:is(.mc-editor-reorder-link,.mc-editor-preview-link,.mc-editor-update-menu):not(#_):not(#__):not(#___){flex-direction:column!important;gap:4px!important;min-height:58px!important;padding:6px 4px!important;border-radius:12px!important;font:600 13px/1.1 var(--mc-font)!important;text-align:center}
html body .sheet.mc-editor-ios .mc-editor-tools>.mc-editor-update-menu:not(#_):not(#__){display:flex!important;align-items:center!important;justify-content:center!important;margin:0!important;background:#fff!important;border:1px solid #cbd7e7!important;color:#1e3557!important;box-shadow:none!important;cursor:pointer}
html body .sheet.mc-editor-ios .mc-editor-tools>* :is(img,svg){width:20px!important;height:20px!important}
html body .sheet.mc-editor-ios .mc-editor-tools>:is(.mc-editor-preview-link,.mc-editor-update-menu) :is(img,svg){filter:brightness(0) saturate(100%) invert(16%) sepia(23%) saturate(1470%) hue-rotate(185deg) brightness(92%)}
html body .sheet.mc-editor-ios :is(#setlistUpdateLibraryLink,#setlistAddFromPhoto)[hidden]:not(#_):not(#__):not(#___){display:none!important}
html body .sheet.setlist-sheet .setlist-library-diffs{display:flex;align-items:center;gap:7px;margin:2px 2px 7px;font:500 13px/1.3 var(--mc-font);color:#8a5a00}
html body .sheet.setlist-sheet .setlist-diff-dot{flex:none;display:inline-block;width:8px;height:8px;border-radius:50%;background:#e8912d}
html body .sheet.setlist-sheet .setlist-differs .setlist-num-text::after{content:"";display:inline-block;width:7px;height:7px;margin:0 -10px 0 3px/* right of the number, taking no room (Gary, Oct 27, BETA-7.21) */;border-radius:50%;background:#e8912d;vertical-align:middle;position:relative;top:-1px}
html body .sheet.setlist-sheet .setlist-diff-update:not(#_){margin-left:auto;padding:4px 0;min-height:0;border:0;background:transparent;box-shadow:none;font:600 13.5px var(--mc-font);color:var(--mc-blue,#3877c8);cursor:pointer}
/* the ••• menu: a normal-size menu; Delete last, in red */
html body .setlist-row-menu .menu-item:not(#_){display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;min-height:46px!important;padding:8px 16px!important;font:400 16px/1.2 var(--mc-font)!important;color:#0c1831!important}
html body .setlist-row-menu .menu-item.danger:not(#_){color:#C4291C!important}
html body .setlist-row-menu .setlist-row-menu-note{margin-top:3px;font:400 12.5px/1.3 var(--mc-font);color:#8a5a00;white-space:normal}
html body .setlist-row-menu .menu-item>span{white-space:normal;text-align:left}
html body .setlist-row-menu:not(#_){width:260px!important;max-width:calc(100vw - 20px)!important}
/* Edit Song fields (Gary, Oct 27, BETA-7.19): singer as one box (chip, typed name, arrow inside); Key list; Tempo − / +. */
html body .sheet.mc-song-form .mc-singer-picker.mc-singer-box:not(#_):not(#__){display:flex!important;align-items:center!important;gap:6px!important;flex:1 1 auto;min-width:0;max-width:230px;height:40px;margin-left:auto;padding:0 4px 0 6px;border:1px solid #c9d3e1;border-radius:10px;background:#fff;box-sizing:border-box}
html body .sheet.mc-song-form .mc-singer-box #setlistSongSinger:not(#_):not(#__):not(#___){flex:1 1 auto;min-width:0;width:auto!important;height:100%!important;min-height:0!important;margin:0!important;padding:0 2px!important;border:0!important;background:transparent!important;box-shadow:none!important;text-align:left!important;font:400 16px var(--mc-font)!important}
html body .sheet.mc-song-form .mc-singer-box .mc-singer-pick:not(#_):not(#__){position:relative;flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:8px;background:#eaf2fc}
html body .sheet.mc-song-form .mc-singer-box .mc-singer-pick :is(img,svg){width:16px;height:16px}
html body .sheet.mc-song-form select.mc-key-select:not(#_):not(#__):not(#___){-webkit-appearance:none;appearance:none;width:auto!important;min-width:110px;height:40px!important;margin-left:auto!important;padding:0 30px 0 12px!important;border:1px solid #c9d3e1!important;border-radius:10px!important;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%233877c8' stroke-width='2'%3E%3Cpath d='M5 8l5 5 5-5'/%3E%3C/svg%3E") no-repeat right 9px center/14px!important;font:400 16px var(--mc-font)!important;color:#0c1831!important;text-align:left}
html body .sheet.mc-song-form .mc-bpm-stepper:not(#_){display:flex;align-items:center;gap:6px;margin-left:auto}
html body .sheet.mc-song-form .mc-bpm-stepper #setlistSongBpm:not(#_):not(#__):not(#___){width:70px!important;min-width:0!important;height:40px!important;margin:0!important;padding:0 6px!important;text-align:center!important;border:1px solid #c9d3e1!important;border-radius:10px!important;font:400 16px var(--mc-font)!important;-moz-appearance:textfield}
html body .sheet.mc-song-form .mc-bpm-stepper #setlistSongBpm::-webkit-inner-spin-button,html body .sheet.mc-song-form .mc-bpm-stepper #setlistSongBpm::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
html body .sheet.mc-song-form .mc-bpm-step:not(#_):not(#__){display:grid!important;place-items:center;width:40px!important;min-width:40px!important;height:40px!important;min-height:0!important;margin:0!important;padding:0!important;border:1px solid #b9d0ee!important;border-radius:10px!important;background:#eaf2fc!important;color:#245fae!important;font:600 22px/1 var(--mc-font)!important;box-shadow:none!important}
/* Gary, Oct 27 (BETA-7.20): Add / Edit Break and Pause — options grouped by where they apply, with a sample line */
html body #overlayRoot .sheet .setlist-output-options{margin:6px 0 0}
html body #overlayRoot .sheet .setlist-output-options .ios-section-title{margin:18px 4px 6px;padding:0;font:600 12px/1.2 var(--mc-font)!important;letter-spacing:.05em;text-transform:uppercase;color:#6b7280!important}
html body #overlayRoot .sheet .setlist-output-options .ya-card{background:#fff;border:1px solid #e3e6ec;border-radius:14px;overflow:hidden;padding:0}
html body #overlayRoot .sheet .setlist-output-sample{padding:10px 14px 12px;background:#f8fafc;border-bottom:.5px solid #e3e6ec}
html body #overlayRoot .sheet .setlist-output-sample>small{display:block;margin:0 0 6px;font:400 12px/1.2 var(--mc-font);color:#6b7280}
html body #overlayRoot .sheet .setlist-output-line{min-height:20px;padding:8px 10px;border:1px dashed #c9d2df;border-radius:8px;background:#fff;font:700 15px/1.3 var(--mc-font);color:#0c1831;white-space:pre-wrap}
html body #overlayRoot .sheet .setlist-output-line.is-empty{font-weight:400;font-style:italic;color:#8a93a3}
html body #overlayRoot .sheet .setlist-switch-row{margin:0!important;border-top:.5px solid #e3e6ec!important;border-radius:0!important;background:#fff!important}
html body #overlayRoot .sheet .ya-card>.setlist-switch-row:first-child,html body #overlayRoot .sheet .setlist-output-sample+.setlist-switch-row{border-top:0!important}
html body #overlayRoot .sheet .setlist-switch-row>span strong{font:600 15px/1.25 var(--mc-font)!important;color:#0c1831!important}
html body #overlayRoot .sheet .setlist-switch-row>span small{font:400 12.5px/1.3 var(--mc-font)!important;color:#6b7280!important}
html body #overlayRoot .sheet .setlist-optional{font-weight:400;color:#6b7280}
/* the Break / Pause switches look like the app's other settings switches */
html body #overlayRoot .sheet:not(#_):not(#__) .setlist-switch-row input[type=checkbox]{-webkit-appearance:none!important;appearance:none!important;position:relative!important;flex:none!important;width:51px!important;height:31px!important;min-width:51px!important;margin:0!important;padding:0!important;border:0!important;border-radius:16px!important;background:#E9E9EA!important;background-image:none!important;box-shadow:none!important;transition:background .2s ease;cursor:pointer;accent-color:auto}
html body #overlayRoot .sheet:not(#_):not(#__) .setlist-switch-row input[type=checkbox]::before{content:""!important;display:block!important;position:absolute!important;top:2px!important;left:2px!important;width:27px!important;height:27px!important;border-radius:50%!important;background:#fff!important;box-shadow:0 3px 8px rgba(0,0,0,.15),0 1px 1px rgba(0,0,0,.16)!important;transition:transform .2s ease!important;transform:none}
html body #overlayRoot .sheet:not(#_):not(#__) .setlist-switch-row input[type=checkbox]::after{content:none!important;display:none!important}
html body #overlayRoot .sheet:not(#_):not(#__) .setlist-switch-row input[type=checkbox]:checked{background:#34C759!important;background-image:none!important}
html body #overlayRoot .sheet:not(#_):not(#__) .setlist-switch-row input[type=checkbox]:checked::before{transform:translateX(20px)!important}
html body #overlayRoot .sheet:not(#_):not(#__) .setlist-switch-row{padding:10px 14px!important;min-height:56px!important}
/* Update Set List: a little room above the first choice (Gary, Oct 27, BETA-7.20) */
html body #overlayRoot .sheet.sp-sheet .sp-card.sp-card-first{margin-top:18px!important}
/* Edit Song: "In Set List: name" is plain gray text, no box or icon (Gary, Oct 27, BETA-7.20) */
html body .sheet.mc-song-form .mc-song-context:not(#_){display:block;margin:0 2px 8px;padding:0;border:0;border-radius:0;background:none;font:400 13.5px/1.3 var(--mc-font);color:#6b7280}
html body .sheet.mc-song-form .mc-song-context:not(#_) b{color:#4b5563;font-weight:600}
/* Edit Song: light gray help under each row's name (Gary, Oct 27, BETA-7.20) */
html body .sheet.mc-song-form label.has-help{display:flex!important;flex-direction:column;align-items:flex-start;gap:1px;min-width:0}
html body .sheet.mc-song-form label.has-help .mc-row-help{display:block;font:400 12px/1.25 var(--mc-font)!important;color:#8a93a3!important;white-space:normal;text-transform:none;letter-spacing:0}
/* the cover's play button while the 30-second preview plays (stop square) or loads (Gary, Oct 27, BETA-7.20) */
html body .sheet .mc-song-cover-play.is-playing i{width:12px;height:12px;margin:0;border:0;border-radius:2px;background:#1F6FD1}
html body .sheet .mc-song-cover-play.is-loading i{width:16px;height:16px;margin:0;border:2.5px solid #cfdcf2;border-top-color:#1F6FD1;border-radius:50%;background:none;animation:ya-busy-turn .8s linear infinite}
/* Stage View center sub-columns (Gary, Oct 27, BETA-7.20): equal columns, one per center field; Duration right-justified */
html body .setlist-performance-row.slg .slg-line.slg-cols:not(#_):not(#__):not(#___){display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))/* always three equal columns (Gary, Oct 27) */;column-gap:12px;align-items:baseline;flex-wrap:nowrap!important;white-space:nowrap!important}
html body .setlist-performance-row.slg .slg-cols>.slg-z0:not(#_):not(#__):not(#___){text-align:left;white-space:normal!important;overflow-wrap:anywhere}
html body .setlist-performance-row.slg .slg-cols>.slg-sub:not(#_):not(#__):not(#___){display:grid!important;grid-template-columns:repeat(var(--slg-n,1),minmax(0,1fr));column-gap:4px;align-items:baseline;text-align:left!important;flex:none!important;margin:0}
html body .setlist-performance-row.slg .slg-sub>.slg-c:not(#_){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;grid-row:1}
html body .setlist-performance-row.slg .slg-cols>.slg-z2:not(#_):not(#__):not(#___){text-align:right;margin-left:0!important}
html body .setlist-performance-row.slg .slg-sub>.slg-c.slg-spill:not(#_){overflow:visible;text-overflow:clip}
/* Edit Layout (Gary, Oct 27, BETA-7.20): Reset to default at the right of the Margin row; Unused Row Fields docked at the bottom */
html body .sheet.ge-sheet .ge-page-row .ge-reset:not(#_):not(#__){display:inline-block!important;margin:0 0 0 auto!important;flex:none;white-space:nowrap}
html body .sheet.ge-sheet .ge-page-row .ge-page-note{flex:1 1 auto;min-width:0}
html body .sheet.ge-sheet .ge-unused-dock{position:sticky;bottom:0;z-index:5;margin:10px -2px 0;padding:8px 12px calc(10px + env(safe-area-inset-bottom,0px));background:rgba(248,250,252,.97);border-top:1px solid #dbe3ee;box-shadow:0 -6px 14px rgba(15,30,60,.08);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
html body .sheet.ge-sheet .ge-unused-dock h5{margin:0 0 6px}
html body .sheet.ge-sheet .ge-unused-dock .ge-unused{max-height:30vh;overflow:auto}
/* Set Lists: which band(s) it is for, and the copied set lists line (Gary, Oct 27, BETA-7.20) */
html body .sheet .setlist-collection-bands{margin:-4px 2px 10px;font:600 14px/1.3 var(--mc-font);color:#4b5563}
html body .sheet .setlist-clip{display:flex;align-items:center;gap:10px;margin:6px 2px;padding:8px 12px;border-radius:10px;background:#eef4fd;font:400 13.5px/1.3 var(--mc-font);color:#1f2a3d}
html body .sheet .setlist-clip[hidden]{display:none}
html body .sheet .setlist-clip>span{flex:1 1 auto;min-width:0}
html body .sheet .setlist-clip small{color:#6b7280}
html body .sheet .setlist-clip button{flex:none;border:0;background:none;padding:4px 2px;font:600 13.5px/1 var(--mc-font);color:#2f6fd6;cursor:pointer}
/* Remove Set List (Gary, Oct 27, BETA-7.20) */
html body .sheet .setlist-action-row.setlist-action-danger b{color:#c62828}
/* the footer button text kept whole: descenders (the g in Add Song) were clipped (Gary, Oct 27, BETA-7.21) */
html body .sheet.setlist-sheet:has(#setlistRows) :is(.mc-setlist-footer,.mc-setlist-actions) .btn span:not(#_){line-height:1.35!important;padding:1px 0!important}
/* Where you are (Gary, Oct 27, BETA-7.21): a line under the title, e.g. Kruez (set) ‹ Guero's (event) */
html body .sheet .sl-crumb{margin:-4px 0 8px 36px;padding:0;font:500 13.5px/1.3 var(--mc-font);color:#4b5563;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html body .sheet .sl-crumb small{font-size:12px;color:#8a93a3;font-weight:400}
html body .sheet .sl-crumb .sl-crumb-sep{margin:0 3px;color:#9aa3b2}
html body .sheet .mc-editor-name-block .mc-editor-event{display:none}
/* Edit Layout: Undo Changes, back to how this layout was when Edit opened (Gary, Oct 27, BETA-7.21) */
html body .sheet.ge-sheet .ge-undo-row{display:flex;justify-content:flex-end;margin:-2px 0 2px}
html body .sheet.ge-sheet .ge-undo:not(#_){border:0;background:none;padding:4px 2px;font:600 14px/1.2 var(--mc-font);color:#2f6fd6;cursor:pointer}
html body .sheet.ge-sheet .ge-undo:disabled{opacity:.4;cursor:default}

/* Gary, Oct 27 (BETA-7.21): Stage View previews as white letters on black, like Stage View itself (printing is unchanged) */
html body .sheet .setlist-export-preview.sp-stage-dark:not(#_) .print-page{background:#000!important;color:#fff!important}
html body .sheet .setlist-export-preview.sp-stage-dark:not(#_) .print-page *{color:#fff!important;border-color:#444!important}

/* Stage View with left tabs (Gary, Oct 27, BETA-7.22): each box starts at its tab and ends in "…" before the next one */
html body .setlist-performance-row.slg .slg-line.slg-tabs:not(#_):not(#__):not(#___):not(#____){display:block!important;position:relative;white-space:nowrap!important;overflow:hidden}
html body .setlist-performance-row.slg .slg-tabs>.slg-tab:not(#_):not(#__):not(#___):not(#____){position:absolute;top:0;display:block;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;text-align:left!important;margin:0!important}
html body .setlist-performance-row.slg .slg-tabs.slg-bold *:not(#_){font-weight:700}
/* Edit Layout with left tabs (Gary, Oct 27, BETA-7.22): a ruler and the tab list for each section; each line has one box per tab */
html body .sheet.ge-sheet .ge-line>.ge-tabboxes:not(#_){grid-column:1/-1;display:grid;grid-template-columns:repeat(auto-fill,minmax(74px,1fr));gap:5px}
html body .sheet.ge-sheet .ge-tabbox:not(#_){position:relative;padding-top:17px;min-height:56px}
html body .sheet.ge-sheet .ge-tab-at{position:absolute;top:3px;left:7px;font:700 10.5px/1 var(--mc-font,-apple-system,sans-serif);color:#7a8aa0;pointer-events:none}
html body .sheet.ge-sheet .ge-tabs{margin:2px 0 10px;padding:8px 8px 6px;border:1px solid #d5deea;border-radius:10px;background:#f7f9fc}
html body .sheet.ge-sheet .ge-ruler{position:relative;height:22px;margin:0 6px 8px;border-bottom:1.5px solid #9fb3cc}
html body .sheet.ge-sheet .ge-ruler-inch{position:absolute;bottom:0;width:0;height:7px;border-left:1.5px solid #9fb3cc}
html body .sheet.ge-sheet .ge-ruler-inch i{position:absolute;bottom:8px;left:-4px;font:600 10px/1 var(--mc-font,-apple-system,sans-serif);font-style:normal;color:#7a8aa0}
html body .sheet.ge-sheet .ge-ruler-tab{position:absolute;bottom:-1px;width:0;height:0;margin-left:-6px;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:9px solid var(--mc-blue,#3877c8)}
html body .sheet.ge-sheet .ge-tab-list{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
html body .sheet.ge-sheet .ge-tabs-label{font:700 12px/1 var(--mc-font,-apple-system,sans-serif);color:#6b7280;margin-right:2px}
html body .sheet.ge-sheet .ge-tab{display:inline-flex;align-items:center;height:30px;border:1px solid #c6d4e6;border-radius:8px;background:#fff;overflow:hidden}
html body .sheet.ge-sheet .ge-tab.ge-tab-first{padding:0 10px;font:600 14px/1 var(--mc-font,-apple-system,sans-serif);color:#6b7280}
html body .sheet.ge-sheet .ge-tab-move:not(#_){height:30px;padding:0 6px 0 10px;border:0;background:transparent;font:700 14px/1 var(--mc-font,-apple-system,sans-serif);color:var(--mc-blue,#3877c8);min-width:0;min-height:0}
html body .sheet.ge-sheet .ge-tab-x:not(#_){width:26px;height:30px;padding:0;border:0;border-left:1px solid #e3e9f2;background:transparent;font:600 17px/1 var(--mc-font,-apple-system,sans-serif);color:#c0392b;min-width:0;min-height:0}
html body .sheet.ge-sheet .ge-tab-add:not(#_){height:30px;padding:0 10px;border:1px dashed #8fb1dc;border-radius:8px;background:#fff;font:700 13px/1 var(--mc-font,-apple-system,sans-serif);color:var(--mc-blue,#3877c8);min-width:0;min-height:0}
/* Gary, Oct 27 (BETA-7.22): every full set list screen has the light gray background (like Members); pop-ups stay white */
html body #overlayRoot .sheet.setlist-sheet:not(.setlist-bottom-sheet):not(#_):not(#__):not(#___){background:var(--ios-fill,#f2f2f7)!important}
html body #overlayRoot .sheet.setlist-sheet:not(.setlist-bottom-sheet):not(#_):not(#__) .mc-setlist-footer{background:var(--ios-fill,#f2f2f7)!important}
/* Where-you-are line (Gary, Oct 27, BETA-7.22): the same size and place on every screen, just under the title and starting where the title starts */
html body #overlayRoot .sheet .setlist-navigation-head:has(>.sl-crumb):not(#_):not(#__){position:relative!important}
html body #overlayRoot .sheet .setlist-navigation-head>.sl-crumb:not(#_):not(#__){position:absolute!important;left:44px;top:100%;z-index:1;flex:none!important;margin:0!important;padding:0!important;font:600 15px/1.3 var(--mc-font,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif)!important;color:#4b5563!important}
html body #overlayRoot .sheet .sl-crumb small:not(#_){font-size:13px;font-weight:400;color:#8a93a3}
/* Copy a Set List (Gary, Oct 27, BETA-7.22): the app's standard check box on each row instead of an arrow */
html body #overlayRoot .sheet .setlist-recent-row.setlist-copy-pick:not(#_){display:flex!important;align-items:center!important;gap:12px!important;text-align:left}
html body #overlayRoot .sheet .setlist-recent-row.setlist-copy-pick>span:last-child{flex:1 1 auto;min-width:0}
html body #overlayRoot .sheet .setlist-copy-check{flex:none;width:24px;height:24px;box-sizing:border-box;border:2px solid #9fb3cc;border-radius:7px;background:#fff center/16px no-repeat}
html body #overlayRoot .sheet .setlist-copy-check.is-on{border-color:var(--mc-blue,#3877c8);background-color:var(--mc-blue,#3877c8);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 10.5l4 4 8-9'/%3E%3C/svg%3E")}
html body .setlist-performance-row.slg .slg-line.slg-tabs::before{content:"\200b"}
/* Edit Layout top (Gary, Oct 28, BETA-7.24): less space; Margin and Reset to Default first (standard outlined button), then one
   line of help with Undo Changes. */
html body .sheet.ge-sheet .ge-body>.ge-page-row:first-child{margin:-6px 2px 6px!important}
html body .sheet.ge-sheet .ge-page-row .ge-reset:not(#_):not(#__):not(#___){display:inline-flex!important;align-items:center!important;gap:6px!important;margin:0 0 0 auto!important;height:38px!important;min-height:38px!important;padding:0 12px!important;border:1px solid var(--mc-line,#cbd7e7)!important;border-radius:var(--mc-radius-md,12px)!important;background:#fff!important;color:var(--mc-ink,#0c1831)!important;font:600 15px/1 var(--mc-font,-apple-system,sans-serif)!important;white-space:nowrap}
html body .sheet.ge-sheet .ge-page-row .ge-reset:disabled{opacity:.45}
html body .sheet.ge-sheet .ge-undo-row:not(#_){display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;margin:0 2px 6px!important}
html body .sheet.ge-sheet .ge-undo-row .ge-hint:not(#_){flex:1 1 auto;min-width:0;margin:0!important;font:400 14px/1.3 var(--mc-font,-apple-system,sans-serif)!important;color:#5f6672}
html body .sheet.ge-sheet .ge-undo-row .ge-undo{flex:none;white-space:nowrap}
/* Tabs ruler (Gary, Oct 28, BETA-7.24, his sketch): handles on the ruler with their values; + at the right. */
html body .sheet.ge-sheet .ge-tabs:not(#_){padding:6px 8px 8px!important;background:#fff!important;border:1px solid var(--mc-line,#cbd7e7)!important;border-radius:var(--mc-radius-md,12px)!important}
html body .sheet.ge-sheet .ge-ruler-wrap{display:flex;align-items:flex-start;gap:6px}
html body .sheet.ge-sheet .ge-ruler2{position:relative;flex:1 1 auto;min-width:0;height:78px;margin:0 8px 0 6px}
html body .sheet.ge-sheet .ge-ruler-scale{position:absolute;left:0;right:0;bottom:6px;height:2px;background:var(--mc-blue,#3877c8)}
html body .sheet.ge-sheet .ge-ruler-scale .ge-ruler-inch{position:absolute;top:0;width:0;height:7px;border-left:1.5px solid var(--mc-blue,#3877c8)}
html body .sheet.ge-sheet .ge-ruler-scale .ge-ruler-inch i{position:absolute;bottom:6px;left:-5px;font:500 15px/1 var(--mc-font,-apple-system,sans-serif);font-style:normal;color:var(--mc-ink,#0c1831)}
html body .sheet.ge-sheet .ge-tab-h{position:absolute;top:0;width:26px;height:56px;margin:0 0 0 -13px;padding:0;border:0;background:transparent;display:flex;flex-direction:column;align-items:center;cursor:pointer;-webkit-tap-highlight-color:transparent;z-index:1}
html body .sheet.ge-sheet .ge-tab-h .ge-tab-v{height:15px;margin-top:12px;font:600 12.5px/15px var(--mc-font,-apple-system,sans-serif);color:var(--mc-blue,#3877c8);white-space:nowrap}
html body .sheet.ge-sheet .ge-tab-h.ge-tab-up .ge-tab-v{margin-top:-2px;margin-bottom:14px}
html body .sheet.ge-sheet .ge-tab-bar{position:relative;display:block;width:12px;height:26px;margin-top:2px;border:2px solid #6b7280;border-radius:4px;background:#fff}
html body .sheet.ge-sheet .ge-tab-bar:after{content:"";position:absolute;left:50%;top:-5px;bottom:-5px;width:2px;margin-left:-1px;background:#6b7280}
html body .sheet.ge-sheet .ge-tab-h:active .ge-tab-bar,html body .sheet.ge-sheet .ge-tab-h:focus-visible .ge-tab-bar{border-color:var(--mc-blue,#3877c8)}
html body .sheet.ge-sheet .ge-tab-add:not(#_):not(#__){flex:none;width:36px;height:36px;min-height:36px;margin:8px 0 0!important;padding:0!important;border:1.5px dashed #9fbbe3!important;border-radius:10px!important;background:#fff!important;color:var(--mc-blue,#3877c8)!important;font:500 24px/1 var(--mc-font,-apple-system,sans-serif)!important;display:grid!important;place-items:center!important}
html body .sheet.ge-sheet .ge-tab-add-space{flex:none;width:36px}
/* The drag popup: Min (the tab before) on the left, Max (the tab after, or the right edge) on the right; snaps to 0.1". */
html body .ge-tabpop-back{position:fixed;inset:0;z-index:2147483000;background:rgba(12,24,49,.35);display:flex;align-items:center;justify-content:center;padding:16px}
html body .ge-tabpop{width:min(100%,380px);background:#fff;border-radius:18px;box-shadow:0 12px 40px rgba(0,0,0,.25);padding:14px 16px 16px}
html body .ge-tabpop-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}
html body .ge-tabpop-x{width:32px;height:32px;padding:0;border:0;background:transparent}html body .ge-tabpop-x img{width:28px;height:28px}
html body .ge-tabpop-track{position:relative;height:96px;margin:4px 0 10px;padding:0 18px;border:1px solid var(--mc-blue,#3877c8);border-radius:14px;touch-action:none;cursor:pointer}
html body .ge-tabpop-rail{position:absolute;left:24px;right:24px;top:58px;height:2px;background:#0c1831}
html body .ge-tabpop-lim{position:absolute;top:66px;font:600 14px/1 var(--mc-font,-apple-system,sans-serif);color:var(--mc-blue,#3877c8)}
html body .ge-tabpop-lim.ge-lo{left:18px}html body .ge-tabpop-lim.ge-hi{right:18px}
html body .ge-tabpop-knob{position:absolute;top:-48px;width:44px;height:70px;margin-left:-22px;padding:0;border:0;background:transparent;display:flex;flex-direction:column;align-items:center;touch-action:none;cursor:grab}
html body .ge-tabpop-knob .ge-tabpop-v{font:700 15px/18px var(--mc-font,-apple-system,sans-serif);color:var(--mc-blue,#3877c8)}
html body .ge-tabpop-knob .ge-tab-bar{width:18px;height:38px;margin-top:4px;border-color:#4b5563;border-radius:6px}
html body .ge-tabpop-knob .ge-tab-bar:after{background:#4b5563}
html body .ge-tabpop-knob:focus-visible{outline:2px solid var(--mc-blue,#3877c8);outline-offset:2px;border-radius:8px}
/* Move Tab popup (Gary, Oct 28, BETA-7.24): Del at the upper left (small, solid red), X (keeps the move) at the right; light
   gray arrows on each side of the tab. */
html body .ge-tabpop-remove:not(#_){height:30px;min-height:30px;padding:0 12px;border:0;border-radius:8px;background:var(--ios-red,#D92D20);color:#fff;font:700 14px/1 var(--mc-font,-apple-system,sans-serif);cursor:pointer}
html body .ge-tabpop-remove:not(#_):active{filter:brightness(.9)}
html body .ge-tabpop-track:not(#_){margin:4px 0 0}
html body .ge-tabpop-arw{position:absolute;top:-17px;height:2px;background:#c4c9d2;pointer-events:none}
html body .ge-tabpop-arw[hidden]{display:none}
html body .ge-tabpop-arw.ge-arw-l{left:0}html body .ge-tabpop-arw.ge-arw-r{right:0}
html body .ge-tabpop-arw:before{content:"";position:absolute;top:-5px;width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent}
html body .ge-tabpop-arw.ge-arw-l:before{left:-2px;border-right:9px solid #c4c9d2}
html body .ge-tabpop-arw.ge-arw-r:before{right:-2px;border-left:9px solid #c4c9d2}
/* Edit Song: the whole album cover plays the preview (Gary, Oct 28, BETA-7.25) */
html body .sheet.mc-song-form .mc-song-cover.is-playable{cursor:pointer;-webkit-tap-highlight-color:transparent}
html body .sheet.mc-song-form .mc-song-cover.is-playable:active{filter:brightness(.92)}
/* Tabs ruler, take 2 (Gary, Oct 28, BETA-7.27): the whole 8.5" page edge to edge, margin marks, + at the upper left, tabs
   dragged right on the ruler (tap, tap again or hold, drag). */
html body .sheet.ge-sheet .ge-tabs:not(#_):not(#__){padding:6px 4px 8px!important}
html body .sheet.ge-sheet .ge-ruler-top{display:flex;align-items:center;gap:10px;min-height:34px;margin:0 2px 2px}
html body .sheet.ge-sheet .ge-ruler-top .ge-tab-add:not(#_):not(#__){width:32px!important;height:32px!important;min-height:32px!important;margin:0!important;font-size:22px!important}
html body .sheet.ge-sheet .ge-tab-info{display:inline-flex;align-items:center;gap:8px;min-width:0;font:500 13px/1.2 var(--mc-font,-apple-system,sans-serif);color:#5f6672}
html body .sheet.ge-sheet .ge-tab-info[hidden]{display:none}
html body .sheet.ge-sheet .ge-tab-del{height:26px;padding:0 10px;border:0;border-radius:7px;background:var(--ios-red,#D92D20);color:#fff;font:700 13px/1 var(--mc-font,-apple-system,sans-serif);cursor:pointer}
html body .sheet.ge-sheet .ge-ruler2:not(#_){position:relative;height:72px;margin:0 3px!important;flex:none}
html body .sheet.ge-sheet .ge-ruler-scale:not(#_){left:0;right:0;bottom:6px}
html body .sheet.ge-sheet .ge-ruler-scale .ge-ruler-inch.ge-first i{left:0}
html body .sheet.ge-sheet .ge-ruler-scale .ge-ruler-inch.ge-last i{left:auto;right:0}
html body .sheet.ge-sheet .ge-margin-zone{position:absolute;bottom:-6px;height:6px;background:#e3e8f0}
html body .sheet.ge-sheet .ge-margin-mark{position:absolute;bottom:-9px;width:0;height:0;margin-left:-5px;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:7px solid #8a94a6}
html body .sheet.ge-sheet .ge-tab-h{touch-action:none;-webkit-user-select:none;user-select:none}
html body .sheet.ge-sheet .ge-tab-h.is-picked .ge-tab-bar{border-color:var(--mc-blue,#3877c8)}
html body .sheet.ge-sheet .ge-tab-h.is-active .ge-tab-bar{border-color:var(--mc-blue,#3877c8);background:#dbe8f8;box-shadow:0 0 0 3px rgba(56,119,200,.22)}
html body .sheet.ge-sheet .ge-tab-h.is-active .ge-tab-v{font-weight:800}
html body .sheet.ge-sheet .ge-tab-h.is-active::before,html body .sheet.ge-sheet .ge-tab-h.is-active::after{position:absolute;bottom:12px;font:700 11px/1 var(--mc-font,-apple-system,sans-serif);color:#9aa3b2;pointer-events:none}
html body .sheet.ge-sheet .ge-tab-h.is-active::before{content:"◀";right:calc(100% - 2px)}
html body .sheet.ge-sheet .ge-tab-h.is-active::after{content:"▶";left:calc(100% - 2px)}
/* View-only song details (Gary, Oct 28, BETA-7.27): everything shows; fields that change the song are greyed out but readable */
html body .sheet.mc-song-readonly input:disabled:not(#____):not(#_____):not(#______),html body .sheet.mc-song-readonly textarea:disabled:not(#____):not(#_____):not(#______),html body .sheet.mc-song-readonly select:disabled:not(.mc-singer-select):not(#____):not(#_____):not(#______),html body .sheet.mc-song-readonly .mc-singer-box:not(#____):not(#_____):not(#______){background-color:#F2F2F7!important;color:#3a4459!important;-webkit-text-fill-color:#3a4459!important;opacity:1!important;cursor:default!important}
html body .sheet.mc-song-readonly button:disabled:not(#setlistSongDone):not(#_____){opacity:.45!important;cursor:default!important}
html body .sheet.mc-song-readonly .mc-song-findbar,html body .sheet.mc-song-readonly .mc-readonly-details>summary{opacity:.5!important;pointer-events:none!important}
html body .sheet.mc-song-readonly .mc-viewonly-note{margin:4px 0 10px!important}
html body .sheet.mc-song-readonly .setlist-actions #setlistSongDone:not(#_____){grid-column:1/-1!important;flex:1 1 100%!important;width:100%!important;max-width:none!important}
html body .sheet .setlist-view-song[data-view-song]{cursor:pointer}
/* Add Song / Find a song (Gary, Oct 28, BETA-7.28): less space above Song / Artist; headings, the search box, the help line and
   "Enter song details yourself" start at the same left edge as the Genres card and the buttons */
html body #overlayRoot .sheet.sf-sheet .sf-body:not(#_):not(#__){padding-top:2px}
html body #overlayRoot .sheet.sf-sheet .sf-body>.sf-head:first-child:not(#_):not(#__){margin-top:4px}
html body #overlayRoot .sheet.sf-sheet .sf-head:not(#_):not(#__),html body #overlayRoot .sheet.sf-sheet .sf-caption:not(#_):not(#__),html body #overlayRoot .sheet.sf-sheet .sf-hint:not(#_):not(#__){margin-left:2px;margin-right:0}
html body #overlayRoot .sheet.sf-sheet:not(#_):not(#__):not(#___):not(#____) input.sf-query{width:100%!important;margin:0!important}
html body #overlayRoot .sheet.sf-sheet .sf-link#setlistSongManual:not(#_):not(#__):not(#___){align-self:flex-start;margin:10px 0 0}
/* Edit Break (Gary, Oct 28, BETA-7.28): a small grey line under Name */
html body .sheet .setlist-break-name-hint{display:block;margin:5px 2px 0;font:400 13px/1.35 var(--mc-font);color:#6D6D72}
/* Stage View preview (Gary, Oct 28, BETA-7.28): a break row of its own (e.g. after a pause) kept the light print band, so its
   white text vanished on the black page; on the black page the band is dark grey */
html body .sheet .setlist-export-preview.sp-stage-dark:not(#_):not(#__) .print-page .print-break-entry:not(.print-break-plain){background:#262626!important}
/* Update Library (Gary, Oct 28, BETA-7.29): while it works the button shows a spinner and "Updating 5 of 22…" */
html body .sheet .setlist-diff-update.is-working:not(#_){display:inline-flex;align-items:center;gap:6px;opacity:1!important;cursor:default}
html body .sheet .setlist-diff-update.is-working .spinner{width:14px;height:14px;border-width:2px;margin:0;flex:none}
/* Set list rows (Gary, Oct 29): #, Song, Key, BPM, Singer, Estimated Duration, Start, •••. The song name gives up the room;
   the singer is the letter or name as written, plain text (no pill). */
html body .sheet:has(#setlistRows) :is(.setlist-edit-columns,.setlist-edit-row):not(#_):not(#__):not(#___):not(#____){grid-template-columns:24px minmax(0,1fr) 30px 34px 22px 44px 38px 30px!important;column-gap:3px!important}
html body .sheet:has(#setlistRows) .setlist-edit-columns>span:is(:nth-child(3),:nth-child(4),:nth-child(5)):not(#_):not(#__):not(#___){text-align:center!important}
html body .sheet:has(#setlistRows) .setlist-edit-columns>span:is(:nth-child(6),:nth-child(7)):not(#_):not(#__):not(#___){text-align:right!important}
html body .sheet:has(#setlistRows) .setlist-edit-columns>span:nth-child(6):not(#_):not(#__):not(#___){white-space:normal!important;font-size:10.5px!important;line-height:1.1!important}
html body .sheet:has(#setlistRows) .setlist-edit-row>:is(.setlist-edit-key,.setlist-edit-bpm,.setlist-edit-singer):not(#_):not(#__):not(#___){display:block!important;min-width:0!important;text-align:center!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font:400 14px/1.2 var(--mc-font,-apple-system,sans-serif)!important;color:#33445c!important}
html body .sheet:has(#setlistRows) .setlist-edit-row>.setlist-edit-title:not(#_):not(#__):not(#___){min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
html body .sheet.setlist-sheet :is(.mc-view-head,.mc-view-row):not(#_):not(#__):not(#___){grid-template-columns:24px minmax(0,1fr) 30px 34px 22px 44px 38px!important;column-gap:3px!important}
html body .sheet.setlist-sheet .mc-view-head>span:is(:nth-child(3),:nth-child(4),:nth-child(5)):not(#_):not(#__){text-align:center!important}
html body .sheet.setlist-sheet .mc-view-head>span:is(:nth-child(6),:nth-child(7)):not(#_):not(#__){text-align:right!important;justify-self:stretch!important}
html body .sheet.setlist-sheet .mc-view-head>span:nth-child(6):not(#_):not(#__){white-space:normal!important;font-size:10.5px!important;line-height:1.1!important}
html body .sheet.setlist-sheet .mc-view-row>:is(.mc-view-key,.mc-view-bpm,.mc-view-singer):not(#_):not(#__){display:block!important;min-width:0!important;text-align:center!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font:400 14px/1.2 var(--mc-font,-apple-system,sans-serif)!important;color:#33445c!important}
/* breaks and pauses: the label runs across Song, Key, BPM and Singer */
html body .sheet:has(#setlistRows) .setlist-edit-row.setlist-break>:is(.setlist-edit-key,.setlist-edit-bpm,.setlist-edit-singer):not(#_):not(#__):not(#___){display:none!important}
html body .sheet:has(#setlistRows) .setlist-edit-row.setlist-break>.setlist-edit-title:not(#_):not(#__):not(#___){grid-column:2/6!important}
/* Find Songs (Gary, Oct 29, mockup finder-mockup.png) */
html body .sheet.fnd-sheet .fnd-progress{margin:0 18px 10px;color:#6D6D72;font-size:13px}
html body .sheet.fnd-sheet .fnd-card{margin:0 14px 12px;padding:12px 14px;background:#fff;border-radius:14px}
html body .sheet.fnd-sheet .fnd-label{margin:0 0 6px;font:600 12px/1.2 var(--mc-font,-apple-system,sans-serif);letter-spacing:.04em;text-transform:uppercase;color:#6D6D72}
html body .sheet.fnd-sheet .fnd-written{font:700 20px/1.25 var(--mc-font,-apple-system,sans-serif);color:#13294B;overflow-wrap:anywhere}
html body .sheet.fnd-sheet :is(.fnd-found,.fnd-result){display:flex;align-items:center;gap:10px;width:100%;box-sizing:border-box;margin-top:8px;padding:9px 10px;border:1.5px solid transparent;border-radius:12px;background:#fff;text-align:left;font:inherit;color:inherit}
html body .sheet.fnd-sheet .fnd-found,html body .sheet.fnd-sheet .fnd-result.on{border-color:#84adff;background:#F5F9FF}
html body .sheet.fnd-sheet .fnd-result{margin-top:4px;border-color:#eef1f5;cursor:pointer}
html body .sheet.fnd-sheet .fnd-art{flex:none;width:40px;height:40px;border-radius:8px;overflow:hidden;background:#EAF2FF;color:#2F6FDB;display:grid;place-items:center}
html body .sheet.fnd-sheet .fnd-art img{width:100%;height:100%;object-fit:cover}.fnd-art svg{width:20px;height:20px}
html body .sheet.fnd-sheet .fnd-found-text{min-width:0;flex:1}.fnd-found-text b{display:block;font-size:15.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fnd-found-text small{display:block;color:#6D6D72;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html body .sheet.fnd-sheet .fnd-tag{flex:none;padding:3px 7px;border-radius:6px;background:#E0F7F2;color:#0E7C6B;font:700 11px/1.2 var(--mc-font,-apple-system,sans-serif)}.fnd-tag.fnd-tag-new{background:#EAF2FF;color:#2F6FDB}
html body .sheet.fnd-sheet .fnd-link{all:unset;display:block;margin-top:8px;color:#3877c8;font-weight:600;font-size:14px;cursor:pointer}
html body .sheet.fnd-sheet .fnd-search{display:flex;gap:8px;margin-top:10px}.fnd-query{flex:1;display:flex;align-items:center;gap:6px;height:42px;padding:0 10px;border:1px solid #cbd7e7;border-radius:12px;background:#fff}.fnd-query svg{width:18px;height:18px;color:#8a94a6}.fnd-query input{flex:1;min-width:0;border:0;outline:0;font:400 16px var(--mc-font,-apple-system,sans-serif);background:transparent}
html body .sheet.fnd-sheet .fnd-search .btn{min-height:42px;border-radius:12px}
html body .sheet.fnd-sheet .fnd-note{margin:8px 2px 0;color:#6D6D72;font-size:14px}.fnd-note.fnd-error{color:#b42318}
html body .sheet.fnd-sheet .fnd-real,html body .sheet.fnd-sheet .fnd-radio{display:flex;align-items:center;gap:9px;margin-top:10px;font-size:15px}
html body .sheet.fnd-sheet .fnd-real input,html body .sheet.fnd-sheet .fnd-radio input,html body .sheet.fnd-sheet .fnd-check input{width:20px;height:20px;margin:0;accent-color:#3877c8;flex:none}
html body .sheet.fnd-sheet .fnd-table{width:100%;border-collapse:collapse}.fnd-table thead th{padding:0 0 6px;font:600 11px/1.2 var(--mc-font,-apple-system,sans-serif);letter-spacing:.03em;text-transform:uppercase;color:#6D6D72;text-align:center}
html body .sheet.fnd-sheet .fnd-table tbody :is(td,th){padding:7px 0;border-top:1px solid #e3e8ef;text-align:center;font-size:15px}.fnd-table tbody th{text-align:left;font-weight:600;color:#33445c;padding-left:4px}
html body .sheet.fnd-sheet .fnd-table td:first-child{width:28px}.fnd-table td.fnd-v{width:76px;overflow-wrap:anywhere}.fnd-dim{color:#a0a8b6}.fnd-est{display:block;font-size:11px;color:#a0a8b6}
html body .sheet.fnd-sheet .fnd-dir{all:unset;display:inline-grid;place-items:center;width:44px;height:28px;border-radius:14px;background:#EAF2FF;color:#2F6FDB;font:800 16px/1 var(--mc-font,-apple-system,sans-serif);cursor:pointer}.fnd-dir.to-set{background:#FFF1E0;color:#B5650D}.fnd-dir.off{background:#f0f2f5;color:#b0b7c3}
html body .sheet.fnd-sheet .fnd-legend{margin:8px 0 0;font-size:12.5px;line-height:1.4;color:#6D6D72}.fnd-to-lib{color:#2F6FDB}.fnd-to-set{color:#B5650D}
html body .sheet.fnd-sheet .fnd-actions{display:grid!important;grid-template-columns:2fr 3fr;gap:10px}.fnd-actions .btn{min-height:48px;border-radius:14px;font-weight:700}
html body .sheet.fnd-sheet .fnd-table :is(td,th):not(#_){border:0!important;background:transparent!important}
html body .sheet.fnd-sheet .fnd-table tbody :is(td,th):not(#_){border-top:1px solid #e3e8ef!important}
html body .sheet.fnd-sheet .fnd-table tbody th:not(#_){text-align:left!important;padding-left:6px!important}
html body .sheet.fnd-sheet .fnd-table .fnd-dir.off:not(#_){background:#f0f2f5!important;color:#b0b7c3!important}
html body .sheet.fnd-sheet .fnd-table .fnd-dir.to-set:not(.off):not(#_){background:#FFF1E0!important;color:#B5650D!important}
html body .sheet.fnd-sheet .fnd-art svg:not(#_){width:20px!important;height:20px!important}
html body .sheet.fnd-sheet .fnd-actions #findSkip:not(#_){background:#fff!important;border:1px solid #cbd2dc!important;color:#13294B!important}
html body .sheet.fnd-sheet .fnd-legend .fnd-to-set:not(#_){color:#B5650D!important}html body .sheet.fnd-sheet .fnd-legend .fnd-to-lib:not(#_){color:#2F6FDB!important}
html body .sheet.fnd-sheet .fnd-art .fnd-ico:not(#_){display:grid;place-items:center;font-style:normal}html body .sheet.fnd-sheet .fnd-art .fnd-ico :is(img,svg):not(#_){width:22px!important;height:22px!important;object-fit:contain!important}
html body .sheet.fnd-sheet .fnd-search:not(#_){display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important}
html body .sheet.fnd-sheet .fnd-search .btn:not(#_){padding:0 14px!important;width:auto!important}
html body .sheet.fnd-sheet .fnd-tag.fnd-tag-new:not(#_){background:#EAF2FF!important;color:#2F6FDB!important}
/* Gary, Oct 30: "For the rest of this set list" stays at the bottom, above Skip and Save */
html body .sheet.fnd-sheet .fnd-actions:not(#_){display:block!important;padding-top:8px!important}
html body .sheet.fnd-sheet .fnd-rest:not(#_){display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;margin:0 2px 8px}
html body .sheet.fnd-sheet .fnd-rest-label:not(#_){flex-basis:100%;font:600 11.5px/1.2 var(--mc-font,-apple-system,sans-serif);letter-spacing:.04em;text-transform:uppercase;color:#6D6D72}
html body .sheet.fnd-sheet .fnd-rest .fnd-radio:not(#_){margin-top:0!important;font-size:14.5px}
html body .sheet.fnd-sheet .fnd-buttons:not(#_){display:grid;grid-template-columns:2fr 3fr;gap:10px}html body .sheet.fnd-sheet .fnd-buttons .btn:not(#_){min-height:48px;border-radius:14px;font-weight:700}
/* Gary, Oct 30 (BETA-7.43): the where-you-are line wraps (it was cut off with …); addCrumb() grows the header to fit it */
html body #overlayRoot .sheet .setlist-navigation-head>.sl-crumb:not(#_):not(#__):not(#___){white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere}
html body #overlayRoot .sheet .setlist-navigation-head:has(>.sl-crumb):not(#_):not(#__):not(#___){padding-bottom:4px!important}
/* Gary, Oct 30 (BETA-7.43): Edit Song — less space between the header and the Find Recording bar */
html body #overlayRoot .sheet.mc-song-form>.setlist-navigation-head:has(>.sl-crumb):not(#_):not(#__):not(#___){margin-bottom:0!important}
html body #overlayRoot .sheet.mc-song-form .mc-song-findbar:not(#_):not(#__){margin-top:2px!important}
/* Use iTunes tick under Short Name and Performance Duration (Gary, Oct 30, BETA-7.43) */
html body #overlayRoot .sheet .mc-set-row label .mc-itunes-use:not(#_){display:flex;align-items:center;gap:7px;margin-top:6px;font:500 13px/1.3 var(--mc-font,-apple-system,sans-serif);color:var(--mc-blue,#3877c8);cursor:pointer}
html body #overlayRoot .sheet .mc-set-row label .mc-itunes-use[hidden]:not(#_){display:none}
html body #overlayRoot .sheet .mc-set-row label .mc-itunes-use input[type=checkbox]:not(#_):not(#__):not(#___){-webkit-appearance:checkbox!important;appearance:auto!important;flex:none!important;width:18px!important;height:18px!important;min-width:0!important;min-height:0!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:4px!important;background:none!important;box-shadow:none!important;accent-color:var(--mc-blue,#3877c8)}
/* BETA-7.47.2 (Gary): a long iTunes name wraps to two lines, then "…"; it never pushes the box off the screen */
html body #overlayRoot .sheet .mc-set-row:has(.mc-itunes-use) label:not(#_){min-width:0;max-width:100%;overflow:hidden}
/* the label column can't take the whole row: the Short Name / length box keeps at least 96px (BETA-7.47.2) */
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:has(.mc-itunes-use:not([hidden])):not(#_):not(#__){grid-template-columns:minmax(0,1fr) minmax(96px,auto)!important}
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:has(#setlistSongShortName):has(.mc-itunes-use:not([hidden])):not(#_):not(#__){grid-template-columns:minmax(0,1fr) minmax(110px,48%)!important}
/* Gary, Oct 30 (BETA-7.47.2): a Short Name too long for its box shows "…" (not just the first word) until it's tapped */
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:not(#_):not(#__) #setlistSongShortName:not(:focus){text-overflow:ellipsis!important;overflow:hidden!important;white-space:nowrap!important}
html body .sheet.mc-song-form .mc-song-group-card .mc-set-row:not(#_):not(#__) #setlistSongShortName{min-width:0!important;width:100%!important}
html body #overlayRoot .sheet .mc-set-row label .mc-itunes-use:not(#_){min-width:0;max-width:100%;align-items:flex-start}
html body #overlayRoot .sheet .mc-set-row label .mc-itunes-use>span:not(#_){white-space:normal;min-width:0;flex:1 1 auto;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow-wrap:anywhere}
/* Add/Reconcile (Gary, Oct 30, BETA-7.44): black line icon; its dropdown has Add Song and Reconcile with Library */
html body #overlayRoot .sheet .mc-editor-update-menu .mc-reconcile-add-ico:not(#_){color:#111!important;stroke:#111!important;width:24px!important;height:24px!important}
html body .setlist-add-menu .menu-item:not(#_){display:flex!important;align-items:center!important;gap:12px!important;padding:12px 14px!important;text-align:left!important;white-space:normal!important}
html body .setlist-add-menu .menu-item+.menu-item:not(#_){border-top:.5px solid #d1d1d6}
html body .setlist-add-menu .setlist-add-menu-ico:not(#_){flex:none;display:flex;color:var(--mc-blue,#2f6fdb)}
html body .setlist-add-menu .setlist-add-menu-ico svg:not(#_){width:22px;height:22px}
html body .setlist-add-menu .setlist-add-menu-text:not(#_){display:flex;flex-direction:column;gap:2px;min-width:0}
html body .setlist-add-menu .setlist-add-menu-text>span:not(#_){font:400 17px/1.25 var(--mc-font,-apple-system,sans-serif);color:#1c1c1e}
html body .setlist-add-menu .setlist-add-menu-text small:not(#_){font:400 13px/1.3 var(--mc-font,-apple-system,sans-serif);color:#8e8e93}
/* Gary, Oct 30 (BETA-7.44): "Differs from library. Reconcile to sync them" — Reconcile is a link inside the sentence */
html body .sheet.setlist-sheet .setlist-diff-update.setlist-diff-reconcile:not(#_):not(#__){display:inline;margin:0;padding:0;font:600 13.5px/1.3 var(--mc-font);text-decoration:underline;text-underline-offset:2px;vertical-align:baseline}
/* Reconcile Songs (Gary, Oct 30, BETA-7.45): wider value boxes; a long Short Name, Start or Transition wraps to up to 3 lines */
html body .sheet.fnd-sheet .fnd-table:not(#_){table-layout:fixed}
html body .sheet.fnd-sheet .fnd-table tr>:nth-child(1):not(#_){width:30px}
html body .sheet.fnd-sheet .fnd-table tr>:nth-child(2):not(#_){width:84px}
html body .sheet.fnd-sheet .fnd-table tr>:nth-child(4):not(#_){width:44px}
html body .sheet.fnd-sheet .fnd-table td.fnd-v:not(#_){width:auto!important;padding-left:4px!important;padding-right:4px!important;line-height:1.25}
html body .sheet.fnd-sheet .fnd-table .fnd-val:not(#_){display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden;overflow-wrap:anywhere;word-break:break-word}

/* Gary, Oct 30 (BETA-7.45): "Est. Time" (was Estimated Duration) — a narrower column leaves more room for the song name */
/* Gary, Oct 30 (BETA-7.45): Est. Time values in regular weight (not bold) */
html body .sheet.setlist-sheet .setlist-edit-row .setlist-edit-duration:not(#_):not(#__):not(#___){font-weight:400!important}
html body .sheet.setlist-sheet .mc-view-row .mc-view-duration:not(#_):not(#__):not(#___){font-weight:400!important}
/* Gary, Oct 30 (BETA-7.45): a song using the Unknown Song length shows it in that box's blue */
html body .sheet.setlist-sheet :is(.setlist-edit-duration,.mc-view-duration).is-unknown:not(#_):not(#__):not(#___){color:var(--mc-blue,#3877c8)!important}
/* Gary, Oct 30 (BETA-7.45): the Singer column is only as wide as one letter; its heading spills over the narrow Est. Time heading */
html body .sheet.setlist-sheet :is(.setlist-col-singer,.mc-view-col-singer):not(#_):not(#__):not(#___){justify-self:start!important;white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important;max-width:none!important;width:auto!important;position:relative;z-index:1}
html body .sheet.setlist-sheet :is(.setlist-edit-row .setlist-edit-singer,.mc-view-row .mc-view-singer):not(#_):not(#__):not(#___){justify-self:start!important;width:40px!important;max-width:none!important;text-align:center!important;overflow:visible!important}
/* Gary, Oct 30 (BETA-7.47): Reconcile Songs — when both sides are the same, the arrow is grayed */
html body .sheet.fnd-sheet .fnd-table .fnd-dir.same:not(#_):not(#__){background:#f0f2f5!important;color:#b0b7c3!important}
/* Use Unknown Song length for all songs (Gary, Oct 30, BETA-7.47): a small two-line tick above the Unknown Song label */
html body .sheet .mc-editor-timing>.mc-timing-cell .mc-unknown-all:not(#_):not(#__){display:inline-flex!important;align-items:center;gap:4px;margin:0 0 1px;padding:0;font:500 9.5px/1.1 var(--mc-font,-apple-system,sans-serif)!important;letter-spacing:0;text-transform:none;color:#6b7280!important;text-align:left;cursor:pointer}
html body .sheet .mc-editor-timing>.mc-timing-cell .mc-unknown-all i:not(#_){flex:none;width:13px;height:13px;box-sizing:border-box;border:1.5px solid #9fb3cc;border-radius:4px;background:#fff center/10px no-repeat}
html body .sheet .mc-editor-timing>.mc-timing-cell .mc-unknown-all.is-on i:not(#_){border-color:var(--mc-blue,#3877c8);background-color:var(--mc-blue,#3877c8);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 10.5l4 4 8-9'/%3E%3C/svg%3E")}
html body .sheet .mc-editor-timing>.mc-timing-cell .mc-unknown-all.is-on:not(#_){color:var(--mc-blue,#3877c8)!important}
/* Share links, the receiving sheet (BETA-7.48.18) */
html body #overlayRoot .ya-share-from{margin:4px 0 6px;font-size:16px;line-height:1.35}
html body #overlayRoot .ya-share-note{margin:4px 0 10px;color:#5b6676;font-size:13px;line-height:1.35}
html body #overlayRoot .ya-share-problem{margin:8px 0 12px;color:#9a3412;font-size:14px;line-height:1.4}
html body #overlayRoot .ya-share-songs{max-height:38vh;overflow:auto;border:1px solid #e6ebf2;border-radius:10px;margin:6px 0 12px;-webkit-overflow-scrolling:touch}
html body #overlayRoot .ya-share-songs>div{display:flex;flex-direction:column;padding:8px 12px;border-bottom:1px solid #eef1f6}
html body #overlayRoot .ya-share-songs>div:last-child{border-bottom:0}
html body #overlayRoot .ya-share-songs small{color:#6b7686;font-size:12px}
html body #overlayRoot .ya-share-target{display:flex;flex-direction:column;gap:6px;font-weight:600;font-size:14px;margin:4px 0}
html body #overlayRoot .ya-share-target select{min-height:44px;font-size:16px;border-radius:10px;border:1px solid #cfd8e3;padding:0 10px;background:#fff}
html body #overlayRoot .ya-share-status{min-height:1.2em;margin:6px 0;font-size:14px;color:#14532d}
html body #overlayRoot .ya-share-status.error{color:#b42318}
html body #overlayRoot .ya-share-actions{display:flex;gap:10px;margin-top:8px}
html body #overlayRoot .ya-share-actions .btn{flex:1 1 0;min-height:44px}
html body #overlayRoot .ya-share-actions .btn[hidden]{display:none!important}
/* the photo Read button while the pages get ready (BETA-7.48.18) */
html body #overlayRoot #setlistPagesRead.is-working{display:inline-flex;align-items:center;justify-content:center;gap:8px;opacity:.85}
html body #overlayRoot #setlistPagesRead.is-working .spinner{width:16px;height:16px}
