:root{
  color-scheme:dark;
  --bg:#030303;
  --panel:#0b0b0c;
  --panel-2:#111113;
  --line:#2a2a2e;
  --text:#f4f4f5;
  --muted:#a7a7ad;
  --gold:#e8b53a;
  --gold-soft:#ffcf59;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html{background:#000}
body{min-width:320px;margin:0;background:#000;color:var(--text)}
a,button{font:inherit}
button{cursor:pointer}
.v6-loading{min-height:100vh;display:grid;place-items:center;background:#050505;color:#b7b7bc;font-size:14px}
.v6-page{min-height:100vh;background:
  radial-gradient(circle at 1% 5%,rgba(92,92,92,.34),transparent 25%),
  radial-gradient(circle at 92% 2%,rgba(58,58,58,.20),transparent 24%),
  linear-gradient(180deg,#080808 0%,#030303 46%,#000 100%)}
.v6-sheet{position:relative;width:min(738px,100%);min-height:100vh;margin:auto;padding:18px 22px 14px;overflow:hidden;background:linear-gradient(180deg,rgba(4,4,4,.72),rgba(0,0,0,.92));box-shadow:0 0 80px rgba(0,0,0,.72)}
.v6-header{position:relative;min-height:154px;padding-top:16px}
.brand-row{position:relative;min-height:80px;display:flex;align-items:flex-start}
.brand-name{position:relative;z-index:2;font-size:52px;line-height:.92;font-weight:850;letter-spacing:-.055em;white-space:nowrap}
.watermark{position:absolute;top:-29px;right:0;color:rgba(255,255,255,.085);font-size:105px;line-height:1;font-weight:900;letter-spacing:-.09em;pointer-events:none;user-select:none}
.day-tabs{position:relative;z-index:3;margin-left:auto;display:flex;align-items:center;gap:7px;padding-top:5px}
.day-tabs button{border:0;border-radius:4px;padding:4px 7px;background:transparent;color:#f1f1f2;font-size:15px;font-weight:800;line-height:1}
.day-tabs button.active{background:var(--gold);color:#060606}
.date-chip{display:inline-flex;align-items:center;min-height:40px;margin-top:4px;border-radius:4px;padding:5px 11px;background:linear-gradient(180deg,#f1c251,#e4aa27);color:#080808;font-size:21px;font-weight:900;letter-spacing:-.03em}
.song-list{display:grid;gap:7px}
.song-row{display:grid;grid-template-columns:42px minmax(0,1fr) 286px;min-height:58px;border:1px solid #323236;border-radius:4px;background:linear-gradient(180deg,rgba(18,18,20,.94),rgba(9,9,10,.94));overflow:hidden}
.song-row.group-start{margin-top:42px}
.song-number{display:grid;place-items:center;color:#d9d9dc;font-size:42px;font-weight:300;line-height:1;border-right:1px solid rgba(255,255,255,.04)}
.song-copy{min-width:0;display:flex;flex-direction:column;justify-content:center;padding:6px 8px}
.song-copy h2{overflow:hidden;margin:0;color:#f1f1f2;text-transform:uppercase;text-overflow:ellipsis;white-space:nowrap;font-size:20px;line-height:1;font-weight:850;letter-spacing:-.025em}
.song-copy p{overflow:hidden;margin:3px 0 0;color:#ceced1;text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1}
.song-data{display:grid;grid-template-rows:auto auto auto;gap:2px;padding:4px 6px 4px 2px}
.song-tags{min-height:14px;display:flex;justify-content:flex-end;align-items:center;gap:4px;overflow:hidden}
.tag{display:inline-flex;align-items:center;max-width:116px;border-radius:2px;padding:1px 4px;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:8px;line-height:1.15;font-weight:950;letter-spacing:.015em}
.tag.is-hombre{background:#0aa4e8;color:#001019}
.tag.is-mujer{background:#f05c9d;color:#24000f}
.tag.is-mixto{background:#a986ff;color:#120523}
.tag.is-version{background:#252529;color:#ececef;border:1px solid #45454a}
.tag.is-adoracion{background:#f0ca55;color:#1d1500}
.tag.is-danza{background:#4bd69d;color:#002015}
.tag.is-otra{background:#aeb3bd;color:#0a0b0d}
.tag.is-inter{background:#f2a24a;color:#241000}
.tag.is-ministracion{background:#9e426e;color:#fff}
.music-values{display:grid;grid-template-columns:1.08fr .8fr 1fr;align-items:center;gap:6px;color:#e5e5e8;font-size:11px;line-height:1.05;font-weight:700}
.music-values span{white-space:nowrap}
.music-values b{color:#c9c9cd;font-weight:850}
.song-bottom{display:flex;align-items:center;justify-content:space-between;gap:7px;min-width:0}
.tone-note{min-width:0;color:#f0f0f1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:800}
.resources{display:flex;justify-content:flex-end;align-items:center;gap:7px;min-width:0;overflow:hidden}
.resources a,.resource-muted{display:inline-flex;align-items:center;gap:3px;color:#ececef;text-decoration:none;white-space:nowrap;font-size:8px;font-weight:750}
.resources a:hover{color:var(--gold-soft)}
.resource-muted{color:#85858c}
.setlist-footer{display:grid;gap:9px;margin-top:46px}
.info-pair{display:grid;grid-template-columns:1fr 1fr;gap:148px}
.info-small,.info-wide{border:1px solid #242429;border-radius:4px;background:linear-gradient(180deg,rgba(16,16,18,.94),rgba(7,7,8,.96))}
.info-small{min-height:43px;display:flex;align-items:center;gap:8px;padding:6px 8px}
.info-small>span{display:grid;place-items:center;width:22px;height:22px;border-radius:5px;background:#101f16;font-size:12px}
.info-small div{display:grid;gap:2px}
.info-small small,.info-heading small,.service-grid small{text-transform:uppercase;color:var(--gold-soft);font-size:7px;font-weight:950;letter-spacing:.08em}
.info-small strong{font-size:10px}
.info-wide{min-height:45px;display:grid;grid-template-columns:180px minmax(0,1fr);align-items:stretch}
.info-heading{display:flex;align-items:center;gap:8px;padding:7px 8px;border-right:1px solid #242429}
.info-icon{display:grid;place-items:center;width:24px;height:24px;border-radius:6px;background:#15151a;font-size:12px}
.info-heading>span:last-child{display:grid;gap:2px}
.info-heading strong{font-size:11px}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;min-width:0}
.service-grid>div{min-width:0;display:grid;gap:2px;padding:5px 10px;border-left:1px solid #17171a}
.service-grid>div:first-child{border-left:0}
.service-grid small{color:#c9c9ce}
.service-grid strong{overflow:hidden;color:#f0f0f1;text-overflow:ellipsis;white-space:nowrap;font-size:9px}
.info-wide.preaching .service-grid strong{color:#f0f0f1;white-space:normal;line-height:1.18}
.info-wide.preaching .service-grid strong::first-line{color:var(--gold-soft)}
.admin-link{display:block;width:max-content;margin:10px auto 0;color:#55555d;text-decoration:none;font-size:8px}
.state-card{width:min(520px,calc(100% - 32px));margin:15vh auto;padding:28px;border:1px solid #28282d;border-radius:16px;background:#111;color:#fff;text-align:center}
.state-card h1{margin:0 0 8px}
.state-card p{color:#aaa}
.state-card a{color:var(--gold-soft)}

@media(max-width:620px){
  .v6-sheet{padding:10px 11px 10px}
  .v6-header{min-height:102px;padding-top:8px}
  .brand-row{min-height:55px}
  .brand-name{font-size:31px}
  .watermark{top:-18px;font-size:66px}
  .day-tabs{gap:2px;padding-top:2px}
  .day-tabs button{padding:3px 4px;font-size:9px}
  .date-chip{min-height:27px;margin-top:0;padding:3px 7px;font-size:13px}
  .song-list{gap:4px}
  .song-row{grid-template-columns:26px minmax(0,1fr) 153px;min-height:39px}
  .song-row.group-start{margin-top:25px}
  .song-number{font-size:26px}
  .song-copy{padding:4px 5px}
  .song-copy h2{font-size:12px}
  .song-copy p{margin-top:2px;font-size:9px}
  .song-data{gap:1px;padding:2px 3px 2px 1px}
  .song-tags{min-height:9px;gap:2px}
  .tag{max-width:59px;padding:0 2px;font-size:5px;line-height:1.25}
  .music-values{grid-template-columns:1.06fr .78fr 1fr;gap:2px;font-size:6.5px}
  .song-bottom{gap:3px}
  .tone-note{font-size:5.5px}
  .resources{gap:3px}
  .resources a,.resource-muted{gap:1px;font-size:5.2px}
  .setlist-footer{gap:5px;margin-top:29px}
  .info-pair{gap:77px}
  .info-small{min-height:29px;gap:5px;padding:3px 5px}
  .info-small>span{width:16px;height:16px;border-radius:4px;font-size:8px}
  .info-small small,.info-heading small,.service-grid small{font-size:4.6px}
  .info-small strong{font-size:6.5px}
  .info-wide{min-height:31px;grid-template-columns:95px minmax(0,1fr)}
  .info-heading{gap:5px;padding:4px 5px}
  .info-icon{width:17px;height:17px;border-radius:4px;font-size:8px}
  .info-heading strong{font-size:7px}
  .service-grid>div{gap:1px;padding:3px 5px}
  .service-grid strong{font-size:5.8px}
  .admin-link{margin-top:6px;font-size:5px}
}

@media(max-width:380px){
  .v6-sheet{padding-left:8px;padding-right:8px}
  .brand-name{font-size:28px}
  .watermark{font-size:60px}
  .day-tabs button{font-size:8px}
  .song-row{grid-template-columns:24px minmax(0,1fr) 145px}
  .song-copy h2{font-size:11px}
  .song-copy p{font-size:8px}
  .info-pair{gap:54px}
}
