/* Bio2Twin Restore 7 routes: unified Meal-aligned header and accurate research-only presentation. */
/* Bio2Twin Love Overview header V3 — align with live Meal / Today header.
   Scoped to #love/overview through existing b2t-love-overview-ui class.
   Meal and other routes unchanged. No fabricated watch or health metrics. */

/* Exact Meal / Today desktop header rhythm. */
body.b2t-restore-ui main.workspace > section.app-head {
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:16px !important;
  max-width:1180px;
  margin:0 auto 18px !important;
}
body.b2t-restore-ui main.workspace > section.app-head > div:first-child {
  min-width:0;
  flex:1 1 auto;
}
body.b2t-restore-ui main.workspace > section.app-head #appEyebrow {
  font-size:11px !important;
  font-weight:400 !important;
  letter-spacing:.12em;
  margin:0 0 6px !important;
  line-height:normal;
}
body.b2t-restore-ui main.workspace > section.app-head #appTitle {
  font-size:28px !important;
  font-weight:400 !important;
  line-height:1.35 !important;
  letter-spacing:0;
  margin:0 !important;
}
body.b2t-restore-ui main.workspace > section.app-head #b2tRestoreTodayDate {
  display:block;
  margin:7px 0 9px !important;
  color:#acb5c3;
  font:400 13px/1.55 -apple-system,BlinkMacSystemFont,"Noto Sans TC",system-ui,sans-serif;
  letter-spacing:.025em;
}
body.b2t-restore-ui main.workspace > section.app-head #b2tRestoreTodayDate[hidden] {
  display:none !important;
}
body.b2t-restore-ui main.workspace > section.app-head #appSubtitle {
  font-size:15px !important;
  font-weight:400 !important;
  line-height:1.65 !important;
  margin:7px 0 0 !important;
  max-width:680px;
}
body.b2t-restore-ui main.workspace > section.app-head #headMetrics {
  display:flex !important;
  flex:0 0 auto;
  align-items:center !important;
  justify-content:flex-end !important;
  flex-wrap:wrap;
  gap:8px !important;
  margin:0 !important;
  min-width:0;
  width:auto;
}
body.b2t-restore-ui main.workspace > section.app-head #headMetrics .metric-chip {
  box-sizing:border-box !important;
  flex:0 0 auto;
  min-width:90px !important;
  min-height:55px;
  padding:9px 12px !important;
  border-radius:13px !important;
  border:1px solid #333c4b;
  background:#10151e;
}
body.b2t-restore-ui main.workspace > section.app-head #headMetrics .metric-chip small {
  display:block;
  font-size:10px !important;
  font-weight:400 !important;
  line-height:1.2;
  margin:0 0 3px;
  letter-spacing:.05em;
  white-space:nowrap;
}
body.b2t-restore-ui main.workspace > section.app-head #headMetrics .metric-chip b {
  font-size:14px !important;
  font-weight:400 !important;
  line-height:1.4;
  white-space:nowrap;
}

/* Exact Meal / Today tab bar sizing, inactive/active states, spacing. */
body.b2t-restore-ui main.workspace > nav#subnav.subnav {
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  box-sizing:border-box;
  width:100%;
  max-width:1180px;
  min-height:56px !important;
  margin:0 auto 18px !important;
  padding:6px !important;
  gap:7px !important;
  border:1px solid #3c485c !important;
  border-radius:17px !important;
  background:#10151e !important;
  overflow-x:auto;
  overflow-y:hidden;
  white-space:nowrap;
  scrollbar-width:none;
}
body.b2t-restore-ui main.workspace > nav#subnav.subnav::-webkit-scrollbar {
  display:none;
}
body.b2t-restore-ui main.workspace > nav#subnav.subnav > button {
  flex:0 0 auto;
  box-sizing:border-box;
  min-height:42px !important;
  padding:9px 15px !important;
  margin:0 !important;
  font-size:15px !important;
  line-height:1.4 !important;
  font-weight:400 !important;
  border:1px solid transparent !important;
  border-radius:11px !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#b3bece;
}
body.b2t-restore-ui main.workspace > nav#subnav.subnav > button.active,
body.b2t-restore-ui main.workspace > nav#subnav.subnav > button[aria-current="page"] {
  background:#25334b !important;
  border-color:#728db7 !important;
  color:#fff !important;
}
body.b2t-restore-ui main.workspace > nav#subnav.subnav > button:hover {
  color:#fff !important;
}
body.b2t-restore-ui main.workspace > nav#subnav.subnav > button:focus-visible {
  outline:2px solid currentColor;
  outline-offset:2px;
}

