/* =====================================================================
   Състезания (#competitions). Префикс .cp-
   ===================================================================== */
.cp-page{display:flex; flex-direction:column; gap:20px; max-width:960px}
.cp-sec{display:flex; flex-direction:column; gap:12px}
.cp-sec .ph3{margin:0}
.cp-grid{display:grid; gap:14px; grid-template-columns:repeat(auto-fill, minmax(min(100%, 280px), 1fr))}
.cp-card{display:flex; flex-direction:column; gap:8px; color:var(--ptext); text-decoration:none; transition:border-color .2s, transform .2s var(--pease)}
.cp-card:hover{border-color:var(--pline2); transform:translateY(-2px)}
.cp-card .ph3, .cp-card p{margin:0}
.cp-card .pchip.gold{align-self:flex-start}
.cp-when{display:inline-flex; align-items:center; gap:5px; font-size:13px}
.cp-prizes{display:flex; align-items:center; gap:6px; color:var(--paccent); font-weight:600; font-size:14px}
.cp-rules{font-size:13px; line-height:1.5}
.cp-hero{display:flex; flex-direction:column; gap:10px}
.cp-hero .ph2, .cp-hero p{margin:0}
.cp-facts{display:grid; grid-template-columns:repeat(auto-fill, minmax(min(100%, 170px), 1fr)); gap:10px 18px; margin:4px 0}
.cp-facts dt{font-size:12px; color:var(--pmuted); text-transform:uppercase; letter-spacing:.06em}
.cp-facts dd{margin:2px 0 0; font-weight:600}
.cp-board{display:flex; flex-direction:column; gap:10px}
.cp-board .ph3{margin:0}
.cp-list{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:4px}
.cp-list li{display:grid; grid-template-columns:32px auto minmax(0,1fr) auto auto auto; align-items:center; gap:10px; padding:8px 10px; border-radius:12px; background:rgba(255,255,255,.03)}
.cp-list li.me{background:rgba(255,197,61,.12); box-shadow:inset 0 0 0 1px rgba(255,197,61,.45)}
.cp-list li.nq{opacity:.6}
.cp-rank{font-weight:700; text-align:center}
.cp-list li:nth-child(1) .cp-rank{color:#ffd56a} .cp-list li:nth-child(2) .cp-rank{color:#dfe5fb} .cp-list li:nth-child(3) .cp-rank{color:#e3a36b}
.cp-nm{min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-weight:600}
.cp-wl{font-size:13px}
.cp-fgrid{display:grid; gap:12px; grid-template-columns:repeat(auto-fill, minmax(min(100%, 200px), 1fr))}
.sn-comp{display:flex; align-items:center; gap:14px; color:var(--ptext); text-decoration:none}
.sn-comp div{display:flex; flex-direction:column; gap:2px; flex:1; min-width:0}
@media (max-width:520px){ .cp-list li{grid-template-columns:26px auto minmax(0,1fr) auto auto; gap:8px} .cp-wl{display:none} }
