.progress-launch{border:1px solid #38e7ff66!important;background:linear-gradient(125deg,#09262e,#1d102b)!important}.progress-kicker{font-size:.7rem;font-weight:850;letter-spacing:.12em;color:#38e7ff}.progress-launch h2{margin:8px 0!important}.progress-launch p{color:#e4e4ef}.progress-launch small{display:block;margin-top:12px;color:#c2c2d2}.progress-buttons{display:flex;gap:8px;flex-wrap:wrap}.progress-buttons>button{flex:1;min-width:110px}.progress-modal{z-index:1500!important;padding:12px!important}.progress-shell{width:min(640px,100%)!important;max-height:92dvh!important;overflow:auto!important;text-align:left!important;padding:22px!important;border:1px solid #555!important;background:#101019!important;color:#f6f6fa;overscroll-behavior:contain}.progress-head{display:flex;align-items:start;justify-content:space-between;gap:12px}.progress-head h2{font-size:1.45rem!important;margin:6px 0 14px!important}.progress-head [data-close]{min-width:44px;font-size:24px;padding:4px}.progress-tabs{display:flex;gap:8px;margin-bottom:14px}.progress-tabs button{flex:1;background:#202030!important;color:white!important;font-size:.92rem!important;padding:12px 6px!important}.progress-tabs button[aria-pressed=true]{background:#38e7ff!important;color:#061a22!important}.progress-note,.progress-details p{font-size:.85rem!important;line-height:1.55!important;color:#c6c6d5!important}.progress-filters{display:flex;flex-wrap:wrap;gap:10px}.progress-filters>label{flex:1;min-width:110px}.progress-shell label{display:block;font-size:.82rem;font-weight:700;margin:10px 0;color:#eee}.progress-shell select,.progress-shell input:not([type=checkbox]){width:100%;box-sizing:border-box;min-width:0;min-height:44px;padding:10px;border-radius:10px;background:#20202d;color:#fff;border:1px solid #666;font:inherit;margin-top:6px}.progress-shell button{min-height:44px;max-width:100%;white-space:normal}.progress-ranking{list-style:none;margin:12px 0;padding:0}.progress-ranking li{display:flex;align-items:center;gap:12px;padding:13px 4px;border-bottom:1px solid #ffffff1c;font-size:.95rem}.progress-ranking li>span{flex:1;min-width:0;overflow-wrap:anywhere}.progress-ranking small,.progress-saved small,.progress-badge small{display:block;font-size:.72rem;color:#b7b7ca;margin-top:4px}.progress-rank{color:#ffe500;min-width:24px}.progress-ranking li>strong:last-child{color:#38e7ff}.progress-empty{padding:24px 12px;text-align:center;color:#ccc}.progress-details{padding:16px 0;border-top:1px solid #ffffff22;margin-top:18px}.progress-details summary{cursor:pointer;min-height:30px;color:#38e7ff;font-weight:700}.progress-consent{display:flex!important;align-items:start;gap:12px;font-weight:400!important;line-height:1.55}.progress-consent input{min-width:22px;min-height:22px;accent-color:#38e7ff;margin:3px 0}.progress-status{font-size:.9rem;line-height:1.5;color:#ffe500!important;overflow-wrap:anywhere}.progress-status:empty{display:none}.progress-saved{display:flex;align-items:center;gap:8px;padding:12px 0;border-bottom:1px solid #ffffff18}.progress-saved>span,.progress-saved>div{flex:1;min-width:0;overflow-wrap:anywhere}.progress-saved button{font-size:.8rem!important;padding:8px!important}.progress-own-rank{border:1px solid #38e7ff;padding:10px;border-radius:12px}.progress-metrics{display:flex;gap:8px;margin:24px 0}.progress-metrics>div{flex:1;text-align:center;padding:12px 5px;background:#21212e;border-radius:12px}.progress-metrics strong{display:block;font-size:1.6rem;color:#ffe500}.progress-metrics span{font-size:.7rem;color:#c7c7d5}.progress-badges{display:grid;grid-template-columns:1fr 1fr;gap:8px}.progress-badge{display:flex;align-items:center;gap:9px;padding:12px 10px;border:1px solid #42424e;border-radius:12px;font-size:.8rem;color:#b4b4c4}.progress-badge>span:first-child{font-size:1.5rem}.progress-badge.earned{border-color:#ffe50088;background:#ffe5000d;color:#fff}.progress-badge.earned>span:first-child{color:#ffe500}.progress-challenge{border-radius:14px;padding:16px;margin:22px 0;background:linear-gradient(110deg,#382230,#142d38);border:1px solid #ff267f66}.progress-challenge h3{font-size:1.06rem!important;margin:8px 0}.progress-challenge small{color:#c9c9d5;line-height:1.5;display:block}.progress-save-form{border:1px solid #38e7ff55;padding:14px;border-radius:12px;margin-top:15px}.progress-shell button:focus-visible,.progress-shell input:focus-visible,.progress-shell select:focus-visible,.progress-shell summary:focus-visible{outline:3px solid #ffe500;outline-offset:3px}@media(max-width:360px){.progress-shell{padding:14px!important}.progress-badges{grid-template-columns:1fr}.progress-tabs button{font-size:.8rem!important}.progress-buttons{flex-direction:column}}

.progress-context{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:14px 16px;border-radius:12px;background:#38e7ff12;border:1px solid #38e7ff66;margin:4px 0 18px}.progress-context strong{color:#38e7ff;font-size:1.05rem}.progress-context time{color:#fff;font-size:.94rem;font-weight:700}

.progress-shell a.secondary{display:inline-block;padding:12px 16px;border:1px solid #38e7ff77;border-radius:12px;text-decoration:none;color:#fff;font-weight:700;min-height:44px}.progress-shell a:focus-visible{outline:3px solid #ffe500;outline-offset:3px}
#passContinue[hidden]{display:none}

/* Monthly list 0.14.74: content before explanations, independent refresh button.
   Scoped to the result dialog; the private/Cup scorecard and other buttons stay unchanged. */
#progressModal.progress-modal{padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom))!important}
#progressModal .progress-shell{box-sizing:border-box;width:min(640px,100%)!important;max-height:90dvh!important;max-height:calc(100dvh - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom))!important;padding:20px!important;border:1px solid #454552!important;border-radius:22px!important}
#progressModal .progress-head{align-items:center;margin-bottom:12px}
#progressModal .progress-head>div{min-width:0}
#progressModal .progress-head h2{font-size:clamp(1.18rem,4.8vw,1.5rem)!important;line-height:1.18!important;margin:5px 0 0!important;overflow-wrap:anywhere}
#progressModal .progress-head [data-close]{flex:0 0 44px;width:44px;height:44px;min-height:44px;padding:0!important;line-height:1!important;display:grid;place-items:center}
#progressModal .progress-tabs{margin:0 0 14px;gap:8px}
#progressModal .progress-tabs button{min-width:0;min-height:44px;padding:10px 8px!important;font-size:.85rem!important;line-height:1.2!important;overflow-wrap:anywhere;border-radius:12px!important}
#progressModal .progress-tabs button[aria-pressed=true]{background:#ef1685!important;color:#fff!important}
#progressModal .progress-context{margin:0 0 7px;padding:11px 12px;gap:6px;border:0;border-radius:12px;background:#38e7ff0c}
#progressModal .progress-context strong,#progressModal .progress-context time{font-size:.92rem;line-height:1.3;overflow-wrap:anywhere}
#progressModal .progress-short-rule{font-size:.8rem!important;margin:6px 0 14px!important;color:#bcbccb!important}
#progressModal .progress-ranking-labels{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:10px;font-size:.72rem;color:#aaaabb;padding:0 0 7px}
#progressModal .progress-ranking-labels span:last-child{text-align:right}
#progressModal .progress-ranking{margin:0 0 14px}
#progressModal .progress-ranking li{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:10px;padding:10px 0;font-size:.95rem;line-height:1.3}
#progressModal .progress-rank{display:grid;place-items:center;min-width:0;width:34px;height:34px;border:1px solid #444454;border-radius:50%;font-size:.86rem;background:#222230;color:#f2f2fa}
#progressModal .progress-rank.rank-1{color:#ffe277;border-color:#b5923c;background:linear-gradient(140deg,#574118,#211c12)}
#progressModal .progress-rank.rank-2{color:#e7eff9;border-color:#8197ac;background:linear-gradient(140deg,#364352,#20252e)}
#progressModal .progress-rank.rank-3{color:#f9bd95;border-color:#a17655;background:linear-gradient(140deg,#4e3223,#251d18)}
#progressModal .progress-ranking small{font-size:.72rem;color:#a9a9bc}
#progressModal .progress-row-score{font-variant-numeric:tabular-nums;font-size:1.1rem;color:#38e7ff;text-align:right}
#progressModal .progress-refresh{box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-width:0;min-height:50px;padding:13px 18px!important;font-size:1rem!important;line-height:1.35!important;border-radius:13px!important;white-space:normal;overflow-wrap:anywhere;margin:2px 0 8px}
#progressModal .progress-refresh>[aria-hidden]{font-size:1.35em;line-height:1}
#progressModal .progress-pagination{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;align-items:center;margin-bottom:10px}
#progressModal .progress-pagination button{box-sizing:border-box;min-width:0;min-height:44px;padding:9px 8px!important;font-size:.83rem!important;line-height:1.2!important;overflow-wrap:anywhere}
#progressModal #lbPageInfo{font-size:.75rem;color:#bcbccd;text-align:center}
#progressModal .progress-empty{padding:20px 12px;margin:8px 0 14px;background:#1a1a25;border:1px solid #303040;border-radius:14px;text-align:left;color:#f4f4fa;font-size:.94rem}
#progressModal .progress-empty>strong{font-size:1rem;display:block;line-height:1.35}
#progressModal .progress-empty p{margin:8px 0 0;font-size:.87rem;line-height:1.5;color:#bfc0cf}
#progressModal .progress-unavailable{border-color:#79673e;background:#221e19}
#progressModal .progress-diagnostic{margin-top:12px;font-size:.74rem;color:#c1bdad}
#progressModal .progress-diagnostic summary{cursor:pointer;min-height:32px;display:list-item}
#progressModal .progress-diagnostic code{display:block;white-space:normal;overflow-wrap:anywhere;font-size:.72rem}
#progressModal .progress-details{margin:10px 0 0;padding:12px 0 0;border-top-color:#ffffff20}
#progressModal .progress-details>summary{font-size:.88rem;line-height:1.4;min-height:40px;align-content:center;padding:4px 0;overflow-wrap:anywhere}
#progressModal .progress-details p{font-size:.82rem!important}
#progressModal [hidden]{display:none!important}
#progressModal button:disabled{opacity:.55;cursor:default}
@media(max-width:360px){#progressModal .progress-shell{padding:15px!important}#progressModal .progress-tabs button{font-size:.78rem!important}#progressModal .progress-context strong,#progressModal .progress-context time{font-size:.85rem}}
