/* SportChallenges challenge arena — presentation-only gaming theme. */
:root {
  --arena-bg:#090a0c;--arena-panel:#121316;--arena-panel-2:#191a1e;
  --arena-border:rgba(255,255,255,.12);--arena-orange:#ff6815;
  --arena-cyan:#25d9e8;--arena-green:#45e07b;--arena-text:#f4f4f2;
  --arena-muted:#a5a6aa;--arena-shadow:0 24px 60px rgba(0,0,0,.44);
}

.sfide-gaming-page,.sfida-page,.prestazione-page{color:var(--arena-text)}
body:has(.sfide-gaming-page),body:has(.sfida-page),body:has(.prestazione-page){
  background:radial-gradient(circle at 82% 8%,rgba(255,104,21,.1),transparent 28rem),linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),var(--arena-bg);
  background-size:auto,32px 32px,32px 32px,auto
}

/* Challenge catalogue */
.sfide-gaming-page{max-width:1240px;padding-top:28px;padding-bottom:110px}
.challenges-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:end;overflow:hidden;margin-bottom:28px;padding:clamp(24px,4vw,48px);border:1px solid var(--arena-border);border-left:4px solid var(--arena-orange);border-radius:14px;background:linear-gradient(110deg,rgba(255,104,21,.13),transparent 42%),linear-gradient(145deg,#17181b,#0e0f11);box-shadow:var(--arena-shadow)}
.challenges-hero:after{position:absolute;top:-80px;right:-40px;width:300px;height:300px;border:1px solid rgba(255,104,21,.2);border-radius:50%;box-shadow:0 0 0 28px rgba(255,104,21,.035),0 0 0 62px rgba(255,104,21,.02);content:"";pointer-events:none}
.challenges-eyebrow,.challenge-kicker{color:var(--arena-orange);font-size:11px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.challenges-hero h1{margin:8px 0 10px;color:#fff;font-family:"Arial Narrow","Roboto Condensed",Impact,sans-serif;font-size:clamp(40px,6vw,74px);font-weight:900;letter-spacing:-.035em;line-height:.9;text-transform:uppercase}
.challenges-hero h1 span{color:var(--arena-orange)}
.challenges-hero p{max-width:670px;margin:0;color:var(--arena-muted);font-size:clamp(15px,1.7vw,18px)}
.challenges-hero-hud{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,auto);gap:1px;overflow:hidden;border:1px solid var(--arena-border);border-radius:9px;background:var(--arena-border)}
.challenges-hero-hud span{display:grid;min-width:86px;padding:12px;background:rgba(12,13,15,.94);color:var(--arena-muted);font-size:10px;font-weight:800;text-align:center;text-transform:uppercase}
.challenges-hero-hud b{color:var(--arena-cyan);font-family:"Arial Narrow","Roboto Condensed",sans-serif;font-size:20px}
.challenge-filters{align-items:center;justify-content:center;gap:8px;margin:0 0 24px!important;padding:10px;border:1px solid var(--arena-border);border-radius:10px;background:rgba(18,19,22,.9)}
.challenge-filters>.col:first-child,.challenge-filters>.col:last-child{display:none}
.challenge-filters .col{flex:0 0 auto;width:auto;padding:0}
.challenge-filters .icon a{display:grid;min-width:44px;min-height:42px;place-items:center;border:1px solid transparent;border-radius:7px;background:#222328;color:#fff;text-decoration:none;transition:border-color .15s ease,background .15s ease,transform .15s ease}
.challenge-filters .icon a:hover,.challenge-filters .icon a:focus{border-color:var(--arena-orange);background:rgba(255,104,21,.16);transform:translateY(-2px)}
.challenge-create-card{margin:0 0 24px;border:1px dashed rgba(37,217,232,.45);border-radius:10px;background:rgba(37,217,232,.055);text-align:center}
.challenge-create-card .challenge-link{display:block;padding:14px;color:var(--arena-cyan);font-weight:900;letter-spacing:.04em;text-decoration:none;text-transform:uppercase}
.challenge-grid-item{display:flex}
.challenge-card.card{position:relative;width:100%;overflow:hidden;border:1px solid var(--arena-border);border-radius:12px;background:linear-gradient(155deg,#1a1b1f,#101113);box-shadow:0 14px 35px rgba(0,0,0,.28);transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}
.challenge-card.card:hover{border-color:rgba(255,104,21,.62);box-shadow:0 22px 48px rgba(0,0,0,.42),0 0 28px rgba(255,104,21,.07);transform:translateY(-5px)}
.challenge-card .card-img-top{width:100%;aspect-ratio:16/9;border-bottom:1px solid var(--arena-border);object-fit:cover;filter:saturate(.88) contrast(1.06);transition:filter .18s ease,transform .26s ease}
.challenge-card:hover .card-img-top{filter:saturate(1.08) contrast(1.08);transform:scale(1.025)}
.challenge-card .card-body{align-content:start;margin:0;padding:18px}
.challenge-card .card-title{margin:6px 0 8px;color:#fff;font-family:"Arial Narrow","Roboto Condensed",Impact,sans-serif;font-size:22px;font-weight:900;line-height:1;text-transform:uppercase}
.challenge-card .card-text{color:var(--arena-muted);font-size:13px}
.challenge-stat{display:block;color:var(--arena-muted);font-size:10px;font-weight:800;text-align:right;text-transform:uppercase}
.challenge-stat b{display:block;color:var(--arena-cyan);font-size:18px}
.challenge-difficulty{margin-top:8px;text-align:right}
.challenge-play-btn{display:flex;width:100%;align-items:center;justify-content:space-between;margin-top:13px;border:0;border-radius:7px;background:var(--arena-orange);color:#150b05;font-weight:900;letter-spacing:.05em;text-transform:uppercase}

/* Single challenge, score entry, duels and ranking */
.sfida-page{max-width:1180px;padding-bottom:110px}
.sfida-page .card,.sfida-insert-wrap,.sfida-page .duel-state-card,.sfida-page .sfida-viral-card{border:1px solid var(--arena-border)!important;border-radius:12px!important;background:linear-gradient(135deg,rgba(255,104,21,.045),transparent 40%),var(--arena-panel)!important;color:var(--arena-text)!important;box-shadow:var(--arena-shadow)!important}
.sfida-page .card-img-top,.sfida-insert-wrap .card-img-top{border-color:var(--arena-border)!important;border-radius:9px!important}
.sfida-page .card-title,.sfida-insert-wrap .card-title,.sfida-page h1,.sfida-page h2,.sfida-page h3,.sfida-page h5{color:#fff!important;font-family:"Arial Narrow","Roboto Condensed",Impact,sans-serif;font-weight:900!important;letter-spacing:-.015em;text-transform:uppercase}
.sfida-page p,.sfida-page .card-text,.sfida-page .card-text i,.sfida-page .duel-history-meta,.sfida-page .text-muted,.sfida-insert-wrap p{color:var(--arena-muted)!important}
.sfida-page .form-control,.sfida-page .form-select,.sfida-insert-wrap .form-control,.sfida-insert-wrap .form-select{min-height:46px;border:1px solid var(--arena-border);border-radius:7px;background:#202126;color:#fff}
.sfida-page .form-control:focus,.sfida-page .form-select:focus,.sfida-insert-wrap .form-control:focus,.sfida-insert-wrap .form-select:focus{border-color:var(--arena-orange);box-shadow:0 0 0 3px rgba(255,104,21,.16)}
.sfida-page .form-label,.sfida-insert-wrap .form-label{color:#ddd;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.sfida-page .btn,.sfida-insert-wrap .btn{min-height:42px;border-radius:7px;font-weight:900}
.sfida-page .btn-warning,.sfida-page .btn-primary,.sfida-insert-wrap .btn-warning,.sfida-insert-wrap .btn-primary{border-color:var(--arena-orange);background:var(--arena-orange);color:#160b05}
.sfida-page .btn-outline-dark,.sfida-insert-wrap .btn-outline-dark{border-color:rgba(255,255,255,.3);color:#fff}
.sfida-page .btn-outline-dark:hover{border-color:var(--arena-orange);background:var(--arena-orange);color:#160b05}
.sfida-page .duel-state-badge.primary{background:var(--arena-orange);color:#160b05}
.sfida-page .duel-state-badge.warning{background:rgba(37,217,232,.13);color:var(--arena-cyan)}
.sfida-page .duel-state-badge.success{background:rgba(69,224,123,.13);color:var(--arena-green)}
.sfida-page .duel-scorebox,.sfida-page .duel-history-item{border-color:var(--arena-border);background:var(--arena-panel-2);color:var(--arena-text)}
.sfida-page .duel-scorebox .label{color:var(--arena-muted)}
.sfida-page .duel-scorebox .value{color:var(--arena-cyan);font-family:"Arial Narrow","Roboto Condensed",Impact,sans-serif;font-size:30px}
.sfida-page .table-responsive,.sfida-page .table{overflow:hidden;border:1px solid var(--arena-border);border-radius:10px;background:var(--arena-panel);color:var(--arena-text)}
.sfida-page .table thead th{border-color:var(--arena-border);background:#202126;color:var(--arena-orange);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.sfida-page .table td,.sfida-page .table th,.sfida-page .table-striped>tbody>tr:nth-of-type(odd)>*{border-color:var(--arena-border);background:transparent;color:#e7e7e5}
.sfida-page .table tbody tr:hover>*{background:rgba(255,104,21,.08)}

/* Single performance */
.prestazione-page{max-width:900px;padding-top:26px;padding-bottom:110px}
.prestazione-page .prestazione-card,.prestazione-page .card{overflow:hidden;border:1px solid var(--arena-border);border-radius:14px;background:linear-gradient(145deg,rgba(255,104,21,.055),transparent 35%),var(--arena-panel);color:var(--arena-text);box-shadow:var(--arena-shadow)}
.prestazione-page .card-body{padding:clamp(18px,4vw,32px)}
.prestazione-page .card-title,.prestazione-page h1,.prestazione-page h2,.prestazione-page h3,.prestazione-page h5{color:#fff;font-family:"Arial Narrow","Roboto Condensed",Impact,sans-serif;font-weight:900;text-transform:uppercase}
.prestazione-page p,.prestazione-page .card-text{color:var(--arena-muted)}
.prestazione-page .profile-image{border:2px solid var(--arena-orange);border-radius:50%}
.prestazione-page .linknodecoration{color:#fff}
.prestazione-page .prestazione-meta-row{margin:14px 0;padding:10px 12px;border-left:3px solid var(--arena-orange);background:rgba(255,104,21,.08);color:#fff}
.prestazione-page .prestazione-cta{width:min(100%,520px);min-height:46px;border-radius:7px;font-weight:900}
.prestazione-page .btn-warning{border-color:var(--arena-orange);background:var(--arena-orange);color:#160b05}
.prestazione-page .btn-outline-dark{border-color:rgba(255,255,255,.3);color:#fff}

@media(max-width:767.98px){
  .challenges-hero{grid-template-columns:1fr;gap:20px}
  .challenges-hero-hud{grid-template-columns:repeat(3,1fr)}
  .challenges-hero-hud span{min-width:0;padding:9px 5px}
  .challenge-card .card-body{padding:16px}
  .sfida-primary-actions,.sfida-viral-actions,.duel-state-actions,.duel-history-list{grid-template-columns:1fr!important}
  .sfida-page .btn-warning{min-width:0;width:100%}
}
@media(prefers-reduced-motion:reduce){.challenge-card.card,.challenge-card .card-img-top,.challenge-filters .icon a{transition:none}}
@media print{body:has(.sfide-gaming-page),body:has(.sfida-page),body:has(.prestazione-page){background:#fff}}
