@layer components{.chain-box{position:relative;width:100%;aspect-ratio:6 / 4.6;max-width:600px;margin-inline:auto}.chain-scene{position:absolute;left:50%;top:50%;width:600px;height:460px;transform-origin:center}.chain-floor{--s: 76px;position:absolute;left:0;top:-70px;width:600px;height:600px;transform:rotateX(60deg) rotate(-45deg);transform-style:preserve-3d}.chain-grid{position:absolute;top:-120px;right:-120px;bottom:-120px;left:-120px;background-image:linear-gradient(to right,rgba(238,234,245,.07) 1px,transparent 1px),linear-gradient(to bottom,rgba(238,234,245,.07) 1px,transparent 1px);background-size:40px 40px;-webkit-mask-image:radial-gradient(closest-side,#000 30%,transparent 100%);mask-image:radial-gradient(closest-side,#000 30%,transparent 100%)}.blk{position:absolute;left:22px;top:262px;width:var(--s);height:var(--s);transform-style:preserve-3d;transition:transform 1s var(--ease)}.blk-body{position:absolute;top:0;right:0;bottom:0;left:0;transform-style:preserve-3d;animation:blk-drop 1s var(--ease) both}@keyframes blk-drop{0%{transform:translateZ(320px)}to{transform:translateZ(0)}}.face{position:absolute;box-sizing:border-box;transition:opacity .9s var(--ease),background-color 1s var(--ease),border-color 1s var(--ease);animation:face-in .7s var(--ease) both;animation-delay:inherit}@keyframes face-in{0%{opacity:0}}.blk-body>*{animation-delay:inherit}.face.top{top:0;right:0;bottom:0;left:0;transform:translateZ(var(--s));background:#2b2042;border:1px solid rgba(238,234,245,.16);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;color:var(--vault-ink)}.face.side-y{left:0;top:var(--s);width:var(--s);height:var(--s);transform-origin:top;transform:rotateX(90deg);background:#1d1530;border:1px solid rgba(238,234,245,.08)}.face.side-x{left:0;top:0;width:var(--s);height:var(--s);transform-origin:left;transform:rotateY(-90deg);background:#241a39;border:1px solid rgba(238,234,245,.08)}.face.top:before{content:attr(data-n);font-family:var(--font-display);font-size:13px;line-height:1}.face.top:after{content:attr(data-h);font-family:var(--font-mono);font-size:8.5px;opacity:.7;line-height:1}.blk-link{position:absolute;left:-44px;top:calc(var(--s) / 2 - 3px);width:44px;height:6px;transform:translateZ(calc(var(--s) * .55));background:#c9a66b8c;transition:opacity .9s var(--ease);animation:face-in .7s var(--ease) both}.blk.no-link .blk-link{opacity:0}.blk.is-new .face.top{background:#b794f4;border-color:#c9a66b;color:#170f26}.blk.is-new .face.side-y{background:#6b46c1;border-color:#c9a66b99}.blk.is-new .face.side-x{background:#7c58cf;border-color:#c9a66b99}.blk.is-new .face.top:after{opacity:.8}.blk.is-exit .face,.blk.is-exit .blk-link{opacity:0}.chain-scene.is-static .blk-body,.chain-scene.is-static .face,.chain-scene.is-static .blk-link{animation:none}}@layer components{.quiz-panel{min-height:520px}.quiz-bar{height:2px;background:var(--line);border-radius:2px;overflow:hidden}.quiz-bar span{display:block;height:100%;background:var(--primary);transform-origin:left;transition:transform .8s var(--ease)}.quiz-back{display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:.9375rem;color:var(--soft);background:none;border:0;cursor:pointer;padding:8px 4px;min-height:44px}.quiz-back:hover{color:var(--ink)}.quiz-option{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left;font:inherit;font-size:1.0625rem;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:var(--r-card);padding:18px 20px;min-height:60px;cursor:pointer;transition:border-color .4s var(--ease),background-color .4s var(--ease)}.quiz-option:hover{border-color:var(--primary);background:var(--primary-soft)}.quiz-option[aria-pressed=true]{border-color:var(--primary)}.quiz-option .arrow{color:var(--primary);opacity:0;transform:translate(-6px);transition:opacity .4s var(--ease),transform .6s var(--ease)}.quiz-option:hover .arrow,.quiz-option:focus-visible .arrow{opacity:1;transform:none}.quiz-step{animation:quiz-in .7s var(--ease)}@keyframes quiz-in{0%{opacity:0;transform:translate(14px)}}}
