feat(首页工具卡): 图标改扁平化,卡底色跟随各工具页色系 (v26093019)

- 五个图标(小脚丫 / 体重秤 / 台历 / 秤盘小豆宝宝 / 秒表)重画为扁平 SVG:白色 + 同色系实色块,
  去掉渐变、阴影、高光和 3D 大眼睛;去掉插画的 drop-shadow。
- 卡底色改成点进去的工具页同色系、稍深一档:数胎动陶土橙、孕期体重珊瑚粉、孕检日历草绿、
  胎儿估重雾蓝、数宫缩薰衣草紫(取自各页 theme-color / 主色,见 CSS 注释)。
- 「记录」按钮字色跟数胎动卡改成陶土橙。版式、跳转、数据回填不变。

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-09-30 16:33:42 +00:00
parent 4a7eb92864
commit 37bdfa6f24
13 changed files with 23 additions and 38 deletions

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 120 120"><g transform="rotate(-12 60 66)"><circle cx="38" cy="30" r="10" fill="#FFFFFF"/><circle cx="53" cy="21" r="7.6" fill="#FFFFFF"/><circle cx="66" cy="19" r="6.8" fill="#FFFFFF"/><circle cx="78" cy="23" r="6" fill="#FFFFFF"/><circle cx="88" cy="31" r="5.4" fill="#FFFFFF"/><path d="M30 52C28 38 60 34 80 38C95 41 97 55 91 67C85 79 79 93 73 103C67 114 50 116 43 105C37 95 39 83 35 73C31 65 29 60 28 52Z" fill="#FFFFFF"/></g><path d="M101 14l2.4 5.6 5.6 2.4-5.6 2.4-2.4 5.6-2.4-5.6-5.6-2.4 5.6-2.4Z" fill="#FFFFFF" opacity=".85"/></svg>

After

