.health-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}.health-card{position:relative}.health-icon{width:38px;height:38px;border-radius:12px;background:#edf4ff;color:#3970b2;display:grid;place-items:center;font-size:22px;margin-bottom:14px}.health-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}.health-item{background:#fff;border:1px solid #e6eaf0;border-radius:12px;overflow:hidden;box-shadow:0 3px 12px #20293808}.health-item img{display:block;width:100%;aspect-ratio:1280/2774;object-fit:cover;background:#f7f8fa}.health-item div{padding:10px 12px}.health-item strong,.health-item span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.health-item strong{font-size:12px}.health-item span{font-size:11px;color:#8491a3;margin-top:4px}
.metric-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:0 0 16px}.metric-strip>div{background:#fff;border:1px solid #e6eaf0;border-radius:10px;padding:14px 16px}.metric-strip span,.metric-strip strong{display:block}.metric-strip span{font-size:12px;color:#8491a3}.metric-strip strong{font-size:18px;margin-top:5px;color:#253044}.table-tools{display:flex;gap:10px;margin:12px 0}.table-tools input,.table-tools select{border:1px solid #dbe2ea;border-radius:7px;padding:9px 11px;background:#fff}.table-tools input{min-width:280px}.table-tools button{border:0;border-radius:7px;padding:9px 12px;background:#eaf0f8;color:#315a85;cursor:pointer}.health-data-table table{min-width:900px}.health-data-table td{vertical-align:middle}.health-data-table tr[hidden]{display:none}.tag{display:inline-block;padding:4px 8px;border-radius:999px;background:#edf4ff;color:#3970b2;font-size:11px}.health-data-table a{color:#3970b2;text-decoration:none}.health-data-table a:hover{text-decoration:underline}@media(max-width:800px){.metric-strip{grid-template-columns:repeat(2,1fr)}.table-tools{flex-wrap:wrap}.table-tools input{min-width:220px}}
.sleep-table table{min-width:1260px}.sleep-table em{font-style:normal;color:#8491a3;font-size:11px;margin-left:3px}.score{color:#3970b2;font-size:16px}.sleep-chart{background:#fff;border:1px solid #e6eaf0;border-radius:12px;padding:16px 20px;margin-bottom:14px}.sleep-chart h3{font-size:14px;margin:0 0 12px}.bar-chart{height:150px;display:flex;align-items:flex-end;gap:8px;overflow-x:auto;border-bottom:1px solid #e6eaf0;padding:0 4px}.bar-col{height:135px;min-width:26px;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:4px}.bar-col span{font-size:10px;color:#55708f}.bar-col i{display:block;width:18px;background:linear-gradient(#71a8e6,#3970b2);border-radius:5px 5px 0 0}.bar-col small{font-size:9px;color:#99a5b4;white-space:nowrap}
.ocr-summary{max-width:420px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#718096}.ocr-summary a{margin-left:8px}
.structure-chart{display:grid;gap:6px}.structure-row{display:grid;grid-template-columns:42px 1fr;align-items:center;gap:8px}.structure-row small{font-size:10px;color:#8491a3}.structure-bar{height:13px;border-radius:7px;overflow:hidden;background:#f1f4f7;display:flex}.structure-bar i{height:100%;display:block}.structure-bar .deep{background:#315a9a}.structure-bar .light{background:#6da8df}.structure-bar .rem{background:#8b78cc}.legend{display:flex;gap:16px;margin-top:12px;font-size:11px;color:#718096}.legend span:before{content:'';display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px}.deep-dot:before{background:#315a9a}.light-dot:before{background:#6da8df}.rem-dot:before{background:#8b78cc}
.app-icon-v2.cyan{background:#1ea9c8}

/* 健康数据页：与门户新版框架保持一致，信息密度清晰、表格不溢出 */
.health-page-v2{max-width:1500px;margin:0 auto;color:#253044}
.health-page-v2 .hero{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:18px 22px;margin:0 0 14px;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;box-shadow:0 2px 8px #23354b08}
.health-page-v2 .hero h1{font-size:25px;line-height:1.25;margin:4px 0 6px;color:#1f3046}
.health-page-v2 .hero p{margin:0;color:#718096;font-size:12px;line-height:1.6}
.health-page-v2 .eyebrow{font-size:10px;letter-spacing:1.2px;color:#159c9d;font-weight:700}
.health-page-v2 .grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.health-page-v2 .card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:17px 18px;box-shadow:0 2px 8px #23354b08}
.health-page-v2 .card h3{margin:0 0 8px;font-size:15px;color:#20324a}
.health-page-v2 .card p{font-size:12px;color:#748197;line-height:1.55}
.health-page-v2 button,.health-page-v2 .toolbar{border:0;border-radius:6px;background:#edf4fb;color:#2d679c;padding:8px 12px;font-size:12px;cursor:pointer}
.health-page-v2 button:hover{background:#e0eefb}
.health-page-v2 .metric-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 14px}
.health-page-v2 .metric-strip>div{border:1px solid #e2e8f0;border-radius:10px;padding:13px 15px;box-shadow:0 2px 8px #23354b08}
.health-page-v2 .metric-strip span{font-size:11px;color:#8491a3}
.health-page-v2 .metric-strip strong{font-size:18px;color:#20324a;margin-top:6px}
.health-page-v2 .sleep-chart,.health-page-v2 .table{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 2px 8px #23354b08}
.health-page-v2 .sleep-chart{padding:15px 18px;margin-bottom:14px}
.health-page-v2 .sleep-chart h3{font-size:14px;color:#2a3b52;margin:0 0 12px}
.health-page-v2 .table-tools{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:12px 0}
.health-page-v2 .table-tools input,.health-page-v2 .table-tools select{height:34px;border:1px solid #d8e1eb;border-radius:6px;background:#fff;padding:0 10px;color:#44566d;font-size:12px}
.health-page-v2 .table-tools input{min-width:260px;flex:1}
.health-page-v2 .table-tools button{height:34px}
.health-page-v2 .table{overflow:auto}
.health-page-v2 .health-data-table table{min-width:920px;width:100%;border-collapse:collapse}
.health-page-v2 .health-data-table th{background:#f6f8fb;color:#68788d;font-size:11px;font-weight:600;white-space:nowrap}
.health-page-v2 .health-data-table td,.health-page-v2 .health-data-table th{padding:10px 11px;border-bottom:1px solid #edf1f5;text-align:left;font-size:12px;white-space:nowrap}
.health-page-v2 .health-data-table tbody tr:hover{background:#f8fbfe}
.health-page-v2 .sleep-table table{min-width:1260px}
@media(max-width:900px){.health-page-v2 .hero{display:block}.health-page-v2 .hero .toolbar{margin-top:12px}.health-page-v2 .metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}
