/* ============ 蛋仔闯关 · 样式 ============ */
:root{
  --ink:#2B2233;
  --ink-2:#6B6076;
  --ink-3:#9C93A6;
  --card:#FFFDF8;
  --card-2:#F6F9FF;
  --line:rgba(43,34,51,.08);
  --sky:#8ED6FF;
  --sun:#FFC94D;
  --orange:#FF7A45;
  --orange-d:#D85E2E;
  --mint:#2FCB8E;
  --mint-d:#1FA471;
  --blue:#3B9EFF;
  --blue-d:#2A78CC;
  --purple:#9B7BFF;
  --purple-d:#7A5BE0;
  --pink:#FF8FBF;
  --red:#FF6B6B;
  --r-lg:30px;
  --r-md:22px;
  --shadow:0 14px 30px rgba(42,74,120,.11);
  --shadow-sm:0 6px 16px rgba(42,74,120,.09);
  --safe-b:env(safe-area-inset-bottom, 0px);
  --safe-l:env(safe-area-inset-left, 0px);
  --safe-r:env(safe-area-inset-right, 0px);
}

*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
html,body{margin:0;padding:0;height:100%;}
body{
  font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,-apple-system,"Segoe UI",sans-serif;
  color:var(--ink);
  background:linear-gradient(180deg,#DDF4FF 0%,#F1FBFF 38%,#FFF8EC 100%);
  background-attachment:fixed;
  -webkit-font-smoothing:antialiased;
  overscroll-behavior:none;
  user-select:none;
}
body::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:0;
  background:
    radial-gradient(circle at 10% 6%, rgba(255,209,102,.55) 0 9%, transparent 9.6%),
    radial-gradient(circle at 92% 2%, rgba(142,214,255,.55) 0 14%, transparent 14.6%),
    radial-gradient(circle at 78% 92%, rgba(196,166,255,.30) 0 16%, transparent 16.6%),
    radial-gradient(circle at 4% 88%, rgba(47,203,142,.18) 0 13%, transparent 13.6%);
}
button{font-family:inherit;}
a{color:inherit;text-decoration:none;}
h1,h2,h3,p{margin:0;}

/* ---------- 布局 ---------- */
.app{
  position:relative;z-index:1;
  height:100vh;height:100dvh;max-width:1180px;margin:0 auto;
  display:flex;flex-direction:column;
  padding-left:var(--safe-l);padding-right:var(--safe-r);
}
.hud{
  flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:14px 22px 8px;
}
.screen{
  flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;
  padding:6px 22px calc(104px + var(--safe-b));
  scrollbar-width:none;
}
.screen::-webkit-scrollbar{display:none;}
.tabbar{
  position:fixed;left:calc(12px + var(--safe-l));right:calc(12px + var(--safe-r));
  bottom:calc(10px + var(--safe-b));
  height:74px;max-width:1156px;margin:0 auto;
  display:flex;align-items:center;justify-content:space-around;
  background:rgba(255,253,248,.94);
  border:1px solid rgba(255,255,255,.9);
  border-radius:26px;
  box-shadow:0 12px 30px rgba(42,74,120,.16);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  z-index:30;
}
.tab{
  flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
  height:100%;border:0;background:none;color:var(--ink-3);font-size:12px;font-weight:700;
  border-radius:22px;transition:transform .12s ease,color .12s ease;
}
.tab svg{width:26px;height:26px;display:block;}
.tab.on{color:var(--orange);}
.tab.on svg{filter:drop-shadow(0 3px 6px rgba(255,122,69,.35));}
.tab:active{transform:scale(.94);}

