/* Rewards stay in the world: a clear next step, earned equipment, and readable time. */
.metric-label{display:flex;align-items:center;justify-content:center;gap:6px}.metric-label svg,.result-actions svg,.reward-note svg,.outfit-power svg,.outfit-preview-actions svg,.challenge-duration svg{width:19px;height:19px;flex-shrink:0;vertical-align:middle}.result-actions button,.outfit-preview-actions button{display:inline-flex;align-items:center;justify-content:center;gap:7px}
.game-dock [data-action=wardrobe],.outfit-card{position:relative}.new-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:#f76e67;border:2px solid #532c29;box-shadow:0 0 0 2px #183832;flex-shrink:0}.game-dock .new-dot{position:absolute;top:12px;right:20px;display:none}.game-dock [data-unread=true] .new-dot{display:block}.outfit-card>span{display:flex;align-items:center;justify-content:center;gap:5px;white-space:nowrap}.outfit-card .new-dot{width:8px;height:8px}
.auto-next,#challenge-auto-next{display:flex;align-items:center;justify-content:center;gap:16px;margin:12px 0 0;color:#c6d8c5;font-size:13px}.auto-next .text-link{margin:0;min-height:38px;font-size:13px}.result-details{margin-top:10px}.result-details summary{font-size:13px;color:#b9cbbd}.reward-unlocked{display:flex;justify-content:center;align-items:center;gap:10px;border:1px solid #e3c17d66;background:#edc3750c;padding:10px 18px;border-radius:8px;margin:8px auto}.reward-unlocked svg{width:25px;height:25px}.reward-unlocked small{display:block;margin-top:5px;color:#c3d2ba;font-size:12px}.mission-result .result-actions{flex-wrap:wrap}.mission-result .metrics{margin:16px auto}.mission-result h1{margin:10px 0}
.wardrobe .outfit-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.outfit-card{min-width:0;min-height:106px}.outfit-card>span{font-size:13px}.outfit-icon{height:64px}.outfit-power{display:flex;gap:10px;padding:12px 0;color:#efcf89;align-items:center}.outfit-power small{display:block;font-size:12px;color:#bdd2c1;line-height:1.6;margin-top:5px}.costume-preview{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0}.costume-preview::before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 50% 68%,#d2b47222,transparent 65%)}#outfit-motion{width:min(100%,420px);aspect-ratio:1;background-repeat:no-repeat;position:relative}.outfit-preview-actions{display:flex;gap:12px;position:relative;z-index:2}.outfit-fairness{font-size:12px;margin-top:12px;color:#afc5b7;line-height:1.6}
.sprite-art[data-effect]{isolation:isolate}.sprite-art[data-effect]::before{content:'';position:absolute;inset:58% 16% 0;border:1px solid var(--costume-color);border-radius:50%;background:radial-gradient(ellipse,color-mix(in srgb,var(--costume-color),transparent 88%),transparent 70%);opacity:.26;z-index:-1;transform:scaleY(.38);pointer-events:none}.sprite-art:is([data-action=attack],[data-action=defense],[data-action=victory])::before{opacity:.6;box-shadow:0 0 18px color-mix(in srgb,var(--costume-color),transparent 65%)}.sprite-art[data-effect]::after{content:'';position:absolute;inset:15% 5% 5%;pointer-events:none;opacity:.35;background:radial-gradient(circle at 25% 78%,var(--costume-color) 0 1px,transparent 2px),radial-gradient(circle at 76% 55%,var(--costume-color) 0 1px,transparent 2px),radial-gradient(circle at 42% 22%,var(--costume-color) 0 1px,transparent 2px);animation:costume-sparks 3s ease-in-out infinite}.sprite-art[data-effect=ember]::after{background:radial-gradient(ellipse at 25% 78%,#ffb568 0 2px,transparent 3px),radial-gradient(ellipse at 76% 55%,#ffb568 0 2px,transparent 3px),radial-gradient(ellipse at 42% 22%,#ffda9a 0 1px,transparent 3px)}.sprite-art[data-effect=moon]::before{border-left-width:3px;border-bottom-color:transparent}.sprite-art[data-effect=star]::after{background:radial-gradient(circle at 25% 78%,#ffe9ba 0 2px,transparent 3px),radial-gradient(circle at 76% 55%,#dfb5ff 0 2px,transparent 3px),radial-gradient(circle at 42% 22%,#ffe9ba 0 2px,transparent 3px)}.sprite-art[data-action=defense]::before{inset:12% 7%;transform:none;animation:costume-guard .7s ease-out both}.sprite-art[data-effect=dust]::after{opacity:.12}.battle-wave:not(.hostile){background:var(--costume-color,#edffd6);box-shadow:0 0 12px var(--costume-color,#c1edb7)}.impact-ring.clean-hit,.impact-ring.shield-hit{border-color:var(--costume-color,#e5f1ba)}.impact-ring.clean-hit i{background:var(--costume-color,#f1f5c6)}
.challenge-card-body{position:relative}.challenge-duration{display:flex;align-items:center;gap:5px;color:#e3d3a4;font-size:13px;margin:7px 0;font-variant-numeric:tabular-nums}
#challenge-clock{display:flex;align-items:center;gap:9px;min-width:123px;padding:5px 12px;background:#c8d8af0c;border:1px solid #cad3a955;border-radius:7px;color:#efdaa7}#challenge-clock svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}#challenge-clock span{display:block;font-size:11px;color:#c5d6c4;letter-spacing:1px}#challenge-clock strong{font-size:25px;line-height:1.2;font-variant-numeric:tabular-nums;letter-spacing:1px}#challenge-clock[data-urgent=true]{color:#ffc4a5;border-color:#e8967466;background:#7b3a2a22}#challenge-clock[data-paused=true]{opacity:.65}#bar-stack{display:none!important}#challenge-auto-next .wood-btn{min-height:36px;padding:6px 12px;font-size:12px}#script-next-stage{border-color:#f1d17c;background:#d3c28a;color:#193829}#arena[data-effect] .slash-wave{filter:drop-shadow(0 0 5px var(--costume-color))}#hero-wrap .sprite-art::before{inset:58% 16% 0}
@keyframes costume-sparks{0%,100%{transform:translateY(3px);opacity:.2}50%{transform:translateY(-6px);opacity:.55}}@keyframes costume-guard{from{opacity:.8;transform:scale(.8)}to{opacity:.25;transform:scale(1.05)}}
body.reduced .sprite-art::after,.reduced-motion .sprite-art::after{animation:none!important}body.reduced .sprite-art::before,.reduced-motion .sprite-art::before{animation:none!important}body.reduced .sprite-art::after,.reduced-motion .sprite-art::after{opacity:.2}
@media(min-width:1000px) and (min-height:600px){.wardrobe .outfit-options{grid-template-columns:repeat(4,minmax(0,1fr))}.wardrobe .outfit-body{padding:12px 18px}.wardrobe .outfit-options{margin:10px 0}.outfit-card{min-height:99px}.mission-result{padding:22px 35px;max-height:100%;overflow:auto}.mission-result .result-stars{font-size:34px}.mission-result h1{font-size:32px}.mission-result .result-actions button{font-size:14px;padding:10px 18px;min-height:44px}.mission-result p{font-size:14px;margin:8px 0}}
@media(max-width:700px){#top-hud{height:124px;grid-template-columns:1fr!important;gap:5px;padding:8px!important}#hud-actions{position:static!important;display:flex;justify-content:center;gap:8px}#metric-card{width:100%;margin:0}#challenge-clock{min-width:125px;padding:3px 10px;gap:7px}#challenge-clock>div{display:flex;gap:8px;align-items:center}#challenge-clock strong{font-size:21px}#challenge-clock span{font-size:10px}#challenge-clock svg{width:18px;height:18px}#arena{top:144px!important}#hud-actions button{min-height:36px;padding:6px 12px!important}.wardrobe .outfit-options{grid-template-columns:repeat(4,minmax(0,1fr))}.wardrobe .outfit-body{padding:12px 0}.outfit-card>span{font-size:11px}.outfit-card small{font-size:10px}.outfit-icon{height:54px}.outfit-card{min-height:95px}.wardrobe .costume-preview{width:min(100%,290px)}.auto-next{flex-wrap:wrap;gap:5px}.reward-unlocked{font-size:14px}#challenge-auto-next{font-size:12px;gap:8px;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.sprite-art::after,.sprite-art::before{animation:none!important}}
/* The starter sword has no attack aura; its defensive ward remains available. */
.sprite-art[data-effect=dust]:not([data-action=defense])::before,.sprite-art[data-effect=dust]::after{content:none}
