.pc-hero {
    background: #08243b;
    color: #fff;
    border-top: 8px solid #f6c443;
}
.pc-hero h1 { color: #fff; }
.pc-hero p { color: #dcebf5; }
.pc-modes {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin: 16px;
}
.pc-mode {
    padding: 20px;
    border-top: 5px solid #f6c443;
    display: flex;
    flex-direction: column;
}
.pc-mode p { flex-grow: 1; }
.pc-link {
    background: #002244;
    color: #fff;
    border-radius: 8px;
    white-space: normal;
}
.pc-link:focus-visible, .pc-nav a:focus-visible {
    outline: 3px solid #007a87;
    outline-offset: 3px;
}
.pc-status { font-size: 14px; color: #495663; }
.pc-nav { display: flex; flex-wrap: wrap; gap: 8px; }
.pc-nav a { white-space: normal; }
.pc-nav [aria-current='page'] { background: #002244; color: #fff; }
.pc-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin: 20px 0; }
.pc-slot-row { display: flex; gap: 10px; flex-wrap: wrap; margin: 8px 0 16px; }
.pc-slot-row select { width: auto; max-width: 100%; }
.pc-player-card { padding: 20px; border: 1px solid #ccd5de; border-top: 5px solid #f6c443; border-radius: 8px; }
.pc-player-card h3 { font-weight: bold; }
.pc-score { color: #002244; font-size: 48px; font-weight: bold; }
.pc-score span { font-size: 18px; font-weight: normal; }
.pc-condition { background: #fff8dd; padding: 12px; border-left: 3px solid #d3a521; }
.pc-condition p { margin-bottom: 0; }
.pc-position { margin: 8px 0; }
#pc-form select, #pc-form input { min-width: 0; max-width: 100%; }
@media (max-width: 650px) { .pc-pair { grid-template-columns: 1fr; } }
@media (max-width: 900px) {
    .pc-modes { grid-template-columns: 1fr; }
}

#pc-form [hidden] { display: none !important; }