/* Keep the Love content palette, cards and small type as already approved. */
@media(max-width:760px) {
  body.b2t-restore-ui main.workspace > section.app-head {
    display:block !important;
    gap:12px !important;
    margin:0 auto 14px !important;
  }
  body.b2t-restore-ui main.workspace > section.app-head > div:first-child {
    min-width:0;
    width:100%;
  }
  body.b2t-restore-ui main.workspace > section.app-head #appEyebrow {
    font-size:11px !important;
    letter-spacing:.12em;
    margin:0 0 10px !important;
  }
  body.b2t-restore-ui main.workspace > section.app-head #appTitle {
    font-size:24px !important;
    line-height:1.35 !important;
  }
  body.b2t-restore-ui main.workspace > section.app-head #b2tRestoreTodayDate {
    font-size:12px !important;
    margin:6px 0 8px !important;
  }
  body.b2t-restore-ui main.workspace > section.app-head #appSubtitle {
    font-size:14px !important;
    line-height:1.6 !important;
    margin:12px 0 0 !important;
  }
  body.b2t-restore-ui main.workspace > section.app-head #headMetrics {
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr));
    align-items:center;
    gap:6px !important;
    width:100%;
    margin:15px 0 0 !important;
  }
  body.b2t-restore-ui main.workspace > section.app-head #headMetrics .metric-chip {
    min-width:0 !important;
    width:100%;
    min-height:57px;
    padding:9px 10px !important;
    border-radius:13px !important;
  }
  body.b2t-restore-ui main.workspace > section.app-head #headMetrics .metric-chip small {
    font-size:10px !important;
    margin:0 0 5px;
  }
  body.b2t-restore-ui main.workspace > section.app-head #headMetrics .metric-chip b {
    display:block;
    font-size:13px !important;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  body.b2t-restore-ui main.workspace > nav#subnav.subnav {
    min-height:50px !important;
    margin-bottom:14px !important;
    padding:5px !important;
    gap:5px !important;
    border-radius:14px !important;
    -webkit-overflow-scrolling:touch;
  }
  body.b2t-restore-ui main.workspace > nav#subnav.subnav > button {
    min-height:38px !important;
    padding:8px 11px !important;
    font-size:13px !important;
    border-radius:9px !important;
  }
}

/* Match Meal / Today header's tablet-width height without changing small or wide layouts. */
@media (min-width:761px) and (max-width:1100px) {
  body.b2t-restore-ui main.workspace > section.app-head {
    min-height:128px !important;
  }
}

/* Bio2Twin Restore · seven-page visual system — scope-only.
   Blue/black existing hero backgrounds and charts are preserved when verified;
   hard-coded demo visualizations are hidden by the presentation adapter. */

