/* drive 领域专属样式。 */ /* ============================================================ * 铜镜鉴心 v2.1 — 内驱力页(drive-preview.html) * 太一目标 + 好奇萤火 + 探索天平 + 阴阳制衡 * ============================================================ */ /* -- 页头元信息 -- */ .page-meta { font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 12px; color: var(--fg-faint); } .page-meta b { color: var(--gilt); font-weight: 600; font-family: var(--font-serif); font-size: 15px; } /* -- 太一目标 -- */ .taiyi-card { border: 1px solid var(--rule); border-radius: 8px; background: var(--surface); padding: 16px 20px; display: flex; flex-direction: column; gap: 12px; } .taiyi-row { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; } .taiyi-dot { width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0; background: var(--fg-faint); } .taiyi-dot.active { background: var(--patina); box-shadow: 0 0 0 3px var(--patina-wash); animation: taiyi-pulse 2.6s cubic-bezier(0.16, 1, 0.3, 1) infinite; } .taiyi-dot.completed { background: var(--gilt); } @keyframes taiyi-pulse { 0% { box-shadow: 0 0 0 3px var(--patina-wash); } 70% { box-shadow: 0 0 0 7px transparent; } 100% { box-shadow: 0 0 0 3px var(--patina-wash); } } .taiyi-title { font-family: var(--font-serif); font-size: 15px; font-weight: 600; color: var(--fg); } .taiyi-tag { font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 10.5px; color: var(--fg-faint); padding: 2px 8px; border: 1px solid var(--rule); border-radius: 999px; } .taiyi-status { margin-left: auto; font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 10.5px; color: var(--fg-dim); } .taiyi-prog { display: flex; align-items: center; gap: 10px; } .taiyi-prog .track { flex: 1; height: 4px; border-radius: 2px; background: var(--rule); overflow: hidden; } .taiyi-prog .fill { height: 100%; border-radius: 2px; background: linear-gradient(90deg, var(--patina-dim), var(--patina)); } .taiyi-prog .tv { font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 11px; color: var(--fg-dim); width: 32px; text-align: right; } /* -- 好奇萤火 -- */ .curio-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; } .curio { position: relative; border: 1px solid var(--rule); border-radius: 7px; padding: 14px 16px 14px 18px; background: var(--surface); display: flex; gap: 12px; transition: border-color 0.15s; } .curio:hover { border-color: var(--gilt-dim); } .curio-fire { width: 10px; height: 10px; border-radius: 50%; flex-shrink: 0; margin-top: 5px; background: var(--patina); position: relative; } .curio-fire::after { content: ""; position: absolute; inset: -4px; border-radius: 50%; background: radial-gradient(circle, currentColor, transparent 70%); opacity: 0.4; } .curio-fire.hi { background: var(--gilt); } .curio-fire.hi::after { opacity: 0.6; animation: fire-pulse 2.4s cubic-bezier(0.16, 1, 0.3, 1) infinite; } @keyframes fire-pulse { 0%, 100% { opacity: 0.35; } 50% { opacity: 0.7; } } .curio-body { flex: 1; min-width: 0; } .curio-q { font-family: var(--font-serif); font-size: 14.5px; font-weight: 600; color: var(--fg); line-height: 1.5; } .curio-meta { display: flex; align-items: center; gap: 8px; margin-top: 8px; flex-wrap: wrap; } .src-tag { font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 10px; letter-spacing: 0.04em; padding: 2px 8px; border-radius: 999px; border: 1px solid var(--rule); display: inline-flex; align-items: center; gap: 5px; color: var(--fg-dim); } .src-tag .sdot { width: 5px; height: 5px; border-radius: 50%; } .src-world { color: var(--patina); } .src-world .sdot { background: var(--patina); } .src-memory { color: var(--gilt); } .src-memory .sdot { background: var(--gilt); } .src-percept { color: var(--cinnabar); } .src-percept .sdot { background: var(--cinnabar); opacity: 0.8; } .src-goal { color: var(--fg-dim); } .src-goal .sdot { background: var(--fg-dim); } .src-reflect { color: var(--patina-bright); } .src-reflect .sdot { background: var(--patina-bright); opacity: 0.7; } .src-time { color: var(--gilt); opacity: 0.8; } .src-time .sdot { background: var(--gilt); opacity: 0.7; } .risk-pill { font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 10px; padding: 2px 7px; border-radius: 3px; border: 1px solid var(--rule); color: var(--fg-faint); } .risk-pill.L2 { color: var(--gilt); border-color: var(--gilt-dim); background: var(--gilt-faint); } .risk-pill.L4 { color: var(--cinnabar); border-color: var(--cinnabar-dim); background: rgba(184, 57, 46, 0.1); } .ent-link { font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 10px; color: var(--fg-faint); } .curio-bars { display: flex; gap: 12px; margin-top: 9px; } .cbar { flex: 1; } .cbar .ck { font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 9.5px; text-transform: uppercase; letter-spacing: 0.06em; color: var(--fg-faint); } .cbar .ctrack { margin-top: 3px; height: 3px; border-radius: 2px; background: var(--rule); overflow: hidden; } .cbar .cfill { height: 100%; border-radius: 2px; } .cbar.value .cfill { background: linear-gradient(90deg, var(--patina-dim), var(--patina)); } .cbar.urg .cfill { background: linear-gradient(90deg, var(--gilt-dim), var(--cinnabar)); } /* -- 探索天平 -- */ .sub-card { border: 1px solid var(--rule); border-left: 3px solid var(--patina-dim); border-radius: 6px; padding: 16px 20px; background: var(--surface); display: flex; flex-direction: column; gap: 12px; } .sub-card.deferred { border-left-color: var(--fg-faint); opacity: 0.78; } .sub-top { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; } .sub-from { font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 10.5px; color: var(--patina); display: inline-flex; align-items: center; gap: 5px; } .sub-title { font-family: var(--font-serif); font-size: 15px; font-weight: 600; color: var(--fg); } .sub-status { margin-left: auto; font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 10.5px; padding: 2px 9px; border-radius: 999px; border: 1px solid var(--rule); color: var(--fg-dim); } .sub-status.candidate { color: var(--gilt); border-color: var(--gilt-dim); background: var(--gilt-faint); } .sub-status.approved { color: var(--patina); border-color: var(--patina-dim); background: var(--patina-wash); } .sub-status.deferred { color: var(--fg-faint); } .sub-desc { font-size: 13px; color: var(--fg-dim); line-height: 1.6; } .balance { display: grid; grid-template-columns: 1fr 56px 1fr; align-items: center; gap: 10px; padding: 10px 0 4px; } .pan { display: flex; flex-direction: column; gap: 5px; } .pan.right { align-items: flex-end; } .pan .plabel { font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 10px; text-transform: uppercase; letter-spacing: 0.08em; color: var(--fg-faint); } .pan .ptrack { width: 100%; height: 6px; border-radius: 3px; background: var(--rule); overflow: hidden; position: relative; } .pan.gain .ptrack { background: linear-gradient(90deg, var(--patina-dim), var(--patina-wash)); } .pan.cost .ptrack { background: linear-gradient(90deg, var(--patina-wash), var(--cinnabar-dim)); } .pan .pfill { position: absolute; top: 0; bottom: 0; border-radius: 3px; } .pan.gain .pfill { left: 0; background: linear-gradient(90deg, var(--patina-dim), var(--patina)); } .pan.cost .pfill { right: 0; background: linear-gradient(90deg, var(--cinnabar-dim), var(--cinnabar)); } .pan .pval { font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 11px; } .pan.gain .pval { color: var(--patina); } .pan.cost .pval { color: var(--cinnabar); opacity: 0.88; } .fulcrum { display: flex; flex-direction: column; align-items: center; gap: 4px; } .fulcrum .beam { width: 100%; height: 1.5px; background: var(--gilt-dim); position: relative; } .fulcrum .beam::before, .fulcrum .beam::after { content: ""; position: absolute; top: -2px; width: 5px; height: 5px; border-radius: 50%; background: var(--gilt-dim); } .fulcrum .beam::before { left: 0; } .fulcrum .beam::after { right: 0; } .fulcrum .pivot { width: 0; height: 0; border-left: 6px solid transparent; border-right: 6px solid transparent; border-top: 8px solid var(--gilt-dim); } .fulcrum .risk { font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 10px; color: var(--gilt); margin-top: 1px; } .sub-actions { display: flex; gap: 8px; justify-content: flex-end; padding-top: 4px; border-top: 1px dashed var(--rule); } .vbtn { font-family: inherit; font-size: 12px; font-weight: 500; padding: 6px 14px; border-radius: 4px; cursor: pointer; border: 1px solid var(--rule); background: transparent; color: var(--fg); transition: background 0.12s, border-color 0.12s; } .vbtn:hover { background: var(--surface-hi); } .vbtn.patina { border-color: var(--patina-dim); color: var(--patina); background: var(--patina-wash); } .vbtn.patina:hover { background: rgba(111, 163, 137, 0.14); } .vbtn.note { font-size: 11px; color: var(--fg-faint); align-self: center; margin-right: auto; font-family: "JetBrains Mono", ui-monospace, monospace; letter-spacing: 0.02em; border: none; } /* -- 阴阳制衡 -- */ .yin-yang { position: relative; overflow: hidden; border: 1px solid var(--gilt-dim); border-radius: 8px; padding: 16px 20px; background: linear-gradient( 90deg, var(--patina-wash), transparent 50%, rgba(184, 57, 46, 0.06) ), var(--surface); box-shadow: inset 0 1px 0 var(--face-in-top), var(--shadow); display: flex; align-items: center; gap: 18px; } .yy-taiji { width: 58px; height: 58px; flex-shrink: 0; animation: yy-spin 80s linear infinite; transform-origin: 50% 50%; } @keyframes yy-spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } .yy-text { flex: 1; min-width: 0; font-size: 12.5px; color: var(--fg-dim); line-height: 1.6; } .yy-text b { font-family: var(--font-serif); color: var(--fg); font-weight: 600; } .yy-text .yang { color: var(--patina); } .yy-text .yin { color: var(--cinnabar); opacity: 0.85; } .yy-meta { font-family: "JetBrains Mono", ui-monospace, monospace; font-size: 10.5px; color: var(--fg-faint); margin-top: 5px; letter-spacing: 0.02em; } .yy-meta b { color: var(--patina); font-family: inherit; font-weight: 600; }