/* ---------- HUD ---------- */
.rank-badge{
  display:flex;align-items:center;gap:8px;
  background:rgba(255,255,255,.72);border:1px solid rgba(255,255,255,.9);
  padding:6px 14px 6px 6px;border-radius:999px;box-shadow:var(--shadow-sm);
  font-weight:800;font-size:15px;
}
.rank-badge .dot{
  width:34px;height:34px;border-radius:50%;display:grid;place-items:center;
  background:linear-gradient(160deg,#FFF6DC,#FFE2A8);font-size:17px;
  box-shadow:inset 0 -2px 0 rgba(0,0,0,.06);
}
.rank-badge small{display:block;font-size:11px;color:var(--ink-3);font-weight:700;line-height:1;}
.pts-pill{
  display:flex;align-items:center;gap:6px;
  background:linear-gradient(160deg,#FFF3CC,#FFD86B);
  border:1px solid rgba(255,255,255,.9);
  border-radius:999px;padding:8px 16px;font-weight:900;font-size:18px;
  box-shadow:0 6px 14px rgba(255,190,60,.35), inset 0 -2px 0 rgba(206,150,20,.18);
}
.pts-pill span.ico{font-size:16px;}

/* ---------- 通用卡片 ---------- */
.card{
  background:var(--card);border-radius:var(--r-lg);
  box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.9);
  padding:22px;
}
.card + .card{margin-top:16px;}
.section-title{
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  margin:22px 4px 12px;font-size:19px;font-weight:900;letter-spacing:.4px;
}
.section-title .sub{font-size:13px;font-weight:700;color:var(--ink-3);}
.muted{color:var(--ink-2);}
.tiny{font-size:13px;line-height:1.6;color:var(--ink-3);}

/* ---------- 按钮 ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  border:0;border-radius:20px;padding:0 22px;min-height:58px;
  font-size:19px;font-weight:900;color:#fff;letter-spacing:.5px;
  background:linear-gradient(180deg,#FFB057,#FF7A45);
  box-shadow:0 6px 0 var(--orange-d),0 12px 22px rgba(216,94,46,.24);
  transition:transform .07s ease,box-shadow .07s ease,filter .15s ease;
  cursor:pointer;
}
.btn:active{transform:translateY(4px);box-shadow:0 2px 0 var(--orange-d),0 4px 10px rgba(216,94,46,.2);}
.btn.mint{background:linear-gradient(180deg,#5BE0AC,#22C48A);box-shadow:0 6px 0 var(--mint-d),0 12px 22px rgba(31,164,113,.22);}
.btn.blue{background:linear-gradient(180deg,#6CBDFF,#2E93F7);box-shadow:0 6px 0 var(--blue-d),0 12px 22px rgba(42,120,204,.22);}
.btn.purple{background:linear-gradient(180deg,#B79BFF,#8C6BFF);box-shadow:0 6px 0 var(--purple-d),0 12px 22px rgba(122,91,224,.22);}
.btn.ghost{background:rgba(255,255,255,.9);color:var(--ink-2);box-shadow:0 5px 0 #E4EAF4;border:2px solid #E4EAF4;}
.btn:disabled{filter:grayscale(.7);opacity:.55;pointer-events:none;}
.btn.wide{width:100%;}
.btn.sm{min-height:44px;font-size:15px;padding:0 16px;border-radius:14px;box-shadow:0 4px 0 var(--orange-d);}
.btn.sm.ghost{box-shadow:0 4px 0 #E4EAF4;}

/* ---------- 首页 ---------- */
.hero{
  position:relative;overflow:hidden;
  display:grid;grid-template-columns:1fr 220px;align-items:center;gap:10px;
  background:linear-gradient(150deg,#FFFDF6,#FFF3D2 55%,#FFE7C2);
  border-radius:var(--r-lg);padding:20px 26px;box-shadow:var(--shadow);
  border:1px solid rgba(255,255,255,.9);
}
.hero h1{font-size:30px;line-height:1.25;letter-spacing:.5px;}
.hero h1 em{font-style:normal;color:var(--orange);}
.hero p{margin-top:8px;font-size:15px;font-weight:700;color:var(--ink-2);}
.hero .hero-egg{display:grid;place-items:center;}
.hero .chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;}
.chip{
  display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:800;
  background:rgba(255,255,255,.85);border-radius:999px;padding:7px 12px;color:var(--ink-2);
  box-shadow:0 3px 8px rgba(42,74,120,.08);
}
.chip b{color:var(--ink);}

.subject-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:16px;}
.subject{
  position:relative;overflow:hidden;text-align:left;border:0;cursor:pointer;
  background:var(--card);border-radius:var(--r-lg);padding:20px;
  box-shadow:var(--shadow);border-top:7px solid var(--mint);
  display:flex;flex-direction:column;gap:6px;min-height:152px;
  transition:transform .12s ease;
}
.subject:active{transform:scale(.975);}
.subject .sname{font-size:26px;font-weight:900;letter-spacing:1px;}
.subject .sdesc{font-size:13px;font-weight:700;color:var(--ink-2);line-height:1.5;}
.subject .sstars{
  margin-top:auto;display:flex;align-items:center;gap:8px;font-size:13px;font-weight:800;color:var(--ink-2);
}
.subject .sbar{height:9px;border-radius:99px;background:#EFF3F9;overflow:hidden;flex:1;}
.subject .sbar i{display:block;height:100%;border-radius:99px;background:var(--mint);width:0;transition:width .5s ease;}
.subject .sicon{position:absolute;right:14px;top:12px;opacity:.9;}
.subject.zh{border-top-color:#FF9F6B;} .subject.zh .sbar i{background:#FF9F6B;}
.subject.math{border-top-color:#5BA8FF;} .subject.math .sbar i{background:#5BA8FF;}
.subject.en{border-top-color:#A98BFF;} .subject.en .sbar i{background:#A98BFF;}

.today-strip{
  display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px;
}
.stat{
  background:rgba(255,255,255,.8);border-radius:20px;padding:14px 16px;text-align:center;
  box-shadow:var(--shadow-sm);
}
.stat b{display:block;font-size:26px;font-weight:900;letter-spacing:.5px;}
.stat span{font-size:12px;font-weight:800;color:var(--ink-3);}

/* ---------- 关卡地图 ---------- */
.page-head{display:flex;align-items:center;gap:12px;margin:8px 0 16px;}
.back{
  width:46px;height:46px;flex:0 0 auto;border-radius:16px;border:0;cursor:pointer;
  background:rgba(255,255,255,.9);box-shadow:var(--shadow-sm);display:grid;place-items:center;
  color:var(--ink-2);font-size:20px;
}
.back svg{display:block;}
.back:active{transform:scale(.94);}
.page-head h2{font-size:26px;font-weight:900;letter-spacing:.6px;}
.page-head .crumb{font-size:13px;font-weight:800;color:var(--ink-3);margin-top:2px;}

.map-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;}
.unit{
  display:flex;align-items:center;gap:14px;text-align:left;border:0;cursor:pointer;
  background:var(--card);border-radius:24px;padding:16px 18px;box-shadow:var(--shadow-sm);
  border:2px solid transparent;transition:transform .1s ease;
}
.unit:active{transform:scale(.98);}
.unit .no{
  width:52px;height:52px;flex:0 0 auto;border-radius:18px;display:grid;place-items:center;
  font-weight:900;font-size:20px;color:#fff;
  background:linear-gradient(160deg,#FFB057,#FF7A45);
  box-shadow:inset 0 -3px 0 rgba(0,0,0,.12);
}
.unit .utext{flex:1;min-width:0;display:block;}
.unit .uname{display:block;font-size:17px;font-weight:900;line-height:1.3;}
.unit .usub{display:block;font-size:12px;font-weight:700;color:var(--ink-3);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.unit .ustars{display:flex;align-items:center;gap:2px;margin-top:5px;}
.unit .go{font-size:20px;color:var(--ink-3);}

.map-list.zh .no{background:linear-gradient(160deg,#FFB07A,#FF8A4C);}
.map-list.math .no{background:linear-gradient(160deg,#7CBAFF,#4A9BF0);}
.map-list.en .no{background:linear-gradient(160deg,#BFA6FF,#9B7BFF);}

/* 星星 */
.star{width:22px;height:22px;display:inline-block;}
.star path{fill:#E7ECF4;}
.star.on path{fill:#FFC94D;}
.stars-row{display:flex;gap:4px;align-items:center;}

/* ---------- 答题 ---------- */
.quiz{display:flex;flex-direction:column;gap:14px;min-height:100%;}
.quiz-body{display:flex;flex-direction:column;gap:14px;margin-block:auto;}
.quiz-foot{
  margin-top:auto;display:flex;align-items:center;justify-content:center;gap:8px;
  background:rgba(255,255,255,.62);border-radius:18px;padding:11px 16px;
  font-size:14px;font-weight:700;color:var(--ink-3);text-align:center;
}
.quiz-head{display:flex;align-items:center;gap:12px;}
.progress{flex:1;height:14px;border-radius:99px;background:rgba(255,255,255,.75);box-shadow:inset 0 2px 4px rgba(42,74,120,.08);overflow:hidden;}
.progress i{display:block;height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,#FFC94D,#FF8B3D);transition:width .35s cubic-bezier(.3,1.4,.5,1);}
.qcount{font-weight:900;font-size:15px;color:var(--ink-2);white-space:nowrap;}

.track{
  position:relative;height:88px;border-radius:22px;overflow:hidden;
  background:linear-gradient(180deg,#EAF6FF,#D9EEFF);
  box-shadow:inset 0 3px 8px rgba(42,74,120,.07);
}
.track .ground{position:absolute;left:0;right:0;bottom:0;height:16px;background:linear-gradient(180deg,#BFE7C9,#8FD6A6);}
.track .flags{position:absolute;inset:0;display:flex;justify-content:space-around;align-items:flex-end;padding:0 10px 6px;}
.track .flag{width:12px;height:26px;border-radius:4px;background:rgba(255,255,255,.5);}
.track-inner{position:absolute;top:0;bottom:0;left:0;right:0;margin:0 40px;}
.runner{position:absolute;bottom:12px;transform:translateX(-50%);transition:left .45s cubic-bezier(.3,1.5,.5,1);}
.hop{display:block;}
.hop.bump{animation:hop .45s ease;}

.question{
  background:var(--card);border-radius:26px;padding:22px 24px;box-shadow:var(--shadow);
  display:flex;gap:16px;align-items:flex-start;
}
.question .qtxt{flex:1;font-size:27px;line-height:1.5;font-weight:800;letter-spacing:.3px;}
.question .qtxt small{display:block;font-size:15px;font-weight:700;color:var(--ink-3);margin-top:6px;letter-spacing:0;}
.say{
  width:60px;height:60px;flex:0 0 auto;border-radius:20px;border:0;cursor:pointer;
  background:linear-gradient(180deg,#FFF0B8,#FFD86B);display:grid;place-items:center;
  box-shadow:0 5px 0 #E0B23A;font-size:26px;
}
.say:active{transform:translateY(3px);box-shadow:0 2px 0 #E0B23A;}

.opt-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.opt{
  display:flex;align-items:center;gap:12px;text-align:left;cursor:pointer;
  min-height:86px;padding:14px 18px;border-radius:22px;border:3px solid #E9EEF7;
  background:#fff;font-size:23px;font-weight:800;color:var(--ink);
  box-shadow:0 5px 0 #E3EAF4;transition:transform .08s ease,background .15s ease,border-color .15s ease;
}
.opt .k{
  width:30px;height:30px;flex:0 0 auto;border-radius:10px;display:grid;place-items:center;
  background:#F1F5FB;color:var(--ink-3);font-size:14px;font-weight:900;
}
.opt:active{transform:translateY(3px);box-shadow:0 2px 0 #E3EAF4;}
.opt.correct{border-color:var(--mint);background:#E8FBF3;box-shadow:0 5px 0 #A9E7CC;}
.opt.correct .k{background:var(--mint);color:#fff;}
.opt.wrong{border-color:#FF8A8A;background:#FFF0F0;box-shadow:0 5px 0 #F6C4C4;animation:shake .32s ease;}
.opt.dim{opacity:.45;}
.opt.long{font-size:20px;line-height:1.45;}

.feedback{
  display:flex;gap:14px;align-items:flex-start;
  border-radius:22px;padding:16px 18px;font-size:16px;font-weight:700;line-height:1.6;
  background:#EAF9F1;border:2px solid #B9EBD3;color:#176B4B;
}
.feedback.bad{background:#FFF4E9;border-color:#FFD9B0;color:#8A4B17;}
.feedback .fb-ico{font-size:24px;line-height:1;}
.feedback b{display:block;font-size:15px;letter-spacing:.5px;margin-bottom:2px;}

/* ---------- 结算 ---------- */
.result{text-align:center;padding:8px 0 0;}
.result .egg-wrap{margin:6px auto 2px;width:200px;}
.result h2{font-size:32px;font-weight:900;letter-spacing:1px;margin-top:6px;}
.result .rstars{display:flex;justify-content:center;gap:10px;margin:14px 0 6px;}
.result .rstars .star{width:56px;height:56px;}
.result .gain{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:10px;}
.gain-pill{
  background:linear-gradient(160deg,#FFF3CC,#FFD86B);border-radius:999px;padding:8px 18px;
  font-weight:900;font-size:17px;box-shadow:0 5px 12px rgba(255,190,60,.3);
}
.gain-pill.mint{background:linear-gradient(160deg,#D9FBEC,#9BEFCC);box-shadow:0 5px 12px rgba(47,203,142,.25);}

.rankup{
  margin-top:16px;border-radius:26px;padding:20px;
  background:linear-gradient(140deg,#FFE9A8,#FFC46B);
  box-shadow:0 12px 26px rgba(255,170,60,.3);
}
.rankup h3{font-size:24px;font-weight:900;}
.rankup p{font-size:14px;font-weight:800;color:#7A4A12;margin-top:4px;}

/* ---------- 排位 ---------- */
.ladder{display:flex;flex-direction:column;gap:10px;}
.tier{
  display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:22px;
  background:var(--card);box-shadow:var(--shadow-sm);border:2px solid transparent;
  position:relative;opacity:.72;
}
.tier .tbadge{
  width:52px;height:52px;flex:0 0 auto;border-radius:50%;display:grid;place-items:center;
  font-size:24px;background:#F1F5FB;
}
.tier .tname{flex:1;font-weight:900;font-size:18px;}
.tier .tneed{font-size:13px;font-weight:800;color:var(--ink-3);}
.tier.done{opacity:1;}
.tier.done .tbadge{background:linear-gradient(160deg,#FFF0B8,#FFD86B);}
.tier.current{
  opacity:1;border-color:var(--orange);
  background:linear-gradient(140deg,#FFFDF6,#FFEFD8);
  box-shadow:0 14px 30px rgba(255,140,60,.22);
  transform:scale(1.015);
}
.tier.current .tbadge{background:linear-gradient(160deg,#FFC46B,#FF8B3D);color:#fff;}
.tier .here{
  position:absolute;right:14px;bottom:-10px;z-index:2;
  background:linear-gradient(160deg,#FFC46B,#FF8B3D);color:#fff;
  font-size:11px;font-weight:900;letter-spacing:.5px;padding:3px 11px;border-radius:999px;
  box-shadow:0 3px 8px rgba(255,120,50,.35);
}

.queue{
  display:flex;align-items:flex-end;justify-content:center;gap:10px;
  padding:18px 10px 6px;margin-top:14px;border-radius:24px;
  background:linear-gradient(180deg,#EAF6FF,#DCEFFF);box-shadow:inset 0 3px 8px rgba(42,74,120,.06);
}
.queue .qe{opacity:.55;transform:scale(.82);transition:all .3s ease;}
.queue .qe.me{opacity:1;transform:scale(1);filter:drop-shadow(0 8px 12px rgba(0,0,0,.15));}

.rank-hero{
  display:flex;align-items:center;gap:18px;
  background:linear-gradient(140deg,#FFF6DC,#FFE7B8);
  border-radius:28px;padding:20px 24px;box-shadow:var(--shadow);
}
.rank-hero .big{font-size:28px;font-weight:900;letter-spacing:1px;}
.rank-hero .sub{font-size:14px;font-weight:800;color:#8A6A2A;margin-top:4px;}
.mini-bar{height:12px;border-radius:99px;background:#EDF2F9;overflow:hidden;margin-top:10px;}
.mini-bar i{display:block;height:100%;background:linear-gradient(90deg,#FFC94D,#FF8B3D);border-radius:99px;transition:width .6s ease;}

/* ---------- 蛋仔窝 ---------- */
.pet-stage{
  position:relative;overflow:hidden;text-align:center;
  border-radius:32px;padding:14px 20px 12px;
  background:linear-gradient(180deg,#E9F7FF,#D7EEFF 70%,#C6E7C9);
  box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.9);
}
.pet-stage .cloud{position:absolute;border-radius:999px;background:rgba(255,255,255,.75);}
.pet-name{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.85);border-radius:999px;padding:7px 16px;font-weight:900;font-size:16px;box-shadow:var(--shadow-sm);}
.pet-bubble{
  display:inline-block;background:#fff;border-radius:18px;padding:10px 16px;font-size:15px;font-weight:800;
  color:var(--ink-2);box-shadow:var(--shadow-sm);position:relative;margin-top:10px;
}
.bars{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;}
.bar-row{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.8);border-radius:16px;padding:10px 14px;box-shadow:var(--shadow-sm);}
.bar-row .lb{font-size:13px;font-weight:900;color:var(--ink-2);white-space:nowrap;}
.bar{flex:1;height:10px;border-radius:99px;background:#EDF2F9;overflow:hidden;}
.bar i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#FFC94D,#FF8B3D);transition:width .4s ease;}
.bar.mood i{background:linear-gradient(90deg,#9BE0FF,#5BA8FF);}

.action-row{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px;}
.act{
  border:0;cursor:pointer;border-radius:20px;padding:14px 8px;background:#fff;
  box-shadow:var(--shadow-sm);display:flex;flex-direction:column;align-items:center;gap:4px;
  font-weight:900;font-size:14px;color:var(--ink);
}
.act .ico{font-size:26px;line-height:1;}
.act .cost{font-size:11px;font-weight:800;color:var(--ink-3);}
.act:active{transform:scale(.96);}
.act.hot{background:linear-gradient(180deg,#FFF6DC,#FFE7B8);}

.wardrobe{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px;}
.witem{
  border:3px solid #E9EEF7;background:#fff;border-radius:20px;padding:10px 6px;cursor:pointer;
  display:flex;flex-direction:column;align-items:center;gap:4px;font-size:12px;font-weight:800;color:var(--ink-2);
}
.witem.on{border-color:var(--orange);background:#FFF6EC;}
.witem.locked{opacity:.5;pointer-events:none;}
.witem .prev{width:44px;height:44px;display:grid;place-items:center;}

/* ---------- 蛋仔窝背景 / 装扮收集 ---------- */
.pet-stage.scene-forest{background:linear-gradient(180deg,#E4F8E8,#C3EBCB 70%,#9FD9AE);}
.pet-stage.scene-sea{background:linear-gradient(180deg,#DBF2FF,#B9E4FF 62%,#F6E4BE);}
.pet-stage.scene-space{background:linear-gradient(180deg,#3B2C6B,#59459A 62%,#8A6FD1);}
.pet-stage.scene-candy{background:linear-gradient(180deg,#FFE8F4,#FFCEE4 62%,#FFE6B8);}
.pet-stage.scene-space .pet-bubble{color:#4B3B7A;}
.scene-dot{
  width:40px;height:40px;border-radius:12px;display:grid;place-items:center;font-size:18px;
  border:2px solid rgba(0,0,0,.08);
}
.scene-dot.scene-sky{background:linear-gradient(180deg,#E9F7FF,#C6E7C9);}
.scene-dot.scene-forest{background:linear-gradient(180deg,#E4F8E8,#9FD9AE);}
.scene-dot.scene-sea{background:linear-gradient(180deg,#DBF2FF,#F6E4BE);}
.scene-dot.scene-space{background:linear-gradient(180deg,#3B2C6B,#8A6FD1);}
.scene-dot.scene-candy{background:linear-gradient(180deg,#FFE8F4,#FFE6B8);}
.collect-pill{
  margin:18px auto 4px;display:block;text-align:center;font-size:14px;font-weight:800;color:var(--ink-2);
  background:rgba(255,255,255,.85);border-radius:999px;padding:10px 16px;box-shadow:var(--shadow-sm);
}

/* ---------- 签到 / 成就 / 商店 ---------- */
.checkin{
  width:100%;display:flex;align-items:center;gap:10px;margin:14px 0 4px;border:0;
  border-radius:20px;padding:14px 18px;cursor:pointer;text-align:left;font-family:inherit;
  background:linear-gradient(120deg,#FFF0C2,#FFD98A);font-weight:900;font-size:15px;color:#7A4B12;
  box-shadow:0 8px 20px rgba(255,190,60,.28);
}
.checkin b{margin-left:auto;background:#fff;border-radius:999px;padding:6px 14px;font-size:14px;color:var(--orange-d);}
.checkin .ck-ico{font-size:22px;}
.checkin.done{background:rgba(255,255,255,.82);color:var(--ink-2);box-shadow:var(--shadow-sm);cursor:default;font-weight:800;}

.ach-list{display:flex;flex-direction:column;gap:10px;margin-top:14px;}
.ach{display:flex;align-items:center;gap:12px;background:var(--card);border-radius:20px;padding:14px 16px;box-shadow:var(--shadow-sm);border:2px solid transparent;opacity:.72;}
.ach.on{border-color:#FFD98A;opacity:1;}
.ach .aico{font-size:26px;width:34px;text-align:center;flex:0 0 auto;}
.ach .ameta{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;}
.ach .aname{font-weight:900;font-size:16px;}
.ach .adesc{font-size:13px;color:var(--ink-3);font-weight:700;}
.ach .areward{font-size:13px;font-weight:900;color:#C8871B;white-space:nowrap;}

.shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-top:14px;}
.shop-item{display:flex;flex-direction:column;align-items:center;gap:4px;border:3px solid #E9EEF7;background:#fff;border-radius:20px;padding:14px 8px;cursor:pointer;font-family:inherit;font-weight:800;color:var(--ink-2);}
.shop-item .sico{font-size:26px;}
.shop-item .swatch{width:34px;height:40px;border-radius:50% 50% 46% 46%/60% 60% 40% 40%;border:2px solid rgba(0,0,0,.12);display:block;}
.shop-item .sprice{font-size:13px;color:#C8871B;}
.shop-item.can{border-color:#FFC94D;background:#FFFBEF;}
.shop-item.owned{opacity:.55;cursor:default;}
.shop-item .lim{font-style:normal;font-size:11px;background:#FF8FBF;color:#fff;border-radius:6px;padding:1px 5px;margin-left:2px;}

.badge-entry{display:flex;align-items:center;gap:12px;width:100%;border:0;background:var(--card);border-radius:22px;padding:16px 18px;margin-top:14px;box-shadow:var(--shadow-sm);cursor:pointer;text-align:left;font-family:inherit;}
.badge-entry .be-ico{font-size:26px;}
.badge-entry .be-txt{flex:1;font-weight:900;font-size:16px;}
.badge-entry .be-go{font-size:22px;color:var(--ink-3);}

/* ---------- 英语小游戏 ---------- */
.game-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0 6px;}
.game-card{display:flex;flex-direction:column;align-items:center;gap:6px;border:0;border-radius:24px;padding:18px 14px;cursor:pointer;font-family:inherit;font-weight:900;color:#fff;text-align:center;box-shadow:0 10px 20px rgba(42,74,120,.16);}
.game-card .gico{font-size:30px;line-height:1;}
.game-card b{font-size:18px;}
.game-card span{font-size:12px;font-weight:700;opacity:.92;}
.game-card.mem{background:linear-gradient(140deg,#8A7DE8,#6C63D8);}
.game-card.lis{background:linear-gradient(140deg,#4FC3F7,#2F8FE8);}
.game-card:active{transform:translateY(2px);}

.game-hero{background:var(--card);border-radius:22px;padding:14px 16px;box-shadow:var(--shadow-sm);margin-bottom:14px;}
.game-hero .gh-info{font-size:14px;font-weight:800;color:var(--ink-2);}
.gh-bar{height:12px;border-radius:99px;background:#EDF2F9;overflow:hidden;margin-top:8px;}
.gh-bar i{display:block;height:100%;background:linear-gradient(90deg,#FFC94D,#FF8B3D);border-radius:99px;transition:width .3s;}
.lhero{display:flex;align-items:center;gap:14px;}
.big-say{width:76px;height:76px;flex:0 0 auto;border-radius:26px;border:0;font-size:32px;cursor:pointer;background:linear-gradient(180deg,#FFF0B8,#FFD86B);box-shadow:0 6px 0 #E0B23A;}
.big-say:active{transform:translateY(3px);box-shadow:0 3px 0 #E0B23A;}

.mgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.mcard{position:relative;aspect-ratio:1/1;border:0;background:transparent;padding:0;cursor:pointer;perspective:600px;font-family:inherit;}
.mcard .mface{position:absolute;inset:0;display:grid;place-items:center;border-radius:18px;font-weight:900;backface-visibility:hidden;transition:transform .25s;}
.mcard .mback{background:linear-gradient(150deg,#8A7DE8,#6C63D8);color:rgba(255,255,255,.92);font-size:26px;box-shadow:0 6px 0 #5A4FC4;}
.mcard .mfront{background:#fff;border:3px solid #E9EEF7;color:var(--ink);font-size:16px;transform:rotateY(90deg);box-shadow:0 6px 0 #E3EAF4;padding:6px;text-align:center;line-height:1.2;word-break:break-word;}
.mcard.en .mfront{color:#2F8FE8;font-size:19px;}
.mcard.open .mback{transform:rotateY(-90deg);}
.mcard.open .mfront{transform:rotateY(0);border-color:#FFC94D;}
.mcard.done .mfront{border-color:var(--mint);background:#E8FBF3;}
@media (min-width:721px){ .mgrid{grid-template-columns:repeat(4,1fr);gap:14px;} .mcard .mfront{font-size:18px;} }

.lopt-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px;}
.lopt{display:flex;align-items:center;gap:12px;min-height:86px;padding:14px 18px;border-radius:22px;border:3px solid #E9EEF7;background:#fff;font-size:22px;font-weight:800;cursor:pointer;box-shadow:0 5px 0 #E3EAF4;font-family:inherit;color:var(--ink);text-align:left;}
.lopt .lk{width:30px;height:30px;border-radius:10px;background:#F1F5FB;color:var(--ink-3);font-size:14px;display:grid;place-items:center;flex:0 0 auto;}
.lopt.correct{border-color:var(--mint);background:#E8FBF3;box-shadow:0 5px 0 #A9E7CC;}
.lopt.wrong{border-color:#FF8A8A;background:#FFF0F0;box-shadow:0 5px 0 #F6C4C4;}
.lopt.dim{opacity:.45;}

/* ---------- 家长中心 ---------- */
.setting{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:16px 4px;border-bottom:1px solid var(--line);
}
.setting:last-child{border-bottom:0;}
.setting .st{font-size:16px;font-weight:900;}
.setting .sd{font-size:12px;font-weight:700;color:var(--ink-3);margin-top:3px;line-height:1.5;}
.seg{display:flex;gap:6px;background:#F1F5FB;border-radius:14px;padding:4px;flex:0 0 auto;}
.seg button{border:0;background:none;border-radius:11px;padding:8px 14px;font-size:14px;font-weight:900;color:var(--ink-3);cursor:pointer;}
.seg button.on{background:#fff;color:var(--ink);box-shadow:0 2px 6px rgba(42,74,120,.12);}
.switch{width:62px;height:34px;border-radius:99px;background:#E4EAF4;border:0;position:relative;cursor:pointer;transition:background .2s;flex:0 0 auto;}
.switch::after{content:"";position:absolute;top:3px;left:3px;width:28px;height:28px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.18);transition:left .2s;}
.switch.on{background:var(--mint);}
.switch.on::after{left:31px;}
.danger{color:#D64545;}
textarea.save{
  width:100%;min-height:96px;border-radius:16px;border:2px solid #E9EEF7;padding:12px;
  font-family:ui-monospace,Consolas,monospace;font-size:13px;line-height:1.5;resize:vertical;color:var(--ink-2);
  background:#FBFDFF;user-select:text;-webkit-user-select:text;
}

/* ---------- 弹窗 / 提示 ---------- */
.modal-layer{
  position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;
  background:rgba(24,36,58,.42);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
  opacity:0;pointer-events:none;transition:opacity .22s ease;padding:20px;
}
.modal-layer.is-open{opacity:1;pointer-events:auto;}
.modal-card{
  width:min(560px,94vw);max-height:88dvh;overflow-y:auto;
  background:var(--card);border-radius:32px;padding:26px;box-shadow:0 30px 60px rgba(10,20,40,.3);
  transform:scale(.92) translateY(10px);transition:transform .26s cubic-bezier(.3,1.4,.5,1);text-align:center;
  scrollbar-width:none;
}
.modal-card::-webkit-scrollbar{display:none;}
.modal-layer.is-open .modal-card{transform:scale(1) translateY(0);}
.modal-card h3{font-size:26px;font-weight:900;letter-spacing:.5px;}
.modal-card p{font-size:15px;font-weight:700;color:var(--ink-2);line-height:1.7;margin-top:10px;}
.modal-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:20px;}

.toast{
  position:fixed;left:50%;top:calc(18px + env(safe-area-inset-top,0px));transform:translateX(-50%);
  background:rgba(43,34,51,.92);color:#fff;font-weight:800;font-size:15px;
  padding:12px 20px;border-radius:16px;z-index:80;box-shadow:0 12px 26px rgba(0,0,0,.24);
  animation:toastIn .3s ease both;max-width:80vw;text-align:center;line-height:1.5;
}
@keyframes toastIn{from{opacity:0;transform:translate(-50%,-12px) scale(.96);}to{opacity:1;transform:translate(-50%,0) scale(1);}}

/* 撒花 */
.fx-layer{position:fixed;inset:0;pointer-events:none;z-index:70;overflow:hidden;}
.confetti{position:absolute;width:12px;height:18px;border-radius:4px;opacity:.95;animation:fall 1.8s cubic-bezier(.2,.7,.4,1) forwards;}
@keyframes fall{
  0%{transform:translateY(-40px) rotate(0);}
  100%{transform:translateY(105dvh) rotate(540deg);opacity:0;}
}

/* 动画 */
@keyframes hop{0%{transform:translateY(0);}35%{transform:translateY(-26px) scale(1.04);}70%{transform:translateY(0);}85%{transform:translateY(-8px);}100%{transform:translateY(0);}}
@keyframes shake{0%,100%{transform:translateX(0);}20%{transform:translateX(-7px);}45%{transform:translateX(6px);}70%{transform:translateX(-4px);}}
@keyframes pop{0%{transform:scale(.4);opacity:0;}70%{transform:scale(1.12);}100%{transform:scale(1);opacity:1;}}
@keyframes floaty{0%,100%{transform:translateY(0);}50%{transform:translateY(-7px);}}
@keyframes spin{to{transform:rotate(360deg);}}

.egg-idle{animation:floaty 3.4s ease-in-out infinite;}
.pop-in{animation:pop .4s cubic-bezier(.3,1.5,.5,1) both;}
.shake{animation:shake .32s ease;}

/* 尺寸自适应 */
@media (max-width:900px){
  .hero{grid-template-columns:1fr 160px;padding:16px 18px;}
  .hero h1{font-size:25px;}
  .question .qtxt{font-size:24px;}
  .opt{font-size:21px;min-height:70px;}
  .map-list{grid-template-columns:1fr;}
}
@media (max-width:720px){
  .hud{padding:10px 14px 4px;}
  .screen{padding:4px 14px calc(100px + var(--safe-b));}
  .subject-grid{grid-template-columns:1fr;gap:12px;}
  .subject{min-height:0;}
  .hero{grid-template-columns:1fr;}
  .hero .hero-egg{display:none;}
  .opt-grid{grid-template-columns:1fr;}
  .question{padding:18px;}
  .question .qtxt{font-size:22px;}
  .today-strip{gap:8px;}
  .stat b{font-size:21px;}
  .tabbar{height:66px;}
  .tab{font-size:11px;}
}
@media (orientation:portrait) and (min-width:721px){
  .subject{min-height:150px;}
  .question .qtxt{font-size:26px;}
}
@media (prefers-reduced-motion:reduce){
  *{animation-duration:.001s !important;animation-iteration-count:1 !important;transition-duration:.001s !important;}
}

/* ================= v2 新增 ================= */

/* HUD */
.hud-right{display:flex;align-items:center;gap:8px;}
.book-chip{
  border:0;cursor:pointer;background:rgba(255,255,255,.8);border-radius:999px;
  padding:9px 14px;font-size:14px;font-weight:900;color:var(--ink-2);
  box-shadow:var(--shadow-sm);white-space:nowrap;
}
.book-chip span{color:var(--ink-3);font-size:12px;}
.book-chip:active{transform:scale(.96);}

/* 科目卡片的小徽标 */
.subject .sname{display:flex;align-items:center;gap:8px;}
.badge-wrong{
  font-style:normal;font-size:11px;font-weight:900;color:#fff;background:#FF7A45;
  border-radius:999px;padding:2px 8px;letter-spacing:0;
}
.subject.none{opacity:.6;}
.subject.none .sname{color:var(--ink-2);}

/* 快捷入口 */
.quick-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px;}
.quick{
  border:0;cursor:pointer;background:var(--card);border-radius:22px;
  padding:14px 16px;box-shadow:var(--shadow-sm);
  display:flex;align-items:center;gap:10px;font-size:16px;font-weight:900;color:var(--ink);
  text-align:left;
}
.quick .qico{font-size:24px;line-height:1;}
.quick b{margin-left:auto;font-size:13px;color:var(--ink-3);font-weight:900;}
.quick:active{transform:scale(.98);}

/* 每日任务 */
.tasks{padding:14px;display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.task{
  display:flex;align-items:center;gap:8px;padding:9px 11px;
  background:#F7FAFF;border-radius:16px;border:0;
}
.task:last-child{border-bottom:0;}
.tchk{
  width:24px;height:24px;flex:0 0 auto;border-radius:8px;border:2px solid #E2E8F2;
  display:grid;place-items:center;font-size:13px;font-weight:900;color:#fff;background:#fff;
}
.task.done .tchk{background:var(--mint);border-color:var(--mint);}
.tlabel{flex:1;font-size:14px;font-weight:800;min-width:0;line-height:1.25;}
.tbar{display:block;height:6px;border-radius:99px;background:#E7EDF6;margin-top:5px;overflow:hidden;}
.tbar i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#FFC94D,#FF8B3D);transition:width .4s ease;}
.task.done .tlabel{color:var(--ink-3);text-decoration:line-through;}
.treward{font-size:12px;font-weight:900;color:#E09020;background:#FFF4D9;border-radius:999px;padding:2px 7px;}

/* 年级选择 */
.pick-list{margin-top:14px;display:flex;flex-direction:column;gap:8px;}
.pick-row{display:flex;align-items:center;gap:14px;padding:8px 4px;border-bottom:1px solid var(--line);}
.pick-g{width:74px;flex:0 0 auto;font-weight:900;font-size:16px;text-align:left;}
.pick-terms{display:flex;gap:8px;flex:1;}
.pick-btn{
  flex:1;border:0;cursor:pointer;background:#F2F6FC;border-radius:14px;padding:11px 0;
  font-size:15px;font-weight:900;color:var(--ink-2);
}
.pick-btn.on{background:linear-gradient(180deg,#FFB057,#FF7A45);color:#fff;box-shadow:0 4px 10px rgba(255,122,69,.3);}
.pick-btn.off{opacity:.45;}
.pick-btn i{font-style:normal;font-size:11px;display:block;color:var(--ink-3);font-weight:800;}

/* 错题本 */
.wrong-list{display:flex;flex-direction:column;gap:10px;}
.wrong-item{
  position:relative;background:var(--card);border-radius:20px;padding:16px 18px;
  box-shadow:var(--shadow-sm);border-left:6px solid #FFB08A;
}
.wrong-item .wq{font-size:17px;font-weight:800;line-height:1.45;padding-right:78px;}
.wrong-item .wa{font-size:14px;font-weight:700;color:var(--ink-2);margin-top:8px;line-height:1.5;}
.wrong-item .wa b{color:var(--mint-d);}
.wrong-item .wtip{display:block;color:var(--ink-3);font-size:13px;margin-top:4px;}
.wrong-item .wdel{
  position:absolute;right:14px;top:14px;border:0;cursor:pointer;background:#EAF9F1;color:#176B4B;
  font-size:12px;font-weight:900;border-radius:999px;padding:6px 10px;
}

/* 听写 */
.dict-card{
  display:flex;flex-direction:column;align-items:center;gap:8px;
  background:var(--card);border-radius:26px;padding:22px;box-shadow:var(--shadow);
}
.say.big{width:96px;height:96px;font-size:40px;border-radius:28px;box-shadow:0 7px 0 #E0B23A;}
.dict-hint{font-size:14px;font-weight:800;color:var(--ink-3);}
.dict-grid{grid-template-columns:1fr 1fr;}
.opt.word{justify-content:center;font-size:30px;letter-spacing:4px;min-height:92px;font-weight:900;}
.opt.word.long{font-size:24px;letter-spacing:2px;}
.word-unit{padding:7px 0;border-bottom:1px dashed var(--line);font-size:13px;line-height:1.7;color:var(--ink-2);}
.word-unit:last-child{border-bottom:0;}
.word-unit b{color:var(--ink);}

/* 单词卡 */
.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;}
.wcard{
  border:0;cursor:pointer;background:var(--card);border-radius:20px;padding:16px 14px;
  box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:4px;align-items:flex-start;
  position:relative;text-align:left;
}
.wcard .wen{font-size:22px;font-weight:900;color:var(--ink);letter-spacing:.3px;}
.wcard .wcn{font-size:13px;font-weight:700;color:var(--ink-3);}
.wcard .wsay{position:absolute;right:12px;top:12px;font-size:16px;opacity:.7;}
.wcard:active{transform:scale(.97);}

/* 画板 */
.board-wrap{
  position:relative;border-radius:26px;overflow:hidden;background:#FFFDF8;
  box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.9);
  height:min(52vh, 460px);
}
.pad{display:block;width:100%;height:100%;touch-action:none;cursor:crosshair;}
.pad-empty{
  position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;
  color:#CFD8E6;font-weight:900;font-size:16px;letter-spacing:1px;
}
.pad-empty.hide{display:none;}
.board-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px;}
.palette{display:flex;gap:7px;background:var(--card);padding:8px;border-radius:16px;box-shadow:var(--shadow-sm);}
.swatch{
  width:26px;height:26px;border-radius:50%;border:2px solid #E7ECF4;cursor:pointer;padding:0;
  transition:transform .1s;
}
.swatch.on{transform:scale(1.18);border-color:var(--orange);box-shadow:0 0 0 2px #fff inset;}
.seg.tools button,.seg.sizes button{padding:8px 12px;font-size:14px;}
.board-bar .btn{margin-left:auto;}
.board-bar .btn + .btn{margin-left:0;}

.qcount.rev{background:#FFF0E4;color:#C25A20;padding:4px 10px;border-radius:999px;font-size:12px;}

/* 预习 / 学一学 */
.unit-acts{display:flex;align-items:center;gap:10px;flex:0 0 auto;}
.teach{
  font-size:12px;font-weight:900;color:#176B4B;background:#E6F8F0;
  border-radius:999px;padding:7px 12px;white-space:nowrap;
}
.learn-tip{
  display:flex;gap:10px;align-items:center;background:rgba(255,255,255,.78);
  border-radius:18px;padding:12px 16px;font-size:14px;font-weight:700;color:var(--ink-2);
  margin-bottom:14px;box-shadow:var(--shadow-sm);
}
.know-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.know{
  background:var(--card);border-radius:22px;padding:15px 17px;
  box-shadow:var(--shadow-sm);border-left:6px solid #A9D8FF;
}
.know .kh{display:flex;align-items:center;gap:8px;}
.knum{
  width:22px;height:22px;border-radius:50%;background:#EAF3FF;color:#2A78CC;
  font-size:12px;font-weight:900;display:grid;place-items:center;flex:0 0 auto;
}
.kt{font-weight:900;font-size:16px;flex:1;min-width:0;}
.ksay{
  border:0;background:#FFF3C9;border-radius:11px;width:34px;height:34px;
  font-size:15px;cursor:pointer;flex:0 0 auto;
}
.ksay:active{transform:scale(.92);}
.kd{font-size:15px;line-height:1.68;color:var(--ink-2);margin-top:8px;font-weight:600;}
.word-chips{display:flex;flex-wrap:wrap;gap:8px;}
.wchip{
  border:0;cursor:pointer;background:var(--card);border-radius:14px;padding:9px 15px;
  font-size:17px;font-weight:900;color:var(--ink);box-shadow:var(--shadow-sm);
}
.wchip:active{transform:scale(.95);}
@media (max-width:820px){ .know-list{grid-template-columns:1fr;} }

@media (max-width:760px){
  .hud{flex-wrap:wrap;}
  .quick-row{grid-template-columns:1fr;}
  .cards-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));}
  .board-bar .btn{margin-left:0;}
  .wrong-item .wq{padding-right:0;}
  .wrong-item .wdel{position:static;margin-top:8px;}
}

/* ---------- 大屏（iPad / 电脑）：放大量与元素，别让内容挤在顶部 ---------- */
@media (min-width:721px) and (min-height:900px){
  .quiz-body{gap:18px;}
  .question{padding:26px 30px;}
  .question .qtxt{font-size:33px;}
  .question .qtxt small{font-size:16px;}
  .track{height:96px;}
  .opt{min-height:98px;font-size:26px;padding:16px 22px;border-radius:24px;}
  .opt.long{font-size:22px;}
  .opt .k{width:34px;height:34px;font-size:15px;border-radius:12px;}
  .feedback{padding:18px 22px;font-size:17px;}
  .quiz-foot{font-size:15px;padding:13px 18px;}

  .result{min-height:calc(100% - 8px);display:flex;flex-direction:column;justify-content:center;justify-content:safe center;}
  .result .egg-wrap{width:230px;}
  .result h2{font-size:36px;}
  .result .rstars{margin:18px 0 8px;}
  .result .rstars .star{width:64px;height:64px;}
}

/* 电脑等矮屏：大屏样式但高度不够时，结算页收一点，避免按钮被底栏压住 */
@media (min-width:721px) and (max-height:899px){
  .result .egg-wrap{width:168px;}
  .result h2{font-size:28px;}
  .result .rstars{margin:10px 0 4px;}
  .result .rstars .star{width:48px;height:48px;}
}