Width:  |  Height:  |  Size: 593 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 120 120"><rect x="18" y="26" width="84" height="82" rx="18" fill="#FFFFFF"/><path d="M18 50V44a18 18 0 0 1 18-18h48a18 18 0 0 1 18 18v6Z" fill="#4F7A2E"/><rect x="37.5" y="16" width="9" height="20" rx="4.5" fill="#DCEBC9"/><rect x="73.5" y="16" width="9" height="20" rx="4.5" fill="#DCEBC9"/><rect x="30" y="60" width="8" height="8" rx="2.5" fill="#DCEBC9"/><rect x="47" y="60" width="8" height="8" rx="2.5" fill="#DCEBC9"/><rect x="64" y="60" width="8" height="8" rx="2.5" fill="#DCEBC9"/><rect x="81" y="60" width="8" height="8" rx="2.5" fill="#DCEBC9"/><rect x="30" y="74" width="8" height="8" rx="2.5" fill="#DCEBC9"/><rect x="47" y="74" width="8" height="8" rx="2.5" fill="#DCEBC9"/><circle cx="68" cy="78" r="8.5" fill="#4F7A2E"/><path d="M64 78l3 3 5-6" stroke="#FFFFFF" stroke-width="2.6" fill="none" stroke-linecap="round" stroke-linejoin="round"/><rect x="81" y="74" width="8" height="8" rx="2.5" fill="#DCEBC9"/><rect x="30" y="88" width="8" height="8" rx="2.5" fill="#DCEBC9"/><rect x="47" y="88" width="8" height="8" rx="2.5" fill="#DCEBC9"/><rect x="64" y="88" width="8" height="8" rx="2.5" fill="#DCEBC9"/><rect x="81" y="88" width="8" height="8" rx="2.5" fill="#DCEBC9"/></svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -1,4 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 120 120"><defs><radialGradient id="ew" cx=".4" cy=".3" r=".8"><stop offset="0" stop-color="#fff"/><stop offset=".72" stop-color="#F3F3F7"/><stop offset="1" stop-color="#BFC1CF"/></radialGradient>
<radialGradient id="ep" cx=".35" cy=".3" r=".85"><stop offset="0" stop-color="#40404A"/><stop offset=".6" stop-color="#15151B"/><stop offset="1" stop-color="#000"/></radialGradient>
<filter id="es" x="-30%" y="-30%" width="160%" height="160%"><feDropShadow dx="0" dy="1.6" stdDeviation="1.4" flood-color="#000" flood-opacity=".28"/></filter>
<filter id="ds" x="-20%" y="-20%" width="140%" height="150%"><feDropShadow dx="0" dy="4" stdDeviation="3.5" flood-color="#2a1640" flood-opacity=".28"/></filter><radialGradient id="st" cx=".35" cy=".3" r=".8"><stop offset="0" stop-color="#FFF4B0"/><stop offset=".55" stop-color="#FFD43B"/><stop offset="1" stop-color="#F0A415"/></radialGradient><radialGradient id="ht" cx=".35" cy=".3" r=".8"><stop offset="0" stop-color="#FFC4D3"/><stop offset=".6" stop-color="#FF6F93"/><stop offset="1" stop-color="#E24673"/></radialGradient><radialGradient id="sw" cx=".38" cy=".3" r=".9"><stop offset="0" stop-color="#FFF6D6"/><stop offset=".55" stop-color="#FFD866"/><stop offset="1" stop-color="#EDA720"/></radialGradient><radialGradient id="face" cx=".5" cy=".4" r=".7"><stop offset="0" stop-color="#FFFFFF"/><stop offset="1" stop-color="#F3ECDD"/></radialGradient></defs><g filter="url(#ds)"><rect x="52" y="12" width="16" height="13" rx="4" fill="#F28B6B"/><rect x="48" y="7" width="24" height="8" rx="4" fill="#F7A488"/><rect x="84" y="24" width="11" height="9" rx="3" transform="rotate(40 89 28)" fill="#F28B6B"/><circle cx="60" cy="67" r="43" fill="url(#sw)"/></g><circle cx="60" cy="69" r="33" fill="url(#face)"/><line x1="60.0" y1="41.0" x2="60.0" y2="38.0" stroke="#E2C58A" stroke-width="2.2" stroke-linecap="round"/><line x1="74.0" y1="44.8" x2="75.5" y2="42.2" stroke="#E2C58A" stroke-width="2.2" stroke-linecap="round"/><line x1="84.2" y1="55.0" x2="86.8" y2="53.5" stroke="#E2C58A" stroke-width="2.2" stroke-linecap="round"/><line x1="88.0" y1="69.0" x2="91.0" y2="69.0" stroke="#E2C58A" stroke-width="2.2" stroke-linecap="round"/><line x1="84.2" y1="83.0" x2="86.8" y2="84.5" stroke="#E2C58A" stroke-width="2.2" stroke-linecap="round"/><line x1="74.0" y1="93.2" x2="75.5" y2="95.8" stroke="#E2C58A" stroke-width="2.2" stroke-linecap="round"/><line x1="60.0" y1="97.0" x2="60.0" y2="100.0" stroke="#E2C58A" stroke-width="2.2" stroke-linecap="round"/><line x1="46.0" y1="93.2" x2="44.5" y2="95.8" stroke="#E2C58A" stroke-width="2.2" stroke-linecap="round"/><line x1="35.8" y1="83.0" x2="33.2" y2="84.5" stroke="#E2C58A" stroke-width="2.2" stroke-linecap="round"/><line x1="32.0" y1="69.0" x2="29.0" y2="69.0" stroke="#E2C58A" stroke-width="2.2" stroke-linecap="round"/><line x1="35.8" y1="55.0" x2="33.2" y2="53.5" stroke="#E2C58A" stroke-width="2.2" stroke-linecap="round"/><line x1="46.0" y1="44.8" x2="44.5" y2="42.2" stroke="#E2C58A" stroke-width="2.2" stroke-linecap="round"/><path d="M60 58V42" stroke="#F26D5B" stroke-width="3.4" stroke-linecap="round"/><ellipse cx="34" cy="44" rx="9" ry="4.5" transform="rotate(-38 34 44)" fill="#fff" opacity="0.8"/><g filter="url(#es)"><circle cx="48" cy="70" r="10" fill="url(#ew)"/></g><circle cx="49.2" cy="71.4" r="6.6" fill="url(#ep)"/><circle cx="46.9" cy="68.9" r="2.0" fill="#fff"/><circle cx="51.5" cy="73.7" r="0.8" fill="#fff" opacity=".8"/><g filter="url(#es)"><circle cx="72" cy="70" r="10" fill="url(#ew)"/></g><circle cx="73.2" cy="71.4" r="6.6" fill="url(#ep)"/><circle cx="70.9" cy="68.9" r="2.0" fill="#fff"/><circle cx="75.5" cy="73.7" r="0.8" fill="#fff" opacity=".8"/><ellipse cx="38" cy="86" rx="5.5" ry="3.2" fill="#FF6F91" opacity=".4"/><ellipse cx="82" cy="86" rx="5.5" ry="3.2" fill="#FF6F91" opacity=".4"/><path d="M56 88q4 4.5 8 0" stroke="#B5563E" stroke-width="2.4" fill="none" stroke-linecap="round"/></svg>

Before

Width:  |  Height:  |  Size: 3.9 KiB

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 120 120"><rect x="16" y="36" width="88" height="72" rx="22" fill="#FFFFFF"/><path d="M34 64a26 26 0 0 1 52 0Z" fill="#FFD3CE"/><path d="M60 64L70 48" stroke="#D9575C" stroke-width="4.5" stroke-linecap="round"/><circle cx="60" cy="64" r="5" fill="#D9575C"/><rect x="40" y="78" width="40" height="16" rx="8" fill="#D9575C"/><rect x="47" y="84" width="10" height="4" rx="2" fill="#FFFFFF"/><rect x="63" y="84" width="10" height="4" rx="2" fill="#FFFFFF"/></svg>