body.b2t-restore-ui main.workspace > #integrationStrip {display:none !important}
body.b2t-restore-ui main.workspace > #content {
  min-width:0;
  width:100%;
  display:grid;
  align-content:start;
  gap:13px;
}
body.b2t-restore-ui main.workspace #content > .hero-card {
  box-sizing:border-box;
  display:block !important;
  width:100%;
  min-width:0;
  min-height:0 !important;
  padding:24px 27px !important;
  border-radius:20px !important;
}
body.b2t-restore-ui main.workspace #content > .hero-card .hero-copy {
  max-width:920px;
  min-width:0;
}
body.b2t-restore-ui main.workspace #content > .hero-card .hero-copy > small {
  font-size:11px !important;
  line-height:1.5;
  letter-spacing:.09em;
}
body.b2t-restore-ui main.workspace #content > .hero-card .hero-copy h2 {
  margin:8px 0 10px !important;
  font-size:22px !important;
  line-height:1.45;
  font-weight:400 !important;
  letter-spacing:0;
  max-width:100%;
}
body.b2t-restore-ui main.workspace #content > .hero-card .hero-copy > p {
  font-size:14px !important;
  line-height:1.75;
  font-weight:400 !important;
  max-width:850px;
  margin:0 !important;
}
body.b2t-restore-ui main.workspace #content > .hero-card .hero-actions {
  margin-top:17px;
  gap:9px;
  display:flex;
  flex-wrap:wrap;
}
body.b2t-restore-ui main.workspace #content > .hero-card .hero-actions .btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  min-height:43px;
  padding:10px 14px;
  font-size:13px !important;
  font-weight:400 !important;
  border-radius:11px;
}
body.b2t-restore-ui main.workspace #content > .hero-card .hero-status {display:none !important}

/* Never display seeded model numbers as member-specific outcomes. */
body.b2t-restore-ui main.workspace #content > .b2t-restore-demo-hidden {display:none !important}
body.b2t-restore-ui main.workspace #content > .b2t-restore-evidence-note {
  box-sizing:border-box;
  border:1px solid #39465a;
  background:#111823;
  border-radius:17px;
  padding:20px 23px;
  width:100%;
  min-width:0;
  max-width:1180px;
  margin:0;
}
body.b2t-restore-ui .b2t-restore-evidence-note > small {
  display:block;
  color:#8ea7cb;
  font-size:11px;
  letter-spacing:.09em;
  margin-bottom:7px;
}
body.b2t-restore-ui .b2t-restore-evidence-note > h3 {
  font-size:19px !important;
  line-height:1.45;
  font-weight:400 !important;
  margin:0 0 8px;
}
body.b2t-restore-ui .b2t-restore-evidence-note > p {
  font-size:14px;
  color:#b2bfd0;
  line-height:1.75;
  font-weight:400;
  max-width:950px;
  margin:0 0 12px;
}
body.b2t-restore-ui .b2t-restore-evidence-note > a {
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:41px;
  padding:9px 13px;
  box-sizing:border-box;
  color:#e8effa;
  background:#1a2940;
  border:1px solid #405a7a;
  border-radius:10px;
  font-size:13px;
  font-weight:400;
}
body.b2t-restore-ui .b2t-restore-evidence-note > a:focus-visible {
  outline:2px solid currentColor;
  outline-offset:3px;
}
/* A research method is a process, not a successful outcome. */
body.b2t-restore-ui main.workspace #content > .flow-list {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:stretch;
  gap:11px;
}
body.b2t-restore-ui main.workspace #content > .flow-list .flow-step {
  display:grid;
  grid-template-columns:39px minmax(0,1fr);
  gap:10px;
  min-width:0;
  min-height:112px;
  box-sizing:border-box;
  padding:17px 14px;
  align-items:start;
  border-radius:15px;
  background:#10151e;
}
body.b2t-restore-ui main.workspace #content > .flow-list .flow-step em {
  font-size:12px;
  width:36px;
  height:36px;
}
body.b2t-restore-ui main.workspace #content > .flow-list .flow-step strong {
  font-size:14px;
  font-weight:400 !important;
  line-height:1.5;
  overflow-wrap:anywhere;
}
body.b2t-restore-ui main.workspace #content > .flow-list .flow-step small {
  display:block;
  font-size:12px;
  line-height:1.65;
  margin-top:5px;
  overflow-wrap:anywhere;
}
body.b2t-restore-ui main.workspace #content > .flow-list .flow-step i {display:none}
body.b2t-restore-ui main.workspace #content > .matrix {
  width:100%;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:11px;
}
body.b2t-restore-ui main.workspace #content > .matrix .matrix-cell {
  min-width:0;
  min-height:98px;
  padding:17px;
  border-radius:15px;
  box-sizing:border-box;
  background:#111824;
  border:1px solid #2e3b4e;
}
body.b2t-restore-ui main.workspace #content > .matrix .matrix-cell b {
  display:block;
  font-size:15px;
  line-height:1.5;
  font-weight:400 !important;
}
body.b2t-restore-ui main.workspace #content > .matrix .matrix-cell span {
  display:block;
  font-size:12px;
  line-height:1.65;
  margin-top:7px;
}
body.b2t-restore-ui main.workspace #content > .disclaimer {
  margin:2px 0 8px;
  font-size:12px;
  line-height:1.75;
}

