/* The super-pick challenge is a single, readable reward journey. */
.journey-screen[data-mode=festival] .challenge-screen{display:grid;grid-template-columns:minmax(230px,32%) minmax(0,1fr);gap:18px;align-items:stretch;max-width:1380px;min-height:0;margin:0 auto;color:#fff}
.journey-screen[data-mode=festival] .challenge-reward,.journey-screen[data-mode=festival] .challenge-content{min-width:0;border:3px solid #79c7ff;border-radius:25px;box-shadow:0 6px #082d70,inset 0 2px #ffffff55}
.journey-screen[data-mode=festival] .challenge-reward{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:8px;padding:22px 18px 18px;text-align:center;background:radial-gradient(ellipse at 50% 52%,#9b58ed,#4635a6 55%,#123b8e)}
.journey-screen[data-mode=festival] .challenge-reward-heading{position:relative;z-index:1}
.journey-screen[data-mode=festival] .challenge-eyebrow{display:inline-block;padding:6px 12px;border:1px solid #ffd882;border-radius:999px;background:#b95829;color:#fff4ca;font-size:11px;font-weight:900}
.journey-screen[data-mode=festival] .challenge-reward h3{margin:10px 0 5px;color:#fff;font-size:clamp(24px,2.2vw,32px);line-height:1.1;text-shadow:0 3px #2b226b}
.journey-screen[data-mode=festival] .challenge-reward-heading p{margin:0;color:#f2eaff;font-size:13px;line-height:1.35}
.journey-screen[data-mode=festival] .challenge-pick{position:relative;display:grid;place-items:center;width:100%;min-height:210px;flex:1}
.journey-screen[data-mode=festival] .challenge-glow{position:absolute;width:min(85%,260px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#fff8a988,#ffc84022 48%,transparent 71%)}
.journey-screen[data-mode=festival] .challenge-pick>.ui-art{position:relative;width:clamp(165px,18vw,250px);height:clamp(165px,18vw,250px);max-width:100%;filter:drop-shadow(0 10px 5px #17144d99);transform:rotate(-8deg)}
.journey-screen[data-mode=festival] .challenge-perk{position:relative;display:flex;flex-direction:column;gap:4px;width:100%;padding:11px 13px;border:1px solid #ffe68a;border-radius:14px;background:#102f78d9}
.journey-screen[data-mode=festival] .challenge-perk strong{color:#ffe66f;font-size:14px}
.journey-screen[data-mode=festival] .challenge-perk span{color:#ecf5ff;font-size:12px;line-height:1.35}
.journey-screen[data-mode=festival] .challenge-content{display:flex;flex-direction:column;gap:13px;padding:20px 22px;background:linear-gradient(135deg,#1459bb,#12337d)}
.journey-screen[data-mode=festival] .challenge-heading>span{color:#a8e7ff;font-size:12px;font-weight:900}
.journey-screen[data-mode=festival] .challenge-heading h3{margin:3px 0 5px;color:#fff;font-size:clamp(24px,2.2vw,33px);line-height:1.08;text-shadow:0 3px #10336c}
.journey-screen[data-mode=festival] .challenge-heading p{margin:0;color:#d9edff;font-size:13px;line-height:1.35}
.journey-screen[data-mode=festival] .challenge-fragments{padding:13px;border:1px solid #569ce9;border-radius:17px;background:#0c367e}
.journey-screen[data-mode=festival] .challenge-fragments-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}
.journey-screen[data-mode=festival] .challenge-fragments-heading h4{margin:0;color:#fff;font-size:16px}
.journey-screen[data-mode=festival] .challenge-fragments-heading>strong{padding:5px 11px;border-radius:999px;background:#ffdd52;color:#513500;font-size:14px}
.journey-screen[data-mode=festival] .challenge-fragment-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.journey-screen[data-mode=festival] .challenge-fragment{display:flex;align-items:center;gap:7px;min-width:0;padding:8px;border:1px solid #548ed4;border-radius:13px;background:#153a79;color:#e6f2ff}
.journey-screen[data-mode=festival] .challenge-fragment.is-found{border-color:#7ff1c4;background:#116d69}
.journey-screen[data-mode=festival] .challenge-fragment-art{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:10px;background:#1e5397}
.journey-screen[data-mode=festival] .challenge-fragment-art .ui-art{width:46px;height:46px;filter:grayscale(.8);opacity:.6}
.journey-screen[data-mode=festival] .is-found .challenge-fragment-art{background:#168b74}
.journey-screen[data-mode=festival] .is-found .challenge-fragment-art .ui-art{filter:none;opacity:1}
.journey-screen[data-mode=festival] .challenge-fragment-copy{min-width:0;display:flex;flex-direction:column;gap:3px}
.journey-screen[data-mode=festival] .challenge-fragment-copy strong{color:#fff;font-size:12px;line-height:1.15}
.journey-screen[data-mode=festival] .challenge-fragment-copy small{color:#cfe5ff;font-size:10px;line-height:1.2}
.journey-screen[data-mode=festival] .is-found .challenge-fragment-copy small{color:#c8ffdf}
.journey-screen[data-mode=festival] .challenge-task{padding:15px 16px;border:2px solid #ffe788;border-radius:18px;background:linear-gradient(120deg,#ffd94e,#ffab12);box-shadow:0 4px #a16013;color:#3b2b08}
.journey-screen[data-mode=festival] .challenge-task.is-complete,.journey-screen[data-mode=festival] .challenge-task.is-claimed{border-color:#a3ffe2;background:linear-gradient(125deg,#34c59e,#159778);box-shadow:0 4px #096253;color:#062e2b}
.journey-screen[data-mode=festival] .challenge-task-heading{display:flex;justify-content:space-between;align-items:start;gap:10px}
.journey-screen[data-mode=festival] .challenge-task-heading h4{margin:0;color:inherit;font-size:19px;line-height:1.15}
.journey-screen[data-mode=festival] .challenge-task-heading p{margin:5px 0 0;color:inherit;font-size:13px;line-height:1.3}
.journey-screen[data-mode=festival] .challenge-task-heading>strong{flex:none;color:#122d70;font-size:23px;white-space:nowrap}
.journey-screen[data-mode=festival] .challenge-task .meta-meter{height:12px;margin:11px 0 13px;overflow:hidden;border:1px solid #fff4b1;background:#895714;border-radius:999px}
.journey-screen[data-mode=festival] .challenge-task .meta-meter i{border:0;background:linear-gradient(90deg,#2a9fe5,#aef5ff)}
.journey-screen[data-mode=festival] .challenge-action .toy-button{display:inline-flex;width:auto;min-width:180px;max-width:100%;min-height:44px;padding:9px 17px;font-size:15px;line-height:1.15;white-space:normal}
.journey-screen[data-mode=festival] .challenge-action .toy-button:focus-visible{outline:3px solid #fff;outline-offset:4px}
.journey-screen[data-mode=festival] .challenge-tip{display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid #599bdf;border-radius:15px;background:#0c3477;color:#eaf5ff}
.journey-screen[data-mode=festival] .challenge-tip strong{color:#ffe66c;font-size:14px}
.journey-screen[data-mode=festival] .challenge-tip p{margin:4px 0 0;font-size:12px;line-height:1.35}
.journey-screen[data-mode=festival] .challenge-tip-icon{display:flex;align-items:center;gap:3px;flex:none;font-style:normal;color:#ffdd59;font-size:19px}
.journey-screen[data-mode=festival] .challenge-tip-icon i{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#746652;color:#fff1bd;font-style:normal}
.journey-screen[data-mode=festival] .challenge-tip-icon .ui-art{width:35px;height:35px}
.journey-screen[data-mode=festival] .challenge-note{margin:0;color:#d2e8ff;font-size:11px;line-height:1.35}
@media(max-width:980px){.journey-screen[data-mode=festival] .challenge-screen{grid-template-columns:minmax(210px,30%) minmax(0,1fr);gap:12px}.journey-screen[data-mode=festival] .challenge-content{padding:16px;gap:10px}.journey-screen[data-mode=festival] .challenge-fragment{flex-direction:column;text-align:center}.journey-screen[data-mode=festival] .challenge-fragment-art{width:40px;height:40px}.journey-screen[data-mode=festival] .challenge-fragment-art .ui-art{width:38px;height:38px}}
@media(max-width:700px){.journey-screen[data-mode=festival] .challenge-screen{grid-template-columns:1fr;gap:12px}.journey-screen[data-mode=festival] .challenge-reward{display:grid;grid-template-columns:1fr 110px;align-items:center;gap:6px;text-align:left;padding:14px}.journey-screen[data-mode=festival] .challenge-reward h3{font-size:23px}.journey-screen[data-mode=festival] .challenge-reward-heading p{font-size:12px}.journey-screen[data-mode=festival] .challenge-pick{grid-column:2;grid-row:1 / 3;min-height:115px}.journey-screen[data-mode=festival] .challenge-pick>.ui-art{width:115px;height:115px}.journey-screen[data-mode=festival] .challenge-perk{grid-column:1;grid-row:2;width:auto;padding:8px 10px}.journey-screen[data-mode=festival] .challenge-perk strong{font-size:12px}.journey-screen[data-mode=festival] .challenge-perk span{font-size:11px}.journey-screen[data-mode=festival] .challenge-content{padding:15px;gap:11px}.journey-screen[data-mode=festival] .challenge-heading h3{font-size:25px}.journey-screen[data-mode=festival] .challenge-fragment{padding:7px 3px}.journey-screen[data-mode=festival] .challenge-fragment-copy strong{font-size:11px}.journey-screen[data-mode=festival] .challenge-fragment-copy small{font-size:10px}.journey-screen[data-mode=festival] .challenge-task-heading h4{font-size:17px}.journey-screen[data-mode=festival] .challenge-action .toy-button{min-height:44px;font-size:14px}.journey-screen[data-mode=festival] .challenge-tip{padding:10px}.journey-screen[data-mode=festival] .challenge-note{font-size:11px}}