After

Width:  |  Height:  |  Size: 511 B

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 120 120"><rect x="50" y="8" width="20" height="9" rx="4.5" fill="#FFFFFF"/><rect x="55" y="15" width="10" height="10" fill="#FFFFFF"/><rect x="85" y="24" width="12" height="9" rx="3" transform="rotate(40 91 28)" fill="#FFFFFF"/><circle cx="60" cy="68" r="43" fill="#FFFFFF"/><circle cx="60" cy="68" r="33" fill="#E3DAF7"/><path d="M60 68V46" stroke="#5B46A0" stroke-width="5" stroke-linecap="round"/><path d="M60 68A22 22 0 0 1 82 68" stroke="#5B46A0" stroke-width="0" fill="none"/><path d="M60 35A33 33 0 0 1 91.4 58.2L60 68Z" fill="#5B46A0" opacity=".25"/><circle cx="60" cy="68" r="5.5" fill="#5B46A0"/></svg>

After

Width:  |  Height:  |  Size: 665 B

View File

@@ -1,4 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 120 120"><defs><radialGradient id="ew" cx=".4" cy=".3" r=".8"><stop offset="0" stop-color="#fff"/><stop offset=".72" stop-color="#F3F3F7"/><stop offset="1" stop-color="#BFC1CF"/></radialGradient>
<radialGradient id="ep" cx=".35" cy=".3" r=".85"><stop offset="0" stop-color="#40404A"/><stop offset=".6" stop-color="#15151B"/><stop offset="1" stop-color="#000"/></radialGradient>
<filter id="es" x="-30%" y="-30%" width="160%" height="160%"><feDropShadow dx="0" dy="1.6" stdDeviation="1.4" flood-color="#000" flood-opacity=".28"/></filter>
<filter id="ds" x="-20%" y="-20%" width="140%" height="150%"><feDropShadow dx="0" dy="4" stdDeviation="3.5" flood-color="#2a1640" flood-opacity=".28"/></filter><radialGradient id="st" cx=".35" cy=".3" r=".8"><stop offset="0" stop-color="#FFF4B0"/><stop offset=".55" stop-color="#FFD43B"/><stop offset="1" stop-color="#F0A415"/></radialGradient><radialGradient id="ht" cx=".35" cy=".3" r=".8"><stop offset="0" stop-color="#FFC4D3"/><stop offset=".6" stop-color="#FF6F93"/><stop offset="1" stop-color="#E24673"/></radialGradient><linearGradient id="cp" x1="0" y1="0" x2="0" y2="1"><stop offset="0" stop-color="#FFFFFF"/><stop offset="1" stop-color="#E6F0DD"/></linearGradient><linearGradient id="ch" x1="0" y1="0" x2="0" y2="1"><stop offset="0" stop-color="#FF9E8C"/><stop offset="1" stop-color="#EE6450"/></linearGradient><linearGradient id="rg" x1="0" y1="0" x2="1" y2="0"><stop offset="0" stop-color="#9AA0B8"/><stop offset=".5" stop-color="#E9ECF5"/><stop offset="1" stop-color="#8A90A8"/></linearGradient></defs><g filter="url(#ds)"><rect x="20" y="34" width="80" height="78" rx="19" fill="#B7CFA6"/><rect x="20" y="30" width="80" height="78" rx="19" fill="url(#cp)"/><path d="M20 50V49a19 19 0 0 1 19-19h42a19 19 0 0 1 19 19v1Z" fill="url(#ch)"/></g><rect x="37.5" y="19" width="9" height="20" rx="4.5" fill="url(#rg)"/><rect x="73.5" y="19" width="9" height="20" rx="4.5" fill="url(#rg)"/><ellipse cx="33" cy="38" rx="7" ry="2.6" transform="rotate(-10 33 38)" fill="#fff" opacity="0.6"/><g filter="url(#es)"><circle cx="48" cy="74" r="10" fill="url(#ew)"/></g><circle cx="49.2" cy="75.4" r="6.6" fill="url(#ep)"/><circle cx="46.9" cy="72.9" r="2.0" fill="#fff"/><circle cx="51.5" cy="77.7" r="0.8" fill="#fff" opacity=".8"/><g filter="url(#es)"><circle cx="72" cy="74" r="10" fill="url(#ew)"/></g><circle cx="73.2" cy="75.4" r="6.6" fill="url(#ep)"/><circle cx="70.9" cy="72.9" r="2.0" fill="#fff"/><circle cx="75.5" cy="77.7" r="0.8" fill="#fff" opacity=".8"/><ellipse cx="35" cy="88" rx="5.5" ry="3.2" fill="#FF6F91" opacity=".4"/><ellipse cx="85" cy="88" rx="5.5" ry="3.2" fill="#FF6F91" opacity=".4"/><path d="M56 90q4 4.5 8 0" stroke="#6E8F55" stroke-width="2.4" fill="none" stroke-linecap="round"/><g transform="translate(98 20) scale(0.8)" filter="url(#ds)"><path d="M0 9C-11 1-13-6-8.5-9.5-5.5-12-2-10.5 0-7.5 2-10.5 5.5-12 8.5-9.5 13-6 11 1 0 9Z" fill="url(#ht)"/><ellipse cx="-5" cy="-5.5" rx="2.4" ry="1.4" transform="rotate(-30 -5 -5.5)" fill="#fff" opacity=".8"/></g></svg>

