#footer {
    padding: 10px 0;
}

#comments a.btn {
  background-color: #95103B;
}

a.btn:hover {
    background: #870012;
    color: #ffffff;
}


/* Grid layout for sections */
.section-grid {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 20px;
}

.section-grid li {
    margin: 0;
}

.section-grid article {
    background: #fff;
    border-radius: 8px;
    padding: 20px;
    box-shadow: 0 2px 6px rgba(0,0,0,0.1);
    text-align: center;
}

.section-grid .avatar img {
    width: 60px;
    height: 60px;
}

.section-grid h4 {
    margin-top: 10px;
}

.section-grid .btn {
    display: inline-block;
    margin-top: 10px;
}


/* Layout for soloists */
/* Container for the whole list */
.soloist-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

/* Each row — now more compact */
.soloist-row {
    display: flex;
    align-items: center;
    padding: 6px 10px; /* tighter vertical spacing */
    border-bottom: 1px solid #ddd;
    background: #fff;
    gap: 10px;
}

/* LEFT COLUMN: Name + Band */
.soloist-left {
    flex: 2; /* takes most of the width */
}

.soloist-info h4 {
    margin: 0;
    font-size: 1rem; /* slightly smaller */
}

.soloist-info p {
    margin: 0;
    font-size: 0.8rem;
    color: #555;
}

/* MIDDLE COLUMN: Tags */
.soloist-middle {
    flex: 1;
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}

/* Tag styling */
.flag-tag {
    display: inline-block;
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 0.7rem;
    font-weight: bold;
    color: #fff;
    background: #95103B; /* default red */
}

.flag-tag.scratched { background: #b00020; } /* deep red */
.flag-tag.dnf       { background: #e67e22; } /* orange */
.flag-tag.attended  { background: #2d862d; } /* green */

/* RIGHT COLUMN: Result + Position */
.soloist-right {
    flex: 0 0 70px; /* fixed width for alignment */
    text-align: right;
}

.soloist-score-label,
.soloist-position-label {
    font-size: 0.65rem;
    color: #666;
    margin: 0;
}

.soloist-score {
    font-size: 1.2rem;
    font-weight: bold;
    color: #900;
    margin: 0;
}

.soloist-position {
    font-size: 1.2rem;
    font-weight: bold;
    color: #900;
    margin: 0;
}

/* MOBILE: stack neatly */
@media (max-width: 600px) {
    .soloist-row {
        flex-direction: column;
        align-items: flex-start;
    }

    .soloist-right {
        text-align: left;
    }
}


/* Heading for Results pages */
.results-header {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 20px;
}

.results-header h1 {
  margin: 0;
  font-size: 2rem;
}

.results-icon {
  width: 48px;
  height: 48px;
}

/* Mobile scaling for image */
@media (max-width: 600px) {
  .results-icon {
    width: 36px;
    height: 36px;
  }

  .results-header h1 {
    font-size: 1.5rem;
  }
}

/* Better icons on results listings */
.results-item-icon {
  float: left;
  margin-right: 12px;
}

.results-item-icon img {
  width: 32px;
  height: 32px;
}


/* Breadcrumb on results page */
/* Breadcrumb */
#breadcrumb-public {padding:10px 0 30px;}
#breadcrumb-public ul{margin:0; padding:0; list-style:none; text-transform:uppercase;}
#breadcrumb-public li{display:inline-block; margin:0 6px 0 0; padding:0; font-size:12px; background-color: #000000;}
#breadcrumb-public li a{display:block; position:relative; margin:0; padding:0 12px 0 0; font-size:12px;}
#breadcrumb-public li a::after{top:4px; right:0; content:"\f0da";}
#breadcrumb-public li:last-child a{margin:0; padding:0;}
#breadcrumb-public li:last-child a::after{display:none;}
#breadcrumb-public .heading{margin:0; font-size:2rem;}

#breadcrumb-public a{color:inherit; background-color:#000000;}
#breadcrumb-public li:last-child a{color:#FFFFFF; background-color:#000000;} /* was #95103B */

#breadcrumb-public {line-height:normal;}
#breadcrumb-public  li a::after {position:absolute; font-family:"Font Awesome\ 5 Free"; font-weight:900; font-size:10px; line-height:10px;}

div.breadcrumb-strip { background-color: #000000;}


/* Results section badges */
.publish-status {
    display: inline-block;
    margin-top: 5px;
    margin-bottom: 15px;
    padding: 4px 10px;
    border-radius: 6px;
    font-weight: 600;
    font-size: 0.9em;
    color: #fff;
}

.publish-status.published {
    background-color: #28a745; /* green */
}

.publish-status.not-published {
    background-color: #dc3545; /* red */
}


/* Back buttons */
.back-btn {
    display: block;
    width: 100%;
    text-align: center;
    padding: 12px 0;
    margin-top: 20px;
    background-color: #95103B;
    color: #fff;
    border-radius: 6px;
    font-size: 1.1rem;
    font-weight: 600;
}


/* Band Results */
/* Container for all performance items */
.soloist-middle .performance-list {
    margin-top: 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

/* Each performance row */
.soloist-middle .performance-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #f7f7f7;
    padding: 6px 10px;
    border-radius: 4px;
    font-size: 0.9rem;
}

/* Performance type label */
.soloist-middle .performance-type {
    font-weight: 600;
    color: #333;
    margin-right: 16px; /* extra spacing before the score */
}

/* Score + sub-position */
.soloist-middle .performance-score {
    font-weight: 700;
    color: #a00; /* softened red to complement your existing #900 */
}

/* Sub-position (e.g., 1st in Test Piece) */
.soloist-middle .performance-subpos {
    font-weight: 500;
    color: #666;
    margin-left: 4px;
    font-size: 0.85rem;
}


/* Marching */
/* Marching heading */
.soloist-middle .marching-heading {
    margin-top: 10px;
    margin-bottom: 4px;
    font-weight: 700;
    font-size: 0.95rem;
    color: #333;
}

/* Marching items share the same base style but can be tinted slightly */
.soloist-middle .marching-item {
    background: #f0f0f0; /* slightly different shade to distinguish */
}




