@charset "UTF-8";
/* Dedicated festival statistics styles. The site's shared header is included by PHP. */
body { background-image:url(../../webpageimages/burried.png); background-repeat:repeat; font-family:Verdana,Geneva,sans-serif; text-align:center; color:#fff; }
.festival-shell { width:990px; margin:0 auto; background:#000; color:#fff; box-sizing:border-box; }
.festival-header { height:70px; display:flex; align-items:center; justify-content:center; background:#999; border-top:2px solid #000; border-bottom:5px solid #000; }
.festival-header #box3 { width:650px; height:55px; background:#000; border:1px solid #000; border-radius:4px; display:flex; align-items:center; justify-content:center; }
.festival-header h1 { font-size:21px; line-height:1.2; margin:0; color:#fff; }
.festival-content { padding:22px 20px 30px; text-align:left; box-sizing:border-box; }
.festival-intro { color:#ddd; font-size:13px; line-height:1.7; text-align:center; margin:0 10px 20px; }
.festival-summary { display:flex; gap:12px; margin:18px auto 28px; }
.festival-stat { flex:1; min-height:98px; background:#222; border:1px solid #555; border-top:4px solid #c00; box-sizing:border-box; padding:12px 8px; text-align:center; }
.stat-label,.festival-stat strong,.stat-detail { display:block; }
.stat-label { font-size:12px; margin-bottom:8px; }.festival-stat strong { font-size:23px; line-height:1.2; }.stat-detail { color:#bbb; font-size:11px; margin-top:7px; }
.festival-content h2 { text-align:center; font-size:18px; color:#fff; margin:25px 0 16px; padding-bottom:10px; border-bottom:2px solid #333; }
.festival-chart { background:#151515; border:1px solid #333; padding:15px 22px; }
.chart-row { display:flex; align-items:center; gap:10px; min-height:23px; margin:2px 0; }
.chart-year { width:45px; text-align:right; font-size:11px; color:#ddd; }.chart-track { flex:1; height:12px; background:#292929; overflow:hidden; border-radius:3px; }.chart-bar { display:block; height:100%; background:linear-gradient(90deg,#4CAF50,#325d81); }.chart-count { width:24px; text-align:right; font-size:11px; color:#ddd; }
.festival-table { width:100%; border-collapse:collapse; margin:18px auto 25px; font-size:13px; background:#1a1a1a; color:#ddd; }
.festival-table thead { background:#333; }.festival-table th,.festival-table td { padding:10px 12px; text-align:left; border-bottom:1px solid #444; }
.festival-table th { color:#00ccff; cursor:pointer; user-select:none; }.festival-table th:hover { background:#444; }.festival-table th::after { content:' ↕'; color:#aaa; font-size:11px; }.festival-table th.asc::after { content:' ▲'; color:#fff; }.festival-table th.desc::after { content:' ▼'; color:#fff; }
.festival-table tbody tr:nth-child(even) { background:#1f1f1f; }.festival-table tbody tr:hover { background:#303030; }.festival-table td:first-child { width:185px; white-space:nowrap; }.festival-table td:last-child { width:155px; }
.festival-note,.festival-attribution { margin:22px 0 10px; padding:13px 16px; background:#111; border:1px solid #333; color:#aaa; font-size:12px; line-height:1.65; }
.festival-note strong { color:#ddd; }

/* Full-row concert archive links */
.festival-table tbody tr.festival-linked { cursor:pointer; }
.festival-table tbody tr.festival-linked:hover, .festival-table tbody tr.festival-linked:focus { background:#303030; outline:1px solid #777; outline-offset:-1px; }
.festival-table tbody tr:not(.festival-linked) { cursor:default; }

/* Keep shared navigation links clean on the festival page. */
#cssmenu a { text-decoration: none; }
#cssmenu a:hover, #cssmenu a:focus { text-decoration: none; }