Before

Width:  |  Height:  |  Size: 3.0 KiB

View File

@@ -1,4 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 120 120"><defs><radialGradient id="ew" cx=".4" cy=".3" r=".8"><stop offset="0" stop-color="#fff"/><stop offset=".72" stop-color="#F3F3F7"/><stop offset="1" stop-color="#BFC1CF"/></radialGradient>
<radialGradient id="ep" cx=".35" cy=".3" r=".85"><stop offset="0" stop-color="#40404A"/><stop offset=".6" stop-color="#15151B"/><stop offset="1" stop-color="#000"/></radialGradient>
<filter id="es" x="-30%" y="-30%" width="160%" height="160%"><feDropShadow dx="0" dy="1.6" stdDeviation="1.4" flood-color="#000" flood-opacity=".28"/></filter>
<filter id="ds" x="-20%" y="-20%" width="140%" height="150%"><feDropShadow dx="0" dy="4" stdDeviation="3.5" flood-color="#2a1640" flood-opacity=".28"/></filter><radialGradient id="st" cx=".35" cy=".3" r=".8"><stop offset="0" stop-color="#FFF4B0"/><stop offset=".55" stop-color="#FFD43B"/><stop offset="1" stop-color="#F0A415"/></radialGradient><radialGradient id="ht" cx=".35" cy=".3" r=".8"><stop offset="0" stop-color="#FFC4D3"/><stop offset=".6" stop-color="#FF6F93"/><stop offset="1" stop-color="#E24673"/></radialGradient><linearGradient id="sc" x1="0" y1="0" x2="0" y2="1"><stop offset="0" stop-color="#FFFFFF"/><stop offset=".7" stop-color="#F1ECFA"/><stop offset="1" stop-color="#D5CBEE"/></linearGradient><linearGradient id="sd" x1="0" y1="0" x2="0" y2="1"><stop offset="0" stop-color="#FFB9C8"/><stop offset="1" stop-color="#F0708F"/></linearGradient></defs><g filter="url(#ds)"><rect x="16" y="42" width="88" height="68" rx="24" fill="#B9ABE0"/><rect x="16" y="38" width="88" height="68" rx="24" fill="url(#sc)"/></g><rect x="37" y="47" width="46" height="19" rx="9.5" fill="url(#sd)"/><path d="M60 62c-7-4.5-9-8-6-10.5 2-1.6 4.5-.6 6 1.6 1.5-2.2 4-3.2 6-1.6 3 2.5 1 6-6 10.5Z" fill="#fff"/><ellipse cx="30" cy="48" rx="8" ry="3.6" transform="rotate(-20 30 48)" fill="#fff" opacity="0.9"/><g filter="url(#es)"><circle cx="48" cy="84" r="10" fill="url(#ew)"/></g><circle cx="49.2" cy="85.4" r="6.6" fill="url(#ep)"/><circle cx="46.9" cy="82.9" r="2.0" fill="#fff"/><circle cx="51.5" cy="87.7" r="0.8" fill="#fff" opacity=".8"/><g filter="url(#es)"><circle cx="72" cy="84" r="10" fill="url(#ew)"/></g><circle cx="73.2" cy="85.4" r="6.6" fill="url(#ep)"/><circle cx="70.9" cy="82.9" r="2.0" fill="#fff"/><circle cx="75.5" cy="87.7" r="0.8" fill="#fff" opacity=".8"/><ellipse cx="35" cy="96" rx="5.5" ry="3.2" fill="#FF6F91" opacity=".4"/><ellipse cx="85" cy="96" rx="5.5" ry="3.2" fill="#FF6F91" opacity=".4"/><path d="M56 96q4 4.5 8 0" stroke="#8A6FB8" stroke-width="2.4" fill="none" stroke-linecap="round"/><g transform="translate(102 28) scale(0.75)" filter="url(#ds)"><path d="M0-13C1.8-5 5-1.8 13 0C5 1.8 1.8 5 0 13C-1.8 5-5 1.8-13 0C-5-1.8-1.8-5 0-13Z" fill="url(#st)"/><ellipse cx="-2.5" cy="-4" rx="1.6" ry="3" transform="rotate(35 -2.5 -4)" fill="#fff" opacity=".8"/></g></svg>

