agent-Specialization/website-design/exp/site-assets/anim-sandbox.css
JOJO 39a7a5fc6f chore(website): 归档官网文档内容与设计素材
- website-content/:官网 10 篇文档内容 + README
- website-design/:官网设计稿、动画实验、预览图与资源
- 根目录官网截图两张
- .gitignore 忽略 website-design/exp/static/dist 构建产物(7.1MB)
2026-09-02 14:38:51 +08:00

112 lines
2.9 KiB
CSS
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/* 沙箱与网络授权动画 —— 场景样式(主页 feature 行 / anim2-demo 页共用)
无边框无底色,融于星空;无 glow。恶意命令红 --danger 定义在 .anim2-window 作用域。 */
/* ───────── 动画容器 ───────── */
.anim2-window {
--danger: #d47b6b; /* 恶意命令红,仅本动画作用域 */
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
}
/* ───────── 场景区 ───────── */
.anim2-stage {
position: relative;
flex: 1;
overflow: hidden;
}
/* 防御者:右侧,六边形 + 盾牌(尺寸与 04 版本控制的智能体一致70×70 */
.defender {
position: absolute;
right: 36px;
bottom: 26px;
width: 70px;
height: 70px;
}
.defender-avatar {
display: block;
width: 70px;
height: 70px;
color: var(--text-1);
}
.defender-avatar .astrion-avatar { width: 100%; height: 100%; }
/* 盾牌举向左上方:顺时针倾斜(尖底朝左下),与六边形左上部分重叠遮挡,实色填充不透底 */
.defender-shield {
position: absolute;
left: -19px; /* 与角色同比例96→70×0.729)等比缩小 */
top: -9px;
width: 51px;
height: 51px;
color: var(--accent);
fill: var(--bg-1);
transform: rotate(24deg);
}
/* 盾牌/智能体受击后坐回弹 */
@keyframes defender-brace {
0% { transform: translateX(0); }
30% { transform: translateX(5px); }
60% { transform: translateX(-1.5px); }
100% { transform: translateX(0); }
}
.defender.is-hit { animation: defender-brace 0.34s ease; }
/* ───────── 飞行中的命令块 ───────── */
.cmd-projectile {
position: absolute;
left: 0;
top: 0;
font-family: var(--font-mono);
font-size: 13.5px;
font-weight: 600;
color: var(--danger);
white-space: nowrap;
will-change: transform;
/* 装填入场只动透明度fill both 保持 transform 会压住 JS 逐帧位移动画 */
animation: cmd-load 0.4s ease both;
}
@keyframes cmd-load {
from { opacity: 0; }
to { opacity: 1; }
}
/* ───────── 字符碎片(撞击后炸开) ───────── */
.cmd-shard {
position: absolute;
left: 0;
top: 0;
font-family: var(--font-mono);
font-size: 13.5px;
font-weight: 600;
color: var(--danger);
will-change: transform, opacity;
}
/* ───────── 撞击扩散环(描边圆环,非光晕) ───────── */
.impact-ring {
position: absolute;
width: 41px; /* 随盾牌等比56×0.729 */
height: 41px;
border: 2px solid var(--accent-strong);
border-radius: 50%;
opacity: 0;
pointer-events: none;
transform: translate(-50%, -50%) scale(0.3);
}
.impact-ring.is-active {
animation: impact-expand 0.45s ease-out both;
}
@keyframes impact-expand {
0% { opacity: 0.75; transform: translate(-50%, -50%) scale(0.3); }
100% { opacity: 0; transform: translate(-50%, -50%) scale(1.35); }
}