@media(max-width:900px){
  body.b2t-restore-ui main.workspace #content > .flow-list {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  body.b2t-restore-ui main.workspace #content > .matrix {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:760px){
  body.b2t-restore-ui main.workspace #content {gap:11px}
  body.b2t-restore-ui main.workspace #content > .hero-card {
    padding:19px 17px !important;
    border-radius:17px !important;
  }
  body.b2t-restore-ui main.workspace #content > .hero-card .hero-copy h2 {
    font-size:20px !important;
    line-height:1.45;
  }
  body.b2t-restore-ui main.workspace #content > .hero-card .hero-copy > p {
    font-size:14px !important;
    line-height:1.7;
  }
  body.b2t-restore-ui main.workspace #content > .hero-card .hero-actions .btn {
    min-height:44px;
    flex:1 1 120px;
    min-width:0;
    font-size:13px !important;
    padding:10px 11px;
  }
  body.b2t-restore-ui main.workspace #content > .b2t-restore-evidence-note {
    padding:17px 16px;
    border-radius:15px;
  }
  body.b2t-restore-ui .b2t-restore-evidence-note > h3 {font-size:17px !important}
  body.b2t-restore-ui .b2t-restore-evidence-note > p {
    font-size:13px;
    line-height:1.75;
  }
  body.b2t-restore-ui main.workspace #content > .flow-list {
    grid-template-columns:1fr;
    gap:9px;
  }
  body.b2t-restore-ui main.workspace #content > .flow-list .flow-step {
    min-height:0;
    padding:13px;
    grid-template-columns:39px minmax(0,1fr);
  }
  body.b2t-restore-ui main.workspace #content > .flow-list .flow-step small {
    font-size:12px;
    margin-top:4px;
  }
  body.b2t-restore-ui main.workspace #content > .matrix {gap:9px}
  body.b2t-restore-ui main.workspace #content > .matrix .matrix-cell {
    min-height:92px;
    padding:12px 13px;
  }
  body.b2t-restore-ui main.workspace #content > .matrix .matrix-cell b {font-size:14px}
  body.b2t-restore-ui main.workspace #content > .matrix .matrix-cell span {font-size:11px}
  body.b2t-restore-ui main.workspace {
    min-height:0 !important;
    padding-bottom:14px !important;
  }
  body.b2t-restore-ui #watchDock.watch-dock {
    margin:13px 14px 24px !important;
    padding:16px !important;
  }
  body.b2t-restore-ui #watchDock .watch-face {
    width:min(210px,100%) !important;
    height:276px !important;
    border-radius:46px !important;
    margin:18px auto 17px !important;
  }
}
@media(max-width:350px) {
  body.b2t-restore-ui main.workspace #content > .hero-card .hero-actions .btn {flex-basis:100%}
  body.b2t-restore-ui main.workspace #content > .matrix .matrix-cell {padding:10px 11px}
}