Before

Width:  |  Height:  |  Size: 2.8 KiB

View File

@@ -1,4 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 120 120"><defs><radialGradient id="ew" cx=".4" cy=".3" r=".8"><stop offset="0" stop-color="#fff"/><stop offset=".72" stop-color="#F3F3F7"/><stop offset="1" stop-color="#BFC1CF"/></radialGradient>
<radialGradient id="ep" cx=".35" cy=".3" r=".85"><stop offset="0" stop-color="#40404A"/><stop offset=".6" stop-color="#15151B"/><stop offset="1" stop-color="#000"/></radialGradient>
<filter id="es" x="-30%" y="-30%" width="160%" height="160%"><feDropShadow dx="0" dy="1.6" stdDeviation="1.4" flood-color="#000" flood-opacity=".28"/></filter>
<filter id="ds" x="-20%" y="-20%" width="140%" height="150%"><feDropShadow dx="0" dy="4" stdDeviation="3.5" flood-color="#2a1640" flood-opacity=".28"/></filter><radialGradient id="st" cx=".35" cy=".3" r=".8"><stop offset="0" stop-color="#FFF4B0"/><stop offset=".55" stop-color="#FFD43B"/><stop offset="1" stop-color="#F0A415"/></radialGradient><radialGradient id="ht" cx=".35" cy=".3" r=".8"><stop offset="0" stop-color="#FFC4D3"/><stop offset=".6" stop-color="#FF6F93"/><stop offset="1" stop-color="#E24673"/></radialGradient><radialGradient id="sk" cx=".38" cy=".3" r=".9"><stop offset="0" stop-color="#FFF1E6"/><stop offset=".55" stop-color="#FFCDB2"/><stop offset="1" stop-color="#E9967A"/></radialGradient></defs><g filter="url(#ds)"><g transform="rotate(-10 60 70)"><circle cx="36" cy="33" r="10.5" fill="url(#sk)"/><ellipse cx="32.64" cy="29.009999999999998" rx="3.5700000000000003" ry="2.1" transform="rotate(-30 32.64 29.009999999999998)" fill="#fff" opacity="0.8"/><circle cx="52" cy="24" r="8" fill="url(#sk)"/><ellipse cx="49.44" cy="20.96" rx="2.72" ry="1.6" transform="rotate(-30 49.44 20.96)" fill="#fff" opacity="0.8"/><circle cx="66" cy="22" r="7.2" fill="url(#sk)"/><ellipse cx="63.696" cy="19.264" rx="2.4480000000000004" ry="1.4400000000000002" transform="rotate(-30 63.696 19.264)" fill="#fff" opacity="0.8"/><circle cx="78" cy="26" r="6.4" fill="url(#sk)"/><ellipse cx="75.952" cy="23.567999999999998" rx="2.176" ry="1.2800000000000002" transform="rotate(-30 75.952 23.567999999999998)" fill="#fff" opacity="0.8"/><circle cx="88" cy="34" r="5.8" fill="url(#sk)"/><ellipse cx="86.144" cy="31.796" rx="1.972" ry="1.16" transform="rotate(-30 86.144 31.796)" fill="#fff" opacity="0.8"/><path d="M28 52C26 38 60 34 80 38C95 41 97 55 91 67C85 79 79 93 73 103C67 114 50 116 43 105C37 95 39 83 35 73C31 65 29 60 28 52Z" fill="url(#sk)"/><ellipse cx="41" cy="53" rx="10" ry="5.5" transform="rotate(-25 41 53)" fill="#fff" opacity="0.7"/><g filter="url(#es)"><circle cx="50" cy="64" r="10.5" fill="url(#ew)"/></g><circle cx="51.2" cy="65.4" r="6.9" fill="url(#ep)"/><circle cx="48.8" cy="62.8" r="2.1" fill="#fff"/><circle cx="53.6" cy="67.8" r="0.8" fill="#fff" opacity=".8"/><g filter="url(#es)"><circle cx="73" cy="64" r="10.5" fill="url(#ew)"/></g><circle cx="74.2" cy="65.4" r="6.9" fill="url(#ep)"/><circle cx="71.8" cy="62.8" r="2.1" fill="#fff"/><circle cx="76.6" cy="67.8" r="0.8" fill="#fff" opacity=".8"/><ellipse cx="42" cy="81" rx="5.5" ry="3.2" fill="#FF6F91" opacity=".4"/><ellipse cx="81" cy="81" rx="5.5" ry="3.2" fill="#FF6F91" opacity=".4"/><path d="M57 82q4 4.5 8 0" stroke="#B5563E" stroke-width="2.4" fill="none" stroke-linecap="round"/></g></g><g transform="translate(100 20) scale(0.85)" filter="url(#ds)"><path d="M0-13C1.8-5 5-1.8 13 0C5 1.8 1.8 5 0 13C-1.8 5-5 1.8-13 0C-5-1.8-1.8-5 0-13Z" fill="url(#st)"/><ellipse cx="-2.5" cy="-4" rx="1.6" ry="3" transform="rotate(35 -2.5 -4)" fill="#fff" opacity=".8"/></g></svg>

