/*
 * Public setlist page (PB Gig Diary markup): the numbered sets under a page-style header.
 * Shown on a dark page; printed on white paper.
 * The gig plugin writes light-theme colours and spacing straight onto the elements (inline styles), so the
 * properties it sets there need !important here to be overridden.
 */

body.pbbp-setlist{background:var(--pbbp-bg)}
body.pbbp-setlist .pb-setlist-page{
  max-width:820px;margin:0 auto;padding:clamp(40px,6vw,72px) 20px clamp(60px,9vw,120px);
  color:var(--pbbp-text);font:400 17px/1.6 var(--pbbp-sans)}
body.pbbp-setlist .pb-setlist-page *,body.pbbp-setlist .pb-setlist-page *::before,body.pbbp-setlist .pb-setlist-page *::after{box-sizing:border-box}

/* the title block is now a page-style header (see includes/setlist.php); only the sets are styled here */
/* each set */
body.pbbp-setlist .pb-setlist-set{margin:clamp(40px,6vw,64px) 0 0!important}
body.pbbp-setlist .pb-setlist-set > h2{display:flex;align-items:center;gap:16px;margin:0 0 6px!important;padding:0!important;border:0!important;font:600 clamp(26px,3.5vw,36px)/1.2 var(--pbbp-serif)!important;color:var(--pbbp-heading);text-transform:none;letter-spacing:normal}
body.pbbp-setlist .pb-setlist-set > h2::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,var(--pbbp-accent),rgba(var(--pbbp-accent-rgb),0))}

body.pbbp-setlist .pb-setlist-set ol{margin:0!important;padding:0!important;list-style:none;counter-reset:song;border:0}
body.pbbp-setlist .pb-setlist-set li{display:flex!important;align-items:baseline!important;justify-content:space-between!important;gap:20px;margin:0;padding:13px 4px!important;border:0!important;border-bottom:1px solid var(--pbbp-line)!important;counter-increment:song;transition:background .2s}
body.pbbp-setlist .pb-setlist-set li:hover{background:rgba(var(--pbbp-accent-rgb),.07)}
body.pbbp-setlist .pb-setlist-set li::before{content:counter(song,decimal-leading-zero);flex:none;width:2.2em;font:800 13px var(--pbbp-sans);letter-spacing:.1em;color:var(--pbbp-accent)}
body.pbbp-setlist .pb-setlist-set li > span:first-of-type{flex:1;min-width:0}
body.pbbp-setlist .pb-setlist-set li strong{font:600 clamp(18px,2.2vw,22px)/1.3 var(--pbbp-serif);color:var(--pbbp-heading)}
body.pbbp-setlist .pb-setlist-set li > span:first-of-type > span{margin-left:8px;font-size:15px!important;color:var(--pbbp-text)!important}
body.pbbp-setlist .pb-setlist-set li > span:last-of-type{flex:none;margin-left:0!important;font:600 13px var(--pbbp-sans)!important;letter-spacing:.06em;color:var(--pbbp-text)!important;font-variant-numeric:tabular-nums}

@media (max-width:560px){
  body.pbbp-setlist .pb-setlist-set li{flex-wrap:wrap;gap:2px 12px}
  body.pbbp-setlist .pb-setlist-set li > span:first-of-type > span{display:block;margin:2px 0 0}
}

/* on paper: black on white, no extras */
@media print{
  body.pbbp-setlist{background:#fff!important}
  body.pbbp-setlist .pb-setlist-page{color:#000;max-width:none;padding:0}
  body.pbbp-setlist .pb-setlist-head,body.pbbp-setlist .pb-setlist-head *,body.pbbp-setlist .pb-setlist-set > h2,body.pbbp-setlist .pb-setlist-set li strong,body.pbbp-setlist .pb-setlist-set li > span:first-of-type > span,body.pbbp-setlist .pb-setlist-set li > span:last-of-type,body.pbbp-setlist .pb-setlist-set li::before{color:#000!important}
  body.pbbp-setlist .pb-setlist-head{display:none}
  body.pbbp-setlist .pb-setlist-set li{padding:5px 0!important;border-color:#bbb!important;break-inside:avoid}
  #masthead,.site-footer,#wpadminbar{display:none!important}
}

/* PB Band Theme (block theme): the page uses the theme's colours and fonts, so it follows the site's style and palette
   (and the Light style) instead of the band profile's. The profile variables are pointed at the theme's. */
body.pbbp-setlist--theme{
  --pbbp-bg:var(--wp--preset--color--base);--pbbp-text:var(--wp--preset--color--text);--pbbp-heading:var(--wp--preset--color--heading);
  --pbbp-accent:var(--wp--preset--color--accent);--pbbp-accent-hi:var(--wp--preset--color--accent-hi);--pbbp-accent-photo:var(--wp--preset--color--accent-photo);
  --pbbp-line:var(--wp--preset--color--line);--pbbp-serif:var(--wp--preset--font-family--serif);--pbbp-sans:var(--wp--preset--font-family--sans)}
body.pbbp-setlist--theme .pb-setlist-set > h2::after{background:linear-gradient(90deg,var(--pbbp-accent),transparent)}
body.pbbp-setlist--theme .pb-setlist-set li:hover{background:color-mix(in srgb,var(--pbbp-accent) 7%,transparent)}
