/* Daily Brain Missions: a live, compact version of the cosmic reward scene. */
.journey-dialog.journey-dialog-missions {
  width:min(720px,calc(100vw - 24px)); max-width:none; max-height:calc(100dvh - 24px);
  overflow:hidden; border:1px solid #a0aaff; border-radius:26px; color:white;
  background:radial-gradient(ellipse at 8% 12%,#4274ffb0,transparent 30%),radial-gradient(ellipse at 95% 42%,#6856f3a6,transparent 35%),radial-gradient(ellipse at 50% 110%,#6459f2 0,transparent 60%),linear-gradient(155deg,#142789,#091553 44%,#242b9d 78%,#3152cc);
  box-shadow:inset 0 0 16px #a9baff65,0 0 30px #7c76ff80,0 25px 110px #03072a99;
}
.journey-dialog-missions::before,.journey-dialog-missions::after { content:''; position:absolute; pointer-events:none; z-index:0; }
.journey-dialog-missions::before { inset:0; opacity:.8; background-image:radial-gradient(circle,#fff4b6 0 1px,transparent 1.8px),radial-gradient(circle,#c9dfff 0 1px,transparent 2px); background-size:74px 67px,113px 93px; background-position:11px 19px,41px 31px; }
.journey-dialog-missions::after { inset:0; background:radial-gradient(ellipse 57px 43px at 0% 15%,#eab3ff 20%,#ae8eff 60%,transparent 70%),radial-gradient(ellipse 49px 40px at 3% 9%,#f5d1ff 0%,#ad8fff 60%,transparent 72%),radial-gradient(ellipse 75px 55px at -1% 91%,#d3b3ff 30%,#a28af0 65%,transparent 70%),radial-gradient(ellipse 63px 56px at 99% 87%,#edbbff 15%,#a587ef 60%,transparent 72%),radial-gradient(ellipse 89px 50px at 106% 95%,#e6c2ff 30%,#a88ef4 65%,transparent 72%); opacity:.85; }
.journey-dialog-missions .journey-dialog-shell { position:relative; z-index:1; padding:12px 18px 10px; }
.journey-dialog-missions #journey-dialog-content { position:relative; }
.journey-dialog-missions .journey-dialog-close { z-index:9; right:10px; top:9px; width:31px; height:31px; border:1px solid #c7d8ff6e; background:linear-gradient(140deg,#6481e9b3,#4e5cb56e); box-shadow:inset 0 1px 5px #c3d8ff3d,0 0 10px #97aaff30; color:white; font-size:25px; line-height:1; }
.mission-hero { position:relative; min-height:155px; display:flex; align-items:flex-start; justify-content:center; padding:10px 0 0; box-sizing:border-box; }
.mission-hero-copy { position:relative; z-index:2; width:100%; text-align:center; padding:0 90px; }
.mission-hero-star { display:block; color:#ffe083; line-height:1; font-size:26px; text-shadow:0 0 13px #ffdc70; margin-bottom:4px; }
.journey-dialog-missions .journey-dialog-kicker { color:#e1e8ff; font-size:9px; letter-spacing:3px; font-weight:900; }
.journey-dialog-missions h2 { color:white; font:900 32px/1.16 'Nunito',sans-serif; margin:6px -40px 7px; text-shadow:0 2px 0 #4457bf,0 0 14px #8c9fff66; white-space:nowrap; }
.journey-dialog-missions h2 > span { color:#ffde58; text-shadow:0 2px 0 #ab6c13,0 0 13px #ffbd3347; }
.journey-dialog-missions .mission-hero p { color:#edf0ff; max-width:none; margin:0 -20px; font-size:11px; line-height:1.4; font-weight:700; }
.mission-hero-mascot,.mission-hero-badge { position:absolute; z-index:1; object-fit:contain; pointer-events:none; }
.mission-hero-mascot { left:-12px; top:22px; width:146px; height:146px; filter:drop-shadow(0 0 12px #a381ff80); }
.mission-hero-badge { right:-7px; top:12px; width:144px; height:144px; filter:drop-shadow(0 0 12px #ffd16d8c); }
.mission-daily-progress { display:flex; align-items:center; gap:8px; position:relative; z-index:3; width:min(420px,77%); min-height:38px; box-sizing:border-box; margin:-3px auto 12px; padding:5px 14px; border:1px solid #938bff; border-radius:24px; background:linear-gradient(100deg,#794aff80,#2e55c6b3); box-shadow:inset 0 0 0 2px #a99fff24,0 0 13px #ad71ff65; }
.mission-progress-gift { font-size:24px; line-height:1; }
.mission-daily-progress > strong { flex:1; font-size:10px; font-weight:800; color:#f3f5ff; text-align:left; white-space:nowrap; }
.mission-daily-progress b { color:#ffe885; }
.mission-progress-medals { display:flex; gap:7px; }
.mission-progress-medals i { display:grid; place-items:center; width:23px; height:23px; border:1px solid #a1b4ef83; border-radius:50%; color:#b0c2ff69; font-size:15px; font-style:normal; box-shadow:inset 0 0 5px #b0c7ff33; }
.mission-progress-medals i.earned { border-color:#ffe697; color:#ffe271; box-shadow:0 0 9px #ffe46b66,inset 0 0 5px #ffe9a644; }
.journey-dialog-missions .journey-mission-list { position:relative; z-index:2; gap:10px; margin:0 0 13px; }
.journey-dialog-missions .journey-mission { --mission-accent:#8b4dff; --mission-shadow:#a276ff; display:flex; align-items:center; gap:12px; min-height:82px; height:82px; box-sizing:border-box; margin:0; padding:7px 11px; border:2px solid white; border-radius:18px; background:linear-gradient(105deg,#fffceb,#fff 36%,#ecedff); box-shadow:0 0 0 2px #b5a8ff,inset 0 0 0 2px #d9d3ff,0 0 16px #b989ffa1; overflow:hidden; transition:transform .15s,filter .15s; }
.journey-dialog-missions .mission-improve { --mission-accent:#116bf7; --mission-shadow:#58beff; background:linear-gradient(105deg,#e2f5ff,#f1faff 39%,#d5eeff); box-shadow:0 0 0 2px #9ae0ff,inset 0 0 0 2px #c5eaff,0 0 16px #4ab5ffb3; }
.journey-dialog-missions .mission-discover { --mission-accent:#00aeb4; --mission-shadow:#59f4ee; background:linear-gradient(105deg,#d4f5ff,#f0ffff 39%,#d6f8f3); box-shadow:0 0 0 2px #a2ffff,inset 0 0 0 2px #c7f8f5,0 0 16px #55e8ddb3; }
.journey-dialog-missions .journey-mission:hover { transform:translateY(-1px); filter:brightness(1.025); }
.journey-dialog-missions .journey-mission > img { width:99px; height:64px; flex:0 0 99px; object-fit:cover; border:1px solid #ffffffcf; border-radius:11px; box-shadow:0 0 9px #d4aaff6b; }
.journey-dialog-missions .mission-game-copy { flex:1; min-width:0; }
.journey-dialog-missions .mission-game-copy small { display:block; color:var(--mission-accent); font-size:9px; font-weight:900; letter-spacing:.35px; margin-bottom:4px; line-height:1.15; }
.mission-game-copy small i { display:inline; font-style:normal; font-size:14px; vertical-align:-1px; margin-right:3px; }
.journey-dialog-missions .mission-game-copy strong { color:#192b6f; font:900 15px/1.2 'Nunito',sans-serif; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.mission-game-description { display:block; margin-top:3px; color:#49668b; font-size:11px; line-height:1.2; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.mission-mobile-status { display:none; }
.journey-dialog-missions .mission-game-meta { display:flex; flex:0 0 67px; align-items:center; flex-direction:column; gap:6px; color:#61749b; font-size:10px; text-align:center; }
.mission-game-pips { display:flex; justify-content:center; gap:5px; }
.mission-game-pips i { display:block; width:9px; height:9px; border:1.5px solid #a5bad7; border-radius:50%; background:#ffffff60; }
.mission-game-pips i.filled { border-color:var(--mission-accent); background:var(--mission-accent); box-shadow:0 0 4px var(--mission-shadow); }
.journey-dialog-missions .mission-play { display:flex; align-items:center; justify-content:center; flex:0 0 88px; gap:9px; padding:10px 8px; border:1px solid #ffffff6b; border-radius:22px; background:linear-gradient(#ac71ff,#6632ed 60%,#4531d1); color:white; box-shadow:inset 0 2px 4px #f5d2ff6e,0 3px 10px #703ef875; font:900 13px/1.1 'Nunito',sans-serif; }
.mission-improve .mission-play { background:linear-gradient(#49b4ff,#0866f3 60%,#0752dd); box-shadow:inset 0 2px 4px #c1efff8f,0 3px 10px #268df475; }
.mission-discover .mission-play { background:linear-gradient(#24e9cf,#00aeb4 60%,#00888f); box-shadow:inset 0 2px 4px #d2fff894,0 3px 10px #00bbb675; }
.mission-play b { font-size:18px; font-weight:900; }
.journey-dialog-missions .journey-mission.done { border-color:#fff4aa; }
.journey-dialog-missions .journey-mission.done .mission-game-meta { color:#0c7c76; font-weight:900; }
.journey-dialog-missions .mission-reward-button { position:relative; z-index:2; display:flex; align-items:center; justify-content:center; gap:14px; width:min(390px,90%); min-height:59px; box-sizing:border-box; margin:0 auto 12px; padding:7px 16px; border:2px solid #fff19d; border-radius:32px; background:linear-gradient(#ffe997,#ffd348 40%,#ffad2c); box-shadow:inset 0 0 8px #fffab1,0 0 15px #ffc35ba8,0 3px 0 #be791a; color:#553107; }
.journey-dialog-missions .mission-reward-button:disabled { opacity:1; cursor:default; }
.mission-reward-button > span:nth-child(2) { display:flex; flex-direction:column; gap:2px; min-width:0; }
.mission-reward-trophy { font-size:28px; }
.mission-reward-button small { font-size:10px; font-weight:800; line-height:1.2; }
.mission-reward-button strong { font-size:17px; font-weight:900; line-height:1.2; }
.mission-reward-arrow { display:grid; flex:0 0 25px; place-items:center; height:25px; border-radius:50%; color:#fff5b3; background:#865111; font-size:18px; box-shadow:inset 0 1px 3px #5d360d; }
.journey-dialog-missions .journey-dialog-feedback:empty { display:none; }
.journey-dialog-missions .journey-dialog-feedback { color:#fff3ad!important; margin:5px 0 0!important; font-size:11px; min-height:0; }
.mission-sparkles { position:absolute; inset:0; overflow:visible; pointer-events:none; z-index:0; }
.mission-sparkles i { position:absolute; color:#fff0a3; text-shadow:0 0 9px #ffd560,0 0 22px #ffa744; font-style:normal; font-size:19px; }
.mission-sparkles i:nth-child(1) { left:13%; top:6%; }
.mission-sparkles i:nth-child(2) { left:3%; top:41%; font-size:25px; }
.mission-sparkles i:nth-child(3) { right:4%; top:37%; }
.mission-sparkles i:nth-child(4) { right:13%; bottom:13%; font-size:25px; }
.mission-sparkles i:nth-child(5) { left:15%; bottom:11%; }
.mission-sparkles i:nth-child(6) { right:25%; top:1%; font-size:12px; }
@media (max-width:600px) {
  .journey-dialog.journey-dialog-missions { width:calc(100vw - 20px); border-radius:23px; }
  .journey-dialog-missions .journey-dialog-shell { padding:11px 12px 9px; }
  .mission-hero { min-height:143px; padding-top:8px; }
  .mission-hero-copy { padding-inline:75px; }
  .journey-dialog-missions h2 { font-size:27px; margin-inline:-10px; white-space:normal; }
  .mission-hero-mascot { width:100px; height:100px; left:-14px; top:49px; }
  .mission-hero-badge { width:98px; height:98px; right:-13px; top:48px; }
  .journey-dialog-missions .mission-hero p { font-size:10px; margin-inline:0; }
  .mission-daily-progress { width:88%; margin-bottom:10px; padding-inline:10px; gap:6px; }
  .mission-daily-progress > strong { font-size:9px; }
  .mission-daily-progress > strong > span { display:none; }
  .mission-progress-medals { gap:4px; }
  .mission-progress-medals i { width:18px; height:18px; font-size:12px; }
  .journey-dialog-missions .journey-mission { gap:8px; height:77px; min-height:77px; padding:6px 8px; border-radius:15px; }
  .journey-dialog-missions .journey-mission > img { width:70px; height:59px; flex-basis:70px; border-radius:9px; }
  .journey-dialog-missions .mission-game-copy strong { font-size:13px; }
  .journey-dialog-missions .mission-game-copy small { font-size:8px; margin-bottom:3px; }
  .mission-game-description { font-size:10px; }
  .journey-dialog-missions .mission-game-meta { display:none; }
  .mission-mobile-status { display:block; color:#657593; font-size:9px; line-height:1.2; margin-top:3px; }
  .mission-game-description { display:none; }
  .journey-dialog-missions .mission-play { flex-basis:64px; padding:9px 5px; font-size:11px; gap:4px; }
  .mission-play b { font-size:15px; }
  .mission-reward-button strong { font-size:15px; }
  .mission-reward-button small { font-size:9px; }
}
@media (max-width:380px) {
  .journey-dialog-missions .journey-dialog-shell { padding:9px 9px 8px; }
  .journey-dialog-missions .journey-dialog-close { right:7px; top:7px; width:27px; height:27px; font-size:22px; }
  .mission-hero { min-height:132px; padding-top:7px; }
  .mission-hero-copy { padding-inline:52px; }
  .mission-hero-star { font-size:20px; margin-bottom:4px; }
  .journey-dialog-missions .journey-dialog-kicker { font-size:7px; letter-spacing:1.6px; }
  .journey-dialog-missions h2 { font-size:22px; margin:5px -10px 6px; white-space:normal; }
  .journey-dialog-missions .mission-hero p { font-size:9px; margin-inline:-9px; line-height:1.3; }
  .mission-hero p > span { display:none; }
  .mission-hero-mascot { width:79px; height:79px; top:57px; left:-12px; }
  .mission-hero-badge { width:76px; height:76px; top:57px; right:-9px; }
  .mission-daily-progress { width:95%; min-height:33px; padding:4px 8px; margin-top:0; }
  .mission-progress-gift { font-size:19px; }
  .mission-daily-progress > strong { font-size:8px; }
  .mission-daily-progress > strong > span { display:none; }
  .mission-progress-medals i { width:17px; height:17px; font-size:11px; }
  .journey-dialog-missions .journey-mission-list { gap:8px; margin-bottom:11px; }
  .journey-dialog-missions .journey-mission { min-height:68px; height:68px; gap:6px; padding:5px 6px; }
  .journey-dialog-missions .journey-mission > img { width:47px; height:52px; flex-basis:47px; }
  .journey-dialog-missions .mission-game-copy strong { font-size:11px; line-height:1.16; }
  .journey-dialog-missions .mission-game-copy small { font-size:6.8px; letter-spacing:0; }
  .mission-game-copy small i { font-size:10px; margin-right:1px; }
  .mission-mobile-status { font-size:8px; }
  .journey-dialog-missions .mission-play { flex-basis:55px; padding:8px 4px; font-size:10px; }
  .mission-play b { font-size:13px; }
  .journey-dialog-missions .mission-reward-button { min-height:51px; width:94%; margin-bottom:10px; padding:6px 9px; gap:7px; }
  .mission-reward-trophy { font-size:23px; }
  .mission-reward-button strong { font-size:13px; }
  .mission-reward-button small { font-size:8px; }
  .mission-reward-arrow { height:20px; flex-basis:20px; font-size:14px; }
}
@media (max-height:650px) and (min-width:381px) {
  .mission-hero { min-height:116px; padding-top:4px; }
  .mission-hero-star { font-size:19px; margin-bottom:2px; }
  .journey-dialog-missions h2 { font-size:27px; margin-block:4px; }
  .mission-hero-mascot { width:112px; height:112px; top:9px; }
  .mission-hero-badge { width:109px; height:109px; top:6px; }
  .journey-dialog-missions .journey-mission { min-height:68px; height:68px; }
  .journey-dialog-missions .journey-mission > img { height:52px; }
  .journey-dialog-missions .mission-reward-button { min-height:51px; }
}
@media (max-height:650px) and (min-width:381px) and (max-width:600px) {
  .mission-hero { min-height:126px; }
  .mission-hero-copy { padding-inline:65px; }
  .mission-hero-star { font-size:16px; }
  .journey-dialog-missions .journey-dialog-kicker { font-size:7px; letter-spacing:1.5px; }
  .journey-dialog-missions h2 { font-size:23px; margin-block:4px; }
  .journey-dialog-missions .mission-hero p { font-size:9px; }
  .mission-hero p > span { display:none; }
  .mission-hero-mascot,.mission-hero-badge { width:85px; height:85px; top:38px; }
}
@media (max-height:580px) and (max-width:380px) {
  .mission-hero { min-height:132px; }
  .mission-hero-mascot,.mission-hero-badge { top:45px; width:72px; height:72px; }
  .mission-hero-star { font-size:16px; margin-bottom:1px; }
  .journey-dialog-missions h2 { font-size:22px; margin-block:5px; }
  .journey-dialog-missions .journey-mission { min-height:64px; height:64px; }
  .journey-dialog-missions .journey-mission > img { height:47px; }
  .mission-daily-progress { margin-bottom:9px; }
}
@media (max-height:480px) {
  .journey-dialog.journey-dialog-missions { max-height:calc(100dvh - 14px); width:min(750px,calc(100vw - 20px)); border-radius:19px; }
  .journey-dialog-missions .journey-dialog-shell { padding:7px 13px; }
  .mission-hero { min-height:68px; padding-top:0; }
  .mission-hero-copy { padding-inline:80px; }
  .mission-hero-star { display:none; }
  .journey-dialog-missions .journey-dialog-kicker { font-size:7px; letter-spacing:2px; }
  .journey-dialog-missions h2 { font-size:25px; margin:3px 0; }
  .journey-dialog-missions .mission-hero p { font-size:10px; margin:0; }
  .mission-hero p > br,.mission-hero p > span { display:none; }
  .mission-hero-mascot,.mission-hero-badge { top:-1px; width:80px; height:80px; }
  .mission-hero-mascot { left:7px; }
  .mission-hero-badge { right:7px; }
  .mission-daily-progress { min-height:30px; height:30px; margin:0 auto 7px; padding:2px 10px; width:min(420px,100%); }
  .mission-daily-progress > strong { font-size:12px; }
  .mission-daily-progress b { font-size:14px; }
  .mission-progress-gift { font-size:19px; }
  .mission-progress-medals i { width:18px; height:18px; font-size:11px; }
  .journey-dialog-missions .journey-mission-list { gap:7px; margin-bottom:8px; }
  .journey-dialog-missions .journey-mission { height:56px; min-height:56px; padding:4px 8px; border-radius:12px; }
  .journey-dialog-missions .journey-mission > img { height:37px; width:66px; flex-basis:66px; border-radius:7px; }
  .journey-dialog-missions .mission-game-copy small { font-size:9px; line-height:1.15; margin-bottom:2px; }
  .mission-game-copy small i { font-size:10px; }
  .journey-dialog-missions .mission-game-copy strong { font-size:13px; -webkit-line-clamp:1; }
  .mission-game-description { font-size:10px; margin-top:2px; }
  .journey-dialog-missions .mission-game-meta { gap:3px; font-size:9px; }
  .journey-dialog-missions .mission-play { padding:6px; font-size:11px; flex-basis:75px; }
  .journey-dialog-missions .mission-reward-button { height:41px; min-height:41px; margin-bottom:7px; padding:4px 12px; }
  .mission-reward-button strong { font-size:14px; }
  .mission-reward-button small { font-size:10px; }
  .mission-reward-trophy { font-size:22px; }
}
@media (max-height:360px) {
  .journey-dialog-missions .journey-dialog-shell { padding:5px 11px; }
  .mission-hero { min-height:43px; }
  .mission-hero-copy { padding-inline:55px; }
  .journey-dialog-missions .journey-dialog-kicker { display:none; }
  .journey-dialog-missions h2 { font-size:21px; margin:0 0 2px; white-space:nowrap; }
  .journey-dialog-missions .mission-hero p { font-size:10px; }
  .mission-hero-mascot,.mission-hero-badge { width:54px; height:54px; top:-3px; }
  .mission-daily-progress { height:26px; min-height:26px; margin-bottom:5px; }
  .mission-daily-progress > strong { font-size:11px; }
  .mission-progress-gift { font-size:17px; }
  .mission-progress-medals i { width:16px; height:16px; font-size:10px; }
  .journey-dialog-missions .journey-mission-list { gap:5px; margin-bottom:6px; }
  .journey-dialog-missions .journey-mission { height:46px; min-height:46px; padding:3px 7px; gap:8px; }
  .journey-dialog-missions .journey-mission > img { width:52px; flex-basis:52px; height:33px; }
  .journey-dialog-missions .mission-game-copy strong { font-size:12px; }
  .journey-dialog-missions .mission-game-copy small { font-size:8.5px; }
  .mission-game-description,.mission-mobile-status { display:none; }
  .journey-dialog-missions .mission-play { padding:5px; }
  .journey-dialog-missions .mission-reward-button { height:35px; min-height:35px; margin-bottom:5px; padding:3px 11px; }
  .mission-reward-button strong { font-size:13px; }
  .mission-reward-button small { font-size:9px; }
  .mission-reward-trophy { font-size:20px; }
}
/* Spend the available portrait height on readable text instead of shrinking
   the mission labels and progress count on narrow phones. */
@media (max-width:600px) and (min-height:481px) {
  .mission-hero { min-height:125px; }
  .journey-dialog-missions .journey-dialog-kicker { font-size:9px; letter-spacing:1.3px; }
  .journey-dialog-missions .mission-hero p { font-size:11px; line-height:1.3; }
  .mission-hero p > span { display:none; }
  .mission-daily-progress { width:100%; min-height:38px; gap:6px; margin-top:6px; }
  .mission-daily-progress > strong { font-size:12px; }
  .mission-daily-progress b { font-size:14px; }
  .journey-dialog-missions .journey-mission { min-height:80px; height:80px; }
  .journey-dialog-missions .mission-game-copy small { font-size:9px; line-height:1.15; letter-spacing:0; margin-bottom:3px; }
  .journey-dialog-missions .mission-game-copy strong { font-size:14px; line-height:1.2; }
  .mission-mobile-status { font-size:10px; }
  .journey-dialog-missions .mission-play { font-size:12px; }
  .mission-reward-button small { font-size:10px; }
  .mission-reward-button strong { font-size:15px; }
  .journey-dialog-missions .mission-reward-button { min-height:56px; margin-bottom:6px; }
}
@media (max-width:380px) and (min-height:481px) {
  .mission-hero { min-height:135px; }
  .mission-hero-copy { padding-inline:45px; }
  .mission-hero-mascot,.mission-hero-badge { top:27px; width:68px; height:68px; }
  .journey-dialog-missions .mission-game-copy strong { font-size:13px; }
  .mission-progress-medals { gap:3px; }
  .mission-progress-medals i { width:15px; height:15px; }
  .mission-reward-button strong { font-size:14px; }
}
@media (max-width:600px) and (min-height:481px) and (max-height:560px) {
  .mission-hero { min-height:100px; padding-top:0; }
  .mission-hero-star { display:none; }
  .mission-hero-copy { padding-inline:45px; }
  .journey-dialog-missions h2 { font-size:22px; margin:4px -5px; }
  .mission-hero-mascot,.mission-hero-badge { top:3px; width:60px; height:60px; }
  .journey-dialog-missions .journey-mission { min-height:64px; height:64px; }
  .journey-dialog-missions .journey-mission > img { height:47px; }
  .journey-dialog-missions .mission-game-copy strong { font-size:13px; }
  .mission-mobile-status { display:none; }
  .journey-dialog-missions .mission-reward-button { min-height:51px; }
}
