.unicorn-progression{position:relative;isolation:isolate;margin-top:24px;padding:30px 28px 22px;border:1px solid #a660e6;border-radius:18px;overflow:hidden;background:radial-gradient(ellipse at 88% 0,#7a25a166,transparent 55%),linear-gradient(135deg,#30204b,#1c192f);font-size:18px}.unicorn-progression:before{content:'';position:absolute;inset:0;z-index:-1;background:repeating-linear-gradient(120deg,transparent 0 100px,#e89fff08 101px,transparent 102px 190px);pointer-events:none}.up-mode{font-size:16px;font-weight:850;letter-spacing:.6px;color:#d3bfe5}.up-count{display:flex;align-items:baseline;gap:12px;margin-top:5px;flex-wrap:wrap}.up-count strong{font-size:32px;font-weight:900;color:#fff;line-height:1.15}.up-count>span{font-size:16px;color:#d3bfe5}.up-track{height:14px;border-radius:9px;background:#100b21;border:1px solid #b775ff55;position:relative;overflow:hidden}.up-fill{height:100%;width:0;background:linear-gradient(90deg,#ac68ff,#ff54d1 65%,#d4ff39);transition:width .18s ease}.up-track>i{position:absolute;top:0;bottom:0;width:2px;background:#fffc}.up-track>.up-tick-uncommon{left:10%}.up-track>.up-tick-rare{left:25%}.up-track>.up-tick-epic{left:50%}.up-rarities{list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding:0;margin:20px 0}.up-rarity{--rarity:#b9cbd3;--rarity-rgb:185,203,211;border:1px solid #ffffff24;border-radius:12px;min-width:0;overflow:hidden;background:radial-gradient(ellipse at 50% 45%,rgba(var(--rarity-rgb),.2),transparent 65%),#161328;padding:15px 10px 12px;text-align:center;position:relative}.up-uncommon{--rarity:#91ee75;--rarity-rgb:145,238,117}.up-rare{--rarity:#68bcff;--rarity-rgb:104,188,255}.up-epic{--rarity:#d287ff;--rarity-rgb:210,135,255}.up-legendary{--rarity:#ffdf70;--rarity-rgb:255,223,112}.up-card-top{display:flex;align-items:center;justify-content:space-between;gap:5px;padding:0 2px}.up-card-top h4{font-size:18px;color:var(--rarity);font-weight:850;letter-spacing:-.5px}.up-star{font-size:22px;color:var(--rarity);line-height:1}.up-art{position:relative;aspect-ratio:1/1.02;display:grid;place-items:center;margin:4px -4px 0}.up-art:after{content:'';position:absolute;left:16%;right:16%;height:13%;bottom:6%;border-radius:50%;background:var(--rarity);opacity:.25;filter:blur(13px);z-index:-1}.up-art img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 8px 8px #0005);transition:transform .18s}.up-rarity:hover .up-art img{transform:translateY(-5px) rotate(-2deg)}.up-milestone{font-size:16px;font-weight:800;line-height:1.4;min-height:45px;display:grid;place-items:center;color:#e8def1}.up-lock{display:block;font-size:16px;line-height:1.4;font-weight:750;color:#b8a8cb;border-top:1px solid #ffffff1c;padding-top:10px;margin-top:8px;min-height:55px;display:grid;place-items:center}.up-eligible{border-color:var(--rarity);box-shadow:inset 0 0 25px rgba(var(--rarity-rgb),.07)}.up-eligible .up-lock{color:var(--rarity)}.up-rules{font-size:16px;line-height:1.6;color:#d9cae5}.up-rules strong{color:#fff}.up-preview{margin-top:18px;border-top:1px solid #ffffff24;padding-top:4px}.up-preview summary{font-size:16px;font-weight:750;color:#e5c9f9;cursor:pointer;min-height:48px;display:flex;align-items:center;justify-content:space-between;list-style:none}.up-preview summary::-webkit-details-marker{display:none}.up-preview summary>span{font-size:22px;color:var(--pink,#ff54d1)}.up-preview[open] summary>span{transform:rotate(45deg)}.up-preview-body{background:#130e2399;border:1px dashed #bd83dc88;border-radius:10px;padding:18px;margin:4px 0 0}.up-preview-body p{font-size:16px;line-height:1.5;color:#d5bfe4}.up-preview-body p strong{color:#f7c3ff}.up-preview-body label{display:flex;flex-wrap:wrap;justify-content:space-between;font-size:16px;line-height:1.5;gap:10px;margin-top:20px}.up-preview-body output{font-size:18px;font-weight:850;color:#d4ff39}.up-preview-body input{display:block;width:100%;min-height:44px;accent-color:#d4ff39;margin:0;cursor:pointer}.up-preview-body input:focus-visible{outline:3px solid #d4ff39;outline-offset:3px}.up-preview-steps{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.up-preview-steps button,.up-preview-reset{font-size:16px;font-weight:750;min-height:44px;border:1px solid #aa71ce77;border-radius:7px;background:#422558;padding:9px 15px;color:#fff}.up-preview-steps button:hover{background:#783baa}.up-preview-reset{background:transparent;margin-top:16px;color:#e1c5f2}.up-is-preview .up-mode{color:#f8b5ff}
@media(max-width:1050px){.unicorn-progression{padding-inline:22px}.up-rarities{gap:8px}.up-card-top{justify-content:center}.up-star{display:none}.up-card-top h4{font-size:16px}.up-rarity{padding-inline:7px}.up-milestone,.up-lock{font-size:16px}}
@media(max-width:760px){.up-rarities{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin-inline:-22px;padding:4px 22px 16px;scrollbar-color:#a36dc6 #171025;scrollbar-width:thin}.up-rarity{flex:0 0 182px;scroll-snap-align:center;padding:15px 10px 12px}.up-card-top{justify-content:space-between}.up-card-top h4{font-size:18px}.up-star{display:block}.up-milestone{min-height:45px}.up-lock{min-height:55px}.up-rules{margin-top:0}}
@media(max-width:400px){.unicorn-progression{padding:24px 18px 16px}.up-rarities{margin-inline:-18px;padding-inline:18px}.up-count{gap:8px}.up-count strong{font-size:30px}.up-preview-body{padding:14px}.up-preview-steps{gap:6px}.up-preview-steps button{padding-inline:11px}.up-mode{letter-spacing:0}}
@media(prefers-reduced-motion:reduce){.up-fill,.up-art img{transition:none}}
/* Label the actual run-count positions on the personal progress axis. */
.up-track{overflow:visible;margin-bottom:46px}.up-fill{border-radius:inherit}.up-track>.up-tick-common{left:.1%}.up-track>.up-tick-legendary{left:100%}.up-track>i{font-style:normal}.up-track>i>span{position:absolute;top:22px;left:0;transform:translateX(-50%);font-size:16px;font-weight:800;line-height:1.4;white-space:nowrap;color:#e9dcf5}.up-track>.up-tick-common>span{transform:none}.up-track>.up-tick-legendary>span{transform:translateX(-100%)}
@media(max-width:620px){.up-track>.up-tick-uncommon>span{transform:translateX(-30%)}}

/* One heading/count row, followed immediately by the milestone track. */
.up-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:20px}.up-heading h3{min-width:0;font-size:clamp(20px,2.5vw,34px);font-style:italic;font-weight:950;line-height:1.1;letter-spacing:-.7px;margin:0}.up-heading h3 span{color:var(--pink,#ff54d1)}.up-progress-summary{flex-shrink:0;text-align:right}.up-progress-summary .up-mode{font-size:16px;letter-spacing:0}.up-progress-summary .up-count{justify-content:flex-end;gap:8px;margin-top:5px}.up-progress-summary .up-count strong{font-size:28px}.up-progress-summary .up-count>span{font-size:16px}.up-is-preview .up-progress-summary{border-right:2px solid #d683f3;padding-right:10px}
@media(max-width:620px){.up-heading{gap:12px;margin-bottom:18px}.up-progress-summary .up-count{gap:6px}.up-progress-summary .up-count strong{font-size:26px}.up-progress-summary .up-mode{display:block;max-width:100px}}
