.rl-challenges{color:var(--text);min-width:0}
.rl-challenges button,.rl-challenges input,.rl-challenges select,.rl-challenges textarea{font:inherit;color:var(--text);background:var(--card,#101316);border:1px solid var(--border,#293039);border-radius:6px;padding:10px 12px;box-sizing:border-box}
.rl-challenges button{cursor:pointer;min-height:44px}.rl-challenges button:hover{border-color:#ef3650}.rl-challenges button:disabled{opacity:.6;cursor:wait}.rl-challenges button.primary{background:#ed1839;color:#fff;border-color:#ed1839}.rl-challenges textarea{resize:vertical}.rl-challenges input[type=checkbox]{accent-color:#ed1839}
.rl-catalog-head,.rl-detail-head,.rl-attempt>header,.rl-attempts>header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}
.rl-catalog-head h2,.rl-detail-head h2{font-size:22px;line-height:1.25;margin:0;overflow-wrap:anywhere}
.rl-catalog-head select{max-width:180px;width:45%;min-height:44px}
.rl-catalog-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.rl-challenge-item{display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;padding:18px;border:1px solid var(--border,#293039);border-radius:8px;background:var(--card,#101316)}
.rl-challenge-item h3{font-size:18px;line-height:1.3;margin:5px 0;overflow-wrap:anywhere}
.rl-challenge-item p{margin:8px 0}.rl-challenge-item>button{grid-column:2;justify-self:start;min-height:44px}
.rl-challenge-icon{color:#f42b45}.rl-challenge-icon svg,.rl-challenge-badge svg{width:24px;height:24px}
.rl-detail-head{justify-content:flex-start}.rl-detail-head>button{min-width:44px;min-height:44px;flex-shrink:0}
.rl-rules{max-width:760px;margin:0 auto 28px;line-height:1.6}.rl-rules li{margin:10px 0}.rl-rules ol{padding-left:22px}
.rl-submit{display:grid;gap:14px;max-width:760px;margin:0 auto;padding:24px 0;border-block:1px solid var(--border,#293039)}
.rl-submit label{display:grid;gap:8px}.rl-submit input,.rl-submit textarea{width:100%;min-width:0}.rl-submit input[type=file]{padding:12px;white-space:normal}
.rl-submit .rl-confirm{display:flex;align-items:flex-start;gap:10px}.rl-confirm input{width:20px;height:20px;flex-shrink:0}
.rl-submit progress{width:100%;accent-color:#f42b45}.rl-attempts{max-width:760px;margin:32px auto 0}
.rl-attempt{padding:20px 0;border-bottom:1px solid var(--border,#293039)}.rl-attempt time{font-size:12px}.rl-attempt video{width:100%;max-height:520px;background:#000;aspect-ratio:16/9;object-fit:contain;border-radius:6px}
.rl-attempt p{overflow-wrap:anywhere;white-space:pre-wrap}.rl-verification{display:flex;flex-wrap:wrap;gap:8px 16px;justify-content:space-between;margin:16px 0}
.rl-vote-actions{display:flex;flex-wrap:wrap;gap:8px}.rl-vote-actions button{min-height:44px}.rl-vote-actions [aria-pressed=true]{border-color:#49d7b1;color:#49d7b1}
.rl-challenge-badge:empty{display:none}.rl-challenge-badge button{display:inline-flex;align-items:center;gap:8px;border:1px solid #e82d46;color:inherit;padding:8px 12px;margin:8px 0;min-height:44px;text-align:left;border-radius:6px;background:var(--card,#101316)}
.rl-challenge-badge span{display:grid;gap:2px}.rl-challenge-badge strong{font-size:12px;color:#49d7b1}.rl-challenges .is-verified{color:#49d7b1}.rl-challenges small{line-height:1.5}
.rl-error{color:#ff8c9a;overflow-wrap:anywhere}.rl-empty{padding:32px 0}.rl-empty button{display:block;margin-top:16px}
.rl-challenges button:focus-visible,.rl-challenges input:focus-visible,.rl-challenges select:focus-visible{outline:2px solid #49d7b1;outline-offset:3px}
@media(max-width:600px){.rl-catalog-list{grid-template-columns:minmax(0,1fr)}.rl-catalog-head{align-items:flex-start}.rl-catalog-head h2{font-size:20px}.rl-attempt>header{flex-wrap:wrap}.rl-challenge-item{padding:14px}.rl-vote-actions button{flex:1 1 140px}}
