:root {
  --navy: #071b34;
  --navy-soft: #0c2947;
  --cyan: #59e0da;
  --blue: #4f8cff;
  --green: #50d49b;
  --white: #f7fbff;
  --muted: #9fb7ce;
  --glass: rgba(16, 54, 86, 0.72);
  --line: rgba(143, 205, 235, 0.19);
  --shadow: 0 22px 70px rgba(0, 12, 29, 0.32);
}
.mobile-mine-icon.honors{color:#8b6729;background:linear-gradient(145deg,#fff7df,#e7f3e8)}
.mobile-honor-hero{display:flex;align-items:center;gap:14px;padding:18px;border-radius:22px;color:#f4fbfa;background:radial-gradient(circle at 88% 12%,rgba(225,190,105,.22),transparent 34%),linear-gradient(135deg,#092b3b,#0b5353);box-shadow:0 12px 30px rgba(12,65,68,.18)}
.mobile-honor-avatar{position:relative;width:66px;height:66px;display:grid;place-items:center;flex:0 0 auto;border:2px solid #d6b66c;border-radius:50%;color:#164f49;background:linear-gradient(145deg,#fffdf5,#a8dfc9);box-shadow:0 0 0 4px rgba(222,188,106,.12);font-size:25px;font-weight:900}.mobile-honor-avatar i{position:absolute;right:-5px;bottom:-3px;width:28px;height:28px;display:grid;place-items:center;border:2px solid #d6b66c;border-radius:50%;color:#197461;background:#fffaf0;font-size:9px;font-style:normal;font-weight:900}.mobile-honor-hero small{color:#8ed7cb;font-size:10px}.mobile-honor-hero h2{margin:3px 0 2px;color:#f1d28b;font-size:21px}.mobile-honor-hero p{margin:0;color:#aec9cb;font-size:11px}
.mobile-rank-card{margin-top:13px;padding:16px;border:1px solid rgba(40,137,127,.15);border-radius:20px;background:#fff;box-shadow:0 8px 24px rgba(38,78,83,.08)}.mobile-rank-card header{display:flex;align-items:center;justify-content:space-between}.mobile-rank-card header small{display:block;color:#45948a;font-size:10px}.mobile-rank-card header strong{display:block;margin-top:3px;color:#203f48;font-size:24px}.mobile-rank-card header span{padding:7px 10px;border-radius:999px;color:#8b6729;background:#fff3d3;font-size:12px;font-weight:850}.mobile-rank-card>p{margin:5px 0 10px;color:#6c878d;font-size:11px}.mobile-rank-line{height:32px;display:flex;align-items:end;gap:6px;padding:3px 8px;border-radius:10px;background:linear-gradient(180deg,#f2fbf8,#eef5f6)}.mobile-rank-line i{flex:1;border-radius:4px 4px 2px 2px;background:linear-gradient(180deg,#76d0b5,#2a8d84)}.mobile-rank-line i:nth-child(1){height:26%}.mobile-rank-line i:nth-child(2){height:38%}.mobile-rank-line i:nth-child(3){height:45%}.mobile-rank-line i:nth-child(4){height:57%}.mobile-rank-line i:nth-child(5){height:67%}.mobile-rank-line i:nth-child(6){height:82%}.mobile-rank-line i:nth-child(7){height:100%;background:linear-gradient(180deg,#ead08c,#ba8a33)}
.mobile-honor-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:11px}.mobile-honor-stats>div{padding:13px 15px;border:1px solid rgba(54,139,130,.12);border-radius:16px;background:rgba(255,255,255,.9)}.mobile-honor-stats small{display:block;color:#769095;font-size:10px}.mobile-honor-stats strong{display:block;margin-top:2px;color:#23545a;font-size:19px}.mobile-honor-heading{margin:18px 2px 10px;color:#294c53;font-size:15px}
.mobile-honor-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mobile-honor-medal{min-height:145px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px 7px;border:1px solid rgba(59,136,126,.14);border-radius:18px;background:#fff}.mobile-honor-medal>span{width:60px;height:60px;display:grid;place-items:center;border:3px solid #d8b66b;border-radius:50%;color:#17705e;background:radial-gradient(circle at 35% 25%,#fff,#ede7d8);box-shadow:0 5px 16px rgba(160,123,50,.16);font-size:15px;font-weight:900}.mobile-honor-medal strong{margin-top:9px;color:#2a4b51;font-size:13px}.mobile-honor-medal small{margin-top:3px;color:#8b9da0;font-size:9px}.mobile-honor-medal.worn{border-color:#39a695;box-shadow:0 0 0 2px rgba(57,166,149,.12)}.mobile-honor-medal.worn small{color:#238a7c;font-weight:800}.mobile-honor-medal.locked{filter:grayscale(1);opacity:.46}.mobile-improvement-honor{display:flex;gap:12px;margin:12px 0 22px;padding:14px;border:1px dashed rgba(80,142,133,.26);border-radius:18px;background:linear-gradient(135deg,#f6fbf9,#fffaf0)}.mobile-improvement-honor>span{width:42px;height:42px;display:grid;place-items:center;flex:0 0 auto;border-radius:14px;color:#348f7f;background:#ddf2eb;font-size:20px}.mobile-improvement-honor small{display:block;color:#779095;font-size:9px}.mobile-improvement-honor strong{display:block;margin-top:2px;color:#31565b;font-size:13px}.mobile-improvement-honor p{margin:4px 0 0;color:#819396;font-size:9px;line-height:1.45}.mobile-honor-demo-reset{width:100%;height:42px;margin:0 0 18px;border:1px solid rgba(45,139,126,.22);border-radius:13px;color:#277f75;background:#f4fbf8;font-size:12px;font-weight:800}

* { box-sizing: border-box; }
[hidden] { display: none !important; }

html, body { margin: 0; min-height: 100%; }

body {
  font-family: "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;
  color: var(--white);
  background: var(--navy);
}

button { font: inherit; }

.tv-body {
  width: 100vw;
  height: 100vh;
  overflow: hidden;
  background: #00152c;
}

.tv-home {
  position: relative;
  width: 100vw;
  height: 100vh;
  overflow: hidden;
  isolation: isolate;
  background: #00152c;
}

.tv-home-art {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: fill;
  user-select: none;
  pointer-events: none;
}
.tv-persona-title{position:absolute;z-index:2;left:4.35%;top:34.72%;width:1.68%;height:17.2%;display:grid;place-items:start center;background:#061d34;pointer-events:none}.tv-persona-title span{display:flex;flex-direction:column;align-items:center;gap:.08vw;padding-top:.02vw;color:#e0edf0;font-size:1vw;line-height:1;font-weight:700;letter-spacing:.01em;text-shadow:0 .08vw .2vw rgba(0,0,0,.42)}.tv-persona-title i{display:block;height:1.16vw;font-style:normal}.tv-persona-title .tv-persona-accent{color:#79e0cf}
.tv-dynamic-greeting{position:absolute;z-index:2;left:27.65%;top:4.05%;width:41.7%;height:18.9%;padding:.7vw 1vw;border:1px solid rgba(112,184,209,.08);border-radius:1vw;background:radial-gradient(circle at 42% 45%,#082a43,#03192f 64%,#02162b 100%);box-shadow:0 0 1.4vw .6vw rgba(2,23,44,.78);pointer-events:none}.tv-dynamic-greeting h1{margin:0;color:#f7fbff;font-size:2.7vw;line-height:1.25;letter-spacing:.02em;text-shadow:0 .15vw .35vw rgba(0,0,0,.28)}.tv-dynamic-greeting p{margin:.85vw 0 0;color:#d4e3eb;font-size:1.18vw;line-height:1.62;letter-spacing:.01em}
.tv-ask-panel { position:absolute; z-index:1; left:27.9%; top:25%; width:40.95%; height:41.8%; display:grid; grid-template-columns:38% 62%; align-items:center; padding:2.2vw 2.45vw; overflow:hidden; border:1px solid rgba(111,219,218,.4); border-radius:1.75vw; background:linear-gradient(135deg,#125b69,#062c49); box-shadow:inset 0 0 3vw rgba(75,219,217,.08),0 1.2vw 3vw rgba(0,8,25,.28); }
.tv-ask-panel:before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 18% 50%,rgba(62,228,197,.24),transparent 29%),linear-gradient(110deg,rgba(101,224,190,.05),transparent 50%); pointer-events:none; }
.tv-ask-panel:after { content:""; position:absolute; left:36%; top:15%; width:1px; height:70%; background:linear-gradient(to bottom,transparent,rgba(134,225,226,.24),transparent); }
.tv-ask-visual { position:relative; z-index:1; display:grid; place-items:center; height:100%; }
.tv-ask-visual span { position:relative; z-index:2; width:8.7vw; height:8.7vw; display:grid; place-items:center; border:1px solid rgba(208,255,245,.58); border-radius:50%; color:#e8fff9; background:radial-gradient(circle at 35% 28%,#83e5c3,#1ca88f 57%,#0b5a68); box-shadow:0 0 0 .85vw rgba(84,222,194,.07),0 0 3vw rgba(67,225,204,.32); font-size:3.8vw; font-weight:400; }
.tv-ask-visual i { position:absolute; width:12vw; height:12vw; border:1px solid rgba(105,233,212,.2); border-radius:50%; box-shadow:inset 0 0 1.5vw rgba(89,225,206,.08); }
.tv-ask-copy { position:relative; z-index:1; padding-left:2vw; }
.tv-ask-copy small { color:#80e5d9; font-size:.87vw; font-weight:700; letter-spacing:.12em; }
.tv-ask-copy h1 { margin:.65vw 0 .55vw; font-size:2.55vw; letter-spacing:.06em; line-height:1.15; }
.tv-ask-copy p { margin:0 0 1.75vw; color:#c0d6df; font-size:.94vw; line-height:1.72; }
.tv-ask-cta { width:100%; height:5.2vw; display:flex; align-items:center; justify-content:center; gap:1.15vw; margin:0; padding:0; border:1px solid rgba(188,255,250,.68); border-radius:1.25vw; outline:none; color:white; cursor:pointer; background:linear-gradient(105deg,#21b8b7,#28a8d2); box-shadow:0 .6vw 1.6vw rgba(25,193,205,.2),inset 0 0 .7vw rgba(255,255,255,.08); transition:border-color 160ms ease,box-shadow 160ms ease,filter 160ms ease; }
.tv-ask-cta b { font-size:1.45vw; letter-spacing:.04em; }
.tv-ask-cta span { font-size:1.8vw; font-weight:300; }
.tv-card-name { position:absolute; z-index:2; width:13.34%; height:9.7%; display:flex; align-items:flex-end; justify-content:center; padding-bottom:1.65vw; color:#f4fbff; font-size:1.75vw; font-weight:700; letter-spacing:.05em; text-shadow:0 .12vw .25vw rgba(0,0,0,.38); pointer-events:none; }
.tv-card-name.today-name { left:70.10%; top:36.02%; border-radius:0 0 1.65vw 1.65vw; background:linear-gradient(to bottom,rgba(43,103,85,0),rgba(43,103,85,.42) 22%,#2b6755 57%); }
.tv-card-name.profile-name { left:84.39%; top:47.08%; width:13.10%; height:19.98%; flex-direction:column; align-items:center; justify-content:flex-end; padding-bottom:1.55vw; border-radius:1.65vw; background:linear-gradient(155deg,rgba(17,115,119,.98),rgba(12,76,96,.99)); box-shadow:inset 0 0 2vw rgba(116,241,223,.12); }
.tv-card-name.consultation-name:before{content:"";position:absolute;left:50%;top:2.2vw;width:3.45vw;height:2.28vw;transform:translateX(-50%);border:.18vw solid #d9fff9;border-radius:.72vw;background:linear-gradient(145deg,#89ead6,#3bbbc0);box-shadow:0 0 1vw rgba(82,231,218,.28)}
.tv-card-name.consultation-name:after{content:"";position:absolute;left:calc(50% + 1.55vw);top:3.08vw;width:1.15vw;height:1.05vw;background:#d9fff9;clip-path:polygon(0 20%,100% 0,100% 100%,0 80%)}
.tv-card-name.consultation-name small{position:absolute;top:5.05vw;left:.5vw;right:.5vw;margin:0;color:#d5fff8;font-size:.84vw;font-weight:700;line-height:1.25;letter-spacing:.035em;text-align:center;text-shadow:0 .1vw .24vw rgba(0,0,0,.5)}
.tv-picks-heading{position:absolute;z-index:3;left:2.45%;top:71.15%;display:flex;align-items:baseline;gap:.9vw;min-width:25vw;padding:.32vw .9vw .38vw 0;color:#f3fbff;background:linear-gradient(90deg,#06203a 0%,rgba(6,32,58,.94) 62%,rgba(6,32,58,0) 100%);pointer-events:none}.tv-picks-heading b{font-size:1.48vw;letter-spacing:.04em}.tv-picks-heading b:before{content:"◆";margin-right:.58vw;color:#9dd56a;font-size:.92vw}.tv-picks-heading span{color:#92afc1;font-size:.66vw;letter-spacing:.03em}
.tv-connection-label { position:absolute; z-index:3; right:2.5%; top:11.05%; width:13.95%; height:5.7%; display:flex; align-items:center; justify-content:center; gap:.55vw; border:1px solid rgba(102,225,244,.72); border-radius:999px; color:#edfaff; background:linear-gradient(180deg,rgba(9,44,72,.98),rgba(5,29,52,.98)); box-shadow:0 0 .8vw rgba(37,220,244,.38), inset 0 0 .55vw rgba(83,217,235,.14); font-size:1.02vw; font-weight:700; letter-spacing:.04em; }
.tv-connection-label span { color:#83e5ea; font-size:1.15vw; }.tv-connection-label b{font-size:1.3vw;color:#cdeaf1;font-weight:400}
.tv-account-label{position:absolute;z-index:3;right:2.5%;top:2.75%;height:7.65%;min-width:18.5%;display:none;align-items:center;gap:.62vw;padding:.42vw .72vw .42vw .48vw;border:1px solid rgba(219,185,104,.62);border-radius:999px;background:linear-gradient(105deg,rgba(5,31,53,.97),rgba(8,55,64,.97));box-shadow:0 0 .9vw rgba(42,212,219,.18),inset 0 0 1.2vw rgba(220,184,101,.05);pointer-events:none}.tv-home.authenticated .tv-account-label{display:flex}.tv-account-avatar{width:3vw;height:3vw;display:grid;place-items:center;border:.15vw solid #d9b76b;border-radius:50%;color:#073c3c;background:linear-gradient(145deg,#f5f1e6,#72cdb1);box-shadow:0 0 .65vw rgba(221,188,106,.32);font-size:1vw;font-weight:900}.tv-account-label>span:nth-child(2){display:grid;gap:.06vw;min-width:8.7vw}.tv-account-label b{font-size:.84vw}.tv-account-label small{font-size:.5vw}.tv-account-honor-name{color:#e7c77d!important;font-weight:800}.tv-account-rank{color:#83b8b6!important}.tv-account-honor-badge{width:2.05vw;height:2.05vw;display:grid;place-items:center;border:.12vw solid #d8b568;border-radius:50%;color:#146c5b;background:radial-gradient(circle at 35% 28%,#fff,#e9e3d2);box-shadow:0 0 .75vw rgba(222,188,106,.36);font-size:.58vw;font-style:normal;font-weight:900}.tv-account-label i{margin-left:auto;color:#88dcd6;font-size:.8vw;font-style:normal}

.tv-focus-layer {
  position: absolute;
  inset: 0;
  z-index: 2;
}

.tv-hotspot {
  position: absolute;
  margin: 0;
  padding: 0;
  border: 2px solid transparent;
  border-radius: 1.7vw;
  background: transparent;
  color: transparent;
  cursor: pointer;
  outline: none;
  transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease, background 160ms ease;
}

.tv-hotspot:focus-visible,
.tv-ask-cta:focus-visible {
  z-index: 3;
  border-color: rgba(255, 255, 255, .96);
  background: rgba(69, 231, 255, .035);
  box-shadow:
    0 0 0 .14vw rgba(55, 229, 255, .9),
    0 0 .72vw .2vw rgba(25, 220, 255, .72),
    inset 0 0 .72vw rgba(27, 230, 255, .12);
  transform: none;
}

.tv-ask-cta:focus-visible {
  background:linear-gradient(105deg,#21b8b7,#28a8d2);
  filter: brightness(1.06);
}

.tv-hotspot.profile { right:2.5%; top:11.05%; width:13.95%; height:5.7%; border-radius:999px; }
.tv-hotspot.account{display:none;right:2.5%;top:3.75%;width:13.95%;height:6.65%;border-radius:999px}.tv-home.authenticated .tv-hotspot.account{display:block}
.tv-hotspot.ask { left: 70.10%; top: 25.19%; width: 13.34%; height: 20.51%; }
.tv-hotspot.report { left: 84.39%; top: 25.19%; width: 13.10%; height: 20.51%; }
.tv-hotspot.videos { left: 70.10%; top: 47.08%; width: 13.34%; height: 19.98%; }
.tv-hotspot.consultation { left: 84.39%; top: 47.08%; width: 13.10%; height: 19.98%; }
.tv-hotspot.recommend { top: 76.94%; height: 18.81%; border-radius: .9vw; }
.tv-hotspot.video-1 { left: 2.51%; width: 17.82%; }
.tv-hotspot.video-2 { left: 20.99%; width: 18.78%; }
.tv-hotspot.video-3 { left: 40.49%; width: 18.42%; }
.tv-hotspot.video-4 { left: 59.69%; width: 17.94%; }
.tv-hotspot.video-5 { left: 78.23%; width: 17.34%; }
.tv-hotspot.next { left: 96.11%; top: 76.94%; width: 3.89%; height: 18.81%; border-radius: 1vw 0 0 1vw; }

.tv-action-toast {
  position: absolute;
  z-index: 5;
  left: 50%;
  bottom: 2.4%;
  transform: translate(-50%, 24px);
  padding: .7vw 1.3vw;
  border: 1px solid rgba(123, 238, 255, .55);
  border-radius: 999px;
  color: #effdff;
  background: rgba(0, 31, 58, .92);
  box-shadow: 0 10px 35px rgba(0, 0, 0, .35);
  font-size: clamp(13px, .9vw, 18px);
  opacity: 0;
  pointer-events: none;
  transition: opacity 180ms ease, transform 180ms ease;
}

.tv-action-toast.visible { opacity: 1; transform: translate(-50%, 0); }

.tv-connected-pill { position:absolute; z-index:6; right:2.4%; top:11%; display:flex; align-items:center; gap:.55vw; padding:.65vw 1vw; border:1px solid rgba(99,235,211,.5); border-radius:999px; color:#e8fffb; background:rgba(4,38,59,.92); box-shadow:0 0 1.2vw rgba(55,226,211,.25); font-size:.82vw; opacity:0; transform:translateY(-8px); pointer-events:none; transition:180ms ease; }
.tv-connected-pill.visible { opacity:1; transform:none; }
.tv-connected-pill span { width:.55vw; height:.55vw; border-radius:50%; background:#50dda7; box-shadow:0 0 .7vw #50dda7; }

.tv-help {
  position: absolute;
  z-index: 4;
  right: 2%;
  bottom: 1.15%;
  color: rgba(218, 244, 255, .66);
  font-size: clamp(10px, .62vw, 13px);
  letter-spacing: .03em;
  opacity: 0;
  transition: opacity 180ms ease;
}

.tv-home:hover .tv-help,
.tv-home:focus-within .tv-help { opacity: 1; }

.tv-home:fullscreen,
.tv-home:-webkit-full-screen { width: 100vw; height: 100vh; }

.pair-panel, .incoming-task {
  position: absolute; z-index: 20; opacity: 0; pointer-events: none;
  border: 1px solid rgba(116,226,239,.45); background: rgba(4,28,52,.96);
  box-shadow: 0 28px 90px rgba(0,0,0,.58), inset 0 0 50px rgba(52,187,207,.08);
  transition: opacity 180ms ease, transform 180ms ease;
}
.pair-panel { left: 50%; top: 50%; width: min(64vw, 1040px); min-height: 54vh; transform: translate(-50%,-47%); border-radius: 2.2vw; padding: 4vw; display: flex; align-items: center; justify-content: space-between; gap: 3vw; }
.pair-panel.visible, .incoming-task.visible { opacity: 1; pointer-events: auto; transform: translate(-50%,-50%); }
.pair-close { position:absolute; right: 2vw; top: 1.6vw; width: 3vw; height: 3vw; border:0; border-radius:50%; color:#d8eff8; background:rgba(255,255,255,.08); font-size:2vw; }
.pair-copy { max-width: 31vw; }
.pair-overline { color:#68e5df; font-size:1vw; letter-spacing:.16em; font-weight:800; }
.pair-copy h2 { font-size:2.3vw; margin:1vw 0 .8vw; }
.pair-copy p { color:#b8cfdf; font-size:1.05vw; line-height:1.7; }
.pair-scan-help { margin:.9vw 0 1.2vw; padding:.75vw 1vw; border-radius:.8vw; color:#d6edf6; background:rgba(81,203,208,.1); font-size:.82vw; line-height:1.55; }
.pair-code-label { color:#83a7bb; font-size:.85vw; margin-top:2vw; }
.pair-code { font-size:2.8vw; font-weight:900; letter-spacing:.24em; margin-top:.35vw; }
.pair-state { display:flex; align-items:center; gap:.6vw; margin-top:1.2vw; color:#c3d7e4; }
.pair-state span { width:.75vw; height:.75vw; border-radius:50%; background:#ffbc57; box-shadow:0 0 1vw #ffbc57; }
.pair-state.connected span { background:#54dea5; box-shadow:0 0 1vw #54dea5; }
.pair-qr-wrap { width:18vw; padding:1.2vw; border-radius:1.4vw; background:white; color:#527081; text-align:center; }
.pair-qr { display:block; width:100%; aspect-ratio:1; }
.pair-qr-wrap small { display:block; margin-top:.65vw; font-size:.72vw; }
.incoming-task { left:50%; top:50%; width:min(48vw,780px); transform:translate(-50%,-47%); border-radius:2vw; padding:4vw; text-align:center; }
.incoming-badge { display:inline-block; padding:.55vw 1vw; border-radius:999px; color:#74eee4; background:rgba(62,216,207,.12); font-weight:800; }
.incoming-task h2 { font-size:2.4vw; margin:1.5vw 0 .8vw; }
.incoming-task p { color:#b8cfdf; font-size:1vw; }
.incoming-confirm { margin-top:2vw; min-width:16vw; height:3.5vw; border:0; border-radius:1vw; color:#06223b; background:linear-gradient(100deg,#5ee3db,#6da4ff); font-weight:900; }
.incoming-confirm:focus{outline:0;box-shadow:0 0 0 .18vw #fff,0 0 1.35vw rgba(48,229,240,.9);filter:brightness(1.1)}
.tv-auth-overlay{position:absolute;z-index:50;inset:0;display:grid;place-items:center;opacity:0;pointer-events:none;background:rgba(0,12,28,.83);backdrop-filter:blur(.55vw);transition:opacity .18s}.tv-auth-overlay.visible{opacity:1;pointer-events:auto}.tv-auth-panel{position:relative;width:38vw;padding:2.15vw 2.5vw 1.7vw;border:1px solid rgba(113,229,220,.52);border-radius:1.55vw;background:linear-gradient(145deg,#073c50,#061e36 70%);box-shadow:0 2vw 6vw rgba(0,0,0,.55),inset 0 0 3vw rgba(77,219,205,.07)}.tv-auth-close{position:absolute;right:1.2vw;top:1.1vw;width:2.4vw;height:2.4vw;border:1px solid rgba(139,190,200,.28);border-radius:50%;color:#d6e8ec;background:rgba(255,255,255,.06);font-size:1.2vw}.tv-auth-brand{display:flex;align-items:center;gap:.75vw;padding-bottom:1vw;border-bottom:1px solid rgba(120,185,196,.18)}.tv-auth-brand>span{width:2.7vw;height:2.7vw;display:grid;place-items:center;border-radius:.8vw;color:#073d3c;background:#7cddc5;font-size:1.15vw}.tv-auth-brand div{display:grid;gap:.12vw}.tv-auth-brand small{color:#71d9d1;font-size:.58vw;letter-spacing:.1em}.tv-auth-brand b{font-size:.82vw}.tv-auth-copy>small{display:block;margin-top:1.15vw;color:#6ce0d6;font-size:.62vw;font-weight:800;letter-spacing:.12em}.tv-auth-copy h2{margin:.35vw 0 .45vw;font-size:1.65vw}.tv-auth-copy p{margin:0 0 1.15vw;color:#a9c2ca;font-size:.72vw;line-height:1.65}.tv-auth-field{display:grid;gap:.35vw}.tv-auth-field span{color:#9ab9c1;font-size:.62vw}.tv-auth-field input{width:100%;height:3.25vw;padding:0 1vw;border:1px solid rgba(117,180,192,.38);border-radius:.72vw;outline:0;color:#efffff;background:rgba(2,22,39,.65);font-size:.9vw}.tv-auth-field input:focus,.tv-auth-send:focus,.tv-auth-submit:focus,.tv-auth-close:focus{border-color:#fff;box-shadow:0 0 0 .13vw #25e0e4,0 0 1vw rgba(37,224,228,.55)}.tv-auth-code-row{display:grid;grid-template-columns:1fr 8.5vw;gap:.7vw;align-items:end;margin-top:.8vw}.tv-auth-send{height:3.25vw;border:1px solid rgba(109,224,214,.5);border-radius:.72vw;color:#dffffa;background:rgba(24,112,111,.6);font-size:.72vw}.tv-auth-feedback{min-height:1.55vw;padding:.48vw 0;color:#78bcb9;font-size:.61vw}.tv-auth-feedback.error{color:#ffb09b}.tv-auth-submit{width:100%;height:3.45vw;border:1px solid rgba(213,255,251,.62);border-radius:.78vw;color:#05383b;background:linear-gradient(100deg,#79e1c8,#65cadb);font-size:.9vw;font-weight:900}.tv-auth-note{display:block;margin-top:.7vw;color:#718f99;text-align:center;font-size:.53vw}
.tv-known-accounts{margin:0 0 .9vw}.tv-known-accounts>small{display:block;margin-bottom:.42vw;color:#8fb1b9;font-size:.58vw}.tv-known-accounts>div{display:grid;grid-template-columns:1fr 1fr;gap:.55vw}.tv-known-account{height:3vw;display:grid;grid-template-columns:1.7vw 1fr auto .6vw;align-items:center;gap:.45vw;padding:.35vw .55vw;border:1px solid rgba(95,174,179,.3);border-radius:.72vw;color:#e8f7f7;background:rgba(5,42,57,.7);text-align:left}.tv-known-account span{width:1.7vw;height:1.7vw;display:grid;place-items:center;border-radius:50%;color:#063c3c;background:#79d9c4;font-size:.62vw;font-weight:900}.tv-known-account b{font-size:.68vw}.tv-known-account small{color:#83a5ad;font-size:.52vw}.tv-known-account i{color:#6bcfc8;font-style:normal}.tv-known-account:focus,.tv-auth-logout:focus{outline:0;border-color:#fff;box-shadow:0 0 0 .13vw #25e0e4,0 0 1vw rgba(37,224,228,.55)}.tv-auth-actions{display:grid;grid-template-columns:auto 1fr;gap:.65vw}.tv-auth-logout{height:3.45vw;padding:0 .9vw;border:1px solid rgba(244,155,142,.42);border-radius:.78vw;color:#ffc1b7;background:rgba(100,41,42,.32);font-size:.7vw}.tv-auth-actions .tv-auth-submit{min-width:0}
.tv-family-center{margin:0 0 .85vw}.tv-family-center>small{display:block;color:#9ed0cf;font-size:.62vw;font-weight:750}.tv-family-center>p{margin:.2vw 0 .48vw;color:#789ba3;font-size:.5vw}.tv-family-center>div{display:grid;grid-template-columns:repeat(4,1fr);gap:.42vw}.tv-family-member{height:3.1vw;display:grid;grid-template-columns:1.55vw 1fr auto;grid-template-rows:1fr 1fr;align-items:center;column-gap:.35vw;padding:.3vw .42vw;border:1px solid rgba(95,174,179,.3);border-radius:.7vw;color:#e8f7f7;background:rgba(5,42,57,.7);text-align:left}.tv-family-member span{grid-row:1/3;width:1.55vw;height:1.55vw;display:grid;place-items:center;border-radius:50%;color:#063c3c;background:#79d9c4;font-size:.6vw;font-weight:900}.tv-family-member b{align-self:end;font-size:.62vw}.tv-family-member small{align-self:start;color:#83a5ad;font-size:.46vw}.tv-family-member i{grid-column:3;grid-row:1/3;color:#6bcfc8;font-style:normal}.tv-family-member.current{border-color:#62d7c7;background:rgba(17,91,89,.7)}.tv-family-member:focus{outline:0;border-color:#fff;box-shadow:0 0 0 .13vw #25e0e4,0 0 1vw rgba(37,224,228,.55)}.tv-account-switcher[hidden],.tv-account-center-actions[hidden]{display:none}.tv-account-center-actions{display:grid;grid-template-columns:1fr 1fr;gap:.65vw;margin-top:1vw}.tv-health-profile-center{grid-column:1/-1}.tv-auth-switch,.tv-account-center-actions .tv-auth-logout,.tv-health-profile-center{height:3.45vw;border-radius:.78vw;font-size:.72vw;font-weight:800}.tv-health-profile-center{border:1px solid rgba(109,224,214,.58);color:#eafffb;background:linear-gradient(100deg,rgba(24,132,119,.82),rgba(22,107,135,.82))}.tv-auth-switch{border:1px solid rgba(109,224,214,.5);color:#dffffa;background:rgba(24,112,111,.6)}.tv-account-center-actions .tv-auth-logout{padding:0 .9vw;border:1px solid rgba(244,155,142,.42);color:#ffc1b7;background:rgba(100,41,42,.32)}.tv-auth-switch:focus,.tv-health-profile-center:focus{outline:0;border-color:#fff;box-shadow:0 0 0 .13vw #25e0e4,0 0 1vw rgba(37,224,228,.55)}
.tv-auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:.45vw;margin:0 0 .75vw;padding:.22vw;border-radius:.72vw;background:rgba(1,18,32,.65)}.tv-auth-tabs button{height:2.3vw;border:0;border-radius:.55vw;color:#8eafb8;background:transparent;font-size:.7vw;font-weight:800}.tv-auth-tabs button.active{color:#062f38;background:linear-gradient(100deg,#7de1c9,#68cbdc)}.tv-register-fields,.tv-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.7vw}.tv-register-fields select,.tv-form-grid input,.tv-form-grid select{width:100%;height:2.75vw;padding:0 .75vw;border:1px solid rgba(117,180,192,.38);border-radius:.62vw;color:#efffff;background:#07253a}.tv-add-family{width:100%;height:2.8vw;border:1px dashed rgba(109,224,214,.58);border-radius:.7vw;color:#a8f3e8;background:rgba(24,112,111,.2);font-size:.7vw;font-weight:800}.tv-family-form{display:grid;gap:.65vw}.tv-family-form>strong{font-size:1vw}.tv-family-form>p{margin:0;color:#91afb7;font-size:.6vw}.tv-form-grid label{display:grid;gap:.25vw;color:#9ab9c1;font-size:.56vw}.tv-form-actions{display:grid;grid-template-columns:1fr 1fr;gap:.6vw}.tv-form-actions button,.tv-change-phone{height:2.8vw;border:1px solid rgba(109,224,214,.45);border-radius:.65vw;color:#e8fffb;background:rgba(24,112,111,.5)}.tv-family-feedback{min-height:.8vw;color:#83d9cf}.tv-account-center-actions{grid-template-columns:1fr 1fr 1fr}.tv-change-phone{height:3.45vw;font-size:.7vw;font-weight:800}.tv-auth-tabs button:focus,.tv-add-family:focus,.tv-change-phone:focus,.tv-family-form input:focus,.tv-family-form select:focus,.tv-register-fields input:focus,.tv-register-fields select:focus{outline:0;border-color:#fff;box-shadow:0 0 0 .13vw #25e0e4,0 0 1vw rgba(37,224,228,.55)}
.tv-editing{border-color:#ffe58b!important;box-shadow:0 0 0 .14vw #ffcb55,0 0 1.1vw rgba(255,196,65,.55)!important}.tv-member-verify{display:grid;gap:.7vw}.tv-member-verify>small{color:#6ce0d6;font-weight:800}.tv-member-verify h3{margin:0;font-size:1.25vw}.tv-member-verify p{margin:0;color:#9fbac1;font-size:.68vw}.tv-member-pin-field{display:grid;gap:.3vw;color:#9ab9c1;font-size:.6vw}.tv-member-pin-field input{height:3vw;padding:0 .8vw;border:1px solid rgba(117,180,192,.38);border-radius:.65vw;color:#fff;background:#061f34;font-size:1vw}.tv-member-verify-feedback{min-height:.8vw;color:#ffb09b;font-size:.6vw}.tv-member-verify input:focus,.tv-member-verify button:focus{outline:0;border-color:#fff;box-shadow:0 0 0 .13vw #25e0e4,0 0 1vw rgba(37,224,228,.55)}

/* TV account dialog typography: readable at living-room distance without moving its visual anchors. */
.tv-auth-panel{width:43vw;padding:1.7vw 2.15vw 1.25vw}
.tv-auth-close{right:1.15vw;top:1.05vw;width:2.75vw;height:2.75vw;font-size:1.35vw}
.tv-auth-brand{gap:.85vw;padding-bottom:.9vw}.tv-auth-brand>span{width:2.9vw;height:2.9vw;font-size:1.25vw}
.tv-auth-brand small{font-size:.72vw;line-height:1.35}.tv-auth-brand b{font-size:1vw;line-height:1.35}
.tv-auth-copy>small{margin-top:.9vw;font-size:.76vw}.tv-auth-copy h2{margin:.28vw 0 .4vw;font-size:1.82vw;line-height:1.25}
.tv-auth-copy p{margin-bottom:.85vw;font-size:.86vw;line-height:1.55}
.tv-family-center{margin-bottom:.72vw}.tv-family-center>small{font-size:.82vw;line-height:1.4}.tv-family-center>p{margin:.16vw 0 .42vw;font-size:.68vw;line-height:1.45}
.tv-family-center>div{gap:.48vw}.tv-family-member{height:3.55vw;grid-template-columns:1.8vw 1fr auto;column-gap:.42vw;padding:.34vw .5vw}
.tv-family-member span{width:1.8vw;height:1.8vw;font-size:.7vw}.tv-family-member b{font-size:.78vw;line-height:1.25}.tv-family-member small{font-size:.62vw;line-height:1.3}
.tv-add-family{height:3.05vw;font-size:.8vw}.tv-account-center-actions{gap:.7vw;margin-top:.82vw}
.tv-auth-switch,.tv-account-center-actions .tv-auth-logout,.tv-health-profile-center,.tv-change-phone{height:3.65vw;font-size:.82vw;line-height:1.25}
.tv-auth-note{margin-top:.62vw;font-size:.65vw;line-height:1.4}

.tv-shell {
  min-height: 100vh;
  overflow: hidden;
  position: relative;
  padding: 3.1vh 3.6vw 3.4vh;
  background:
    radial-gradient(circle at 15% 18%, rgba(49, 166, 184, 0.32), transparent 28%),
    radial-gradient(circle at 82% 8%, rgba(49, 91, 170, 0.32), transparent 31%),
    linear-gradient(145deg, #06162d 0%, #08223e 52%, #07182f 100%);
}

.tv-shell::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .13;
  background-image: linear-gradient(rgba(255,255,255,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px);
  background-size: 58px 58px;
  mask-image: linear-gradient(to bottom, black, transparent 82%);
}

.tv-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 2;
  height: 7vh;
}

.brand { display: flex; align-items: center; gap: 14px; }
.brand-mark {
  width: 48px; height: 48px; border-radius: 16px;
  display: grid; place-items: center;
  background: linear-gradient(145deg, var(--cyan), var(--blue));
  color: #06203b; font-size: 26px;
  box-shadow: 0 10px 34px rgba(74, 207, 220, .28);
}
.brand-title { font-size: 24px; font-weight: 700; letter-spacing: 1px; }
.brand-subtitle { color: var(--muted); font-size: 13px; margin-top: 3px; }
.top-meta { display: flex; align-items: center; gap: 20px; color: #cfe2f3; }
.profile-pill {
  display: flex; align-items: center; gap: 9px;
  padding: 9px 14px; border: 1px solid var(--line); border-radius: 999px;
  background: rgba(8, 37, 66, .62);
}
.status-dot { width: 8px; height: 8px; background: var(--green); border-radius: 50%; box-shadow: 0 0 12px var(--green); }

.tv-grid {
  position: relative; z-index: 2;
  height: 78vh; margin-top: 3vh;
  display: grid; grid-template-columns: 1.05fr 1.5fr .78fr; gap: 1.5vw;
}

.glass-card {
  border: 1px solid var(--line);
  background: linear-gradient(145deg, rgba(18, 61, 95, .78), rgba(8, 32, 59, .74));
  border-radius: 30px;
  box-shadow: var(--shadow);
  backdrop-filter: blur(22px);
}

.zhuzi-stage {
  padding: 4vh 2vw 2.7vh;
  display: flex; flex-direction: column; justify-content: space-between;
  overflow: hidden; position: relative;
}
.zhuzi-stage::before {
  content: ""; position: absolute; width: 28vw; height: 28vw; border-radius: 50%;
  left: -6vw; bottom: -12vw; background: radial-gradient(circle, rgba(77, 223, 206, .23), transparent 67%);
}
.eyebrow { color: var(--cyan); font-size: 14px; letter-spacing: 3px; font-weight: 700; }
.greeting { margin: 1.4vh 0 1vh; font-size: clamp(27px, 2.15vw, 42px); line-height: 1.2; }
.greeting-copy { color: #bdd0e2; font-size: clamp(14px, 1vw, 19px); line-height: 1.65; max-width: 28vw; }
.avatar-wrap { display: flex; justify-content: center; position: relative; z-index: 1; }
.avatar {
  width: min(17vw, 300px); aspect-ratio: 1; border-radius: 50%;
  display: grid; place-items: center; font-size: clamp(74px, 8vw, 150px);
  background: linear-gradient(145deg, rgba(88, 226, 212, .22), rgba(72, 122, 230, .14));
  border: 2px solid rgba(114, 232, 220, .42);
  box-shadow: inset 0 0 70px rgba(61, 195, 197, .15), 0 18px 55px rgba(0, 9, 27, .35);
}
.voice-line { display: flex; align-items: center; gap: 12px; color: #d5e8f5; font-size: 14px; }
.wave { display: flex; gap: 4px; height: 18px; align-items: center; }
.wave i { width: 3px; border-radius: 4px; background: var(--cyan); animation: wave 1.15s infinite ease-in-out; }
.wave i:nth-child(1), .wave i:nth-child(5) { height: 7px; }
.wave i:nth-child(2), .wave i:nth-child(4) { height: 13px; animation-delay: .15s; }
.wave i:nth-child(3) { height: 18px; animation-delay: .3s; }
@keyframes wave { 50% { transform: scaleY(.42); opacity: .55; } }

.main-task { padding: 3.6vh 2.1vw; display: flex; flex-direction: column; }
.section-head { display: flex; align-items: center; justify-content: space-between; }
.section-title { font-size: clamp(20px, 1.55vw, 29px); font-weight: 700; }
.section-note { color: var(--muted); font-size: 14px; }
.hero-task {
  margin-top: 2.3vh; padding: 2.8vh 1.7vw; border-radius: 24px;
  background: linear-gradient(135deg, rgba(62, 185, 188, .22), rgba(45, 87, 171, .2));
  border: 1px solid rgba(111, 226, 219, .28); position: relative; overflow: hidden;
}
.hero-task::after { content: "报告解读"; position: absolute; right: -12px; bottom: -12px; font-weight: 800; font-size: 58px; color: rgba(255,255,255,.035); }
.task-tag { display: inline-flex; align-items: center; gap: 7px; color: #8bf1e7; font-size: 13px; font-weight: 700; }
.task-title { font-size: clamp(24px, 1.85vw, 35px); line-height: 1.35; margin: 1.2vh 0 .8vh; }
.task-copy { color: #c0d3e4; line-height: 1.65; font-size: clamp(14px, .94vw, 18px); }
.primary-action {
  margin-top: 2.1vh; min-height: 52px; padding: 0 24px; border: 0; border-radius: 16px;
  background: linear-gradient(100deg, var(--cyan), #67a6ff); color: #05203a; font-weight: 800;
  display: inline-flex; align-items: center; justify-content: center; gap: 9px;
  box-shadow: 0 12px 34px rgba(65, 195, 209, .24);
}
.summary-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1vw; margin-top: 2.2vh; }
.summary-card { padding: 1.7vh 1.15vw; border: 1px solid var(--line); border-radius: 20px; background: rgba(4, 28, 51, .48); }
.summary-icon { font-size: 25px; }
.summary-value { font-size: clamp(17px, 1.18vw, 23px); font-weight: 700; margin-top: .8vh; }
.summary-label { color: var(--muted); font-size: 12px; margin-top: .45vh; }
.recommend-row { margin-top: auto; }
.recommend-label { color: #d5e7f4; font-weight: 700; margin-bottom: 1.1vh; }
.mini-video { display: flex; align-items: center; gap: 14px; padding: 1.15vh .8vw; border-radius: 17px; border: 1px solid var(--line); background: rgba(4, 25, 47, .52); }
.video-thumb { width: 88px; aspect-ratio: 16/9; border-radius: 12px; display: grid; place-items: center; background: linear-gradient(135deg, #377c7e, #243b78); font-size: 24px; }
.video-title { font-weight: 700; font-size: 14px; }
.video-meta { color: var(--muted); font-size: 12px; margin-top: 5px; }

.quick-panel { display: flex; flex-direction: column; gap: 1.25vh; }
.quick-panel .panel-title { padding: 1.7vh 1vw .4vh; color: #cce0ef; font-weight: 700; }
.quick-card {
  flex: 1; min-height: 0; border: 1px solid var(--line); border-radius: 22px;
  background: rgba(10, 43, 73, .66); color: var(--white); text-align: left;
  padding: 1.4vh 1.25vw; display: flex; align-items: center; gap: 13px;
  transition: .2s ease;
}
.quick-card:focus, .quick-card.active { outline: none; transform: scale(1.035); border-color: var(--cyan); box-shadow: 0 0 0 3px rgba(89,224,218,.13), 0 12px 34px rgba(0,0,0,.2); }
.quick-icon { width: 44px; height: 44px; border-radius: 15px; display: grid; place-items: center; background: rgba(78, 151, 196, .17); font-size: 23px; }
.quick-name { font-size: clamp(15px, 1vw, 19px); font-weight: 700; }
.quick-desc { color: var(--muted); font-size: 11px; margin-top: 4px; }
.remote-tip { padding: 1.5vh 1vw; color: var(--muted); font-size: 12px; text-align: center; }

.mobile-body { width:100vw; margin:0; overflow-x:hidden; background:#dfeaf1; color:#203646; }
.pair-auth-gate{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;padding:20px;background:linear-gradient(145deg,rgba(4,31,48,.96),rgba(5,64,72,.96))}.pair-auth-gate[hidden]{display:none}.pair-auth-card{box-sizing:border-box;width:min(100%,390px);padding:27px 24px;border-radius:25px;background:#fff;box-shadow:0 22px 70px rgba(0,0,0,.28)}.pair-auth-brand{color:#159b8d;font-size:12px;font-weight:750;letter-spacing:.12em}.pair-auth-card h1{margin:8px 0 12px;color:#173b4b;font-size:27px}.pair-auth-account,.pair-auth-task{margin:6px 0;color:#607782;font-size:14px;line-height:1.55}.pair-auth-account strong{color:#183f50}.pair-auth-login{display:grid;gap:10px;margin-top:19px}.pair-auth-login label{display:grid;gap:6px;color:#526d78;font-size:12px}.pair-auth-login input{box-sizing:border-box;width:100%;height:48px;padding:0 14px;border:1px solid #cbdde2;border-radius:13px;color:#173b4b;background:#f8fbfc;font-size:16px;outline:none}.pair-auth-login input:focus{border-color:#20a995;box-shadow:0 0 0 3px rgba(32,169,149,.12)}.pair-auth-code-button,.pair-auth-submit,.pair-auth-confirm-button{height:46px;border:0;border-radius:13px;font-size:15px;font-weight:700}.pair-auth-code-button{color:#167e75;background:#e4f5f1}.pair-auth-submit,.pair-auth-confirm-button{color:#fff;background:linear-gradient(135deg,#20ad96,#3287c8)}.pair-auth-confirm{text-align:center;margin-top:19px}.pair-auth-device{width:52px;height:52px;display:grid;place-items:center;margin:0 auto 10px;border-radius:50%;color:#fff;background:#27b697;font-size:25px}.pair-auth-confirm strong{display:block;color:#183f50;font-size:19px}.pair-auth-confirm p{color:#607782;font-size:14px}.pair-auth-confirm-button{width:100%;margin-top:7px}.pair-auth-feedback{min-height:20px;margin:11px 0 0;color:#d54d4d;font-size:12px;text-align:center}.pair-auth-card>small{display:block;margin-top:12px;color:#8ba0a7;font-size:11px;line-height:1.5;text-align:center}
.mobile-device-unbind{width:100%;height:42px;margin-top:14px;border:1px solid #e2a8a8;border-radius:12px;color:#b84a4a;background:#fff7f7;font-size:13px;font-weight:650}
.zhuzi-chat { box-sizing:border-box; width:100%; max-width:430px; min-height:100vh; margin:0 auto; overflow-x:hidden; background:linear-gradient(180deg,#f8fbfc 0,#f1f6f8 50%,#edf3f5 100%); box-shadow:0 0 54px rgba(27,60,77,.12); }
.chat-header { position:sticky; top:0; z-index:20; height:calc(60px + env(safe-area-inset-top,0px)); display:grid; grid-template-columns:42px 1fr 42px; align-items:end; padding:env(safe-area-inset-top,0px) 10px 8px; color:#203646; background:rgba(250,252,252,.94); backdrop-filter:blur(18px); border-bottom:1px solid rgba(73,110,126,.10); }
.chat-identity{justify-self:center;display:flex;align-items:center;gap:9px;text-align:left}.chat-header-avatar{width:38px;height:38px;overflow:hidden;border-radius:50%;background:linear-gradient(145deg,#dcf5ee,#eaf3ff);box-shadow:inset 0 0 0 1px rgba(45,133,125,.09)}.chat-header-avatar img{width:auto;height:80px;max-width:none;margin:-1px 0 0 -2px}.chat-header strong{display:block;font-size:16px;font-weight:650;line-height:1.15}.chat-header small{display:flex;align-items:center;gap:5px;margin-top:3px;color:#73888f;font-size:10px;font-weight:450}.chat-header small i{width:6px;height:6px;border-radius:50%;background:#3ac69a;box-shadow:0 0 0 3px rgba(58,198,154,.1)}.chat-back,.chat-more{height:42px;border:0;background:none;color:#5b7079;font-size:29px}.chat-more{padding:0 4px;font-size:13px;font-weight:600;letter-spacing:0}
.chat-messages { padding:10px 13px 158px; }
.chat-day-divider{display:flex;align-items:center;justify-content:center;height:28px;color:#9aa9ae;font-size:10px}.chat-day-divider span{padding:3px 9px;border-radius:999px;background:rgba(255,255,255,.65)}
.mobile-welcome-card{display:grid;grid-template-columns:108px minmax(0,1fr);min-height:136px;overflow:hidden;border:1px solid rgba(67,139,139,.12);border-radius:22px;background:linear-gradient(130deg,#dff5ef 0%,#e8f4f7 58%,#f8fbfb 100%);box-shadow:0 10px 28px rgba(48,98,104,.08)}.mobile-welcome-portrait{position:relative;overflow:hidden}.mobile-welcome-portrait:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 72%,#e4f4f3)}.mobile-welcome-portrait img{position:absolute;left:-7px;top:-12px;width:auto;height:188px;max-width:none;filter:saturate(.94) contrast(.98)}.mobile-welcome-copy{min-width:0;align-self:center;padding:15px 14px 15px 5px}.mobile-welcome-copy small{display:block;margin-bottom:5px;color:#3a9d8e;font-size:10px;font-weight:650;letter-spacing:.08em}.mobile-welcome-copy strong{display:block;color:#183b45;font-size:19px;font-weight:650;letter-spacing:-.03em}.mobile-welcome-copy p{margin:7px 0 0;color:#657b82;font-size:12px;line-height:1.58}
.chat-row { display:flex; align-items:flex-start; gap:8px; margin-top:15px; }.user-row{justify-content:flex-end}.chat-avatar{flex:0 0 32px;width:32px;height:32px;overflow:hidden;border-radius:50%;background:linear-gradient(145deg,#dff5ee,#eaf4ff);box-shadow:inset 0 0 0 1px rgba(45,133,125,.1)}.chat-avatar img{width:auto;height:68px;max-width:none;margin:-1px 0 0 -2px}
.tv-persona .chat-header-avatar img{width:auto;height:75px;margin:-1px 0 0 -47px}.tv-persona .chat-avatar img{width:auto;height:65px;margin:-1px 0 0 -41px}.tv-persona .mobile-welcome-portrait img{left:-155px;top:-10px;width:424px;height:auto;max-width:none;filter:saturate(.96) contrast(.98)}
.chat-bubble { max-width:79%; padding:12px 15px; border-radius:5px 17px 17px 17px; font-size:16px; font-weight:400; line-height:1.64; letter-spacing:.005em; box-shadow:0 4px 14px rgba(47,75,88,.055); }.chat-bubble p{margin:0}.chat-bubble p+p{margin-top:9px}.chat-bubble strong{color:#183b45;font-weight:600}.ai-bubble{background:rgba(255,255,255,.96)}.user-bubble{color:white;background:linear-gradient(135deg,#38a596,#238d82);border-radius:17px 5px 17px 17px}.user-bubble strong{color:white}
.chat-message-stack{display:flex;min-width:0;max-width:calc(100% - 40px);flex-direction:column;outline:none}.chat-message-stack .chat-bubble{max-width:100%}.user-row .chat-message-stack{align-items:flex-end}.ai-row .chat-message-stack{align-items:flex-start}.chat-message-time{display:block;margin:4px 4px 0;color:#9aa9ae;font-size:10px;line-height:1.2}.chat-message-time[hidden]{display:none}.chat-message-stack.show-message-time .chat-bubble{box-shadow:0 5px 16px rgba(47,75,88,.09)}
.chat-bubble.typing:after{content:"";display:inline-block;width:2px;height:1.05em;margin-left:2px;vertical-align:-.12em;border-radius:2px;background:#2f9d8f;animation:mobileTypingCursor .8s steps(1,end) infinite}@keyframes mobileTypingCursor{50%{opacity:0}}
.mobile-memory-consent-row{margin-top:9px!important}.mobile-memory-consent-spacer{visibility:hidden}.mobile-memory-consent-card{width:min(292px,calc(100vw - 92px));box-sizing:border-box;padding:15px;border:1px solid rgba(49,157,143,.2);border-radius:18px;background:linear-gradient(145deg,#fff,#f4fbf9);box-shadow:0 8px 22px rgba(40,91,91,.1)}.mobile-memory-consent-card>small{display:block;color:#2b9687;font-size:11px;font-weight:650}.mobile-memory-consent-card>strong{display:block;margin-top:5px;color:#233e47;font-size:15px;line-height:1.45}.mobile-memory-consent-card>p{margin:10px 0;padding:10px 11px;border-radius:12px;color:#36545c;background:#eaf5f2;font-size:13px;line-height:1.5}.mobile-memory-consent-card>div{display:grid;grid-template-columns:1fr 1.25fr;gap:8px}.mobile-memory-consent-card button{height:38px;border:1px solid #dce8e6;border-radius:12px;color:#5c747a;background:#fff;font-size:12px;font-weight:650}.mobile-memory-consent-card button.primary{border-color:#36a394;color:#fff;background:linear-gradient(135deg,#38ad9d,#298f84)}.mobile-memory-consent-card button:disabled{opacity:.58}.mobile-memory-consent-card>em{display:block;margin-top:9px;color:#91a0a4;font-size:9px;font-style:normal;line-height:1.5}.mobile-memory-consent-card.confirmed{border-color:rgba(49,157,143,.28);background:#f1faf7}.mobile-memory-consent-card.declined{border-color:#e1e8e9;background:#fafbfb}
.chat-connect-card { flex:1; width:0; min-width:0; overflow:hidden; padding:13px; border:1px solid rgba(81,132,145,.13); border-radius:5px 17px 17px; background:rgba(255,255,255,.92); box-shadow:0 5px 18px rgba(40,75,91,.055); }
.chat-connect-card .connect-top{gap:11px;min-width:0}.chat-connect-card .connect-top>div:last-child{min-width:0}.chat-connect-card .tv-icon{position:relative;flex:0 0 42px;width:42px;height:42px;border-radius:13px;background:linear-gradient(145deg,#35b9a6,#4587d5)}.chat-connect-card .tv-icon span{width:22px;height:16px;border:1.7px solid white;border-radius:3px}.chat-connect-card .tv-icon span:after{content:"";position:absolute;left:17px;bottom:9px;width:9px;height:1.5px;border-radius:99px;background:white}.chat-connect-card .connect-title{font-size:14px;font-weight:650}.chat-connect-card .connect-copy{margin-top:3px;font-size:11px;line-height:1.42}.chat-connect-card .pair-input-row{width:100%;grid-template-columns:minmax(0,1fr) 68px;gap:7px;margin-top:12px}.chat-connect-card .pair-input{width:100%;min-width:0;height:42px;padding:0 9px;border-radius:11px;font-size:16px;letter-spacing:0}.chat-connect-card .pair-input::placeholder{font-size:14px}.chat-connect-card .connect-button{width:68px;height:42px;border-radius:11px;font-size:13px;font-weight:650}
.mobile-success-toast { position:fixed; z-index:60; top:82px; left:50%; width:min(330px,calc(100vw - 40px)); transform:translate(-50%,-18px); display:flex; align-items:center; gap:12px; padding:14px 17px; border-radius:16px; color:#173d50; background:rgba(255,255,255,.97); box-shadow:0 16px 44px rgba(27,82,110,.24); opacity:0; pointer-events:none; transition:220ms ease; }.mobile-success-toast.visible{opacity:1;transform:translate(-50%,0)}.mobile-success-toast>span{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;color:white;background:#35bd91;font-weight:900}.mobile-success-toast strong,.mobile-success-toast small{display:block}.mobile-success-toast small{margin-top:2px;color:#71899a}
.chat-quick-actions { position:fixed; z-index:30; left:50%; bottom:calc(65px + env(safe-area-inset-bottom,0px)); width:min(430px,100%); transform:translateX(-50%); display:flex; gap:7px; padding:9px 10px 7px; overflow-x:auto; background:linear-gradient(180deg,rgba(239,245,247,0),rgba(239,245,247,.97) 30%); scrollbar-width:none; }.chat-quick-actions::-webkit-scrollbar{display:none}.chat-quick-actions button{flex:0 0 auto;height:32px;padding:0 11px;border:1px solid rgba(87,134,144,.15);border-radius:999px;color:#60777e;background:rgba(255,255,255,.94);font-size:12px;font-weight:550;box-shadow:0 3px 9px rgba(45,75,86,.035)}.chat-quick-actions button span{margin-right:4px;color:#36a99a}
.consultation-reminder{position:fixed;z-index:31;left:50%;bottom:126px;width:min(390px,calc(100% - 24px));transform:translateX(-50%);display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:9px;padding:9px 10px;border:1px solid rgba(42,170,156,.24);border-radius:17px;color:#294d53;background:rgba(255,255,255,.97);box-shadow:0 10px 25px rgba(47,92,101,.14)}.consultation-reminder-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:12px;color:white;background:linear-gradient(145deg,#2eac9a,#3986c6)}.consultation-reminder small,.consultation-reminder strong{display:block}.consultation-reminder small{color:#3b9d90;font-size:10px}.consultation-reminder strong{margin-top:2px;font-size:13px}.consultation-reminder button{height:32px;padding:0 12px;border:0;border-radius:11px;color:#fff;background:#299c8f;font-size:12px;font-weight:700}.consultation-reminder[hidden]{display:none}
.chat-input-area { position:fixed; z-index:40; left:50%; bottom:0; width:min(430px,100%); min-height:66px; transform:translateX(-50%); display:grid; grid-template-columns:40px minmax(0,1fr) 40px 40px; gap:4px; align-items:end; padding:8px max(10px,env(safe-area-inset-left,0px)) calc(8px + env(safe-area-inset-bottom,0px)) max(10px,env(safe-area-inset-right,0px)); background:rgba(250,252,252,.98); border-top:1px solid rgba(73,110,126,.10); }.chat-input{display:block;box-sizing:border-box;width:100%;min-width:0;min-height:44px;max-height:92px;margin:0;padding:11px 12px;border:0;border-radius:12px;resize:none;overflow-y:hidden;color:#2b424b;background:#f0f4f4;font-size:16px;line-height:22px;outline:none;box-shadow:inset 0 0 0 1px rgba(65,107,117,.08)}.chat-input:focus{background:white;box-shadow:inset 0 0 0 1px rgba(49,162,147,.36)}.voice-button,.plus-button,.camera-button,.chat-send-button{position:relative;width:40px;height:40px;border:0;border-radius:50%;color:#60777e;background:transparent;font-size:22px}.plus-button{font-size:27px;font-weight:300}.voice-button span{display:block;width:11px;height:17px;margin:auto;border:1.8px solid #61777e;border-radius:7px}.voice-button:after{content:"";position:absolute;left:14px;top:23px;width:12px;height:6px;border:1.7px solid #61777e;border-top:0;border-radius:0 0 8px 8px}.chat-action-slot{position:relative;width:40px;height:40px}.chat-action-slot>button{position:absolute;inset:0}.camera-button{display:grid;place-items:center}.camera-button span{width:18px;height:14px;border:1.7px solid #61777e;border-radius:4px}.camera-button span:before{content:"";position:absolute;width:7px;height:4px;left:16px;top:10px;border-radius:2px 2px 0 0;background:#61777e}.camera-button span:after{content:"";position:absolute;width:6px;height:6px;left:17px;top:18px;border:1.5px solid #61777e;border-radius:50%}.chat-send-button{color:white;background:linear-gradient(135deg,#31ac9c,#3f8ed3);font-size:22px;font-weight:800;box-shadow:0 5px 13px rgba(45,145,157,.2)}.chat-input-area button[hidden]{display:none}.composer-keyboard-open .chat-quick-actions{background:rgba(239,245,247,.98)}
.mobile-sheet-backdrop{position:fixed;z-index:48;inset:0;background:rgba(24,47,60,.16);backdrop-filter:blur(2px)}.mobile-plus-sheet{position:fixed;z-index:49;left:50%;bottom:calc(var(--mobile-composer-bottom,0px) + 68px);width:min(390px,calc(100vw - 20px));transform:translateX(-50%);box-sizing:border-box;padding:10px 12px 13px;border:1px solid rgba(77,136,148,.14);border-radius:22px;background:rgba(255,255,255,.98);box-shadow:0 14px 38px rgba(38,77,94,.18)}.mobile-plus-sheet>i{display:block;width:42px;height:4px;margin:0 auto 9px;border-radius:99px;background:#dce6e9}.mobile-plus-sheet>strong{display:block;color:#29424c;font-size:14px}.mobile-plus-sheet>div{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.mobile-plus-sheet button{height:42px;border:0;border-radius:13px;color:#47636d;background:#f1f6f7;font-size:13px;font-weight:600}.mobile-sheet-backdrop[hidden],.mobile-plus-sheet[hidden]{display:none}
.mobile-services-sheet{position:fixed;z-index:50;left:50%;bottom:76px;width:min(390px,calc(100vw - 20px));transform:translateX(-50%);padding:12px 12px 16px;border:1px solid rgba(77,136,148,.14);border-radius:24px;color:#29424c;background:#fff;box-shadow:0 14px 38px rgba(38,77,94,.2)}.mobile-services-sheet>i{display:block;width:42px;height:4px;margin:0 auto 10px;border-radius:99px;background:#dce6e9}.mobile-services-sheet header{display:flex;align-items:center;justify-content:space-between;padding:0 4px}.mobile-services-sheet header strong{font-size:15px}.mobile-services-sheet header button{width:28px;height:28px;border:0;border-radius:50%;color:#70858b;background:#eef4f5;font-size:18px}.mobile-services-sheet>div{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:10px}.mobile-services-sheet>div button{min-height:78px;display:grid;grid-template-columns:36px 1fr;grid-template-rows:1fr 1fr;align-items:center;column-gap:10px;padding:12px;border:0;border-radius:17px;color:#33535b;background:#f2f7f7;text-align:left}.mobile-services-sheet>div span{grid-row:1/3;width:36px;height:36px;display:grid;place-items:center;border-radius:12px;color:#fff;background:linear-gradient(145deg,#37aa9b,#418ac6);font-size:17px}.mobile-services-sheet b{align-self:end;font-size:13px}.mobile-services-sheet small{align-self:start;margin-top:2px;color:#829499;font-size:9px}.mobile-services-sheet[hidden]{display:none}
.voice-button.is-listening{color:#fff;background:#e85c62;box-shadow:0 0 0 5px rgba(232,92,98,.14);animation:mobile-voice-pulse 1.2s ease-in-out infinite}.voice-button.is-listening span{border-color:#fff}.voice-button.is-listening:after{border-color:#fff}@keyframes mobile-voice-pulse{50%{box-shadow:0 0 0 9px rgba(232,92,98,.06)}}
.chat-quick-actions,.chat-input-area{box-sizing:border-box}.pair-keyboard-open .chat-quick-actions,.pair-keyboard-open .chat-input-area{opacity:0;pointer-events:none}

.health-photo-result-card{display:grid;gap:9px}.health-photo-result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.health-photo-result-head small{color:#4a9d91;font-size:11px}.health-photo-result-head h3{margin:3px 0 0;color:#23434b;font-size:17px}.health-photo-result-head span{flex:none;padding:4px 8px;border-radius:999px;color:#397a72;background:#e6f4f1;font-size:10px}.health-photo-section-label{margin-top:2px;color:#73898f;font-size:11px;font-weight:700}.health-photo-result-card p{margin:0;line-height:1.65}.health-photo-result-card ul{display:grid;gap:6px;margin:0;padding-left:18px;color:#3e5961}.health-photo-result-card li{line-height:1.5}.health-photo-urgency{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px;padding:9px 10px;border-radius:10px;background:#edf7f4}.health-photo-urgency b{color:#247f72;font-size:12px}.health-photo-urgency em{color:#547078;font-size:11px;font-style:normal}.health-photo-question{padding-top:3px;color:#315d66;font-weight:650}.health-photo-disclaimer{color:#91a2a6;font-size:10px;line-height:1.45}.health-photo-redflags{padding:9px 10px;border-radius:10px;background:#fff5e8}.health-photo-redflags .health-photo-section-label{color:#9a612b}.urgency-urgent .health-photo-urgency,.urgency-emergency .health-photo-urgency{background:#fff0ec}.urgency-urgent .health-photo-urgency b,.urgency-emergency .health-photo-urgency b{color:#bb493b}.urgency-emergency .health-photo-result-card{border-left:3px solid #d94b3d;padding-left:10px}

/* Mobile chat uses one fixed visual viewport. The message rail scrolls on its own,
   so iOS never leaves a second keyboard-sized gap below the composer. */
.mobile-body{height:100dvh;overflow:hidden}.zhuzi-chat{position:relative;height:100dvh;min-height:0;overflow:hidden}.chat-header{position:fixed;left:50%;top:0;width:min(430px,100%);transform:translateX(-50%);box-sizing:border-box}.chat-messages{position:fixed;z-index:10;left:50%;top:calc(60px + env(safe-area-inset-top,0px));bottom:124px;width:min(430px,100%);transform:translateX(-50%);box-sizing:border-box;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:10px 13px 18px;scroll-padding-bottom:18px;-webkit-overflow-scrolling:touch}.chat-quick-actions{bottom:74px}.chat-input-area{bottom:8px;width:min(410px,calc(100% - 20px));min-height:58px;padding:7px 8px;border:1px solid rgba(75,123,135,.12);border-radius:30px;background:rgba(255,255,255,.98);box-shadow:0 10px 26px rgba(50,82,95,.12)}.chat-input{min-height:40px;padding:9px 5px;border-radius:0;background:transparent;box-shadow:none}.chat-input:focus{background:transparent;box-shadow:none}.chat-row.ai-row{padding-right:42px}.chat-row.user-row{padding-left:42px}.chat-row.user-row .chat-bubble{margin-left:auto}.chat-row.ai-row .chat-bubble{margin-right:auto}.chat-bubble{max-width:calc(100% - 42px);box-sizing:border-box}.chat-connect-card{max-width:calc(100% - 40px)}
.mobile-plus-sheet{bottom:76px;padding:12px 12px 14px;border-radius:24px}.mobile-extra-grid{grid-template-columns:repeat(4,1fr)!important;gap:8px!important}.mobile-extra-grid button{height:78px!important;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border-radius:18px!important;font-size:12px!important}.mobile-extra-grid button span{display:grid;place-items:center;width:31px;height:31px;border-radius:10px;color:white;background:linear-gradient(145deg,#31aa9a,#3b83cd);font-size:18px}.mobile-emoji-grid{grid-template-columns:repeat(6,1fr)!important;gap:7px!important}.mobile-emoji-grid button{height:44px!important;padding:0!important;border-radius:12px!important;font-size:21px!important}.mobile-sheet-title{font-size:15px!important}.mobile-extra-grid[hidden],.mobile-emoji-grid[hidden]{display:none!important}.composer-keyboard-open .chat-quick-actions{display:none}
.mobile-mine-panel{position:fixed;z-index:100;inset:0;margin:auto;width:min(430px,100%);overflow:hidden;color:#203740;background:linear-gradient(180deg,#eef8f6 0,#f6f9f9 190px,#f4f6f7 100%)}.mobile-mine-panel[hidden]{display:none}.mobile-mine-header{box-sizing:border-box;height:calc(58px + env(safe-area-inset-top,0px));display:grid;grid-template-columns:44px 1fr 44px;align-items:end;padding:env(safe-area-inset-top,0px) 10px 10px;background:rgba(255,255,255,.86);backdrop-filter:blur(18px);border-bottom:1px solid rgba(63,108,119,.08)}.mobile-mine-header strong{align-self:center;text-align:center;font-size:17px}.mobile-mine-close{height:38px;border:0;color:#506871;background:none;font-size:30px}.mobile-mine-content{height:calc(100% - 58px - env(safe-area-inset-top,0px));overflow:auto;padding:18px 14px calc(28px + env(safe-area-inset-bottom,0px));box-sizing:border-box}.mobile-account-card{display:flex;align-items:center;gap:14px;padding:17px;border:1px solid rgba(57,130,121,.12);border-radius:22px;background:linear-gradient(135deg,#dff3ec,#e8f3f6);box-shadow:0 10px 26px rgba(51,89,95,.07)}.mobile-account-avatar{width:58px;height:58px;overflow:hidden;border-radius:50%;background:#eaf4f2}.mobile-account-avatar img{width:auto;height:116px;margin:-3px 0 0 -71px}.mobile-account-card strong{display:block;font-size:19px}.mobile-account-card small{display:block;margin-top:5px;color:#72868c;font-size:12px}.mobile-mine-group{overflow:hidden;margin-top:16px;border:1px solid rgba(68,111,122,.08);border-radius:20px;background:#fff}.mobile-mine-row{width:100%;min-height:76px;display:grid;grid-template-columns:42px 1fr 18px;align-items:center;gap:11px;padding:11px 15px;border:0;border-bottom:1px solid #edf1f2;text-align:left;background:#fff}.mobile-mine-row:last-child{border-bottom:0}.mobile-mine-row>span:nth-child(2) strong{display:block;color:#263d46;font-size:15px}.mobile-mine-row>span:nth-child(2) small{display:block;margin-top:4px;color:#819297;font-size:11px;line-height:1.4}.mobile-mine-row>b{color:#a6b2b5;font-size:22px;font-weight:400}.mobile-mine-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:13px;font-size:18px;font-weight:650}.mobile-mine-icon.health{color:#258f7e;background:#e3f5ef}.mobile-mine-icon.account{color:#387eb8;background:#e7f1fa}.mobile-mine-icon.privacy{color:#8b6b31;background:#f7f0df}.mobile-mine-note{margin:16px 8px 0;color:#89999d;font-size:11px;line-height:1.6;text-align:center}.mobile-mine-detail{position:absolute;z-index:2;inset:0;background:#f4f6f7}.mobile-mine-detail[hidden]{display:none}.mobile-mine-detail>header{box-sizing:border-box;height:calc(58px + env(safe-area-inset-top,0px));display:grid;grid-template-columns:44px 1fr 44px;align-items:end;padding:env(safe-area-inset-top,0px) 10px 10px;background:#fff;border-bottom:1px solid #e9edef}.mobile-mine-detail>header strong{align-self:center;text-align:center;font-size:17px}.mobile-mine-detail-back{height:38px;border:0;color:#506871;background:none;font-size:30px}.mobile-mine-detail-body{height:calc(100% - 58px - env(safe-area-inset-top,0px));overflow:auto;padding:16px 14px calc(28px + env(safe-area-inset-bottom,0px));box-sizing:border-box}.mobile-detail-intro{padding:15px 16px;border-radius:17px;color:#4e676f;background:#e6f3f0;font-size:13px;line-height:1.65}.mobile-health-list{overflow:hidden;margin-top:13px;border-radius:17px;background:#fff}.mobile-health-item{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:15px;border-bottom:1px solid #edf1f2}.mobile-health-item:last-child{border-bottom:0}.mobile-health-item strong{display:block;font-size:14px;line-height:1.5}.mobile-health-item small{display:block;margin-top:5px;color:#89999d;font-size:10px}.mobile-health-delete{padding:7px 10px;border:1px solid #efd5ce;border-radius:10px;color:#a45d4b;background:#fff7f5;font-size:11px}.mobile-health-empty{padding:30px 20px;text-align:center}.mobile-health-empty span{display:grid;place-items:center;width:54px;height:54px;margin:auto;border-radius:18px;color:#329886;background:#e2f3ee;font-size:24px}.mobile-health-empty strong{display:block;margin-top:12px;font-size:15px}.mobile-health-empty p{margin:7px 0 0;color:#84969b;font-size:12px;line-height:1.6}.mobile-settings-card{overflow:hidden;margin-top:13px;border-radius:17px;background:#fff}.mobile-setting-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px;border-bottom:1px solid #edf1f2}.mobile-setting-row:last-child{border-bottom:0}.mobile-setting-row strong{font-size:14px}.mobile-setting-row small{display:block;margin-top:4px;color:#89999d;font-size:11px}.mobile-memory-toggle{width:46px;height:28px;position:relative;border:0;border-radius:99px;background:#cbd6d8}.mobile-memory-toggle:after{content:"";position:absolute;left:3px;top:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.16);transition:.18s}.mobile-memory-toggle.on{background:#3baa91}.mobile-memory-toggle.on:after{left:21px}.mobile-coming-soon{margin-top:13px;padding:18px;border-radius:17px;background:#fff}.mobile-coming-soon strong{font-size:15px}.mobile-coming-soon p{margin:8px 0 0;color:#7b8f95;font-size:12px;line-height:1.65}
.mobile-family-card{margin-top:14px;padding:18px;border:1px solid rgba(53,119,117,.08);border-radius:24px;background:#fff;box-shadow:0 14px 35px rgba(52,84,94,.07)}.mobile-family-card>header{display:flex;align-items:center;justify-content:space-between}.mobile-family-card>header div{display:grid;gap:3px}.mobile-family-card>header small{color:#83969b;font-size:11px}.mobile-family-card>header strong{font-size:18px}.mobile-family-card>header>span{padding:6px 10px;border-radius:999px;color:#318b7d;background:#e6f5f1;font-size:11px;font-weight:700}.mobile-family-card>p{margin:10px 0 14px;color:#809298;font-size:12px}.mobile-family-members{display:grid;gap:9px}.mobile-family-member{width:100%;min-height:82px;display:grid;grid-template-columns:48px minmax(0,1fr) 24px;align-items:center;gap:12px;padding:12px 13px;border:1px solid #e8eeef;border-radius:18px;color:#2b4149;text-align:left;background:linear-gradient(135deg,#fbfcfc,#f6f9f9);box-shadow:0 4px 12px rgba(46,77,87,.035)}.mobile-family-member.current{border-color:rgba(42,166,145,.5);background:linear-gradient(135deg,#e8f7f2,#eef7f7);box-shadow:0 7px 18px rgba(42,146,128,.11),inset 3px 0 #31aa91}.mobile-family-avatar{width:46px;height:46px;display:grid;place-items:center;border-radius:15px;color:#176e68;background:linear-gradient(145deg,#bcebdc,#b9dfe7);font-size:18px;font-weight:800}.mobile-family-member:nth-child(2) .mobile-family-avatar{color:#8c5d74;background:linear-gradient(145deg,#f5dce8,#e6e1f5)}.mobile-family-member:nth-child(3) .mobile-family-avatar{color:#6c7047;background:linear-gradient(145deg,#e8e8c9,#d8e5d7)}.mobile-family-member:nth-child(4) .mobile-family-avatar{color:#4d6e99;background:linear-gradient(145deg,#d8e8f6,#dde1fa)}.mobile-family-copy{min-width:0;display:grid;gap:4px}.mobile-family-copy>span{display:flex;align-items:center;gap:7px}.mobile-family-copy strong{font-size:16px}.mobile-family-copy em{padding:3px 7px;border-radius:999px;color:#71878e;background:rgba(111,139,145,.11);font-size:10px;font-style:normal}.mobile-family-copy small{overflow:hidden;color:#536d74;font-size:12px;white-space:nowrap;text-overflow:ellipsis}.mobile-family-copy i{color:#91a0a4;font-size:10px;font-style:normal}.mobile-family-member>b{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;color:#91a3a7;font-size:19px;font-weight:500}.mobile-family-member.current>b{color:white;background:#36ad95;font-size:13px}.mobile-device-unbind{width:100%;height:48px;margin-top:18px;border:1px solid #efc5c3;border-radius:15px;color:#c85a57;background:#fffafa;font-size:14px;font-weight:650}
.mobile-pin-overlay{position:fixed;z-index:180;inset:0;display:grid;place-items:end center;padding:20px 14px calc(22px + env(safe-area-inset-bottom,0px));background:rgba(15,35,45,.48);backdrop-filter:blur(7px)}.mobile-pin-dialog{box-sizing:border-box;width:min(400px,100%);padding:24px;border-radius:26px;background:#fff;box-shadow:0 22px 70px rgba(13,42,55,.3)}.mobile-pin-lock{width:50px;height:50px;display:grid;place-items:center;border-radius:16px;color:#177c70;background:linear-gradient(145deg,#d8f3ea,#ddf0f3);font-size:24px}.mobile-pin-dialog>small{display:block;margin-top:16px;color:#35a08f;font-size:11px;font-weight:750;letter-spacing:.12em}.mobile-pin-dialog h2{margin:5px 0 8px;color:#243e47;font-size:24px}.mobile-pin-dialog p{margin:0;color:#75898f;font-size:13px;line-height:1.65}.mobile-pin-dialog label{display:grid;gap:7px;margin-top:19px;color:#526c74;font-size:12px}.mobile-pin-dialog input{box-sizing:border-box;width:100%;height:54px;padding:0 16px;border:1px solid #cfdcdf;border-radius:15px;color:#263f48;background:#f7f9f9;font-size:22px;letter-spacing:.36em;outline:0}.mobile-pin-dialog input:focus{border-color:#37ad99;box-shadow:0 0 0 4px rgba(55,173,153,.12)}.mobile-pin-feedback{min-height:20px;margin-top:7px;color:#cf514c;font-size:12px}.mobile-pin-dialog footer{display:grid;grid-template-columns:1fr 1.3fr;gap:10px;margin-top:7px}.mobile-pin-dialog button{height:48px;border:0;border-radius:14px;color:#60777d;background:#edf2f2;font-size:15px;font-weight:700}.mobile-pin-dialog button.primary{color:#fff;background:linear-gradient(135deg,#2dac93,#288fc1)}
.mobile-header { height: 68px; display: flex; align-items: center; justify-content: space-between; }
.mobile-brand { display: flex; align-items: center; gap: 10px; font-size: 20px; font-weight: 800; }
.mobile-brand .brand-mark { width: 38px; height: 38px; border-radius: 13px; font-size: 20px; }
.header-action { width: 38px; height: 38px; border: 0; border-radius: 50%; background: rgba(255,255,255,.75); color: #31566f; }
.mobile-hero {
  border-radius: 28px; padding: 25px 22px; min-height: 245px; overflow: hidden; position: relative;
  color: white; background: linear-gradient(145deg, #126d7f, #295798 72%, #253f7e);
  box-shadow: 0 20px 45px rgba(28, 91, 130, .25);
}
.mobile-hero::after { content: "🎋"; position: absolute; font-size: 110px; right: -2px; bottom: -23px; filter: drop-shadow(0 12px 18px rgba(0,0,0,.18)); }
.mobile-overline { color: #8df1e3; font-size: 12px; font-weight: 800; letter-spacing: 2px; }
.mobile-title { font-size: 28px; line-height: 1.35; margin: 10px 0 8px; max-width: 270px; }
.mobile-copy { color: #cfe8ef; font-size: 14px; line-height: 1.65; max-width: 280px; }
.mobile-status { display: inline-flex; align-items: center; gap: 8px; margin-top: 18px; font-size: 12px; color: #dff8f4; }
.mobile-section { margin-top: 24px; }
.mobile-section-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 13px; }
.mobile-section-title { font-size: 18px; font-weight: 800; }
.mobile-link { color: #2b8090; font-size: 13px; }
.connect-card {
  background: white; border: 1px solid #e0edf2; border-radius: 23px; padding: 19px;
  box-shadow: 0 12px 30px rgba(24, 72, 96, .08);
}
.connect-top { display: flex; gap: 14px; align-items: center; }
.tv-icon { width: 52px; height: 52px; border-radius: 17px; display: grid; place-items: center; font-size: 26px; color: white; background: linear-gradient(145deg, #37bea9, #4d7fe2); }
.connect-title { font-weight: 800; }
.connect-copy { color: #71889a; font-size: 13px; margin-top: 5px; }
.pair-input-row { display:grid; grid-template-columns:1fr 118px; gap:9px; margin-top:17px; }
.pair-input { width:100%; min-width:0; height:48px; border:1px solid #cbdde4; border-radius:15px; padding:0 14px; color:#17364d; font-size:18px; letter-spacing:.12em; outline:none; }
.pair-input:focus { border-color:#20a995; box-shadow:0 0 0 3px rgba(32,169,149,.12); }
.connect-button { width: 100%; height: 48px; border: 0; border-radius: 15px; color: white; background: linear-gradient(100deg, #20a995, #427ae3); font-weight: 800; }
.mobile-connect-feedback { min-height:20px; margin-top:10px; color:#178675; font-size:12px; line-height:1.5; }
.mobile-connect-feedback.error { color:#d64b55; }

/* B1 report deep-dive screen */
.report-body { margin:0; min-height:100vh; overflow:hidden; background:#03162a; color:white; font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif; }
.report-screen { position:relative; width:100vw; height:100vh; overflow:hidden; background:#03162a; }
.report-art { position:absolute; inset:0; width:100%; height:100%; object-fit:fill; user-select:none; }
.uploaded-report-image{position:absolute;z-index:3;left:2.55%;top:17.15%;width:20.15%;height:50.25%;box-sizing:border-box;object-fit:contain;background:#e8e4dc;border:1px solid rgba(255,255,255,.42);border-radius:.45vw;box-shadow:0 .35vw 1.2vw rgba(0,0,0,.38)}
.report-metrics-panel{position:absolute;z-index:5;left:25.3%;top:10%;width:41.1%;height:65.7%;box-sizing:border-box;padding:.9% .9% 1.2%;border:1px solid #6693a8;border-radius:1.1vw;background:linear-gradient(145deg,#214d66 0%,#0b314b 32%,#082843 100%);box-shadow:inset 0 0 2.2vw rgba(97,187,220,.12)}.report-metrics-panel h1{height:14.5%;min-width:0;margin:0;display:flex;align-items:center;justify-content:center;gap:.7vw;overflow:hidden;color:#fff;font-size:2.65vw;letter-spacing:.12vw;text-shadow:0 .18vw .18vw rgba(0,0,0,.45)}.report-file-icon{flex:0 0 auto;font-size:2.2vw}.report-title-text{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.metric-tabs{height:85.5%;display:grid;grid-template-rows:repeat(4,1fr);gap:.65%}.metric-tab{min-height:0;display:grid;grid-template-columns:1.7fr .72fr .63fr .72fr 1.05fr;align-items:center;padding:0 2.4%;border:1px solid rgba(105,190,216,.28);border-radius:.85vw;outline:0;color:#f4fbff;background:linear-gradient(90deg,#092f49,#0b3a56);text-align:left;transition:border-color 140ms ease,box-shadow 140ms ease,filter 140ms ease}.metric-tab b{font-size:1.55vw;white-space:nowrap}.metric-value{font-size:2.9vw;font-weight:900;line-height:1}.metric-unit{font-size:1vw;color:#d6e5ec}.metric-state{font-size:1.15vw;font-weight:800}.metric-state i{margin-right:.3vw;font-style:normal;font-size:2vw}.metric-range{display:flex;flex-direction:column;align-items:flex-end;color:#dcecf2;font-size:1.18vw;font-weight:700}.metric-range small{margin-bottom:.2vw;color:#afc7d3;font-size:.82vw;font-weight:500}.metric-tab.abnormal .metric-value,.metric-tab.abnormal .metric-state{color:#ff5757}.metric-tab.normal .metric-value,.metric-tab.normal .metric-state{color:#73dc72}.metric-tab.active{z-index:2;border:2px solid #55f0f4;filter:brightness(1.12);box-shadow:0 0 0 .14vw rgba(46,226,241,.7),0 0 1.25vw rgba(43,226,239,.58),inset 0 0 1.5vw rgba(41,223,233,.12)}.metric-detail{position:absolute;z-index:6;left:41.2%;top:61.2%;width:51.5%;padding:1vw 1.35vw;border-left:.22vw solid #50e1ce;border-radius:.55vw;background:rgba(2,27,47,.94)}.metric-detail-label{font-size:.7vw;color:#62e8d1}.metric-detail-title{display:block;margin-top:.3vw;font-size:1.22vw}.metric-detail-copy{margin:.35vw 0 0;color:#bcd9e3;font-size:.83vw}
.report-control-panel{position:absolute;z-index:7;left:1.5%;right:1.5%;bottom:3.6%;height:17.5%;box-sizing:border-box;display:grid;grid-template-columns:41.4% 58.6%;padding:.55vw;border:1px solid rgba(105,177,207,.4);border-radius:1.15vw;background:linear-gradient(180deg,#082d4a,#06243e)}.report-voice-prompt{display:grid;grid-template-columns:5.2vw 1fr;align-items:center;padding:0 .8vw;color:#eefaff}.report-voice-prompt .voice-icon{width:4.1vw;height:4.1vw;display:grid;place-items:center;border:1px solid #32cfe6;border-radius:50%;color:#5ceaf1;background:radial-gradient(circle,rgba(44,217,234,.16),#083653 72%);box-shadow:0 0 1vw rgba(29,221,241,.32),inset 0 0 .75vw rgba(42,223,239,.18)}.report-voice-prompt .voice-icon svg{width:2.35vw;height:2.35vw;overflow:visible;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 .32vw rgba(80,235,243,.72))}.voice-prompt-copy{min-width:0}.report-voice-prompt b{display:block;font-size:1.12vw;white-space:nowrap}.report-voice-prompt em{color:#42edf1;font-style:normal}.voice-wave{height:2.15vw;display:flex;align-items:center;gap:.105vw;overflow:hidden}.voice-wave i{display:block;flex:1 1 auto;min-width:1px;max-width:.12vw;height:38%;border-radius:999px;background:#43e7ef;box-shadow:0 0 .22vw rgba(67,231,239,.8);animation:reportVoiceWave 1.35s ease-in-out infinite alternate;transform-origin:center}.voice-wave i:nth-child(4n+1){height:24%;animation-delay:-.8s}.voice-wave i:nth-child(4n+2){height:72%;animation-delay:-.45s}.voice-wave i:nth-child(4n+3){height:46%;animation-delay:-1.05s}.voice-wave i:nth-child(7n){height:88%;animation-delay:-.2s}.report-voice-prompt small{display:block;color:#a9c3d0;font-size:.78vw}.remote-voice-key{filter:grayscale(1);font-size:.74vw}.report-actions{height:100%;display:grid;grid-template-columns:repeat(4,1fr);gap:.65vw}.report-action{width:100%;height:100%;display:grid;grid-template-columns:2.5vw 1fr;grid-template-rows:1fr 1fr;align-items:end;padding:1.05vw 1vw;border:2px solid rgba(112,195,217,.3);border-radius:1.15vw;outline:0;color:#edfaff;background:linear-gradient(180deg,#0b4568,#082f50);text-align:left;transition:border-color 120ms ease,box-shadow 120ms ease}.report-action>span{grid-row:1/3;align-self:center;width:2.1vw;height:2.1vw;display:grid;place-items:center;border-radius:50%;color:#063044;background:#58e5da;font-weight:900}.report-action b{font-size:1vw}.report-action small{align-self:start;color:#91afbc;font-size:.7vw}.report-action:focus{border-color:white;background:linear-gradient(180deg,#0c5278,#093b60);box-shadow:0 0 0 .16vw #14e7fb,0 0 1.15vw rgba(28,229,247,.72),inset 0 0 1vw rgba(28,229,247,.09)}
.report-toast { position:absolute; z-index:8; left:50%; bottom:16%; transform:translate(-50%,14px); padding:.85vw 1.35vw; border:1px solid rgba(72,225,230,.45); border-radius:999px; color:#eaffff; background:rgba(4,36,57,.96); box-shadow:0 0 1.2vw rgba(48,218,224,.25); font-size:1vw; opacity:0; pointer-events:none; transition:180ms ease; }
.report-toast.visible { opacity:1; transform:translate(-50%,0); }
.report-speaking { position:absolute; z-index:9; left:68.8%; top:30.8%; width:16.5%; display:flex; align-items:center; gap:.65vw; padding:.58vw .8vw; border:1px solid rgba(91,235,190,.45); border-radius:.75vw; color:#eafff5; background:rgba(2,45,48,.96); opacity:0; transform:translateY(-8px); transition:180ms ease; }
.report-speaking.visible { opacity:1; transform:none; }
.report-speaking-dot { flex:0 0 auto; width:.75vw; height:.75vw; border-radius:50%; background:#5aefa9; box-shadow:0 0 .8vw #5aefa9; animation:reportPulse 1s infinite alternate; }
.report-speaking b,.report-speaking small { display:block; }.report-speaking b{font-size:.88vw}.report-speaking small{margin-top:.12vw;color:#bfe3d5;font-size:.68vw;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.report-source-pill { position:absolute; z-index:8; left:50%; top:3.2%; transform:translate(-50%,-12px); display:flex; align-items:center; gap:.55vw; padding:.65vw 1.05vw; border:1px solid rgba(87,228,199,.55); border-radius:999px; background:rgba(3,43,58,.96); color:#ecfff9; font-size:.9vw; opacity:0; transition:180ms ease; }.report-source-pill.visible{opacity:1;transform:translate(-50%,0)}.report-source-pill span{display:grid;place-items:center;width:1.15vw;height:1.15vw;border-radius:50%;background:#38bf8f;color:white}
.report-back { position:absolute; z-index:6; left:1.7%; top:2.2%; padding:.55vw .9vw; border:1px solid rgba(151,204,224,.2); border-radius:999px; color:#d9edf4; background:rgba(4,27,49,.38); font-size:.82vw; opacity:.38; }.report-back:hover,.report-back:focus{opacity:1;outline:1px solid #42d9e9}
.report-analysis-loading{box-sizing:border-box;width:100%;min-height:13vw;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.55vw;border:1px solid rgba(82,232,234,.42);border-radius:1vw;color:#bce9ec;background:radial-gradient(circle at 50% 28%,rgba(58,220,211,.16),transparent 32%),linear-gradient(145deg,rgba(7,62,77,.94),rgba(4,38,62,.96));box-shadow:inset 0 0 2vw rgba(59,222,216,.08),0 0 1.2vw rgba(31,194,207,.08);overflow:hidden}.report-analysis-loading b{font-size:1.28vw;color:#72eee1}.report-analysis-loading span{font-size:.78vw;color:#b9dbe0;transition:opacity .2s}.report-analysis-loading small{color:#789da9;font-size:.62vw}.report-loading-orbit{position:relative;width:4.25vw;height:4.25vw;margin-bottom:.1vw;display:grid;place-items:center;border:1px solid rgba(102,236,223,.3);border-radius:50%;box-shadow:0 0 1.2vw rgba(56,227,214,.16)}.report-loading-orbit strong{width:2.45vw;height:2.45vw;display:grid;place-items:center;border-radius:50%;color:#063c48;background:linear-gradient(145deg,#82f2d9,#48d7e9);font-size:1.05vw;box-shadow:0 0 .8vw rgba(90,234,222,.42)}.report-loading-orbit i{position:absolute;left:50%;top:50%;width:.38vw;height:.38vw;margin:-.19vw;border-radius:50%;background:#75f1df;box-shadow:0 0 .5vw #6be9e1;animation:reportLoadingOrbit 2.8s linear infinite}.report-loading-orbit i:nth-child(2){animation-delay:-.93s}.report-loading-orbit i:nth-child(3){animation-delay:-1.86s}.report-loading-progress{width:13vw;height:.2vw;margin:.15vw 0 .05vw;overflow:hidden;border-radius:999px;background:rgba(117,210,218,.16)}.report-loading-progress i{display:block;width:38%;height:100%;border-radius:inherit;background:linear-gradient(90deg,transparent,#66eee0,transparent);animation:reportLoadingSweep 1.8s ease-in-out infinite}@keyframes reportLoadingOrbit{from{transform:rotate(0deg) translateX(2.12vw) rotate(0deg)}to{transform:rotate(360deg) translateX(2.12vw) rotate(-360deg)}}@keyframes reportLoadingSweep{from{transform:translateX(-110%)}to{transform:translateX(365%)}}
.report-mobile-row .chat-bubble b{color:#176e82}.report-mobile-row .chat-bubble small{display:block;margin-top:8px;color:#8297a5;font-size:11px}
.mobile-report-preview-row .chat-bubble{padding:6px;overflow:hidden}.mobile-report-preview-row img{display:block;width:min(190px,52vw);max-height:220px;object-fit:cover;border-radius:12px}.mobile-report-preview-row small{display:block;max-width:190px;padding:7px 7px 3px;color:rgba(255,255,255,.9);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-upload-status-row .chat-bubble span p{margin:8px 0 0}.report-upload-status-row .chat-bubble small{display:block;margin-top:8px;color:#8297a5;font-size:11px}
.medicine-picker-actions{display:flex;gap:8px;margin-top:12px}.medicine-picker-actions button{flex:1;min-height:38px;border:1px solid rgba(48,160,145,.2);border-radius:12px;color:#257e73;background:#effaf7;font-weight:650}.medicine-result-row .chat-bubble{padding:0;overflow:hidden}.medicine-result-card{min-width:min(260px,68vw);padding:16px;background:#fff}.medicine-result-card>small{color:#2d9a8c;font-size:11px;font-weight:700}.medicine-result-card h3{margin:5px 0 2px;color:#233f48;font-size:18px}.medicine-result-card>em{display:block;margin-bottom:13px;color:#7a9097;font-size:11px;font-style:normal}.medicine-section-label{margin:10px 0 5px;color:#739097;font-size:11px;font-weight:700}.medicine-purpose{margin:0 0 8px!important;color:#344f58}.medicine-cautions{display:flex;flex-direction:column;gap:6px}.medicine-cautions span{position:relative;padding-left:14px;color:#536d75;font-size:12px}.medicine-cautions span:before{content:'•';position:absolute;left:2px;color:#e49b3e}.medicine-note{margin:13px 0 0!important;padding-top:11px;border-top:1px solid rgba(71,116,125,.1);color:#557078;font-size:12px}
.mobile-report-tv-button{width:100%;min-height:42px;margin-top:12px;border:0;border-radius:13px;color:#fff;background:linear-gradient(135deg,#32aa9a,#397fca);font-size:14px;font-weight:650;box-shadow:0 6px 15px rgba(48,135,151,.18)}
.video-body{margin:0;overflow:hidden;background:#03162a;color:#fff;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif}.video-screen{position:relative;box-sizing:border-box;width:100vw;height:100vh;padding:2.1vw 3vw 1.5vw;background:radial-gradient(circle at 78% 8%,rgba(17,106,119,.55),transparent 28%),linear-gradient(145deg,#021326,#052d43 72%,#041b30)}.video-header{height:10%;display:grid;grid-template-columns:15vw 1fr 15vw;align-items:center;gap:1.5vw}.video-back{padding:.7vw 1vw;border:1px solid rgba(90,198,218,.42);border-radius:999px;color:#dffaff;background:rgba(4,37,58,.88);font-size:.82vw}.video-heading small{color:#70e7d8;font-size:.72vw}.video-heading h1{display:inline-block;margin:.18vw .8vw .12vw 0;font-size:1.65vw}.video-metric-label{display:inline-block;margin:0;padding:.28vw .65vw;border-radius:999px;color:#082c3d;background:#66e3d7;font-size:.72vw;font-weight:800}.video-brand{text-align:right;color:#bce5ea;font-size:1.05vw;font-weight:700}.video-layout{height:73%;display:grid;grid-template-columns:minmax(0,2.15fr) minmax(18vw,.85fr);gap:1.35vw;margin-top:.8vw}.video-player-shell{position:relative;min-width:0;overflow:hidden;border:2px solid rgba(73,222,231,.74);border-radius:1.2vw;background:#020d15;box-shadow:0 1vw 4vw rgba(0,0,0,.38),0 0 1.2vw rgba(51,218,228,.12)}.health-video{width:100%;height:100%;display:block;object-fit:contain;background:#000}.video-center-play{position:absolute;left:50%;top:50%;display:flex;flex-direction:column;align-items:center;gap:.45vw;transform:translate(-50%,-50%);padding:0;border:0;color:#fff;background:transparent}.video-center-play>span{width:4.2vw;height:4.2vw;display:grid;place-items:center;border:2px solid rgba(255,255,255,.85);border-radius:50%;color:#073348;background:rgba(86,231,219,.92);font-size:1.65vw;box-shadow:0 0 1.5vw rgba(53,229,232,.5)}.video-center-play>b{padding:.35vw .7vw;border-radius:999px;background:rgba(0,18,31,.78);font-size:.75vw}.video-center-play.playing{opacity:0;transition:opacity .18s}.video-center-play.playing:focus,.video-player-shell:hover .video-center-play.playing{opacity:1}.video-now-playing{position:absolute;left:1vw;top:1vw;padding:.5vw .7vw;border-left:.18vw solid #5ce7d9;border-radius:.32vw;background:rgba(3,29,45,.88)}.video-now-playing small{display:block;color:#65e7dc;font-size:.58vw}.video-now-playing b{font-size:.78vw}.video-progress{position:absolute;left:0;right:0;bottom:0;height:.25vw;background:rgba(255,255,255,.2)}.video-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,#52e6da,#3cd7ef)}.video-sidebar{min-width:0;display:flex;flex-direction:column;gap:.72vw}.recommend-reason{box-sizing:border-box;padding:.9vw 1vw;border:1px solid rgba(104,220,198,.46);border-radius:.85vw;background:linear-gradient(145deg,rgba(8,67,61,.94),rgba(4,41,49,.94))}.recommend-reason small{color:#81e9d2;font-size:.66vw}.recommend-reason p{margin:.45vw 0 0;color:#e6f5ef;font-size:.8vw;line-height:1.62}.video-list{min-height:0;display:flex;flex-direction:column;gap:.68vw}.video-card{box-sizing:border-box;width:100%;display:grid;grid-template-columns:7vw 1fr;gap:.7vw;align-items:center;padding:.55vw;border:1px solid rgba(73,126,150,.6);border-radius:.8vw;color:#ddecf2;background:rgba(5,39,57,.94);text-align:left}.video-card img{width:7vw;aspect-ratio:16/9;object-fit:cover;border-radius:.5vw}.video-card span{min-width:0}.video-card b{display:block;font-size:.74vw;line-height:1.35}.video-card small{display:block;margin-top:.34vw;color:#8fb1bd;font-size:.55vw;line-height:1.35}.video-card.active{border-color:#5be4d5;background:linear-gradient(145deg,rgba(10,82,79,.95),rgba(5,46,61,.96));box-shadow:0 0 1vw rgba(80,227,214,.18)}.video-actions{height:10%;display:grid;grid-template-columns:1fr repeat(3,10.5vw);align-items:center;gap:.7vw;margin-top:.8vw;padding:.55vw .7vw;border:1px solid rgba(83,155,181,.36);border-radius:1vw;background:rgba(4,31,50,.88)}.video-status{padding-left:.5vw;color:#a8c6d1;font-size:.72vw}.video-actions button{height:100%;padding:.5vw;border:1px solid rgba(92,170,196,.48);border-radius:.75vw;color:#effcff;background:linear-gradient(180deg,#0c4869,#082e4c);font-size:.78vw;font-weight:700}.video-focus:focus{outline:0;border-color:#fff;box-shadow:0 0 0 .14vw #14e7fb,0 0 1vw rgba(28,229,247,.72)}.video-empty .video-player-shell{opacity:.34}.video-empty-card{padding:2vw 1vw;border:1px dashed #4f788b;border-radius:.8vw;color:#c7dce4;text-align:center}.video-empty-card small{color:#7e9ba7}.video-toast{position:absolute;left:50%;bottom:12%;z-index:20;max-width:50vw;opacity:0;transform:translate(-50%,1vw);padding:.65vw 1vw;border:1px solid rgba(94,221,221,.58);border-radius:999px;color:#eefeff;background:rgba(2,28,45,.95);font-size:.72vw;transition:.18s}.video-toast.visible{opacity:1;transform:translate(-50%,0)}
.video-controls{position:absolute;z-index:4;left:1.2vw;right:1.2vw;bottom:.75vw;display:grid;grid-template-columns:auto auto minmax(10vw,1fr) auto auto auto;align-items:center;gap:.65vw;padding:.55vw .7vw;border-radius:.75vw;background:rgba(0,15,25,.78);opacity:.22;transition:opacity .18s}.video-player-shell:hover .video-controls,.video-controls:focus-within{opacity:1}.video-controls button{height:2.15vw;padding:0 .75vw;border:1px solid rgba(111,220,224,.55);border-radius:.55vw;color:#efffff;background:#0a4055;font-size:.68vw;font-weight:800}.video-time,.video-duration{color:#d9eef1;font-size:.65vw;font-variant-numeric:tabular-nums}.video-controls .video-progress{position:relative;left:auto;right:auto;bottom:auto;height:.48vw;overflow:hidden;border-radius:999px;background:rgba(255,255,255,.24)}
.video-body.mobile-cast-mode .video-layout{height:84%;display:grid;place-items:center;margin-top:.8vw}.video-body.mobile-cast-mode .video-player-shell{width:auto;max-width:100%;height:100%;aspect-ratio:16/9}.video-body.mobile-cast-mode .video-heading small{font-size:.8vw}.video-body.mobile-cast-mode .video-heading h1{font-size:1.8vw}.video-body.mobile-cast-mode .video-metric-label{display:none}.video-body.mobile-cast-mode .video-controls{opacity:.9}
@keyframes reportPulse { to { transform:scale(1.28); opacity:.65; } }
@keyframes reportVoiceWave { to { transform:scaleY(.36); opacity:.55; } }
.metric-detail { display:none; }
.metric-tabs { border-radius:.9vw; }
/* Temporary fit pass: keep the artwork, but fully cover its central and bottom modules. */
.report-metrics-panel { top:9.4%; height:66.3%; }
.report-control-panel { left:.45%; right:.45%; bottom:0; height:21.1%; border-radius:1.15vw 1.15vw 0 0; }
.report-voice-prompt { grid-template-columns:5.2vw minmax(0,1fr); padding-left:1.15vw; padding-right:.25vw; }
.voice-wave { width:100%; }
.voice-wave i { max-width:none; }
.report-metrics-panel { top:10%; height:65.7%; }
.metric-insight{position:absolute;z-index:6;left:67.6%;top:37.45%;width:30.9%;height:42.75%;box-sizing:border-box;padding:1.15vw .95vw 1vw;border:1px solid rgba(128,211,92,.72);border-radius:1.05vw;color:#eaffdf;background:linear-gradient(145deg,rgba(5,54,43,.985),rgba(4,31,38,.99));box-shadow:0 0 1.25vw rgba(117,211,76,.2),inset 0 0 1.5vw rgba(111,211,83,.08)}.metric-insight-current{height:15%;padding:0 .45vw;color:#a6e579;font-size:1.38vw;font-weight:700}.metric-insight-current strong{font-weight:800}.metric-insight-card{height:85%;box-sizing:border-box;display:grid;grid-template-rows:auto minmax(0,1fr) 42%;padding:1.25vw 1vw .7vw;border:1px solid rgba(147,210,98,.4);border-radius:.85vw;background:linear-gradient(145deg,rgba(10,56,43,.9),rgba(5,38,40,.92));overflow:hidden}.metric-insight-card h2{margin:0;display:flex;align-items:center;gap:.65vw;color:#ff6b5f;font-size:1.42vw;line-height:1.2}.metric-insight-alert{flex:0 0 auto;width:1.7vw;height:1.7vw;display:grid;place-items:center;border-radius:50%;color:white;background:#ff5f52;font-size:1.25vw;font-weight:900}.metric-insight-copy-window{position:relative;min-height:0;margin:.55vw .1vw .4vw;overflow:hidden}.metric-insight-copy-window:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1.6em;pointer-events:none;background:linear-gradient(transparent,rgba(7,46,41,.98))}.metric-insight-card p{margin:0;color:#e2efe6;font-size:1.04vw;line-height:1.65;transform:translateY(var(--insight-scroll-y,0));transition:transform .55s ease}.metric-insight:not(.speech-scrolling) .metric-insight-card p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden}.metric-insight-actions{position:relative;z-index:2;min-height:0;display:grid;grid-template-columns:repeat(3,1fr);gap:.7vw}.metric-insight-action{position:relative;min-width:0;min-height:0;display:grid;grid-template-rows:1fr auto;place-items:center;padding:.35vw .25vw;border:1px solid rgba(129,201,91,.34);border-radius:.78vw;background:linear-gradient(145deg,rgba(38,100,68,.72),rgba(12,62,53,.76));overflow:hidden}.metric-insight-action i{position:absolute;left:.42vw;top:.35vw;width:1.28vw;height:1.28vw;display:grid;place-items:center;border-radius:50%;color:#143f2c;background:#afe678;font-size:.8vw;font-style:normal;font-weight:900}.metric-insight-action span{align-self:end;font-size:1.65vw;filter:grayscale(.1)}.metric-insight-action b{max-width:100%;overflow:hidden;text-overflow:ellipsis;font-size:.86vw;white-space:nowrap}.metric-insight.normal{border-color:rgba(93,225,169,.76);box-shadow:0 0 1.25vw rgba(61,220,169,.2),inset 0 0 1.5vw rgba(61,220,169,.08)}.metric-insight.normal .metric-insight-current{color:#72e7b3}.metric-insight.normal .metric-insight-card h2{color:#77e6a0}.metric-insight.normal .metric-insight-alert{color:#123e2c;background:#7ae3a3}
.voice-wave { display:block; width:100%; height:2.15vw; }
.voice-wave svg { display:block; width:100%; height:100%; overflow:visible; }
.voice-wave path { fill:none; stroke:#43e7ef; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; vector-effect:non-scaling-stroke; filter:drop-shadow(0 0 .18vw rgba(67,231,239,.85)); animation:reportVoiceGlow 1.35s ease-in-out infinite alternate; }
@keyframes reportVoiceGlow { to { opacity:.58; filter:drop-shadow(0 0 .36vw rgba(67,231,239,1)); } }
.voice-wave {
  height:2.15vw;
  background:repeating-linear-gradient(90deg,#43e7ef 0 1.5px,transparent 1.5px 3.8px);
  clip-path:polygon(
    0 47%,2% 42%,4% 35%,6% 22%,8% 39%,10% 27%,12% 41%,14% 32%,16% 18%,18% 36%,20% 25%,22% 40%,24% 30%,26% 12%,28% 34%,30% 22%,32% 38%,34% 29%,36% 16%,38% 35%,40% 24%,42% 41%,44% 31%,46% 20%,48% 37%,50% 28%,52% 40%,54% 33%,56% 23%,58% 38%,60% 29%,62% 42%,64% 34%,66% 25%,68% 39%,70% 31%,72% 43%,74% 35%,76% 28%,78% 40%,80% 33%,82% 44%,84% 37%,86% 30%,88% 41%,90% 35%,92% 45%,94% 39%,96% 33%,98% 44%,100% 47%,
    100% 53%,98% 56%,96% 67%,94% 61%,92% 55%,90% 65%,88% 59%,86% 70%,84% 63%,82% 56%,80% 67%,78% 60%,76% 72%,74% 65%,72% 57%,70% 69%,68% 61%,66% 75%,64% 66%,62% 58%,60% 71%,58% 62%,56% 77%,54% 67%,52% 60%,50% 72%,48% 63%,46% 80%,44% 69%,42% 59%,40% 76%,38% 65%,36% 84%,34% 71%,32% 62%,30% 78%,28% 66%,26% 88%,24% 70%,22% 60%,20% 75%,18% 64%,16% 82%,14% 68%,12% 59%,10% 73%,8% 61%,6% 78%,4% 65%,2% 58%,0 53%
  );
  filter:drop-shadow(0 0 .18vw rgba(67,231,239,.9));
  animation:reportVoiceBars 1.25s ease-in-out infinite alternate;
}
.voice-wave svg { display:none; }
@keyframes reportVoiceBars { to { opacity:.66; transform:scaleY(.82); } }
.voice-wave { background:none; clip-path:none; filter:none; animation:none; }
.voice-wave svg { display:block; width:100%; height:100%; overflow:visible; }
.voice-wave path { display:none; }
.voice-wave-baseline { stroke:#43e7ef; stroke-width:.7; opacity:.46; vector-effect:non-scaling-stroke; }
.voice-wave-bar { stroke:#43e7ef; stroke-width:1.15; stroke-linecap:round; opacity:.92; vector-effect:non-scaling-stroke; filter:drop-shadow(0 0 1.4px rgba(67,231,239,.82)); transform-box:fill-box; transform-origin:center; animation:reportVoiceFine 1.15s ease-in-out var(--wave-delay) infinite alternate; }

/* Real AI question interaction */
.report-voice-prompt{width:100%;border:0;background:transparent;text-align:left;cursor:pointer}
.report-voice-prompt.listening .voice-icon{color:white;background:radial-gradient(circle,#25d9df,#08708a 72%);box-shadow:0 0 1.8vw rgba(45,235,241,.8)}
.report-voice-prompt.listening .voice-wave-bar{animation-duration:.42s;stroke:#fff}
.ai-question-dialog{position:absolute;z-index:30;inset:0;display:grid;place-items:center;background:rgba(1,16,30,.72);backdrop-filter:blur(10px)}
.ai-question-dialog[hidden]{display:none}
.ai-question-card{width:58%;display:grid;grid-template-columns:5vw 1fr;gap:1.4vw;padding:2.2vw;border:1px solid rgba(70,226,235,.55);border-radius:1.5vw;background:linear-gradient(145deg,#0b3f60,#072844);box-shadow:0 1.5vw 5vw rgba(0,0,0,.45),0 0 2vw rgba(40,221,235,.18)}
.ai-question-badge{width:4.8vw;height:4.8vw;display:grid;place-items:center;border-radius:50%;color:#06384b;background:linear-gradient(145deg,#67f1de,#32c9ee);font-size:2vw;font-weight:900}
.ai-question-content small{display:block;color:#55e2e6;font-size:.85vw}
.ai-question-content strong{display:block;margin:.35vw 0 1.15vw;color:white;font-size:1.7vw}
.ai-question-input{width:100%;height:3.8vw;box-sizing:border-box;padding:0 1.2vw;border:2px solid #4edbe6;border-radius:.85vw;outline:0;color:#17354a;background:#f5fdff;font-size:1.2vw;box-shadow:0 0 0 .22vw rgba(44,221,233,.12)}
.ai-question-status{margin:.7vw 0 0;color:#a9c9d5;font-size:.82vw}
.ai-question-dialog.listening .ai-question-badge{animation:voiceListeningPulse .9s ease-in-out infinite alternate;box-shadow:0 0 1.6vw rgba(72,232,236,.65)}
@keyframes voiceListeningPulse{to{transform:scale(1.08);filter:brightness(1.22)}}
@keyframes reportVoiceFine { to { transform:scaleY(.72); opacity:.68; } }
.report-actions { height:12.8vh; align-self:center; }
.report-actions { grid-template-columns:repeat(3,1fr); }
.report-action { padding:.72vw .85vw; }
.send-tv-button { width:100%; height:50px; margin-top:12px; border:0; border-radius:15px; color:white; background:linear-gradient(100deg,#176e82,#426fd0); font-weight:800; }
.send-tv-button:disabled { opacity:.7; }
.report-upload-actions{display:block;margin-top:12px}
.report-upload-actions[hidden]{display:none}
.upload-report-button{display:flex;width:100%;height:50px;box-sizing:border-box;align-items:center;justify-content:center;border:1px solid #59cfd4;border-radius:15px;color:#126b79;background:#ecfbfb;font-weight:800;cursor:pointer}
.upload-report-button.disabled{opacity:.65;pointer-events:none}

/* Dynamic report: priority-first and complete-index views */
.report-metrics-panel h1{height:12%}
.metric-view-bar{height:8%;display:flex;align-items:center;justify-content:space-between;padding:0 .35vw .25vw;box-sizing:border-box}
.metric-view-tabs{display:flex;gap:.4vw}
.metric-view-button{padding:.36vw .75vw;border:1px solid rgba(93,206,221,.32);border-radius:999px;color:#a9c8d4;background:rgba(5,39,61,.66);font-size:.72vw;font-weight:700;cursor:pointer}
.metric-view-button.active{border-color:#52e0e6;color:#052f43;background:#58e2dd;box-shadow:0 0 .7vw rgba(71,226,228,.3)}
.metric-view-button:focus{outline:0;border-color:#fff;box-shadow:0 0 0 .14vw #52f4f1,0 0 1vw rgba(82,244,241,.75)}
.metric-summary{color:#9fc2cf;font-size:.72vw}
.metric-tabs{height:80%;gap:.65%}
.metric-tab:not(.normal):not(.abnormal) .metric-value,.metric-tab:not(.normal):not(.abnormal) .metric-state{color:#f1c76b}
.metric-tab.abnormal .metric-state i{display:inline-block;min-width:1em;text-align:center}
.mobile-actions { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.mobile-action { border: 1px solid #e3edf1; background: rgba(255,255,255,.88); border-radius: 20px; padding: 18px 15px; min-height: 115px; text-align: left; color: #17364d; }
.mobile-action-icon { font-size: 25px; }
.mobile-action-name { font-weight: 800; margin-top: 12px; }
.mobile-action-desc { font-size: 12px; color: #7a8d9d; margin-top: 5px; line-height: 1.45; }
.mobile-nav { position: sticky; bottom: 10px; margin-top: 25px; height: 66px; display: grid; grid-template-columns: repeat(3,1fr); align-items: center; padding: 0 10px; border: 1px solid rgba(220,233,239,.9); border-radius: 23px; background: rgba(255,255,255,.9); backdrop-filter: blur(18px); box-shadow: 0 12px 30px rgba(35,76,98,.13); }
.cross-screen-bubble p{margin:7px 0 0;white-space:pre-line;line-height:1.62}.cross-screen-bubble small{display:block;margin-top:9px;color:#7c9aa9}.mobile-message-video .cross-screen-bubble{border-left:3px solid #50c8b7}.mobile-message-action-plan .cross-screen-bubble{border-left:3px solid #89c957}
.mobile-handoff-video{display:block;width:100%;margin:10px 0 0;border-radius:12px;background:#071d2a;aspect-ratio:16/9;object-fit:cover}.mobile-handoff-play{width:100%;margin:8px 0 2px;padding:11px 14px;border:0;border-radius:10px;background:linear-gradient(135deg,#17a99a,#45c49b);color:#fff;font-size:14px;font-weight:700}.mobile-handoff-play:active{transform:scale(.985)}
.nav-item { text-align: center; color: #8295a3; font-size: 11px; }
.nav-item strong { display: block; font-size: 21px; margin-bottom: 3px; }
.nav-item.active { color: #168b83; font-weight: 700; }

/* Colourful embedded SVGs keep the old emoji-like warmth without relying on TV fonts. */
.metric-insight-action .metric-action-icon { align-self:end; width:2.18vw; height:2.18vw; display:grid; place-items:center; filter:drop-shadow(0 .12vw .26vw rgba(0,0,0,.28)); }
.metric-action-icon svg { display:block; width:100%; height:100%; overflow:visible; }
.metric-action-icon svg * { vector-effect:non-scaling-stroke; stroke-linecap:round; stroke-linejoin:round; }
.action-icon-run .skin{fill:#ffc47c}.action-icon-run .shirt{fill:#63c66f;stroke:#d8ff9b;stroke-width:.8}.action-icon-run .shorts{fill:#2f79cb}.action-icon-run .shoe{fill:#f5f8df}
.action-icon-check .paper{fill:#f3f6df;stroke:#d8ff9b;stroke-width:1}.action-icon-check .clip{fill:#aadf62}.action-icon-check .cross{fill:none;stroke:#4a9d55;stroke-width:2.2}.action-icon-check .line{fill:none;stroke:#8cb574;stroke-width:1.5}
.action-icon-weight .scale{fill:#dff3e0;stroke:#caff8d;stroke-width:1.4}.action-icon-weight .dial,.action-icon-weight .needle{fill:none;stroke:#4d9960;stroke-width:1.8}
.action-icon-wine .glass{fill:rgba(245,248,223,.15);stroke:#f5f8df;stroke-width:1.7}.action-icon-wine .slash{fill:none;stroke:#ff7469;stroke-width:2.8}
.action-icon-drop .drop{fill:url(#drop-blue);stroke:#bdf5ff;stroke-width:.8}.action-icon-drop .shine{fill:none;stroke:rgba(255,255,255,.88);stroke-width:1.8}
.action-icon-leaf .leaf{fill:#b9e867;stroke:#e2ff9d;stroke-width:1}.action-icon-leaf .vein,.action-icon-leaf .vein-small{fill:none;stroke:#f3ffd3;stroke-width:1.5}
.action-icon-plus circle,.action-icon-done circle,.action-icon-shield path:first-child{fill:#aadb61;stroke:#ddff9e;stroke-width:1}.action-icon-plus path,.action-icon-done path,.action-icon-shield path:last-child{fill:none;stroke:#fff;stroke-width:2}

/* Report-driven action plan */
.advice-body{margin:0;overflow:hidden;background:#031528;color:#fff;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif}.advice-screen{box-sizing:border-box;width:100vw;height:100vh;padding:2.1vw 3vw 1.5vw;background:radial-gradient(circle at 83% 3%,rgba(35,136,113,.42),transparent 31%),radial-gradient(circle at 12% 76%,rgba(17,89,128,.32),transparent 28%),linear-gradient(145deg,#021326,#062a40 68%,#041b30)}.advice-header{height:9%;display:grid;grid-template-columns:16vw 1fr 16vw;align-items:center;gap:1.5vw}.advice-back{padding:.7vw 1vw;border:1px solid rgba(90,198,218,.42);border-radius:999px;color:#dffaff;background:rgba(4,37,58,.88);font-size:.82vw}.advice-heading{text-align:center}.advice-heading small{color:#75e6d7;font-size:.7vw}.advice-heading h1{margin:.16vw 0 0;font-size:1.7vw}.advice-brand{text-align:right;color:#bce5ea;font-size:1.05vw;font-weight:700}.advice-overview{box-sizing:border-box;height:21%;display:grid;grid-template-columns:1fr 10vw;align-items:center;margin-top:.7vw;padding:1.25vw 1.6vw;border:1px solid rgba(79,214,201,.48);border-radius:1.15vw;background:linear-gradient(120deg,rgba(7,69,76,.95),rgba(7,47,68,.96));box-shadow:0 .8vw 3vw rgba(0,0,0,.23)}.advice-kicker{display:inline-block;padding:.28vw .62vw;border-radius:999px;color:#083c3b;background:#71e3d3;font-size:.62vw;font-weight:800}.advice-overview h2{margin:.55vw 0 .35vw;font-size:1.45vw}.advice-overview p{max-width:70vw;margin:0;color:#c7dfe2;font-size:.83vw;line-height:1.62}.advice-score{width:8.2vw;height:8.2vw;display:grid;place-content:center;border:1px solid rgba(110,232,215,.8);border-radius:50%;text-align:center;background:radial-gradient(circle,rgba(43,189,168,.2),rgba(4,41,56,.72));box-shadow:0 0 1.5vw rgba(59,222,204,.22),inset 0 0 1.2vw rgba(69,224,205,.13)}.advice-score strong{color:#78ebd8;font-size:2.8vw;line-height:1}.advice-score span{margin-top:.28vw;color:#cce5e5;font-size:.64vw}.advice-grid{height:48%;display:grid;grid-template-columns:1.18fr 1fr 1fr;gap:1vw;margin-top:1vw}.advice-panel{box-sizing:border-box;padding:1.15vw;border:1px solid rgba(83,155,181,.4);border-radius:1vw;background:linear-gradient(145deg,rgba(6,49,69,.97),rgba(4,32,51,.97));box-shadow:0 .7vw 2vw rgba(0,0,0,.19)}.advice-panel-title{display:flex;align-items:center;gap:.7vw}.advice-panel-title>span{width:2.15vw;height:2.15vw;display:grid;place-items:center;border-radius:.65vw;color:#073f43;background:#6fe2d2;font-size:.76vw;font-weight:900}.advice-panel-title small{color:#78b9c6;font-size:.58vw}.advice-panel-title h3{margin:.08vw 0 0;font-size:1.02vw}.advice-today-list{display:flex;flex-direction:column;gap:.62vw;margin-top:.85vw}.advice-today-item{display:grid;grid-template-columns:1.8vw 1fr auto;align-items:center;gap:.58vw;padding:.67vw .7vw;border:1px solid rgba(101,210,181,.31);border-radius:.72vw;background:rgba(10,73,69,.55)}.advice-today-item i{width:1.55vw;height:1.55vw;display:grid;place-items:center;border-radius:50%;color:#103b34;background:#a9e477;font-size:.66vw;font-style:normal;font-weight:900}.advice-today-item b{display:block;font-size:.78vw}.advice-today-item small{display:block;margin-top:.14vw;color:#83afb1;font-size:.52vw}.advice-today-item>span{padding:.22vw .4vw;border-radius:999px;color:#9ce5d5;background:rgba(68,183,153,.17);font-size:.5vw}.advice-follow-up,.advice-warning{margin:1.05vw .1vw 0;color:#dcebed;font-size:.8vw;line-height:1.75}.advice-focus-tags{display:flex;flex-wrap:wrap;gap:.42vw;margin-top:1vw}.advice-focus-tags span{padding:.34vw .58vw;border:1px solid rgba(103,215,199,.4);border-radius:999px;color:#8ee5d9;background:rgba(33,128,112,.14);font-size:.56vw}.warning-panel{border-color:rgba(237,177,91,.42);background:linear-gradient(145deg,rgba(72,50,31,.96),rgba(38,35,39,.97))}.warning-panel .advice-panel-title>span{color:#4d2607;background:#f2bd70}.warning-panel .advice-panel-title small{color:#d6aa76}.advice-disclaimer{display:block;margin-top:1vw;padding-top:.75vw;border-top:1px solid rgba(237,184,112,.2);color:#bda88f;font-size:.55vw;line-height:1.6}.advice-actions{height:10%;display:grid;grid-template-columns:1fr repeat(3,11vw);align-items:center;gap:.7vw;margin-top:1vw;padding:.55vw .7vw;border:1px solid rgba(83,155,181,.36);border-radius:1vw;background:rgba(4,31,50,.88)}.advice-status{padding-left:.5vw;color:#a8c6d1;font-size:.67vw}.advice-actions button{height:100%;padding:.5vw;border:1px solid rgba(92,170,196,.48);border-radius:.75vw;color:#effcff;background:linear-gradient(180deg,#0c4869,#082e4c);font-size:.75vw;font-weight:700}.advice-actions button.primary{border-color:rgba(91,226,206,.72);background:linear-gradient(180deg,#11786f,#0a504e)}.advice-focus:focus{outline:0;border-color:#fff;box-shadow:0 0 0 .14vw #14e7fb,0 0 1vw rgba(28,229,247,.72)}.advice-toast{position:absolute;left:50%;bottom:12%;z-index:20;max-width:50vw;opacity:0;transform:translate(-50%,1vw);padding:.65vw 1vw;border:1px solid rgba(94,221,221,.58);border-radius:999px;color:#eefeff;background:rgba(2,28,45,.95);font-size:.72vw;transition:.18s}.advice-toast.visible{opacity:1;transform:translate(-50%,0)}

@media (max-width: 1200px) {
  .tv-grid { grid-template-columns: .9fr 1.4fr .78fr; }
  .summary-grid { grid-template-columns: 1fr; }
  .summary-card { display: flex; align-items: center; gap: 10px; }
  .summary-value { margin: 0; }
  .summary-label { margin: 0 0 0 auto; }
}
.overview-body{margin:0;overflow:hidden;background:#021426;color:#eef9ff;font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif}.overview-screen{position:relative;width:100vw;height:100vh;overflow:hidden;background:#021426}.overview-reference{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}.overview-user{position:absolute;z-index:2;right:2.2%;top:3.2%;width:20.2%;height:5%;display:flex;align-items:center;justify-content:flex-end;gap:.65vw;padding:0 .7vw;background:linear-gradient(90deg,rgba(2,20,38,0),#021426 24%);color:#d2deea;font-size:1.24vw}.overview-user span{width:1.75vw;height:1.75vw;display:grid;place-items:center;border:1px solid #8499ac;border-radius:50%;font-size:.9vw}.overview-user b{font-weight:500}.overview-user i{font-style:normal;color:#a8b8c6}.overview-heading{position:absolute;z-index:2;left:39.4%;top:4.6%;width:28%;height:15.2%;text-align:center;background:radial-gradient(ellipse at center,#07253d 0,#021426 68%)}.overview-heading h1{margin:.2vw 0 .75vw;font-size:3.16vw;line-height:1.12;letter-spacing:.24vw;text-shadow:0 .18vw .35vw rgba(0,0,0,.55)}.overview-heading p{margin:0;color:#e6edf5;font-size:1.48vw;font-weight:700;letter-spacing:.05vw}.overview-heading p em{color:#ffb641;font-style:normal}.overview-guide{position:absolute;z-index:3;left:3.55%;top:16.5%;box-sizing:border-box;width:18.55%;height:14.25%;padding:1.4vw 1.8vw 1vw;border:1px solid #2aa9b6;border-radius:1vw;background:linear-gradient(135deg,rgba(5,60,78,.98),rgba(7,79,90,.97));box-shadow:inset 0 0 1.3vw rgba(25,206,204,.08)}.overview-guide:after{content:"";position:absolute;z-index:0;right:2.75vw;bottom:-1.38vw;width:1.75vw;height:1.4vw;background:#2aa9b6;clip-path:polygon(0 0,100% 0,50% 100%)}.overview-guide:before{content:"";position:absolute;z-index:1;right:2.82vw;bottom:-1.21vw;width:1.61vw;height:1.3vw;background:#07505b;clip-path:polygon(0 0,100% 0,50% 100%)}.overview-guide p{position:relative;z-index:1;margin:0;color:#dbe9f0;font-size:1.06vw;line-height:1.62}.overview-report-card{position:absolute;z-index:3;left:24.7%;top:21.8%;box-sizing:border-box;width:45.1%;height:58.2%;padding:1.25vw 1.55vw 1vw;border:1px solid rgba(107,155,188,.54);border-radius:.9vw;background:linear-gradient(145deg,rgba(4,31,55,.99),rgba(5,43,72,.98));box-shadow:inset 0 1px rgba(255,255,255,.05)}.overview-report-card h2{height:6.5%;display:flex;align-items:center;gap:.8vw;margin:0 0 .75vw;color:#eaf7ff;font-size:1.5vw}.overview-report-card h2 span{color:#afddff}.overview-metrics{display:flex;flex-direction:column;height:86%;border:1px solid rgba(64,117,156,.5);border-radius:.72vw;overflow:hidden}.overview-metric{position:relative;box-sizing:border-box;min-height:25%;display:grid;grid-template-columns:3.7vw 9.9vw 5.7vw 2.2vw 1fr;grid-template-rows:1fr 1fr;align-items:center;padding:.5vw .9vw;border:0;border-bottom:1px solid rgba(66,107,140,.45);color:#f5fbff;background:rgba(3,31,54,.72);text-align:left;font-family:inherit;outline:none}.overview-metric:last-child{border-bottom:0}.overview-metric-icon{grid-row:1/3;box-sizing:border-box;width:2.75vw;height:2.75vw;display:grid;place-items:center;padding:0 .12vw;text-align:center;white-space:nowrap;line-height:1;border:1px solid #38cce1;border-radius:50%;color:#66dfec;background:rgba(2,76,91,.62);font-size:.76vw;font-weight:800;overflow:hidden}.overview-metric.high .overview-metric-icon,.overview-metric.low .overview-metric-icon,.overview-metric.critical .overview-metric-icon{border-color:#f2a63e;color:#f5b653;background:rgba(111,67,15,.45)}.overview-metric strong{grid-row:1/3;color:#f6fbff;font-size:1.25vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.overview-metric>b{align-self:end;color:#70da8c;font-size:1.72vw;line-height:1}.overview-metric.high>b,.overview-metric.low>b,.overview-metric.critical>b{color:#ff7258}.overview-metric em{align-self:end;color:#73da8f;font-style:normal;font-size:.9vw;font-weight:800}.overview-metric.high em,.overview-metric.low em,.overview-metric.critical em{color:#ff7258;font-size:1.65vw}.overview-range{position:relative;align-self:end;height:.62vw;margin:0 1.2vw 0 .1vw;border-radius:999px;background:linear-gradient(90deg,#5bce7e 0 31%,#efcc63 31% 62%,#f06455 62%)}.overview-range u{position:absolute;left:29%;top:-.12vw;width:1px;height:.86vw;background:#09243c}.overview-range i{position:absolute;left:61%;top:-.12vw;width:1px;height:.86vw;background:#09243c}.overview-range span{position:absolute;left:47%;top:-.32vw;width:.65vw;height:.65vw;border-radius:50%;background:#fff;box-shadow:0 0 .35vw #fff}.overview-metric.high .overview-range span,.overview-metric.critical .overview-range span{left:78%}.overview-metric.low .overview-range span{left:12%}.overview-metric small{grid-column:3/6;align-self:start;margin-top:.32vw;color:#9eb7ca;font-size:.7vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.overview-metric mark{position:absolute;right:.65vw;top:50%;transform:translateY(-50%);color:#42e8f3;background:none;font-size:1.9vw;opacity:0}.overview-metric.focused{z-index:2;border:2px solid #30e6f1;border-radius:.75vw;background:linear-gradient(90deg,rgba(3,83,104,.83),rgba(5,53,83,.96));box-shadow:0 0 .8vw #1ed9ed,inset 0 0 .8vw rgba(32,222,234,.22)}.overview-metric.focused mark{opacity:1}.overview-page-hint{height:1.3vw;margin-top:.25vw;color:#6f9db5;text-align:center;font-size:.65vw}.overview-summary{position:absolute;z-index:3;left:71.25%;top:21.95%;width:26.25%;height:58.2%;display:grid;grid-template-rows:1fr 1.08fr 1fr;gap:1.05vw;background:#03172a}.overview-summary-card{box-sizing:border-box;display:grid;grid-template-columns:3.4vw 1fr;align-items:start;gap:1vw;padding:1.45vw 1.5vw;border:1px solid rgba(78,151,181,.56);border-radius:.9vw;background:linear-gradient(135deg,rgba(5,59,79,.98),rgba(8,50,76,.98));box-shadow:inset 0 0 2vw rgba(26,164,169,.06)}.overview-summary-card:nth-child(2){background:linear-gradient(135deg,rgba(4,48,76,.99),rgba(5,39,66,.99))}.overview-summary-card:nth-child(3){background:linear-gradient(135deg,rgba(14,40,81,.99),rgba(5,39,66,.99))}.overview-summary-icon{width:2.7vw;height:2.7vw;display:grid;place-items:center;border:1px solid #5bcf91;border-radius:50%;color:#d9fff0;background:rgba(41,151,98,.52);font-size:1.3vw;box-shadow:0 0 1vw rgba(80,223,151,.28)}.overview-summary-card:nth-child(2) .overview-summary-icon{border-color:#5eb4e7;background:rgba(43,118,174,.5)}.overview-summary-card:nth-child(3) .overview-summary-icon{border-color:#9a83de;background:rgba(96,68,153,.45)}.overview-summary-card h3{margin:.1vw 0 .5vw;font-size:1.38vw}.overview-summary-card p{display:-webkit-box;margin:0;color:#dceaf2;font-size:.92vw;line-height:1.42;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.overview-actions{position:absolute;z-index:4;left:21.75%;bottom:4.55%;width:71.5%;height:10.5%;display:grid;grid-template-columns:1.05fr 1fr .91fr .91fr;gap:1.5vw;background:linear-gradient(180deg,rgba(2,20,38,0),#021426 18%)}.overview-actions button{display:flex;align-items:center;justify-content:center;gap:1vw;border:1px solid rgba(75,117,153,.75);border-radius:1.25vw;color:#d8e4ed;background:linear-gradient(145deg,#0a2849,#112c4e);font-family:inherit;outline:none}.overview-actions button span{font-size:1.65vw}.overview-actions button b{font-size:1.42vw}.overview-actions button.focused{border:2px solid #25e8f4;color:#fff;background:linear-gradient(145deg,#06445f,#092b4c);box-shadow:0 0 .9vw #17d9ec,inset 0 0 .85vw rgba(31,224,236,.24)}.overview-actions button:first-child span{color:#47e6ec}.overview-back{position:absolute;z-index:5;left:1.35%;top:9.3%;padding:.5vw .8vw;border:1px solid transparent;border-radius:999px;color:transparent;background:transparent;font-family:inherit;font-size:.75vw;outline:none}.overview-back.focused{border-color:#2de4ed;color:#dfffff;background:rgba(4,58,77,.94);box-shadow:0 0 .65vw rgba(40,224,234,.55)}.overview-toast{position:absolute;z-index:20;left:50%;bottom:16%;transform:translate(-50%,1vw);padding:.8vw 1.4vw;border:1px solid rgba(61,222,221,.65);border-radius:999px;color:#eaffff;background:rgba(2,36,55,.96);font-size:.9vw;opacity:0;pointer-events:none;transition:.2s}.overview-toast.visible{opacity:1;transform:translate(-50%,0)}.overview-toast.error{border-color:#f5a756;color:#ffe1c1}
.overview-metrics{background:#03213a}

/* The overview reference is a visual guide, not a second UI layer. Keep only
   its presenter artwork and render every title/card/action as live content. */
.overview-screen{
  background:
    radial-gradient(circle at 12% 58%,rgba(10,116,120,.34),transparent 27%),
    radial-gradient(circle at 78% 12%,rgba(11,63,103,.42),transparent 34%),
    linear-gradient(145deg,#031326 0%,#04243b 55%,#03182c 100%);
}
.overview-screen:before{
  content:"竹子智能体";
  position:absolute;z-index:4;left:2.9%;top:39%;padding:0;
  color:#dceaf2;font-size:1.25vw;font-weight:800;line-height:1.35;letter-spacing:.12em;writing-mode:vertical-rl;text-orientation:upright;
}
.overview-screen:after{
  content:"";
  position:absolute;z-index:4;left:2.72%;top:34.6%;width:2.2vw;height:2.8vw;
  display:none;
}
.overview-reference{
  clip-path:polygon(0 31%,24% 31%,24% 100%,0 100%);
}
.overview-loading{display:none;position:absolute;z-index:30;left:50%;top:50%;width:38vw;transform:translate(-50%,-50%);padding:3vw 3.5vw;border:1px solid rgba(89,219,224,.45);border-radius:1.5vw;background:linear-gradient(145deg,rgba(4,39,62,.97),rgba(3,26,48,.98));box-shadow:0 1.8vw 6vw rgba(0,0,0,.38),inset 0 0 2vw rgba(65,215,215,.07);text-align:center}.overview-loading-orbit{position:relative;width:6vw;height:6vw;margin:0 auto 1.4vw;border:1px solid rgba(91,224,218,.26);border-radius:50%;display:grid;place-items:center}.overview-loading-orbit:before,.overview-loading-orbit:after{content:"";position:absolute;border-radius:50%;border:2px solid transparent;border-top-color:#55e4d8;inset:.5vw;animation:overview-spin 2.2s linear infinite}.overview-loading-orbit:after{inset:1.15vw;border-top-color:#7da4ff;animation-direction:reverse;animation-duration:1.65s}.overview-loading-orbit b{font-size:1.7vw;color:#dffdf7}.overview-loading h2{margin:0;font-size:2vw}.overview-loading p{margin:.8vw 0 1.5vw;color:#acc7d5;font-size:.9vw}.overview-loading-steps{display:flex;justify-content:center;gap:.75vw}.overview-loading-steps span{padding:.42vw .7vw;border-radius:999px;color:#7896a8;background:rgba(255,255,255,.05);font-size:.68vw}.overview-loading-steps span.active{color:#062b3a;background:#62ded2}.overview-screen.is-loading .overview-loading{display:block}.overview-screen.is-loading>.overview-user,.overview-screen.is-loading>.overview-heading,.overview-screen.is-loading>.overview-guide,.overview-screen.is-loading>.overview-report-card,.overview-screen.is-loading>.overview-summary,.overview-screen.is-loading>.overview-actions,.overview-screen.is-loading>.overview-back{visibility:hidden}.overview-screen.is-loading .overview-reference{clip-path:none;opacity:.12;filter:blur(1px)}@keyframes overview-spin{to{transform:rotate(360deg)}}

/* Unified report journey and overview interaction */
.report-stage-nav{position:absolute;z-index:12;left:50%;top:1.4%;transform:translateX(-50%);display:flex;align-items:center;gap:.65vw;padding:.38vw .85vw;border:1px solid rgba(88,164,190,.32);border-radius:999px;background:rgba(2,26,45,.82);box-shadow:0 .35vw 1.2vw rgba(0,0,0,.18);font-size:.68vw;white-space:nowrap}.report-stage-nav span{color:#718fa1}.report-stage-nav span.active{color:#071f2d;background:linear-gradient(135deg,#78ead8,#55dbe8);padding:.28vw .65vw;border-radius:999px;font-weight:800}.report-stage-nav i{color:#446b7e;font-style:normal}.overview-guide p{display:-webkit-box;font-size:.92vw;line-height:1.48;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.overview-summary-card{width:100%;color:#eef9ff;text-align:left;font-family:inherit;outline:0;cursor:pointer}.overview-summary-card small{display:block;margin-top:.55vw;color:#6f9daf;font-size:.62vw}.overview-summary-card.focused,.overview-summary-card:focus{border:2px solid #29e6f0;background:linear-gradient(135deg,rgba(6,78,94,.99),rgba(7,48,78,.99));box-shadow:0 0 .9vw rgba(27,222,235,.72),inset 0 0 .9vw rgba(35,222,232,.15)}.overview-metric{cursor:default}.overview-metric mark{display:none}.overview-back{left:1.35%;top:2.2%;padding:.55vw .9vw;border:1px solid rgba(98,210,221,.58);color:#e8fbff;background:rgba(4,45,65,.9);font-size:.82vw;box-shadow:0 0 .55vw rgba(45,213,224,.16)}.overview-back.focused,.overview-back:focus{border-color:#fff;color:#fff;box-shadow:0 0 0 .14vw #14e7fb,0 0 .9vw rgba(28,229,247,.6)}.report-back{z-index:13!important;left:1.7%!important;top:2.2%!important;border-color:rgba(98,210,221,.58)!important;color:#e8fbff!important;background:rgba(4,45,65,.9)!important;opacity:1!important;box-shadow:0 0 .55vw rgba(45,213,224,.16)}.report-back:focus{outline:0!important;border-color:#fff!important;box-shadow:0 0 0 .14vw #14e7fb,0 0 .9vw rgba(28,229,247,.6)!important}.advice-screen>.report-stage-nav{top:1.2%}.advice-header{padding-top:.5vw}
.report-ask{position:absolute;z-index:13;left:1.7%;top:7.5%;padding:.55vw .9vw;border:1px solid rgba(98,210,221,.58);border-radius:999px;color:#e8fbff;background:rgba(4,45,65,.9);font-size:.82vw}.report-ask:focus{outline:0;border-color:#fff;box-shadow:0 0 0 .14vw #14e7fb,0 0 .9vw rgba(28,229,247,.6)}.advice-header-actions{display:flex;align-items:center;gap:.55vw}.advice-header-actions .advice-back,.advice-header-actions .advice-ask{white-space:nowrap;padding:.62vw .72vw}.advice-header-actions .advice-ask{background:rgba(4,45,65,.9)}
.video-back,.advice-back{position:absolute;z-index:13;left:1.7%;top:2.2%;width:auto;padding:.55vw .9vw;border:1px solid rgba(98,210,221,.58);border-radius:999px;color:#e8fbff;background:rgba(4,45,65,.9);font-size:.82vw;white-space:nowrap}.video-ask,.advice-ask{position:absolute;z-index:13;left:1.7%;top:7.5%;padding:.55vw .9vw;border:1px solid rgba(98,210,221,.58);border-radius:999px;color:#e8fbff;background:rgba(4,45,65,.9);font-size:.82vw;white-space:nowrap}.video-back:focus,.video-ask:focus,.advice-back:focus,.advice-ask:focus{outline:0;border-color:#fff;box-shadow:0 0 0 .14vw #14e7fb,0 0 .9vw rgba(28,229,247,.6)}
.video-center-play.playing,.video-center-play.playing:focus,.video-player-shell:hover .video-center-play.playing{opacity:0;pointer-events:none}

/* Mobile navigation drawer */
.chat-menu{width:42px;height:42px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;border:0;background:none}.chat-menu span{width:20px;height:2px;border-radius:2px;background:#506871}.chat-header-end{width:42px;height:42px}
.mobile-mine-panel{background:transparent}.mobile-mine-backdrop{position:absolute;inset:0;border:0;background:rgba(22,40,47,.32);backdrop-filter:blur(2px)}.mobile-mine-drawer{position:absolute;inset:0 auto 0 0;width:min(342px,86%);height:100%;overflow:hidden;background:linear-gradient(180deg,#eef8f6 0,#f6f9f9 190px,#f4f6f7 100%);box-shadow:14px 0 34px rgba(22,48,57,.16)}.mobile-mine-header{grid-template-columns:1fr 44px;padding-left:18px}.mobile-mine-header strong{text-align:left;font-size:18px}.mobile-mine-close{font-size:25px;font-weight:300}.mobile-mine-icon.chat-new{color:#258f7e;background:#e3f5ef}.mobile-mine-icon.history{color:#486d9f;background:#e8eef8}
/* Report metrics keep playback and remote-control focus as two visible states. */
.metric-tab.active{z-index:2;border:1px solid rgba(69,231,255,.58);filter:brightness(1.05);box-shadow:0 0 0 .08vw rgba(55,229,255,.38),0 0 .55vw rgba(25,220,255,.28),inset 0 0 .65vw rgba(27,230,255,.07)}
.metric-tab.confirmed{position:relative;z-index:3;border:2px solid rgba(255,255,255,.96);filter:brightness(1.12);background:rgba(69,231,255,.035);box-shadow:0 0 0 .14vw rgba(55,229,255,.9),0 0 .72vw .2vw rgba(25,220,255,.72),inset 0 0 .72vw rgba(27,230,255,.12)}
.metric-tab.playing::after{content:'正在讲解';position:absolute;right:1.2%;top:8%;padding:.18vw .48vw;border-radius:999px;color:#062e3c;background:#62e8f4;font-size:.58vw;font-weight:900;letter-spacing:.04vw}
.metric-tab.confirmed.active{border-color:rgba(255,255,255,.96);box-shadow:0 0 0 .14vw rgba(55,229,255,.9),0 0 .72vw .2vw rgba(25,220,255,.72),inset 0 0 .72vw rgba(27,230,255,.12)}
.overview-summary-card.focused,.overview-summary-card:focus,.overview-actions button.focused,.advice-focus:focus{border-color:rgba(69,231,255,.58)!important;filter:brightness(1.05);box-shadow:0 0 0 .08vw rgba(55,229,255,.38),0 0 .55vw rgba(25,220,255,.28),inset 0 0 .65vw rgba(27,230,255,.07)!important}
.overview-actions{width:76%!important;grid-template-columns:repeat(6,1fr)!important;gap:.65vw!important}.overview-actions button b{font-size:1.02vw!important}
.overview-summary-card.confirmed,.overview-actions button.confirmed,.advice-focus.confirmed{position:relative;z-index:3;border:2px solid rgba(255,255,255,.96)!important;filter:brightness(1.12);box-shadow:0 0 0 .14vw rgba(55,229,255,.9),0 0 .72vw .2vw rgba(25,220,255,.72),inset 0 0 .72vw rgba(27,230,255,.12)!important}
.mobile-profile-form{padding:4px 15px 15px}.mobile-profile-form label{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid #edf1f2}.mobile-profile-form label>span{font-size:14px;font-weight:650}.mobile-profile-form label small{display:block;margin-top:4px;color:#89999d;font-size:10px;font-weight:400}.mobile-profile-form input,.mobile-profile-form select{width:145px;min-height:40px;box-sizing:border-box;padding:8px 10px;border:1px solid #dce7e8;border-radius:11px;color:#29434b;background:#f8fbfb;font:inherit;font-size:16px;text-align:right}.mobile-profile-form select{text-align-last:right}.mobile-profile-save{width:100%;height:44px;margin-top:14px;border:0;border-radius:13px;color:#fff;background:linear-gradient(135deg,#2f9e8a,#2384a5);font-size:14px;font-weight:700}.mobile-profile-save:disabled{opacity:.55}.mobile-profile-feedback{min-height:18px;margin:9px 2px 0;color:#3d8177;font-size:11px;text-align:center}

/* Photo attachment composer */
.pending-photo-composer{position:fixed;z-index:41;left:50%;bottom:74px;width:min(390px,calc(100% - 40px));transform:translateX(-50%);box-sizing:border-box;display:grid;grid-template-columns:58px 1fr 32px;align-items:center;gap:10px;padding:9px 10px;border:1px solid rgba(53,145,137,.18);border-radius:16px;background:rgba(255,255,255,.98);box-shadow:0 10px 28px rgba(45,76,89,.16)}
.pending-photo-composer[hidden]{display:none}.pending-photo-thumb{position:relative;width:58px;height:58px;overflow:hidden;border-radius:11px;background:#eaf2f2}.pending-photo-thumb img{width:100%;height:100%;object-fit:cover}.pending-photo-thumb span{position:absolute;inset:auto 0 0;padding:3px 4px;color:#fff;background:rgba(24,55,63,.68);font-size:9px;text-align:center}.pending-photo-copy{display:grid;gap:3px;min-width:0}.pending-photo-copy strong{color:#29464e;font-size:14px}.pending-photo-copy small{color:#7c9298;font-size:11px}.pending-photo-remove{width:30px;height:30px;border:0;border-radius:50%;color:#6d8389;background:#eef3f3;font-size:20px}.health-photo-switch-action{width:100%;min-height:40px;margin-top:3px;border:1px solid rgba(46,156,142,.22);border-radius:12px;color:#227e72;background:#eaf8f4;font-weight:700}.health-photo-switch-action:disabled{opacity:.62}.pending-photo-composer:not([hidden])~.chat-input-area{border-color:rgba(47,160,146,.28)}
.chat-message-source {
  display: block;
  margin: 0 0 4px 4px;
  color: #7f8f92;
  font-size: 11px;
  line-height: 1.2;
}
/* Keep member switching visually compact and make the active identity explicit. */
.mobile-account-card{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:13px;padding:15px 16px;border-color:rgba(49,145,130,.16)}
.mobile-account-avatar{width:54px;height:54px;display:grid;place-items:center;border-radius:17px;color:#176f68;background:linear-gradient(145deg,#bcebdc,#badfea);font-size:21px;font-weight:800;box-shadow:inset 0 0 0 1px rgba(255,255,255,.42)}
.mobile-account-card>div{min-width:0}.mobile-account-card .mobile-account-eyebrow{margin:0;color:#359184;font-size:10px;font-weight:750;letter-spacing:.08em}.mobile-account-card [data-current-member-name]{margin-top:2px}.mobile-account-card [data-current-account-label]{margin-top:3px;font-size:11px;white-space:nowrap}.mobile-account-status{align-self:start;padding:5px 8px;border-radius:999px;color:#258b7a;background:rgba(255,255,255,.72);font-size:10px;font-weight:700}
.mobile-pin-overlay{place-items:center;padding:20px;background:rgba(15,35,45,.42)}
.mobile-pin-dialog{width:min(330px,100%);padding:20px;border:1px solid rgba(255,255,255,.65);border-radius:22px;background:rgba(255,255,255,.98)}
.mobile-pin-lock{width:40px;height:40px;border-radius:13px;font-size:19px}.mobile-pin-dialog>small{margin-top:12px;font-size:10px}.mobile-pin-dialog h2{margin:4px 0 6px;font-size:20px}.mobile-pin-dialog p{font-size:12px;line-height:1.55}.mobile-pin-dialog label{gap:6px;margin-top:14px;font-size:11px}.mobile-pin-dialog input{width:180px;height:45px;padding:0 12px;border-radius:13px;font-size:18px;letter-spacing:.3em}.mobile-pin-feedback{min-height:17px;margin-top:5px;font-size:11px}.mobile-pin-dialog footer{gap:9px;margin-top:5px}.mobile-pin-dialog button{height:42px;border-radius:12px;font-size:13px}
.mobile-video-action-row{align-items:flex-start}.mobile-video-action-spacer{visibility:hidden}.mobile-video-action-card{width:min(330px,calc(100vw - 76px));display:grid;grid-template-columns:112px minmax(0,1fr);gap:10px;overflow:hidden;padding:9px;border:1px solid rgba(63,151,159,.18);border-radius:16px;background:#fff;box-shadow:0 7px 20px rgba(38,76,85,.09)}.mobile-video-action-card>img,.mobile-video-action-card>.mobile-chat-video{width:112px;aspect-ratio:16/9;align-self:center;object-fit:cover;border-radius:10px;background:#071d22}.mobile-video-action-card>img{cursor:pointer}.mobile-video-action-card>div{min-width:0;display:flex;flex-direction:column;justify-content:center}.mobile-video-action-card small{color:#2d9184;font-size:10px}.mobile-video-action-card strong{display:-webkit-box;margin-top:3px;color:#29464e;font-size:13px;line-height:1.35;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.mobile-video-action-card p{margin:4px 0;color:#82959a;font-size:10px}.mobile-video-action-card .mobile-video-screen-hint{margin:2px 0 4px;color:#287f79;font-size:10px;line-height:1.4}.mobile-video-action-card button{min-height:34px;margin-top:4px;border:0;border-radius:10px;color:#fff;background:linear-gradient(135deg,#2f9e8a,#2384a5);font-size:12px;font-weight:750}
.mobile-hospital-action-row{align-items:flex-start}.mobile-hospital-action-spacer{visibility:hidden}.mobile-hospital-list{width:min(82%,420px);display:flex;flex-direction:column;gap:12px}.mobile-hospital-card{display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;padding:14px;border:1px solid #dfe9e7;border-radius:16px;background:#fff;box-shadow:0 6px 20px rgba(27,85,80,.08)}.mobile-hospital-logo{box-sizing:border-box;width:48px;height:48px;display:grid;place-items:center;object-fit:contain;border:1px solid #e5eeee;border-radius:12px;color:#087e75;background:#effaf8;font-size:20px;font-weight:800}.mobile-hospital-card>div{min-width:0}.mobile-hospital-card strong{display:block;color:#163c3a;font-size:16px;line-height:1.35}.mobile-hospital-card small{display:block;margin-top:4px;color:#6f8886;font-size:12px}.mobile-hospital-card b{display:block;margin-top:9px;color:#087e75;font-size:13px}.mobile-hospital-card p{margin:6px 0 0;color:#496663;font-size:13px;line-height:1.55}.mobile-hospital-card em{display:block;margin-top:6px;color:#839895;font-size:12px;font-style:normal}.mobile-hospital-card button{width:100%;margin-top:11px;padding:10px 12px;border:0;border-radius:10px;color:#fff;background:#0b9487;font-size:14px;font-weight:700}.mobile-hospital-card button:disabled{opacity:.45}
