:root{--ink:#10233f;--muted:#5f7088;--line:#dce7f3;--surface:#fff;--blue:#2357c6;--blue2:#3b82f6;--green:#0f8a68;--shadow:0 16px 40px rgba(31,66,112,.10);font-family:Inter,"PingFang SC","Microsoft YaHei",system-ui,-apple-system,sans-serif;color:var(--ink);background:#eef5fb}*{box-sizing:border-box}html{min-height:100%;background:#eef5fb}body{margin:0;min-height:100%;background:linear-gradient(180deg,#eaf3ff 0,#f7fbff 38%,#eef8f4 100%);font-family:inherit;color:var(--ink);-webkit-tap-highlight-color:transparent}a{color:inherit}.growth-progress{height:9px;margin:13px 0 5px;border-radius:999px;background:rgba(255,255,255,.22);overflow:hidden}.growth-progress b{display:block;height:100%;width:var(--pct,0%);border-radius:inherit;background:#ffe279}.growth-star-card{min-width:0;padding:14px;border:1px solid #e0eaf4;border-radius:19px;background:#f8fbff}.growth-star-card i{font-style:normal;font-size:25px}.growth-star-card strong{display:block;margin-top:7px;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.growth-star-card b{display:block;margin-top:3px;font-size:24px;color:#174c9c}.growth-badge-card{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:13px;padding:16px;border:1px solid #dfe9f3;border-radius:22px;background:#f8fbfe;transition:.18s ease}.growth-badge-card.is-earned{border-color:#f2d56e;background:linear-gradient(145deg,#fffdf2,#fff8d8);box-shadow:0 11px 22px rgba(196,153,33,.12)}.growth-badge-card.is-hidden{display:none}.growth-badge-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:18px;background:#e9f1fa;font-size:29px;filter:grayscale(.92);opacity:.62}.is-earned .growth-badge-icon{background:#fff1a9;filter:none;opacity:1}.growth-badge-card h3{margin:1px 0 5px;font-size:16px;line-height:1.2}.growth-badge-card p{margin:0;color:#63748a;font-size:12px;line-height:1.42;font-weight:700}.growth-badge-card small{display:block;margin-top:8px;color:#285da5;font-weight:900}.growth-mini-progress{height:7px;margin-top:8px;border-radius:999px;background:#dce7f1;overflow:hidden}.growth-mini-progress b{display:block;width:var(--pct,0%);height:100%;background:linear-gradient(90deg,#3b82f6,#7c9cff);border-radius:inherit}.is-earned .growth-mini-progress b{background:#e3b729}.growth-day-bar{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px}.growth-day-bar strong{font-size:12px;color:#365876}.growth-day-bar i{width:min(42px,72%);height:max(8px,var(--h,8%));border-radius:12px 12px 5px 5px;background:linear-gradient(180deg,#54c6a3,#118666);box-shadow:0 5px 12px rgba(15,138,104,.16)}.growth-day-bar span{font-size:12px;color:#60748b;font-weight:850}.growth-day-bar.is-today span{color:#08735a}.growth-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px 13px;border:1px solid #e3ebf3;border-radius:17px;background:#fbfdff}.growth-row>i{width:39px;height:39px;display:grid;place-items:center;border-radius:13px;background:#e9f3ff;font-style:normal;font-size:21px}.growth-row strong{display:block;font-size:14px}.growth-row span{display:block;margin-top:2px;color:#6a7a8f;font-size:12px;line-height:1.35}.growth-row em{font-style:normal;color:#167c61;font-size:12px;font-weight:1000}.growth-placeholder{padding:22px;text-align:center;border-radius:18px;background:#f3f7fa;color:#697b90;font-weight:800}@media(max-width:680px){.growth-badge-card{display:block;padding:13px}.growth-badge-icon{margin-bottom:9px}}@media(max-width:420px){.growth-badge-card{display:grid}}:root{
  --guide-ink:#15263f;--guide-muted:#62738a;--guide-line:#d9e5f1;--guide-card:#fff;
  --guide-blue:#2563eb;--guide-green:#118565;--guide-orange:#c96c16;--guide-soft:#f4f8fc;
}body[data-growth-shell="real-life-hub"]{background:radial-gradient(circle at 8% -4%,color-mix(in srgb,var(--life-main) 14%,transparent),transparent 34%),linear-gradient(180deg,#f7fbff,#eef6fb 55%,#f8fbfd)}body[data-growth-shell="real-life-task"]{background:radial-gradient(circle at 10% -5%,color-mix(in srgb,var(--life-main) 13%,transparent),transparent 35%),linear-gradient(180deg,#f8fbff,#edf5fa)}body[data-growth-shell="real-life-task"] .life-choice{min-height:54px;padding:12px 14px;border-radius:15px;font-size:15px;line-height:1.4}body[data-growth-shell="real-life-task"] .life-choice:active{transform:scale(.987)}body[data-growth-shell="real-life-task"] .life-feedback{min-height:50px;padding:10px 13px;border-radius:14px}body[data-growth-shell="real-life-task"] .life-parent-hold{min-height:50px;border-radius:14px;font-size:15px}body[data-growth-shell="real-life-task"] .life-completion-actions{grid-template-columns:1.4fr 1fr 1fr}body[data-growth-shell="real-life-task"] .life-completion-actions .primary{grid-column:auto;min-height:52px}body[data-growth-shell="badges"]{background:radial-gradient(circle at 12% -4%,rgba(255,211,79,.18),transparent 30%),linear-gradient(180deg,#f3f7ff,#f8fbfe 50%,#f6fbf8)}body[data-growth-shell="badges"] .growth-star-card{min-height:105px;padding:13px;border-radius:18px;background:linear-gradient(150deg,#fff,#f6f9fd)}body[data-growth-shell="badges"] .growth-star-card strong{font-size:12px}.growth-star-card b{font-size:23px}body[data-growth-shell="badges"] .growth-badge-card{min-height:156px;padding:15px;border-radius:20px;background:#fff;box-shadow:none}body[data-growth-shell="badges"] .growth-badge-card.is-earned{background:linear-gradient(145deg,#fffdf1,#fff8d7);border-color:#ead26b}body[data-growth-shell="badges"] .growth-badge-card.is-locked{background:#f7f9fc}body[data-growth-shell="badges"] .growth-badge-icon{width:54px;height:54px;border-radius:17px}body[data-growth-shell="growth"]{background:radial-gradient(circle at 10% -5%,rgba(71,191,147,.17),transparent 32%),linear-gradient(180deg,#eef9f5,#f7fbff 48%,#f5f9fc)}body[data-growth-shell="growth"] .growth-row{min-height:64px;border-radius:16px;background:#fff}body[data-growth-shell="growth"] .growth-placeholder{min-height:86px;display:grid;place-items:center;border-radius:16px}@media(max-width:600px){.life-completion-actions{grid-template-columns:1fr!important}}:root{
  --hub-bg:#eef5fc;--hub-ink:#143250;--hub-muted:#64788f;--hub-line:#d6e3ef;
  --hub-card:#fff;--hub-accent:#2563eb;--hub-accent-dark:#1747b0;--hub-soft:#e8f1ff;
  --hub-shadow:0 16px 42px rgba(31,68,103,.12);--hub-radius:24px;
  font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;
}html,body{margin:0;min-height:100%;color:var(--hub-ink);background:var(--hub-bg)}body.primary-page{padding:0 0 max(92px,env(safe-area-inset-bottom));-webkit-tap-highlight-color:transparent}body.primary-page a{color:inherit;text-decoration:none}body.primary-page button{font:inherit;cursor:pointer}.hub-app{width:min(1180px,calc(100% - 28px));margin:0 auto;padding:10px 0 30px;display:grid;gap:16px}.hub-top{min-height:66px;padding:8px 12px;display:flex;align-items:center;justify-content:space-between;gap:16px;background:rgba(255,255,255,.96);border:1px solid var(--hub-line);border-radius:19px;box-shadow:0 8px 26px rgba(31,68,103,.08);position:relative;z-index:2}.hub-brand{display:flex;align-items:center;gap:11px;min-width:0}.hub-brand>i{width:46px;height:46px;border-radius:15px;background:var(--hub-accent);display:grid;place-items:center;color:#fff;font-size:25px;font-style:normal;box-shadow:0 8px 18px color-mix(in srgb,var(--hub-accent) 24%,transparent)}.hub-brand span{display:grid;min-width:0}.hub-brand strong{font-size:21px;line-height:1.08}.hub-brand small{margin-top:4px;color:var(--hub-muted);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-top-actions{display:flex;align-items:center;gap:8px}.hub-pill,.hub-top-actions>a{min-height:42px;padding:0 14px;border:1px solid var(--hub-line);border-radius:14px;background:#fff;display:flex;align-items:center;justify-content:center;font-weight:900;white-space:nowrap}.hub-top-actions>a{background:var(--hub-accent);border-color:var(--hub-accent);color:#fff}.hub-pill b{margin-left:5px;color:var(--hub-accent-dark)}.hub-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);gap:16px}.hub-hero-main,.hub-hero-side,.hub-section,.hub-summary,.hub-list-card{background:var(--hub-card);border:1px solid var(--hub-line);border-radius:var(--hub-radius);box-shadow:var(--hub-shadow)}.hub-hero-main{min-height:278px;padding:29px;position:relative;overflow:hidden}.hub-hero-main:after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-66px;top:-72px;background:var(--hub-soft)}.hub-hero h1{max-width:680px;margin:15px 0 10px;font-size:clamp(31px,3.5vw,44px);line-height:1.12;letter-spacing:-1px;position:relative;z-index:1}.hub-hero-main>p{max-width:700px;margin:0;color:var(--hub-muted);font-size:17px;line-height:1.62;font-weight:650;position:relative;z-index:1}.hub-hero-side{padding:20px;display:flex;flex-direction:column;justify-content:center}.hub-side-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.hub-side-head span{display:block;color:var(--hub-accent);font-size:12px;font-weight:950}.hub-side-head h2{margin:4px 0 0;font-size:20px;line-height:1.2}.hub-side-head>strong{padding:8px 10px;border-radius:12px;background:var(--hub-soft);color:var(--hub-accent-dark);font-size:14px}.hub-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.hub-strip>article{min-height:86px;padding:13px 15px;border:1px solid var(--hub-line);border-radius:18px;background:#fff;display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:11px}.hub-strip>article>i{width:44px;height:44px;border-radius:14px;background:var(--hub-soft);display:grid;place-items:center;font-style:normal;font-size:23px}.hub-strip span{display:grid;min-width:0}.hub-strip small{color:var(--hub-muted);font-size:11px;font-weight:850}.hub-strip b{margin-top:3px;font-size:16px;line-height:1.2}.hub-strip a,.hub-strip button{min-height:38px;padding:0 11px;border:1px solid var(--hub-line);border-radius:11px;background:#fff;color:var(--hub-accent);font-weight:950}.hub-section{padding:22px}.hub-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:15px}.hub-section-head span{display:block;color:var(--hub-accent);font-size:12px;font-weight:950}.hub-section-head h2{margin:4px 0 0;font-size:25px}.hub-section-head p{margin:5px 0 0;color:var(--hub-muted);font-size:14px;font-weight:650}.hub-section-head>a,.hub-section-head>strong{padding:9px 12px;border:1px solid var(--hub-line);border-radius:13px;background:#fff;color:var(--hub-accent-dark);font-size:13px;font-weight:950;white-space:nowrap}.hub-summary{padding:17px 20px;display:flex;align-items:center;gap:13px}.hub-summary>i{width:44px;height:44px;border-radius:14px;background:var(--hub-soft);display:grid;place-items:center;font-style:normal;font-size:23px}.hub-summary div{display:grid}.hub-summary span{color:var(--hub-accent);font-size:12px;font-weight:950}.hub-summary p{margin:3px 0 0;font-size:14px;font-weight:800}.hub-growth-main{display:grid;grid-template-columns:84px 1fr;gap:18px;align-items:center;min-height:220px}.hub-growth-main>i{width:80px;height:80px;border-radius:24px;background:var(--hub-soft);display:grid;place-items:center;font-style:normal;font-size:42px}.hub-growth-main span{color:var(--hub-accent);font-size:13px;font-weight:950}.hub-growth-main h1{margin:6px 0 7px}.hub-growth-main a{display:inline-flex;align-items:center;justify-content:center;min-height:43px;width:max-content;margin-top:13px;padding:0 15px;border-radius:13px;background:var(--hub-accent);color:#fff;font-weight:950}.hub-growth-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.hub-growth-stats article{min-height:82px;padding:11px;border-radius:15px;background:var(--hub-soft);display:grid;grid-template-columns:1fr auto;align-items:end}.hub-growth-stats small{grid-column:1/3;color:var(--hub-muted);font-size:11px;font-weight:850}.hub-growth-stats strong{font-size:28px;color:var(--hub-accent-dark)}.hub-growth-stats span{color:var(--hub-muted);font-size:12px;font-weight:850}.hub-week-chart{min-height:190px;padding:18px 10px 0;border-radius:20px;background:#f5f9fc;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;gap:10px}.hub-week-chart .growth-day-bar{height:100%;display:grid;grid-template-rows:auto 1fr auto;align-items:end;justify-items:center}.hub-week-chart .growth-day-bar strong{font-size:11px}.hub-week-chart .growth-day-bar i{width:min(42px,70%);height:var(--h);min-height:7px;border-radius:12px 12px 4px 4px;background:linear-gradient(#54c7a7,var(--hub-accent))}.hub-week-chart .growth-day-bar span{padding:7px 0;font-size:11px;font-weight:850}.hub-week-cards{margin-top:10px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.hub-week-cards article{padding:12px;border:1px solid var(--hub-line);border-radius:14px;background:#fff;display:grid}.hub-week-cards span{color:var(--hub-muted);font-size:11px;font-weight:850}.hub-week-cards strong{margin-top:4px;font-size:18px}.hub-growth-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.hub-list-card{padding:20px}.hub-card-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:12px}.hub-card-head span{display:block;color:var(--hub-accent);font-size:11px;font-weight:950}.hub-card-head h2,.hub-card-head h3{margin:4px 0 0}.hub-card-head a{color:var(--hub-accent);font-size:12px;font-weight:950}.hub-list-card .growth-row,.hub-section .growth-row{min-height:62px;margin-top:8px;padding:9px 10px;border:1px solid var(--hub-line);border-radius:14px;background:#f9fbfd}.hub-list-card .growth-placeholder,.hub-section .growth-placeholder{padding:18px;border-radius:14px;background:#f3f6f9;color:var(--hub-muted);text-align:center;font-size:13px;font-weight:700}@media (max-width:900px){.hub-app{width:min(100% - 20px,760px)}.hub-hero{grid-template-columns:1fr}.hub-hero-main{min-height:238px}.hub-strip{grid-template-columns:1fr}.hub-growth-grid{grid-template-columns:1fr}.hub-week-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){body.primary-page{padding-bottom:max(106px,calc(92px + env(safe-area-inset-bottom)))}.hub-app{width:calc(100% - 14px);gap:12px}.hub-top{min-height:58px;padding:7px 8px;border-radius:16px}.hub-brand>i{width:40px;height:40px}.hub-brand strong{font-size:18px}.hub-brand small{font-size:11px}.hub-pill{display:none}.hub-top-actions>a{min-height:40px;padding:0 12px}.hub-hero-main{min-height:0;padding:22px;border-radius:20px}.hub-hero h1{font-size:30px;letter-spacing:-.7px}.hub-hero-main>p{font-size:15px}.hub-section{padding:18px;border-radius:20px}.hub-section-head{align-items:flex-start}.hub-section-head h2{font-size:23px}.hub-growth-main{grid-template-columns:58px 1fr}.hub-growth-main>i{width:58px;height:58px;font-size:31px}.hub-growth-main h1{font-size:27px}.hub-week-chart{gap:4px}.hub-week-chart .growth-day-bar i{width:70%}}body.primary-page .hub-app>.hub-top{width:100%!important;max-width:none!important;margin-inline:0!important;justify-self:stretch!important}

/* v429 growth weekly layout repair */
.ui-weekly{
  padding:22px;
  border:1px solid var(--hub-line);
  border-radius:26px;
  background:var(--hub-card);
  box-shadow:var(--hub-shadow);
}
.ui-week-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  margin-bottom:16px;
}
.ui-week-head span,.ui-card-title span{
  display:block;
  color:var(--hub-accent);
  font-size:12px;
  font-weight:950;
}
.ui-week-head h2,.ui-card-title h3{
  margin:4px 0 0;
  font-size:25px;
  line-height:1.18;
}
.ui-week-head p{
  margin:5px 0 0;
  color:var(--hub-muted);
  font-size:14px;
  font-weight:650;
}
.ui-week-head a,.ui-next-card>a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 14px;
  border:1px solid var(--hub-line);
  border-radius:14px;
  background:#fff;
  color:var(--hub-accent-dark);
  font-size:13px;
  font-weight:950;
  white-space:nowrap;
}
.ui-week-hero{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);
  gap:14px;
}
.ui-week-best,.ui-week-kpis article,.ui-ability-card,.ui-next-card{
  border:1px solid var(--hub-line);
  border-radius:20px;
  background:#fff;
}
.ui-week-best{
  min-height:172px;
  display:grid;
  grid-template-columns:76px minmax(0,1fr);
  gap:16px;
  align-items:center;
  padding:20px;
  background:linear-gradient(145deg,#fff 0%,#f3f8ff 100%);
}
.ui-week-best>i,.ui-next-focus>i{
  width:72px;
  height:72px;
  display:grid;
  place-items:center;
  border-radius:22px;
  background:var(--hub-soft);
  font-style:normal;
  font-size:36px;
}
.ui-week-best h3{
  margin:6px 0 8px;
  font-size:28px;
  line-height:1.2;
  letter-spacing:-.03em;
}
.ui-week-best p,.ui-next-focus p,.ui-parent-note p{
  margin:0;
  color:var(--hub-muted);
  font-size:14px;
  line-height:1.6;
  font-weight:700;
}
.ui-week-kpis{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.ui-week-kpis article{
  min-height:80px;
  padding:12px 14px;
  display:grid;
  grid-template-columns:1fr auto;
  align-items:end;
  background:#f8fbff;
}
.ui-week-kpis small{
  grid-column:1/3;
  color:var(--hub-muted);
  font-size:11px;
  font-weight:850;
}
.ui-week-kpis strong{
  font-size:28px;
  color:var(--hub-accent-dark);
}
.ui-week-kpis span{
  color:var(--hub-muted);
  font-size:12px;
  font-weight:850;
}
.ui-week-main{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);
  gap:14px;
  margin-top:14px;
}
.ui-ability-card,.ui-next-card{
  padding:18px;
}
.ui-ability-list{
  display:grid;
  gap:12px;
  margin-top:14px;
}
.ui-ability-row{
  display:grid;
  grid-template-columns:minmax(108px,.45fr) minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
}
.ui-ability-row span{
  font-size:14px;
  font-weight:900;
  color:#173556;
}
.ui-ability-track{
  height:12px;
  overflow:hidden;
  border-radius:999px;
  background:#eaf0f6;
}
.ui-ability-track b{
  display:block;
  height:100%;
  width:var(--w,0%);
  min-width:0;
  border-radius:inherit;
  background:var(--c,#4c8cf6);
}
.ui-ability-row em{
  font-style:normal;
  font-size:13px;
  font-weight:950;
  color:var(--hub-accent-dark);
}
.ui-next-focus{
  display:grid;
  grid-template-columns:72px minmax(0,1fr);
  gap:14px;
  align-items:center;
  margin-top:14px;
  padding:16px;
  border-radius:18px;
  background:#f7fbff;
}
.ui-next-focus strong{
  display:block;
  margin-bottom:5px;
  font-size:18px;
}
.ui-next-card>a{
  margin-top:14px;
  background:var(--hub-accent);
  border-color:var(--hub-accent);
  color:#fff;
}
.ui-parent-note{
  margin-top:14px;
  padding:14px 16px;
  border-radius:16px;
  background:#f4f8fb;
}
.ui-parent-note span{
  display:block;
  margin-bottom:6px;
  color:var(--hub-accent);
  font-size:12px;
  font-weight:950;
}
.ui-chart-wrap{
  margin-top:14px;
  padding:18px;
  border:1px solid var(--hub-line);
  border-radius:20px;
  background:#fff;
}
.ui-chart-head span{
  display:block;
  color:var(--hub-accent);
  font-size:12px;
  font-weight:950;
}
.ui-chart-head p{
  margin:5px 0 12px;
  color:var(--hub-muted);
  font-size:14px;
  font-weight:700;
}
@media (max-width:980px){
  .ui-week-hero,.ui-week-main{grid-template-columns:1fr;}
}
@media (max-width:720px){
  .ui-weekly{padding:18px;border-radius:22px;}
  .ui-week-head{display:block;}
  .ui-week-head a{margin-top:12px;}
  .ui-week-best{grid-template-columns:60px 1fr;padding:18px;}
  .ui-week-best>i,.ui-next-focus>i{width:58px;height:58px;font-size:30px;border-radius:18px;}
  .ui-week-best h3{font-size:23px;}
  .ui-week-kpis{grid-template-columns:repeat(2,minmax(0,1fr));}
  .ui-ability-row{grid-template-columns:1fr;gap:7px;}
  .ui-next-focus{grid-template-columns:58px 1fr;}
}