Before

Width:  |  Height:  |  Size: 3.5 KiB

View File

@@ -1,4 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 120 120"><defs><radialGradient id="ew" cx=".4" cy=".3" r=".8"><stop offset="0" stop-color="#fff"/><stop offset=".72" stop-color="#F3F3F7"/><stop offset="1" stop-color="#BFC1CF"/></radialGradient>
<radialGradient id="ep" cx=".35" cy=".3" r=".85"><stop offset="0" stop-color="#40404A"/><stop offset=".6" stop-color="#15151B"/><stop offset="1" stop-color="#000"/></radialGradient>
<filter id="es" x="-30%" y="-30%" width="160%" height="160%"><feDropShadow dx="0" dy="1.6" stdDeviation="1.4" flood-color="#000" flood-opacity=".28"/></filter>
<filter id="ds" x="-20%" y="-20%" width="140%" height="150%"><feDropShadow dx="0" dy="4" stdDeviation="3.5" flood-color="#2a1640" flood-opacity=".28"/></filter><radialGradient id="st" cx=".35" cy=".3" r=".8"><stop offset="0" stop-color="#FFF4B0"/><stop offset=".55" stop-color="#FFD43B"/><stop offset="1" stop-color="#F0A415"/></radialGradient><radialGradient id="ht" cx=".35" cy=".3" r=".8"><stop offset="0" stop-color="#FFC4D3"/><stop offset=".6" stop-color="#FF6F93"/><stop offset="1" stop-color="#E24673"/></radialGradient><radialGradient id="bb" cx=".38" cy=".3" r=".9"><stop offset="0" stop-color="#FFF1E6"/><stop offset=".6" stop-color="#FFCFB4"/><stop offset="1" stop-color="#EC9C7E"/></radialGradient><linearGradient id="pan" x1="0" y1="0" x2="0" y2="1"><stop offset="0" stop-color="#FFE68A"/><stop offset="1" stop-color="#F2B01E"/></linearGradient></defs><g filter="url(#ds)"><circle cx="60" cy="58" r="33" fill="url(#bb)"/></g><path d="M57 26c-4-7 3-12 8-7" stroke="#C47A58" stroke-width="3.2" fill="none" stroke-linecap="round"/><ellipse cx="46" cy="41" rx="9" ry="5" transform="rotate(-30 46 41)" fill="#fff" opacity="0.8"/><g filter="url(#es)"><circle cx="48" cy="58" r="10" fill="url(#ew)"/></g><circle cx="49.2" cy="59.4" r="6.6" fill="url(#ep)"/><circle cx="46.9" cy="56.9" r="2.0" fill="#fff"/><circle cx="51.5" cy="61.7" r="0.8" fill="#fff" opacity=".8"/><g filter="url(#es)"><circle cx="72" cy="58" r="10" fill="url(#ew)"/></g><circle cx="73.2" cy="59.4" r="6.6" fill="url(#ep)"/><circle cx="70.9" cy="56.9" r="2.0" fill="#fff"/><circle cx="75.5" cy="61.7" r="0.8" fill="#fff" opacity=".8"/><ellipse cx="38" cy="73" rx="5.5" ry="3.2" fill="#FF6F91" opacity=".4"/><ellipse cx="82" cy="73" rx="5.5" ry="3.2" fill="#FF6F91" opacity=".4"/><path d="M56 74q4 4.5 8 0" stroke="#B5563E" stroke-width="2.4" fill="none" stroke-linecap="round"/><g filter="url(#ds)"><path d="M12 82h96c0 17-20 30-48 30S12 99 12 82Z" fill="url(#pan)"/><ellipse cx="60" cy="82" rx="48" ry="7" fill="#FFF3C2"/></g><ellipse cx="32" cy="96" rx="9" ry="3" transform="rotate(-8 32 96)" fill="#fff" opacity="0.6"/></svg>

Before

Width:  |  Height:  |  Size: 2.6 KiB

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 120 120"><circle cx="60" cy="54" r="28" fill="#FFD7C8"/><path d="M57 27c-4-7 3-12 8-7" stroke="#FFD7C8" stroke-width="4" fill="none" stroke-linecap="round"/><path d="M50 58q3-3 6 0M64 58q3-3 6 0" stroke="#3E5A99" stroke-width="2.6" fill="none" stroke-linecap="round"/><path d="M12 80h96c0 18-20 30-48 30S12 98 12 80Z" fill="#FFFFFF"/><rect x="12" y="76" width="96" height="8" rx="4" fill="#D6E2F6"/></svg>

