.recovery-fragment { margin:0 0 14px; font-size:12px; }
.recovery-fragment__checksum { color:var(--cyan); margin:0 0 6px; line-height:1.5; overflow-wrap:anywhere; }
.recovery-fragment__action { min-height:44px; padding:8px 12px; color:var(--amber); border:1px solid rgba(var(--amber-rgb),.45); background:rgba(var(--ink-rgb),.78); font:inherit; letter-spacing:.08em; text-transform:uppercase; cursor:pointer; transition:border-color .18s ease, color .18s ease, box-shadow .18s ease; }
.recovery-fragment__action:hover:not(:disabled) { border-color:var(--amber); color:var(--cyan); box-shadow:0 0 14px rgba(var(--amber-rgb),.22); }
.recovery-fragment__action:disabled { color:var(--cyan); cursor:default; border-color:rgba(var(--cyan-rgb),.3); }
.recovery-fragment__action:focus-visible { outline:2px solid var(--cyan); outline-offset:3px; }
.memory-shard { position:absolute; left:4%; right:4%; bottom:10%; top:auto; z-index:7; padding:16px 18px; border:1px solid rgba(var(--cyan-rgb),.5); background:rgba(var(--ink-rgb),.94); font-size:13px; color:var(--text); line-height:1.5; }
.memory-shard[hidden] { display:none; }
.memory-shard p { margin:0 0 10px; }
.memory-shard p:last-child { margin:0; }
.memory-shard__label { font-size:11px; color:var(--cyan); letter-spacing:.12em; }
.memory-shard__spell { color:var(--amber); }
.memory-shard__footer { color:var(--muted); font-size:12px; }
.node-recovered .avatar--lost .avatar__img { opacity:1; -webkit-mask-image:none; mask-image:none; transition:opacity .6s ease; }
.node-recovered .avatar--lost .avatar__ghost { opacity:.15; animation:none; }
.node-recovered .avatar--lost .avatar__dissolve { opacity:.12; animation:none; }
.node-recovered .avatar--lost .spell { opacity:.85; }
.node-recovered .avatar--lost .tag--id { display:block; }
@media (max-width:767px) { .recovery-fragment { font-size:11px; margin-bottom:9px; } .memory-shard { bottom:8%; top:auto; font-size:12px; padding:12px; left:0; right:0; } .node-recovered .avatar--lost .tag--id { display:none; } }
@media (prefers-reduced-motion:reduce) { .node-recovered .avatar--lost .avatar__img { transition:none; } }
