:root{color:#1f2933;background:#eef3f7;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select{font:inherit}button{cursor:pointer}.app-shell{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:28px 0 40px}.intro{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;min-height:210px;padding:30px;border-radius:8px;color:#fff;background:linear-gradient(110deg,#101820e0,#10182070),url(https://images.unsplash.com/photo-1554224155-6726b3ff858f?auto=format&fit=crop&w=1600&q=80) center/cover}.eyebrow{margin:0 0 8px;font-size:.78rem;font-weight:700;letter-spacing:0;color:#b7f7df}h1,h2,p{margin-top:0}h1{margin-bottom:10px;font-size:clamp(2.2rem,8vw,5rem);line-height:.95;letter-spacing:0}h2{margin-bottom:0;font-size:1.05rem}.intro-copy{max-width:520px;margin-bottom:0;color:#dbeafe}.actions,.tabs,.segmented,.filter-group,.record-side{display:flex;align-items:center;gap:8px}.ghost-button,.primary-button,.tabs button,.segmented button,.filter-group button,.icon-button{border:0;border-radius:8px}.ghost-button{min-width:64px;min-height:40px;padding:0 16px;color:#fff;background:#ffffff2e;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.tabs{width:fit-content;margin:18px 0;padding:4px;border:1px solid #d8e2ea;border-radius:8px;background:#fff}.tabs button,.segmented button,.filter-group button{min-height:36px;padding:0 18px;color:#52616f;background:transparent}.tabs button.active,.segmented button.active,.filter-group button.active{color:#fff;background:#16636b}.workspace{display:grid;grid-template-columns:minmax(280px,360px) 1fr;gap:18px;align-items:start}.panel,.metric,.bmi-visual{border:1px solid #d8e2ea;border-radius:8px;background:#fff;box-shadow:0 14px 32px #1f293314}.panel{padding:20px}.form-panel{position:sticky;top:18px}.panel-heading{display:flex;align-items:center;gap:10px;margin-bottom:16px}.panel-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:8px;color:#063a40;font-weight:800;background:#c7f0dc}.record-form{display:grid;gap:14px;margin-top:16px}label{display:grid;gap:7px;color:#52616f;font-size:.9rem;font-weight:700}input,select{width:100%;min-height:44px;border:1px solid #c9d6df;border-radius:8px;padding:0 12px;color:#1f2933;background:#f9fbfc}input:focus,select:focus{border-color:#16636b;outline:3px solid rgba(22,99,107,.14)}.primary-button{min-height:46px;color:#fff;font-weight:800;background:#16636b}.content-stack{display:grid;gap:18px}.summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.metric{display:grid;gap:8px;min-height:104px;padding:18px}.metric span,.bmi-visual span,.bmi-visual small{color:#607080;font-size:.88rem;font-weight:700}.metric strong{font-size:clamp(1.2rem,2vw,1.7rem);letter-spacing:0}.metric.balance{background:#fff8e8}.list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.record-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}.record-list li{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:70px;padding:12px;border:1px solid #e4ebf0;border-radius:8px;background:#fbfcfd}.record-main{display:flex;align-items:center;gap:12px;min-width:0}.record-main div{min-width:0}.record-main strong,.record-main small{display:block;overflow-wrap:anywhere}.record-main small{margin-top:4px;color:#6b7b88}.type-dot{flex:0 0 auto;width:12px;height:34px;border-radius:999px;background:#d94848}.type-dot.income{background:#0f8f64}.type-dot.bmi{background:#2e7acb}.expense{color:#c0392b;font-weight:800}.income{color:#0a7b55;font-weight:800}.icon-button{flex:0 0 auto;width:34px;height:34px;color:#6b7b88;font-size:1.35rem;line-height:1;background:#edf2f5}.empty-state{margin:0;padding:28px 0;color:#6b7b88;text-align:center}.bmi-visual{display:grid;grid-template-columns:170px 1fr;gap:26px;align-items:center;min-height:184px;padding:22px}.bmi-current strong{display:block;margin:4px 0;font-size:3.4rem;line-height:1}.bmi-status{display:inline-flex;min-height:26px;align-items:center;padding:0 10px;border-radius:999px;background:#edf2f5}.bmi-status.偏瘦{color:#176987;background:#d8f0fa}.bmi-status.正常{color:#14633f;background:#dff4e8}.bmi-status.超重{color:#7b560d;background:#fff0c7}.bmi-status.肥胖{color:#922b2b;background:#ffe0e0}.bmi-range-card{min-width:0;padding-top:32px}.bmi-scale{position:relative;display:flex;height:26px;border-radius:999px;background:#edf2f5;box-shadow:inset 0 0 0 1px #1f293314}.bmi-scale>span:first-child{border-radius:999px 0 0 999px}.bmi-scale>span:nth-last-child(2){border-radius:0 999px 999px 0}.bmi-scale .underweight,.bmi-range-labels .underweight b{background:#7cc7e8}.bmi-scale .normal,.bmi-range-labels .normal b{background:#57b985}.bmi-scale .overweight,.bmi-range-labels .overweight b{background:#f2c14e}.bmi-scale .obese,.bmi-range-labels .obese b{background:#d95454}.bmi-pointer{position:absolute;bottom:calc(100% + 9px);width:2px;height:42px;border-radius:999px;background:#17212b;transform:translate(-50%)}.bmi-pointer:after{position:absolute;bottom:-6px;left:50%;width:12px;height:12px;border:3px solid #ffffff;border-radius:50%;background:#17212b;box-shadow:0 3px 10px #1f293338;content:"";transform:translate(-50%)}.bmi-pointer b{position:absolute;bottom:30px;left:50%;min-width:48px;padding:3px 8px;border-radius:999px;color:#fff;font-size:.78rem;font-style:normal;text-align:center;background:#17212b;transform:translate(-50%)}.bmi-range-labels{display:flex;gap:0;margin-top:12px}.bmi-range-labels span{display:grid;min-width:0;gap:5px;color:#607080;font-size:.76rem;font-weight:700}.bmi-range-labels b{display:inline-flex;width:fit-content;min-width:34px;min-height:20px;align-items:center;justify-content:center;border-radius:999px;color:#fff;font-size:.72rem}.bmi-range-labels small{color:#607080;font-size:.72rem;font-weight:700;overflow-wrap:anywhere}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}@media(max-width:820px){.app-shell{width:min(100% - 20px,680px);padding-top:10px}.intro,.workspace,.summary-grid,.bmi-visual{grid-template-columns:1fr}.intro{display:grid;align-items:end;min-height:260px;padding:22px}.actions{width:100%}.ghost-button{flex:1}.form-panel{position:static}.list-toolbar{align-items:stretch;flex-direction:column}.filter-group{display:grid;grid-template-columns:repeat(3,1fr)}.record-list li{align-items:flex-start}}