After

Width:  |  Height:  |  Size: 458 B

View File

@@ -7,7 +7,7 @@
<meta name="mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-capable" content="yes">
<title>兜爸心选 · 孕育陪伴</title>
<!-- V:26093018 缓存版本标记:改 css/js 时同步 bump 该值(与 js/app.js 的 VER 同源),静态资源按 mtime 走 ETag 自动刷新 -->
<!-- V:26093019 缓存版本标记:改 css/js 时同步 bump 该值(与 js/app.js 的 VER 同源),静态资源按 mtime 走 ETag 自动刷新 -->
<link rel="stylesheet" href="mama-box.css">
<script src="https://res.wx.qq.com/open/js/jweixin-1.6.0.js"></script>
<!-- 共享助手:授权/跳商城/位置上报(分享卡片同步,见 docs/h5-auth-standard.md 第四节) -->
@@ -220,8 +220,8 @@
<button class="dock-all" data-sheet="open">所有工具 ›</button>
</div>
<p class="dock-note"><svg viewBox="0 0 24 24" width="11" height="11" aria-hidden="true"><path d="M11 2.6l1.9 5.2 5.2 1.9-5.2 1.9L11 16.8l-1.9-5.2L3.9 9.7l5.2-1.9L11 2.6z" fill="currentColor"/><path d="M18.4 14.6l.8 2.1 2.2.8-2.2.8-.8 2.1-.8-2.1-2.2-.8 2.2-.8.8-2.1z" fill="currentColor" opacity=".6"/></svg>妈妈每记录一次,宝宝就多一段成长记忆</p>
<!-- 2026-09-30 五张卡按用户给的参考图改版:饱和糖果色底 + 白色粗标题 + 立体光泽、大眼睛的萌物插画
(小脚丫 / 体重秤 / 台历 / 秤盘小豆宝宝 / 秒表,assets/img/*.svg 自画)。
<!-- 2026-09-30 五张卡改版:白色粗标题 + 扁平图标(小脚丫 / 体重秤 / 台历 / 秤盘小豆宝宝 / 秒表,
assets/img/*.svg 自画,白色 + 同色系实色块,无渐变无阴影)。卡底色跟点进去的工具页同色系、稍深一档。
只换皮:排布、高度账、data-mini 跳转和各 id 的数据回填一律没动。样式见 mama-box.css「参考图改版」。 -->
<!-- 五张工具卡 + 一个出口。宫格本身这一版没动:
不等宽三列 + 竖向堆叠本来就是这一屏最不传统的部分,
@@ -242,7 +242,7 @@
<div class="mc-extra" id="kickExtra"></div>
</div>
<span class="mc-btn">记录</span>
<img class="mc-art" src="assets/img/a3abcbea7e5e.svg" alt="" aria-hidden="true">
<img class="mc-art" src="assets/img/08c0d4c6445b.svg" alt="" aria-hidden="true">
</button>
<!-- 第五个工具。原来是「胎心记录」,本批换成「胎儿估重」——
后者是真正部署好的站点(beian1.douba.top),点了能用;
@@ -258,11 +258,11 @@
<button class="mini-card fweight ripple" data-mini="fweight">
<div class="mc-title sm">胎儿估重</div>
<div class="mc-sub">去测算</div>
<img class="mc-art" src="assets/img/e037c09d6f58.svg" alt="" aria-hidden="true">
<img class="mc-art" src="assets/img/edd9c3b72928.svg" alt="" aria-hidden="true">
</button>
</div>
<button class="mini-card weight ripple" data-mini="weight">
<img class="mc-art big" src="assets/img/9f50b6756cb6.svg" alt="" aria-hidden="true">
<img class="mc-art big" src="assets/img/55ee74af0138.svg" alt="" aria-hidden="true">
<div class="mc-title">孕期体重</div>
<!-- ⚠️ 这里原来是写死的演示值「58.2 kg」,任何用户都会看到(2026-09-22 演示数据泄漏)。
现在由 `applyRemoteCards()` 按 box_app 封装的卡片接口写入:
@@ -275,7 +275,7 @@
<button class="mini-card cal ripple" data-mini="cal">
<div class="mc-title sm">孕检日历</div>
<div class="mc-sub" id="calNext">—</div>
<img class="mc-art" src="assets/img/82108357dbcf.svg" alt="" aria-hidden="true">
<img class="mc-art" src="assets/img/0abc42a1a6e1.svg" alt="" aria-hidden="true">
</button>
<!-- 生长曲线原来是 flex:1,把这一列剩下的高度全吃了(约 134px),
而它的内容和上面的孕检日历一模一样多。压到 80px,
@@ -291,7 +291,7 @@
<button class="mini-card curve ripple" data-mini="curve">
<div class="mc-title sm">数宫缩</div>
<div class="mc-sub" data-wk="cn">—</div>
<img class="mc-art" src="assets/img/177395faf53c.svg" alt="" aria-hidden="true">
<img class="mc-art" src="assets/img/637bd1a7ef6a.svg" alt="" aria-hidden="true">
</button>
<!-- 通往「记一下」弹层里那十几个工具。底部那颗 FAB 开的也是它。
故意不做成糖果色卡:它不是第六个工具,是个出口,

View File

@@ -3,7 +3,7 @@
(function () {
'use strict';
/* 页面版本号(YYMMDD+序号):显示在「关于兜爸心选」页底部;bump 时同步 head 注释与 ?v= */
var VER = '26093018';
var VER = '26093019';
const $ = (s, c) => (c || document).querySelector(s);
const $$ = (s, c) => Array.from((c || document).querySelectorAll(s));

View File

@@ -779,8 +779,9 @@ a.skip:focus{left:16px;top:16px}
投影值照抄 .mc-art 的原值不动:打光要跟邻居一致。 */
.mini-card.fweight .mc-art{width:38px;right:11px;bottom:10px;
filter:drop-shadow(0 5px 10px rgba(160,90,70,.18))}
/* 2026-09-30 参考图改版(用户给的一张「糖果色卡 + 3D 大眼萌物」参考图):
五张工具卡换成饱和渐变底 + 白字,插画换成自画 SVG(立体光泽、黑色大眼珠带高光)。
/* 2026-09-30 工具卡改版:白字 + 扁平图标(自画 SVG,白色 + 同色系实色块,无渐变无阴影无高光)。
卡底色取点进去那个工具页的主色系、饱和度再深一档(各工具页 theme-color / 主色见每行注释),
这样从卡片点进去颜色是连着的。
只换皮:上面那笔高度账(158+10+64 / 88+10+80+10+44)和版式一个数没动,
所以这里只覆盖颜色、字色和插画尺寸。渐变收尾色压得够深,白字在最浅的那一端也读得清。
「更多工具」仍是灰米出口,不参与。 */
@@ -788,13 +789,12 @@ a.skip:focus{left:16px;top:16px}
.bento .mini-card:not(.more) .mc-title{text-shadow:0 1px 2px rgba(0,0,0,.12)}
.bento .mini-card:not(.more) .mc-sub{color:rgba(255,255,255,.9)}
.bento .mini-card:not(.more) .mc-extra{color:rgba(255,255,255,.78)}
.bento .mini-card:not(.more) .mc-art{filter:drop-shadow(0 4px 8px rgba(30,20,60,.22))}
.mini-card.kick{background:linear-gradient(160deg,#58BEDF,#2F8FC0)}
.mini-card.weight{background:linear-gradient(160deg,#F28AA2,#D9587A)}
.mini-card.cal{background:linear-gradient(160deg,#7FCB63,#45A13A)}
.mini-card.fweight{background:linear-gradient(160deg,#A895F2,#7E66DE)}
.mini-card.curve{background:linear-gradient(160deg,#8C9CF2,#5E71DD)}
.bento .mc-btn{background:#fff;color:#2F8FC0;box-shadow:0 4px 10px rgba(20,60,100,.22)}
.mini-card.kick{background:linear-gradient(160deg,#EE9B70,#D8683F)} /* 数胎动页:暖杏底 #F7E8DE、橙红 #E2694A */
.mini-card.weight{background:linear-gradient(160deg,#F49A88,#E4656A)} /* 孕期体重页:桃粉底 #FFE9E1、珊瑚 #F2856D */
.mini-card.cal{background:linear-gradient(160deg,#94B568,#62893C)} /* 孕检日历页:浅绿底 #EFF4EB、草绿 #86A362 */
.mini-card.fweight{background:linear-gradient(160deg,#86A5DA,#5472B4)} /* 胎儿估重页:浅蓝底 #E2ECF9、藏青 #3E5488 */
.mini-card.curve{background:linear-gradient(160deg,#A08DD8,#7560B6)} /* 数宫缩页:淡紫底 #E7E1F3、紫 #7E68BC */
.bento .mc-btn{background:#fff;color:#C95A36;box-shadow:0 3px 8px rgba(120,50,20,.2)}
/* 数胎动卡只有 ≈128px 宽,左下是「记录」按钮:脚丫 74 宽贴右下,按钮再压在插画上面,谁也不挡谁的字 */
.mini-card.kick .mc-art{width:74px;right:-4px;bottom:-4px}
.bento .mc-btn{position:relative;z-index:1}