#monthly-race{margin:24px 0 32px;border:2px solid #192d91;border-radius:16px;overflow:hidden;background:#fff}.race-header{background:#14257b;padding:24px;color:#fff;border-bottom:6px solid #ffdc4f}.race-header>span{font-size:12px;font-weight:800;letter-spacing:.14em}.race-header h3{font-size:clamp(27px,5vw,38px);font-weight:900;margin:7px 0 14px;line-height:1.3}.race-header>b{display:inline-block;background:#ffdc4f;color:#14257b;padding:4px 12px;border-radius:5px}.race-header p{color:#fff;margin:12px 0 0;font-size:14px}.race-body{padding:22px}.race-body h4{font-size:20px;font-weight:900;margin:0 0 10px}.race-ranking{list-style:none;padding:0;margin:0 0 18px}.race-ranking li{display:grid;grid-template-columns:54px 1fr auto;gap:12px;align-items:center;padding:16px 8px;border-bottom:1px solid #dce3ef}.race-ranking li:first-child{background:#fff7cf}.race-rank{font-size:23px;font-weight:900;color:#163a9e}.race-ranking b{font-size:19px;font-weight:800}.race-ranking small,.race-award b small{display:block;font-size:12px;color:#51637b;font-weight:600}.race-ranking strong{font-size:30px;font-weight:900;color:#163a9e;white-space:nowrap}.race-ranking strong small{display:inline;margin-left:4px}.race-body summary{font-weight:800;cursor:pointer;padding:12px 0;color:#152b80}.race-picker{font-weight:800}.race-picker select{display:block;width:100%;margin-top:6px;background:white;color:#14243f}.race-body #race-position{font-weight:800;color:#163a9e}.race-awards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0}.race-award{background:#eff4fc;border-top:4px solid #173a9e;border-radius:8px;padding:18px;min-width:0}.race-award>strong{font-size:36px;color:#163a9e;font-weight:900}.race-award>strong small{font-size:14px;margin-left:5px}.race-award p{font-size:13px}.race-award b{display:block;margin:10px 0;font-size:17px}.race-item-leaders{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.race-item-leaders article{padding:14px;background:#f3f6fb;border-radius:6px}.race-item-leaders h4{font-size:16px}.race-item-leaders strong{color:#163a9e}.race-item-leaders p{font-weight:700;font-size:14px}.race-rule,.race-empty{font-size:13px;padding:8px}.members #period{color:#14257b;font-size:22px;font-weight:900}.members #matrix .count-value{font-size:18px;font-weight:800}@media(max-width:600px){.race-body{padding:14px}.race-header{padding:20px}.race-awards,.race-item-leaders{grid-template-columns:1fr}.race-ranking li{gap:6px;grid-template-columns:45px 1fr auto}.race-ranking b{font-size:17px}.race-ranking strong{font-size:27px}}

/* Keep names and scores together; put awards beside the complete ranking. */
.race-columns{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr);gap:24px;align-items:start}.race-overall,.race-prizes{min-width:0}.race-ranking li{grid-template-columns:42px minmax(0,1fr) 76px;gap:8px;padding:10px 4px}.race-ranking strong{text-align:right;font-size:26px}.race-ranking b{font-size:17px}.race-rank{font-size:20px}.race-prizes .race-awards{grid-template-columns:1fr;margin:0 0 12px;gap:10px}.race-prizes .race-award{padding:12px 14px}.race-award h4{font-size:18px;margin-bottom:4px}.race-award p{margin:4px 0}.race-award b{margin:5px 0}.race-prizes .race-item-leaders{grid-template-columns:1fr}.race-header{padding:16px 22px}.race-header h3{margin:4px 0 8px}.race-header p{margin-top:8px}.race-picker{font-size:13px}.race-picker select{padding:8px}.race-rule{margin-bottom:0}@media(max-width:760px){.race-columns{grid-template-columns:1fr;gap:18px}.race-ranking li{grid-template-columns:40px minmax(0,1fr) 70px}.race-prizes .race-awards{grid-template-columns:1fr}}

.race-month-label{display:flex;align-items:center;gap:10px;margin-top:14px;font-size:14px}.race-month-label select{background:#fff;color:#14257b;border:1px solid #c2cbe2;border-radius:6px;padding:8px;font:inherit}
