.breath-circle-container.hold { animation: holdPulse 1.6s ease-in-out infinite; } #bridge-phase { transition: opacity .25s ease; opacity:1; } .breath-circle-container.hold #bridge-ring { animation: glowPulse 1.6s ease-in-out infinite; } @keyframes glowPulse { 0%,100% { filter:drop-shadow(0 0 6px var(--gold)); } 50% { filter:drop-shadow(0 0 22px var(--gold)); } } #bridge-ring { transition:none; } #bridge-ring.ring-inhale { stroke:#5BC0EB; filter:drop-shadow(0 0 12px #5BC0EB); animation: inhaleFill 4s cubic-bezier(.25,.46,.45,.94) forwards, pulseInhale 2s ease-in-out infinite; } #bridge-ring.ring-hold { stroke:var(--gold); filter:drop-shadow(0 0 14px var(--gold)); animation: glowPulse 1.6s ease-in-out infinite; stroke-dashoffset:0; } #bridge-ring.ring-exhale { stroke:#56C596; filter:drop-shadow(0 0 12px #56C596); animation: exhaleEmpty 8s cubic-bezier(.25,.46,.45,.94) forwards, pulseExhale 2.5s ease-in-out infinite; } @keyframes inhaleFill { from { stroke-dashoffset:502; } to { stroke-dashoffset:0; } } @keyframes exhaleEmpty { from { stroke-dashoffset:0; } to { stroke-dashoffset:502; } } @keyframes pulseInhale { 0%,100% { filter:drop-shadow(0 0 8px #5BC0EB); } 50% { filter:drop-shadow(0 0 20px #5BC0EB); } } @keyframes pulseExhale { 0%,100% { filter:drop-shadow(0 0 8px #56C596); } 50% { filter:drop-shadow(0 0 18px #56C596); } } #bridge-overlay { transition: background .6s ease; } #bridge-overlay .breath-circle-container { transition: transform .6s cubic-bezier(.22,1,.36,1); } @keyframes holdPulse { 0%{transform:scale(1)} 50%{transform:scale(1.08)} 100%{transform:scale(1)} } .breath-circle-svg { width:100%; height:100%; transform:rotate(-90deg); } .breath-circle-ring { fill:none; stroke:#E5E5E5; stroke-width:8; } .breath-circle-active { fill:none; stroke:var(--gold); stroke-width:8; stroke-linecap:round; transition:stroke-dashoffset 1s ease; } #breath-ring { transition:stroke-dashoffset .3s ease, stroke-color .3s ease, filter .3s ease; } #breath-ring.ring-inhale { stroke:#5BC0EB; filter:drop-shadow(0 0 8px #5BC0EB); } #breath-ring.ring-hold { stroke:var(--gold); filter:drop-shadow(0 0 12px var(--gold)); } #breath-ring.ring-exhale { stroke:#56C596; filter:drop-shadow(0 0 8px #56C596); } .breath-phase-text { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); font-size:24px; font-weight:600; color:var(--main); } .breath-timer { font-size:24px; font-weight:700; color:var(--gold); margin-bottom:10px; } .breath-btn { width:100%; height:44px; background:var(--active-bg); color:var(--active-text); border:none; border-radius:22px; font-size:15px; font-weight:600; cursor:pointer; } .breath-btn.stop { background:var(--red); } .coach-card { background:var(--card); border-radius:16px; padding:16px; margin-top:16px; border:1px dashed var(--gold); animation:fadeIn .6s ease both; animation-delay:.3s; } .coach-header { display:flex; align-items:center; gap:8px; margin-bottom:8px; font-size:13px; color:var(--gold); font-weight:600; } .coach-q { font-family:'Noto Serif SC',serif; font-size:16px; color:var(--main); line-height:1.6; margin-bottom:12px; } .coach-reply-box { display:flex; gap:8px; } .coach-input { flex:1; padding:10px; border:1px solid var(--border); border-radius:12px; background:var(--input-bg); color:var(--main); outline:none; font-size:14px; } .coach-send-btn { padding:0 16px; background:var(--gold); color:#1A1A1A; border-radius:12px; border:none; font-weight:600; cursor:pointer; } /* V2.2: Config File Cloud UI */ .cloud-card { background:var(--card); border:1px solid var(--border); border-radius:16px; padding:16px; margin-bottom:16px; } .cloud-card.synced { border-color:var(--green); } .cloud-status-row { font-size:14px; font-weight:600; margin-bottom:8px; display:flex; align-items:center; gap:8px; } .cloud-dot { width:8px; height:8px; border-radius:50%; background:#CCC; } .cloud-dot.ok { background:var(--green); box-shadow:0 0 8px var(--green); } .cloud-actions { display:flex; gap:8px; margin-top:12px; } .cloud-btn { flex:1; height:40px; border:none; border-radius:12px; font-size:13px; font-weight:600; cursor:pointer; position:relative; overflow:hidden; } .cloud-btn.primary { background:var(--active-bg); color:var(--active-text); } .cloud-btn.secondary { background:var(--input-bg); color:var(--main); } .cloud-btn.loading { pointer-events:none; opacity:.75; } .cloud-btn.loading::after { content:""; position:absolute; inset:0; background:rgba(0,0,0,.08); border-radius:inherit; } .cloud-btn.loading::before { content:""; position:absolute; width:18px; height:18px; top:50%; left:50%; margin:-9px 0 0 -9px; border:2px solid currentColor; border-right-color:transparent; border-radius:50%; animation:spin .7s linear infinite; z-index:1; } @keyframes spin { to { transform: rotate(360deg); } } /* V2.0 Insights */ .insight-section { margin-top:16px; margin-bottom:16px; } .tag-cloud { display:flex; flex-wrap:wrap; gap:6px; } .tag-item { padding:4px 8px; background:var(--input-bg); border-radius:8px; font-size:12px; color:var(--sub); } .tag-item.hot { background:var(--gold); color:#1A1A1A; } .pattern-item { padding:12px; background:var(--input-bg); border-radius:12px; margin-bottom:8px; font-size:13px; } .resonance-card { background:var(--card); border-radius:20px; padding:20px; margin-bottom:16px; } .resonance-text { font-family:'Noto Serif SC',serif; font-size:16px; color:var(--gold); line-height:1.6; margin-bottom:12px; } .resonance-meta { display:flex; justify-content:space-between; align-items:center; } .resonance-btn { display:flex; align-items:center; gap:4px; padding:4px 10px; background:transparent; border:1px solid var(--border); border-radius:14px; color:var(--sub); cursor:pointer; font-size:11px; } .resonance-btn.active { background:rgba(201,169,110,.15); border-color:var(--gold); color:var(--gold); } .resonance-count { font-size:14px; font-weight:600; } .resonance-btn.active { box-shadow:0 0 0 3px var(--gold), 0 0 16px rgba(201,169,110,.35); transition:box-shadow .5s; } /* V2.4 — 播种与觉察 */ .seed-section { margin-top:20px; padding:20px; background:linear-gradient(135deg,#F7F5F1,#F0EFEB); border:1px solid #E8E3D8; border-radius:16px; animation:seedFadeIn .6s cubic-bezier(.22,1,.36,1) both; } @keyframes seedFadeIn { from{opacity:0;transform:translateY(12px)} to{opacity:1;transform:translateY(0)} } .seed-heading { font-size:15px; font-weight:600; color:#5A4A3A; margin-bottom:4px; } .seed-sub { font-size:12px; color:#A89880; margin-bottom:14px; line-height:1.6; } .seed-input-wrapper { display:flex; gap:8px; } .seed-input { flex:1; padding:12px 14px; background:#FFF; border:1px solid #E0D5C8; border-radius:12px; font-size:15px; outline:none; transition:border-color .2s; } .seed-input:focus { border-color:var(--gold); box-shadow:0 0 0 3px rgba(201,169,110,.15); } .seed-btn { padding:12px 20px; background:var(--gold); color:#1A1A1A; border:none; border-radius:12px; font-size:14px; font-weight:600; cursor:pointer; transition:transform .15s; } .seed-btn:active { transform:scale(.95); } .seed-btn.done { background:#56C596; } .seed-hint { display:inline-block; margin-top:10px; font-size:12px; color:#B0A090; cursor:pointer; text-decoration:underline; text-decoration-style:dotted; text-underline-offset:3px; } .seed-hint:active { color:var(--gold); } .seed-old-pattern { margin-top:12px; padding:10px 14px; background:rgba(201,169,110,.08); border-left:3px solid var(--gold); border-radius:8px; font-size:13px; color:#5A4A3A; line-height:1.5; animation:fadeIn .4s ease both; } .seed-result { margin-top:12px; display:flex; align-items:center; gap:8px; padding:10px 14px; background:rgba(86,197,150,.1); border-radius:10px; font-size:14px; color:#2A6B4A; animation:fadeIn .4s ease both; } .seed-result-icon { font-size:18px; } /* 种子花园视图 */ .garden-tabs { display:flex; gap:0; margin-bottom:16px; background:var(--input-bg); border-radius:12px; padding:3px; } .garden-tab { flex:1; text-align:center; padding:8px; font-size:13px; color:var(--sub); cursor:pointer; border-radius:10px; transition:all .2s; } .garden-tab.active { background:var(--card); color:var(--main); font-weight:600; box-shadow:0 2px 8px rgba(0,0,0,.06); } .garden-item { display:flex; gap:12px; align-items:flex-start; padding:14px; background:var(--card); border-radius:16px; margin-bottom:10px; box-shadow:0 2px 8px rgba(0,0,0,.02); } .garden-icon { font-size:24px; flex-shrink:0; margin-top:2px; } .garden-content { flex:1; min-width:0; } .garden-seed { font-size:14px; font-weight:600; color:var(--main); margin-bottom:2px; } .garden-meta { font-size:11px; color:var(--sub); } .garden-old { font-size:12px; color:#B0A090; margin-top:4px; padding:4px 8px; background:var(--input-bg); border-radius:6px; display:inline-block; } .garden-sub { display:flex; gap:6px; margin:0 0 12px 0; justify-content:center; } .garden-sub-btn { padding:4px 14px; font-size:12px; color:var(--sub); background:transparent; border:1px solid var(--border); border-radius:20px; cursor:pointer; transition:all .2s; } .garden-sub-btn.active { background:var(--gold); color:#1A1A1A; border-color:var(--gold); } .garden-level { display:inline-flex; align-items:center; justify-content:center; width:32px; height:32px; font-size:20px; } .garden-stat { text-align:center; padding:12px; margin-bottom:12px; background:rgba(201,169,110,.06); border-radius:12px; font-size:12px; color:var(--sub); line-height:1.6; } .water-btn { display:inline-flex; align-items:center; gap:3px; padding:4px 10px; background:transparent; border:1px solid var(--border); border-radius:14px; color:var(--sub); cursor:pointer; font-size:11px; margin-left:6px; } .water-btn.active { background:rgba(86,197,150,.12); border-color:#56C596; color:#56C596; }
「 我 」我是谁一吸一呼,回到你自己
🌱 今天你想照见哪个维度?
🌿
综合觉察
💼
工作/事业
❤️
关系/情感
🧘
身体/健康
1. 今天最重要的事是什么?
2. 这件事,说明我是一个怎样的人?
3. 这个判断,和我对自己的认知一致吗?
4. 此刻,是谁在回答?
💡 今日洞察
证据库
📋 时间线
🌱 种子花园
共鸣广场你不是一个人
💫 全部
🌱 种子集
点击「种子集」可只看大家今天一起种下的积极意图
🫁 呼吸练习一吸一呼,回到你自己
准备好了吗?
4-7-8

吸气 4 秒 → 憋气 7 秒 → 呼气 8 秒

反身引擎
🌙
0总记录
0%觉知占比
📊 一致性 vs 觉知
📈 近 7 天状态
⏰ 每日提醒
提醒时间
⚙️ 设置与数据
正在读取配置...
版本 V2.4.1
🪞
照见
📚
记录
💫
共鸣
🌬️
呼吸
🤔
引擎
✅ 已记录
关闭
长按图片保存到相册
window.DASHSCOPE_KEY="«redacted:sk-…»";