/* Competition panel: sits on the parchment mission drawer, so colours derive from the text colour. */
.cp{display:grid;gap:16px}
.cp-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.cp-head h4{margin:0 0 2px}
.cp-dim{opacity:.7;font-size:14px;margin:0}
.cp-fine{opacity:.65;font-size:12.5px;margin:0;line-height:1.5}
.cp-move{display:grid;gap:4px;padding:14px 16px;border-radius:12px;background:color-mix(in srgb,currentColor 7%,transparent);border:1px solid color-mix(in srgb,currentColor 15%,transparent)}
.cp-move small{text-transform:uppercase;letter-spacing:1.5px;font-size:11px;opacity:.65}
.cp-move b{font-size:18px;line-height:1.3}
.cp-move p{margin:0;font-size:14px;line-height:1.5}
.cp-move.act{border-color:#b3261e;box-shadow:inset 4px 0 0 #b3261e}
.cp-move.ok{border-color:#4f7a25;box-shadow:inset 4px 0 0 #4f7a25}
.cp-enter{display:grid;gap:8px;padding:16px;border-radius:12px;border:1.5px dashed color-mix(in srgb,currentColor 30%,transparent)}
.cp-enter .f{margin:0}
.cp-enter .btn{justify-self:start;margin-top:6px}
.cp-unlock{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;border-radius:10px;background:color-mix(in srgb,currentColor 6%,transparent);font-size:14px}
.cp-sub{margin:4px 0 0;font-size:12px;text-transform:uppercase;letter-spacing:1.5px;opacity:.7}
.cp-list{display:grid;gap:12px}
.cp-entry{display:grid;gap:10px;padding:14px 16px;border-radius:12px;border:1px solid color-mix(in srgb,currentColor 18%,transparent);background:color-mix(in srgb,currentColor 3%,transparent)}
.cp-entry.me{border-color:color-mix(in srgb,currentColor 45%,transparent)}
.cp-entry.win{border-color:#4f7a25;box-shadow:inset 4px 0 0 #4f7a25}
.cp-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto 12px;grid-template-areas:"rank name score bar" "rank tag score bar";column-gap:10px;align-items:center}
.cp-row .cp-vbar{grid-area:bar;height:48px}
.cp-rank{grid-area:rank;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:13px;background:color-mix(in srgb,currentColor 12%,transparent)}
.cp-name{grid-area:name;font-size:16px}.cp-name small{font-weight:400;opacity:.65}
.cp-tag{grid-area:tag;font-size:12.5px;opacity:.7}
.cp-score{grid-area:score;text-align:right;font-variant-numeric:tabular-nums}
.cp-score b{font-size:28px;line-height:1}.cp-score small{opacity:.6;font-size:13px}
.cp-meter{display:block;height:6px;border-radius:3px;background:color-mix(in srgb,currentColor 12%,transparent);overflow:hidden}
.cp-meter i{display:block;height:100%;background:#4f7a25;border-radius:3px}
.cp-sum{margin:0;font-size:15px;line-height:1.5}
.cp-crit{display:grid;gap:10px}
.cp-crit div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 10px;font-size:14px}
.cp-crit div span{font-weight:600}.cp-crit div b{font-variant-numeric:tabular-nums}
.cp-crit small{opacity:.75;font-size:13px}
.cp-gaps{font-size:14px}.cp-gaps b{font-size:13px}.cp-gaps ul{margin:4px 0 0;padding-left:18px}.cp-gaps li{margin-bottom:3px}
.cp-work summary{cursor:pointer;font-size:14px}
.cp-work pre{white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit;font-size:13.5px;max-height:420px;overflow:auto;margin:8px 0 0}
.cp-btns{display:flex;gap:8px;flex-wrap:wrap}
/* inbox */
.ib-comp{display:grid;gap:2px}.ib-comp small{opacity:.7;font-size:12.5px}
.my-cols > div:has([data-comp-agent]){grid-column:1/-1}
.my-list li.need{box-shadow:inset 3px 0 0 var(--accent,#c9ff3f);padding-left:10px}
.my-list li > span:first-child{flex:1;min-width:0}

.cp-head{align-items:center}.cp-head > div:first-child{flex:1}
.cp-head h4{font-size:20px;letter-spacing:.5px}
.cp-timer{display:grid;justify-items:end;line-height:1.1}
.cp-timer small{font-size:11px;text-transform:uppercase;letter-spacing:1.5px;opacity:.65}
.cp-timer b{font-size:22px;font-variant-numeric:tabular-nums}
.cp-vbar{display:block;width:12px;border-radius:4px;background:color-mix(in srgb,currentColor 12%,transparent);position:relative;overflow:hidden}
.cp-vbar i{position:absolute;left:0;right:0;bottom:0;background:#4f7a25;border-radius:4px}
.cp-crit div{grid-template-columns:minmax(0,1fr) auto 8px;align-items:center}
.cp-crit .cp-vbar{width:8px;height:26px;grid-row:1/3;grid-column:3}
.cp-crit div > span:first-child{grid-column:1;grid-row:1}.cp-crit div b{grid-column:2;grid-row:1}
.cp-crit small{grid-column:1/3;grid-row:2}

.cp-pick{display:grid;gap:8px}
.cp-pick input[type=file]{font-size:13px}
.cp-thumbs{display:flex;flex-wrap:wrap;gap:8px}
.cp-thumbs span{position:relative;width:76px;height:76px;border-radius:8px;overflow:hidden;border:1px solid color-mix(in srgb,currentColor 20%,transparent)}
.cp-thumbs img{width:100%;height:100%;object-fit:cover;display:block}
.cp-thumbs .x{position:absolute;top:3px;right:3px;width:22px;height:22px;border-radius:50%;border:0;background:rgba(0,0,0,.65);color:#fff;font-size:11px;cursor:pointer}
.cp-imgs{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px}
.cp-imgs a{display:block;aspect-ratio:4/3;border-radius:8px;overflow:hidden;border:1px solid color-mix(in srgb,currentColor 18%,transparent)}
.cp-imgs img{width:100%;height:100%;object-fit:cover;display:block;transition:filter .2s}
.cp-imgs.blur img{filter:blur(14px)}
.cp-flag{display:grid;gap:3px;padding:10px 12px;border-radius:10px;border:1px solid #b3261e;background:color-mix(in srgb,#b3261e 9%,transparent);font-size:14px}
.cp-flag b{color:#b3261e}.cp-flag small{opacity:.75}
.cp-safe{margin:0;font-size:13px;color:#4f7a25}

.cp-by{display:flex;align-items:center;gap:8px}.cp-by img{border-radius:6px;flex:none}

/* video entries */
.cp-video{display:block;width:100%;max-height:420px;margin:10px 0;border-radius:12px;background:#000}
.cp-vprev{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:8px}
.cp-vprev video{width:220px;max-height:140px;border-radius:10px;background:#000}
.cp-vprev .x{border:0;background:none;cursor:pointer;font-size:16px;opacity:.7}
.cp-unlock input[type=file]{max-width:240px}
