.record-predictions {
    margin: 0.85rem 0 1rem;
    border: 1px solid #e4e8ed;
    border-radius: 14px;
    background: #fbfcfd;
    color: #252b33;
}

.match-reference-guides .record-predictions {
    margin: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.match-reference-guides__rows:has(.cheering-seat-guide:not([hidden])) .record-predictions {
    border-top: 1px solid #e8ebef;
}

.match-reference-guides .record-predictions__summary-teams {
    display: none;
}

.match-reference-guides .record-predictions__content {
    border-radius: 0 0 15px 15px;
}

.record-predictions__summary {
    display: flex;
    min-height: 64px;
    align-items: center;
    gap: 0.65rem;
    padding: 0.72rem 0.85rem;
    cursor: pointer;
    list-style: none;
    user-select: none;
}

.record-predictions__summary::-webkit-details-marker { display: none; }

.record-predictions__summary:focus {
    outline: none;
}

.record-predictions__summary:focus-visible {
    outline: 2px solid color-mix(in srgb, var(--primary-color, #495057) 24%, transparent);
    outline-offset: -2px;
    border-radius: inherit;
}

.record-predictions__summary-icon {
    display: inline-flex;
    width: 2rem;
    height: 2rem;
    flex: 0 0 2rem;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    color: #5f6977;
    background: #eef1f4;
}

.record-predictions__summary-copy {
    display: flex;
    min-width: 0;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 0.08rem;
}

.record-predictions__summary-copy strong { font-size: 0.88rem; }
.record-predictions__summary-copy small { color: #8a929d; font-size: 0.7rem; }

.record-predictions__summary-teams {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.record-predictions__summary-team {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    color: #606975;
    font-size: 0.68rem;
    font-weight: 700;
}

.record-predictions__summary-team img {
    width: 1.25rem;
    height: 1.25rem;
    object-fit: contain;
}

.record-predictions__count {
    padding: 0.2rem 0.42rem;
    border-radius: 999px;
    color: #68717d;
    background: #eef1f4;
    font-size: 0.66rem;
    font-weight: 800;
    white-space: nowrap;
}

.record-predictions__chevron {
    color: #8d949d;
    font-size: 0.8rem;
    transition: transform 0.2s ease;
}

.record-predictions[open] .record-predictions__chevron { transform: rotate(180deg); }

.record-predictions__content {
    max-height: 430px;
    overflow-y: auto;
    padding: 0.85rem;
    border-top: 1px solid #e8ebef;
    background: #fff;
    border-radius: 0 0 14px 14px;
}

.record-predictions__context {
    margin: 0 0 0.8rem;
    color: #838b96;
    font-size: 0.68rem;
}

.record-predictions__teams {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
}

.record-predictions__team {
    min-width: 0;
    padding: 0.75rem;
    border: 1px solid #e7eaee;
    border-radius: 12px;
    background: #fcfcfd;
}

.record-predictions__team-header {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    padding-bottom: 0.65rem;
    border-bottom: 1px solid #eceff2;
}

.record-predictions__team-header img {
    width: 2rem;
    height: 2rem;
    object-fit: contain;
}

.record-predictions__team-header span {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.record-predictions__team-header small { color: #9aa1aa; font-size: 0.62rem; }
.record-predictions__team-header strong { overflow: hidden; font-size: 0.82rem; text-overflow: ellipsis; white-space: nowrap; }

.record-predictions__group { margin-top: 0.75rem; }

.record-predictions__group h4 {
    display: flex;
    align-items: center;
    gap: 0.3rem;
    margin: 0 0 0.4rem;
    color: #606a77;
    font-size: 0.68rem;
    font-weight: 800;
}

.record-predictions__item {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.55rem;
    padding: 0.55rem 0;
    border-top: 1px dashed #e5e8ec;
}

.record-predictions__group h4 + .record-predictions__item { border-top: 0; }
.record-predictions__item-main { min-width: 0; }

.record-predictions__item-main > strong {
    display: block;
    color: #2d333b;
    font-size: 0.76rem;
    line-height: 1.35;
}

.record-predictions__item-main > small {
    display: block;
    margin-top: 0.12rem;
    color: #9299a3;
    font-size: 0.62rem;
    line-height: 1.35;
}

.record-predictions__history-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.22rem;
    margin-bottom: 0.28rem;
    padding: 0.14rem 0.38rem;
    border: 1px solid #ead39b;
    border-radius: 999px;
    color: #76520b;
    background: #fff8df;
    font-size: 0.57rem;
    font-weight: 800;
    line-height: 1.2;
    white-space: nowrap;
}

.record-predictions__history-badge i {
    color: #c58a12;
    font-size: 0.58rem;
}

.record-predictions__player-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.2rem;
    margin-bottom: 0.2rem;
}

.record-predictions__player-meta span {
    padding: 0.1rem 0.3rem;
    border-radius: 999px;
    color: #697481;
    background: #edf0f3;
    font-size: 0.58rem;
    font-weight: 700;
}

.record-predictions__player-meta span:first-child {
    color: #394451;
    background: #e5e9ed;
}

.record-predictions__player-meta span:last-child:not(:first-child) {
    color: #a34b4b;
    background: #fff0f0;
}

.record-predictions__metrics {
    display: flex;
    flex: 0 0 auto;
    min-width: 5.8rem;
    align-items: flex-end;
    flex-direction: column;
    text-align: right;
}

.record-predictions__metrics > strong {
    color: #2d333b;
    font-size: 0.76rem;
    line-height: 1.25;
    white-space: nowrap;
}

.record-predictions__metrics > small {
    margin-top: 0.08rem;
    color: #a0a6ae;
    font-size: 0.55rem;
}

.record-predictions__chance {
    margin-top: 0.28rem;
    color: #697481;
    font-size: 0.58rem;
    font-weight: 700;
    white-space: nowrap;
}

.record-predictions__probability {
    flex: 0 0 auto;
    color: #717a86;
    font-size: 0.65rem;
    font-weight: 800;
    white-space: nowrap;
    min-width: max-content;
}

.record-predictions__probability--achieved {
    gap: 0.25rem;
    color: #087f5b;
    background: #e6fcf5;
    border-color: #96f2d7;
    white-space: nowrap;
}

.record-predictions__notice {
    margin: 0.75rem 0 0;
    color: #a0a6ae;
    font-size: 0.6rem;
}

@media (max-width: 768px) {
    .record-predictions__summary { min-height: 58px; padding: 0.65rem 0.75rem; }
    .record-predictions__summary-teams { display: none; }
    .record-predictions__summary-copy small { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .record-predictions__content { max-height: 56vh; padding: 0.7rem; }
    .record-predictions__teams { grid-template-columns: 1fr; }
    .record-predictions__metrics { min-width: 5.2rem; }
    .record-predictions__metrics > strong { font-size: 0.7rem; }
    .match-reference-guides .record-predictions__content { border-radius: 0 0 13px 13px; }
}
