.pm-challenge-modal-backdrop{background:var(--overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:var(--s-4);z-index:1000;animation:pm-challenge-fade-in var(--dur-snap) var(--ease-out);justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}@keyframes pm-challenge-fade-in{0%{opacity:0}to{opacity:1}}.pm-challenge-modal{background:var(--surface);border:var(--border-w) solid var(--ink);border-radius:var(--r-lg);box-shadow:var(--shadow-card);width:100%;max-width:480px;padding:var(--s-6);max-height:90vh;position:relative;overflow-y:auto}.pm-challenge-modal__close{top:var(--s-3);right:var(--s-3);font-size:var(--t-xl);cursor:pointer;border-radius:var(--r-full);width:32px;height:32px;color:var(--ink);transition:background var(--dur-instant);background:0 0;border:none;justify-content:center;align-items:center;font-weight:800;display:flex;position:absolute}.pm-challenge-modal__close:hover{background:var(--bg-warm)}.pm-challenge-badge-banner{background:var(--tint-amber);border:var(--border-w) solid var(--ink);border-radius:var(--r-md);padding:var(--s-3) var(--s-4);margin-bottom:var(--s-4);align-items:center;gap:var(--s-3);display:flex}.pm-challenge-badge-banner__icon{font-size:var(--t-2xl);line-height:1}.pm-challenge-badge-banner__text{font-size:var(--t-sm);color:var(--ink);line-height:1.4}.pm-challenge-badge-banner__text strong{font-size:var(--t-base);color:var(--amber-warm);display:block}.pm-challenge-title{font-size:var(--t-2xl);margin:0 0 var(--s-2) 0;color:var(--ink);align-items:center;gap:var(--s-2);font-weight:900;display:flex}.pm-challenge-title--center{justify-content:center}.pm-challenge-desc{font-size:var(--t-md);color:var(--ink-3);margin:0 0 var(--s-5) 0;line-height:1.45}.pm-challenge-stats-card{background:var(--bg-warm);border:var(--border-w) solid var(--ink);border-radius:var(--r-md);padding:var(--s-3);margin-bottom:var(--s-5);justify-content:space-around;display:flex}.pm-challenge-stat-item{text-align:center}.pm-challenge-stat-item__label{font-size:var(--t-xs);text-transform:uppercase;color:var(--ink-4);margin-bottom:var(--s-1);font-weight:700}.pm-challenge-stat-item__val{font-size:var(--t-2xl);color:var(--ink);font-weight:900}.pm-challenge-val--gold{color:var(--amber-warm)}.pm-challenge-val--mint{color:var(--ok-text)}.pm-challenge-error{color:var(--danger-text);font-size:var(--t-sm);margin-bottom:var(--s-2)}.pm-challenge-error-title{color:var(--danger-text);font-size:var(--t-2xl);margin:0 0 var(--s-2) 0;font-weight:900}.pm-challenge-share-box{margin-top:var(--s-4)}.pm-challenge-input-group{gap:var(--s-2);margin-bottom:var(--s-4);display:flex}.pm-challenge-input{background:var(--surface);border:var(--border-w) solid var(--ink);border-radius:var(--r-sm);padding:var(--s-2) var(--s-3);font-size:var(--t-sm);font-family:var(--font-mono);color:var(--ink);outline:none;flex:1}.pm-challenge-btn{background:var(--tint-butter);border:var(--border-w) solid var(--ink);border-radius:var(--r-sm);padding:var(--s-2) var(--s-4);font-size:var(--t-sm);color:var(--ink);cursor:pointer;box-shadow:var(--shadow-1);transition:transform var(--dur-instant), box-shadow var(--dur-instant);justify-content:center;align-items:center;gap:var(--s-1);font-weight:800;text-decoration:none;display:inline-flex}.pm-challenge-btn:hover{box-shadow:var(--shadow-2);transform:translate(-1px,-1px)}.pm-challenge-btn:active{box-shadow:none;transform:translate(1px,1px)}.pm-challenge-btn--primary{background:var(--tint-mint);color:var(--ink);width:100%;font-size:var(--t-md);padding:var(--s-3)}.pm-challenge-btn--orange{background:var(--tint-amber);color:var(--ink)}.pm-challenge-btn--secondary{background:var(--bg-warm);color:var(--ink)}.pm-challenge-btn--mt{margin-top:var(--s-4)}.pm-challenge-btn--mb{margin-bottom:var(--s-3)}.pm-challenge-btn--share-main{width:100%;margin-top:var(--s-3);font-size:var(--t-sm);padding:var(--s-3)}.pm-challenge-active-banner{background:var(--tint-butter);border-bottom:var(--border-w) solid var(--ink);padding:var(--s-2) var(--s-4);font-size:var(--t-xs);color:var(--ink);z-index:50;box-shadow:var(--shadow-xs);position:relative}.pm-challenge-active-banner__inner{justify-content:space-between;align-items:center;gap:var(--s-3);flex-wrap:wrap;max-width:980px;margin:0 auto;display:flex}.pm-challenge-active-banner__left{align-items:center;gap:var(--s-2);flex-wrap:wrap;display:flex}.pm-challenge-active-banner__badge{background:var(--surface);border:var(--border-w) solid var(--ink);border-radius:var(--r-pill);font-size:var(--t-2xs);letter-spacing:.05em;color:var(--ink);white-space:nowrap;padding:1px 8px;font-weight:900}.pm-challenge-active-banner__text{color:var(--ink);font-weight:700}.pm-challenge-active-banner__text strong{color:var(--amber-warm)}.pm-challenge-active-banner__sub{color:var(--ink-4);font-weight:600}.pm-challenge-active-banner__right{align-items:center;display:flex}.pm-challenge-active-banner__info{font-size:var(--t-2xs);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-4);background:var(--bg-warm);border:1px solid var(--ink);border-radius:var(--r-pill);white-space:nowrap;padding:2px 8px;font-weight:800}.pm-challenge-top-banner{background:var(--tint-butter);border-bottom:var(--border-w) solid var(--ink);padding:var(--s-2) var(--s-4);justify-content:center;align-items:center;gap:var(--s-2);font-size:var(--t-xs);color:var(--ink);text-align:center;z-index:50;font-weight:700;display:flex;position:relative}.pm-challenge-top-banner strong{color:var(--amber-warm)}.pm-challenge-top-banner__action{background:var(--surface);border:var(--border-w) solid var(--ink);border-radius:var(--r-pill);padding:2px var(--s-2);font-size:var(--t-xs);cursor:pointer;box-shadow:var(--shadow-xs);font-weight:800}.pm-challenge-play-wrapper{max-width:520px;margin:var(--s-6) auto;padding:var(--s-4);box-sizing:border-box}.pm-challenge-play-card{background:var(--surface);border:var(--border-w) solid var(--ink);border-radius:var(--r-lg);box-shadow:var(--shadow-card);padding:var(--s-6);text-align:center;box-sizing:border-box;position:relative;overflow:hidden}.pm-challenge-title__icon{font-size:var(--t-xl);line-height:1;display:inline-flex}.pm-challenge-matchup,.pm-challenge-ghost-bar{background:var(--tint-sky);border:var(--border-w) solid var(--ink);border-radius:var(--r-md);padding:var(--s-3);margin:var(--s-4) 0 var(--s-5) 0;gap:var(--s-2);text-align:left;box-sizing:border-box;flex-direction:column;display:flex}.pm-challenge-matchup__side{align-items:center;gap:var(--s-3);background:var(--surface);border:var(--border-w) solid var(--ink);border-radius:var(--r-sm);padding:var(--s-2) var(--s-3);box-shadow:var(--shadow-xs);box-sizing:border-box;min-width:0;display:flex}.pm-challenge-matchup__avatar{font-size:var(--t-lg);background:var(--bg-warm);border:var(--border-w) solid var(--ink);border-radius:var(--r-full);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;line-height:1;display:flex}.pm-challenge-matchup__info{flex-direction:column;flex:1;justify-content:center;min-width:0;display:flex}.pm-challenge-matchup__role{font-size:var(--t-2xs);text-transform:uppercase;color:var(--ink-4);letter-spacing:.05em;font-weight:800;line-height:1.2}.pm-challenge-matchup__name{font-size:var(--t-sm);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-weight:800;line-height:1.3;overflow:hidden}.pm-challenge-matchup__badge{flex-direction:column;flex-shrink:0;align-items:flex-end;display:flex}.pm-challenge-matchup__score{font-size:var(--t-sm);color:var(--ink);white-space:nowrap;font-weight:900}.pm-challenge-matchup__time{font-size:var(--t-xs);color:var(--ink-4);font-weight:700;font-family:var(--font-mono);white-space:nowrap}.pm-challenge-matchup__status{font-size:var(--t-xs);color:var(--ink);background:var(--tint-butter);border:var(--border-w) solid var(--ink);border-radius:var(--r-pill);box-shadow:var(--shadow-xs);white-space:nowrap;padding:2px 8px;font-weight:900}.pm-challenge-matchup__divider{z-index:1;justify-content:center;align-items:center;margin:-4px 0;display:flex;position:relative}.pm-challenge-matchup__divider:before{content:"";border-top:1.5px dashed var(--ink-4);z-index:0;position:absolute;top:50%;left:0;right:0}.pm-challenge-matchup__vs{z-index:1;background:var(--surface);border:var(--border-w) solid var(--ink);border-radius:var(--r-pill);font-size:var(--t-2xs);letter-spacing:.08em;color:var(--ink);box-shadow:var(--shadow-xs);padding:1px 10px;font-weight:900;position:relative}.pm-challenge-matchup__side--winner{border-color:var(--ok-text);background:var(--tint-mint)}.pm-challenge-matchup__win-tag{font-size:var(--t-2xs);color:var(--ok-text);letter-spacing:.05em;margin-top:2px;font-weight:900}.pm-challenge-goal-box{background:var(--bg-warm);border:var(--border-w) solid var(--ink);border-radius:var(--r-md);padding:var(--s-4);margin:var(--s-4) 0;text-align:left;box-sizing:border-box}.pm-challenge-goal-box__header{align-items:center;gap:var(--s-2);margin-bottom:var(--s-2);display:flex}.pm-challenge-goal-box__icon{font-size:var(--t-lg);line-height:1}.pm-challenge-goal-box__title{font-size:var(--t-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--amber-warm);font-weight:900}.pm-challenge-goal-box__target{font-size:var(--t-base);color:var(--ink);margin-bottom:var(--s-3);padding-bottom:var(--s-2);border-bottom:1.5px dashed var(--ink-4);font-weight:800}.pm-challenge-goal-box__target strong{color:var(--amber-warm);font-size:var(--t-lg)}.pm-challenge-goal-box__sub{font-size:var(--t-xs);color:var(--ink-4);font-weight:600}.pm-challenge-goal-box__steps{gap:var(--s-2);flex-direction:column;display:flex}.pm-challenge-step{align-items:flex-start;gap:var(--s-2);font-size:var(--t-xs);color:var(--ink-3);line-height:1.45;display:flex}.pm-challenge-step__num{background:var(--surface);border:var(--border-w) solid var(--ink);border-radius:var(--r-full);width:20px;height:20px;font-size:var(--t-2xs);color:var(--ink);flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;font-weight:900;display:inline-flex}.pm-challenge-btn--start{font-size:var(--t-base);padding:var(--s-3) var(--s-4);font-weight:900}.pm-challenge-decision-detail{font-size:var(--t-sm);color:var(--ink-3);margin-top:var(--s-2)}.pm-challenge-subtext{font-size:var(--t-xs);color:var(--ink-4);margin-top:var(--s-3)}@media (max-width:520px){.pm-challenge-play-wrapper{margin:var(--s-2) auto var(--s-8) auto;padding:var(--s-2)}.pm-challenge-play-card{padding:var(--s-4) var(--s-3);border-radius:var(--r-md)}.pm-challenge-title{font-size:var(--t-lg);gap:var(--s-1);word-break:break-word}.pm-challenge-desc{font-size:var(--t-sm);margin-bottom:var(--s-3)}.pm-challenge-matchup{padding:var(--s-2);margin:var(--s-3) 0 var(--s-4) 0}.pm-challenge-matchup__side{padding:var(--s-2);gap:var(--s-2)}.pm-challenge-matchup__avatar{width:28px;height:28px;font-size:var(--t-base)}.pm-challenge-matchup__name,.pm-challenge-matchup__score{font-size:var(--t-xs)}.pm-challenge-matchup__time{font-size:var(--t-2xs)}}.pm-challenge-decision-box{margin:var(--s-5) 0;padding:var(--s-4);background:var(--bg-warm);border-radius:var(--r-md);border:var(--border-w) solid var(--ink)}.pm-challenge-decision-label{font-size:var(--t-sm);color:var(--ink-4);font-weight:800}.pm-challenge-decision-title{font-size:var(--t-2xl);margin:var(--s-2) 0;color:var(--ink);font-weight:900}.pm-challenge-decision-title--win{color:var(--ok-text)}.pm-challenge-claim-box{background:var(--tint-mint);border:var(--border-w) solid var(--ink);border-radius:var(--r-md);padding:var(--s-5);margin-top:var(--s-6);text-align:left}.pm-challenge-claim-box__title{font-size:var(--t-lg);color:var(--ok-text);margin:0 0 var(--s-2) 0;font-weight:900}.pm-challenge-claim-desc{font-size:var(--t-sm);color:var(--ok-text);margin:0}.pm-challenge-claim-note{font-size:var(--t-xs);color:var(--ink-3)}.pm-challenge-claim-tabs{gap:var(--s-2);margin:var(--s-3) 0;display:flex}.pm-challenge-claim-tab{background:var(--surface);border:var(--border-w) solid var(--ink);border-radius:var(--r-xs);padding:var(--s-2);font-size:var(--t-xs);cursor:pointer;text-align:center;flex:1;font-weight:700}.pm-challenge-claim-tab--active{background:var(--tint-mint);color:var(--ink)}.pm-challenge-claim-success{color:var(--ok-text);margin-top:var(--s-2);font-weight:700}.pm-challenge-claim-error{color:var(--danger-text);margin-top:var(--s-2)}.pm-challenge-claimed-note{margin-top:var(--s-4);color:var(--ok-text);font-weight:700}.pm-challenge-play-actions{margin-top:var(--s-6);gap:var(--s-3);flex-direction:column;align-items:center;display:flex}.pm-challenge-play-actions .pm-challenge-btn{text-align:center;width:100%;max-width:420px}.pm-challenge-btn--share{background:var(--tint-sky);color:var(--ink);box-shadow:var(--shadow-1);font-weight:900}.pm-challenge-btn--share:hover{background:var(--sky);box-shadow:var(--shadow-2);transform:translate(-1px,-1px)}.pm-challenge-btn--more{background:var(--surface);color:var(--ink-2)}.pm-challenge-duel-container{width:100%}.pm-challenge-active-banner--concluded{background:var(--bg-warm)}.pm-challenge-active-banner__badge--armed{background:var(--tint-amber);color:var(--ink);border-color:var(--ink);animation:1.4s ease-in-out infinite pm-challenge-pulse}.pm-challenge-practice-pill{background:var(--surface);border:1px solid var(--ink);border-radius:var(--r-pill);font-size:var(--t-2xs);color:var(--ink-3);white-space:nowrap;padding:1px 8px;font-weight:800}.pm-challenge-btn--it-arm{background:var(--tint-mint);color:var(--ink);font-weight:900;font-size:var(--t-xs);padding:3px var(--s-3);box-shadow:var(--shadow-xs)}.pm-challenge-btn--it-arm:hover{background:var(--mint)}.pm-challenge-submitting-banner{background:var(--tint-mint);border-bottom:var(--border-w) solid var(--ink);padding:var(--s-3) var(--s-4);justify-content:center;align-items:center;gap:var(--s-2);font-size:var(--t-sm);color:var(--ink);font-weight:900;animation:1.2s ease-in-out infinite pm-challenge-pulse;display:flex}.pm-challenge-submitting-spinner{font-size:var(--t-lg);line-height:1;display:inline-block}.pm-challenge-practice-card{max-width:980px;margin:var(--s-3) auto;padding:var(--s-4);background:var(--surface);border:var(--border-w) solid var(--ink);border-radius:var(--r-md);box-shadow:var(--shadow-card);animation:pm-challenge-fade-in var(--dur-snap) var(--ease-out);text-align:center;box-sizing:border-box}.pm-challenge-practice-card__header{margin-bottom:var(--s-3);padding-bottom:var(--s-2);border-bottom:1px dashed var(--ink-4);justify-content:space-between;align-items:center;display:flex}.pm-challenge-practice-card__badge-row{align-items:center;gap:var(--s-2);font-size:var(--t-sm);color:var(--ink);font-weight:900;display:flex}.pm-challenge-practice-card__icon{font-size:var(--t-lg);line-height:1}.pm-challenge-practice-card__close{font-size:var(--t-md);cursor:pointer;color:var(--ink-4);border-radius:var(--r-full);background:0 0;border:none;justify-content:center;align-items:center;width:28px;height:28px;font-weight:800;display:flex}.pm-challenge-practice-card__close:hover{background:var(--bg-warm);color:var(--ink)}.pm-challenge-practice-comparison{justify-content:center;align-items:center;gap:var(--s-3);margin-bottom:var(--s-3);flex-wrap:wrap;display:flex}.pm-challenge-practice-stat{background:var(--bg-warm);border:var(--border-w) solid var(--ink);border-radius:var(--r-sm);min-width:140px;max-width:260px;padding:var(--s-2) var(--s-3);box-shadow:var(--shadow-xs);text-align:center;flex:1}.pm-challenge-practice-stat--user{background:var(--tint-mint);border-color:var(--ok-text)}.pm-challenge-practice-stat--target{background:var(--tint-sky);border-color:var(--ink)}.pm-challenge-practice-stat__label{font-size:var(--t-2xs);text-transform:uppercase;color:var(--ink-3);letter-spacing:.04em;margin-bottom:2px;font-weight:800}.pm-challenge-practice-stat__score{font-size:var(--t-lg);color:var(--ink);font-weight:900}.pm-challenge-practice-stat__time{font-size:var(--t-xs);color:var(--ink-4);font-family:var(--font-mono);font-weight:700}.pm-challenge-practice-comparison__vs{font-size:var(--t-xs);background:var(--surface);border:var(--border-w) solid var(--ink);border-radius:var(--r-pill);color:var(--ink);padding:2px 8px;font-weight:900}.pm-challenge-practice-verdict{margin-bottom:var(--s-4);font-size:var(--t-sm);font-weight:800;line-height:1.4}.pm-challenge-practice-verdict__win{color:var(--ok-text);background:var(--tint-mint);border:1px solid var(--ok-text);border-radius:var(--r-sm);padding:var(--s-2) var(--s-3)}.pm-challenge-practice-verdict__behind{color:var(--ink-2);background:var(--bg-warm);border:1px solid var(--ink-4);border-radius:var(--r-sm);padding:var(--s-2) var(--s-3)}.pm-challenge-practice-verdict__tie{color:var(--amber-warm);background:var(--tint-amber);border:1px solid var(--amber-warm);border-radius:var(--r-sm);padding:var(--s-2) var(--s-3)}.pm-challenge-practice-history{gap:var(--s-1);margin:var(--s-2) 0;flex-direction:column;align-items:center;display:flex}.pm-challenge-practice-history__label{font-size:var(--t-2xs);text-transform:uppercase;letter-spacing:.05em;color:var(--ink-4);font-weight:800}.pm-challenge-practice-history__list{gap:var(--s-1);flex-wrap:wrap;justify-content:center;align-items:center;display:flex}.pm-challenge-history-chip{background:var(--surface);border:1.5px solid var(--ink-4);border-radius:var(--r-pill);font-size:var(--t-xs);color:var(--ink-2);cursor:pointer;transition:all var(--dur-2) var(--ease-out);font-weight:700;font-family:var(--font-mono);padding:2px 8px}.pm-challenge-history-chip:hover{border-color:var(--ink);color:var(--ink);transform:translateY(-1px)}.pm-challenge-history-chip--selected{background:var(--tint-butter);border-color:var(--ink);color:var(--ink);box-shadow:var(--shadow-xs);font-weight:900}.pm-challenge-history-chip--best{border-color:var(--amber-warm)}.pm-challenge-history-chip--selected.pm-challenge-history-chip--best{background:var(--tint-amber)}.pm-challenge-practice-actions{gap:var(--s-2);flex-wrap:wrap;justify-content:center;align-items:center;display:flex}.pm-challenge-btn--it{background:var(--tint-mint);font-size:var(--t-base);padding:var(--s-2) var(--s-5);box-shadow:var(--shadow-1);font-weight:900}.pm-challenge-btn--it:hover{background:var(--mint);box-shadow:var(--shadow-2);transform:translate(-1px,-1px)}.pm-challenge-crowned-card{background:var(--tint-sky);border:var(--border-w) solid var(--ink);border-radius:var(--r-md);padding:var(--s-4);margin:var(--s-4) 0;box-shadow:var(--shadow-card);text-align:center}.pm-challenge-crowned-card--gold{background:var(--tint-butter);border-color:var(--amber-warm)}.pm-challenge-crowned-badge{font-size:var(--t-2xs);letter-spacing:.06em;text-transform:uppercase;color:var(--amber-warm);background:var(--surface);border:var(--border-w) solid var(--ink);border-radius:var(--r-pill);margin-bottom:var(--s-2);box-shadow:var(--shadow-xs);padding:2px 10px;font-weight:900;display:inline-block}.pm-challenge-crowned-name{font-size:var(--t-xl);color:var(--ink);margin-bottom:var(--s-1);font-weight:900}.pm-challenge-crowned-sub{font-size:var(--t-xs);color:var(--ink-3);margin:0}.pm-challenge-comparison-card{margin:var(--s-4) 0;text-align:left}.pm-challenge-comparison-title{font-size:var(--t-sm);letter-spacing:.04em;color:var(--ink);margin:0 0 var(--s-2) 0;align-items:center;gap:var(--s-1);font-weight:900;display:flex}.pm-challenge-comparison-table{background:var(--surface);border:var(--border-w) solid var(--ink);border-radius:var(--r-sm);box-shadow:var(--shadow-xs);overflow:hidden}.pm-challenge-comparison-row{border-bottom:1px solid var(--ink-4);grid-template-columns:1.1fr 1fr 1fr 1.6fr;display:grid}.pm-challenge-comparison-row:last-child{border-bottom:none}.pm-challenge-comparison-row--head{background:var(--bg-warm);font-weight:800;font-size:var(--t-2xs);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-4)}.pm-challenge-comparison-row--factor{background:var(--bg-warm)}.pm-challenge-comparison-cell{padding:var(--s-2) var(--s-3);font-size:var(--t-xs);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;align-items:center;display:flex;overflow:hidden}.pm-challenge-comparison-cell--bold{color:var(--ink-2);font-weight:800}.pm-challenge-comparison-cell--winner{color:var(--ok-text);background:var(--tint-mint);font-weight:900}.pm-challenge-comparison-cell--highlight{color:var(--ink);font-weight:700}.pm-challenge-comparison-cell--wide{color:var(--ink-3);white-space:normal;grid-column:2/-1;font-weight:700}@keyframes pm-challenge-pulse{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}@media (max-width:520px){.pm-challenge-comparison-row{grid-template-columns:1fr 1fr 1fr 1.2fr}.pm-challenge-comparison-cell{padding:var(--s-1) var(--s-2);font-size:var(--t-2xs)}.pm-challenge-practice-stat{min-width:120px;padding:var(--s-1) var(--s-2)}}
