/* V6.1 Final Fracture interactive stage */
#brFinalTrial{position:relative;overflow:hidden;max-width:940px;margin:0 auto 28px;padding:0 0 28px;background:#080713;border:1px solid #7964a4;box-shadow:0 0 36px #7046ab55;color:#e9dcff}
.ff-scene{position:relative;height:clamp(250px,70vw,540px);background:linear-gradient(180deg,transparent 50%,#080713 100%),url('final-fracture-scene.webp') center 22%/cover no-repeat}
.ff-heading{position:relative;text-align:center;padding:15px 12px 8px;letter-spacing:.16em;font:clamp(18px,4vw,32px) Georgia,serif;color:#e9d9ff;text-shadow:0 0 15px #9b67ff}
.ff-instructions{text-align:center;max-width:580px;margin:8px auto 22px;padding:0 14px;color:#cbb9e5;font:15px/1.55 Georgia,serif}
.ff-crystals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 14px;max-width:680px;margin:auto}
.ff-crystal{background:#120e22;border:1px solid #6f599b;border-radius:10px;color:#e8dcfa;min-width:0;padding:12px 5px;cursor:pointer;box-shadow:inset 0 0 15px #6e3da022}
.ff-crystal img{display:block;width:100%;height:clamp(95px,20vw,175px);object-fit:cover;object-position:left center;border-radius:6px}
.ff-crystal small{display:block;margin-top:9px;letter-spacing:.06em;font-size:10px;overflow-wrap:anywhere}
.ff-crystal[aria-pressed=true]{border-color:#e5c9ff;box-shadow:0 0 22px #b276f5aa;background:#2a1944}
.ff-puzzle{margin:24px auto 0;max-width:490px;padding:18px 12px;text-align:center;border-top:1px solid #594578}
.ff-puzzle h3{font:20px Georgia,serif;letter-spacing:.13em;color:#eee0ff}
.ff-puzzle p{font:14px/1.5 Georgia,serif;color:#c8b6e1}
.ff-pattern{display:grid;grid-template-columns:repeat(3,64px);justify-content:center;gap:7px;margin:15px auto}
.ff-tile{height:60px;border:1px solid #74569f;background:#1b1330;color:#d7baff;font-size:26px;border-radius:6px;cursor:pointer}
.ff-tile[aria-pressed=true]{border:2px solid #fff;box-shadow:0 0 12px #ad75ff}
.ff-solve{padding:14px 24px;border:1px solid #c9a5ff;border-radius:8px;background:#251539;color:#fff;letter-spacing:.1em;cursor:pointer}
.ff-solve:disabled{opacity:.4;cursor:not-allowed}
.ff-status{min-height:24px;margin:12px 0;color:#ddc7fa}
.ff-replay{display:block;margin:20px auto;padding:12px 18px;background:#151022;color:#d6c4f3;border:1px solid #756090;border-radius:6px;cursor:pointer}
@media(max-width:480px){.ff-crystals{gap:6px;padding:0 7px}.ff-crystal{padding:6px 3px}.ff-crystal small{font-size:9px}.ff-scene{height:260px}}

/* V6.2 crystal seal puzzle */
.ff-puzzle{max-width:600px;padding:22px 12px 32px}.ff-kicker{font-size:11px!important;letter-spacing:.22em;color:#a88cd5!important}.ff-preview-wrap{margin:18px auto 8px;max-width:230px;transition:opacity .3s}.ff-preview-wrap img{width:100%;aspect-ratio:1;display:block;border:1px solid #a88acf;border-radius:50%;box-shadow:0 0 25px #9b69d055}.ff-preview-wrap span{display:block;margin:10px 0;color:#bda9d7;font:11px Georgia,serif;letter-spacing:.14em}.ff-hidden-preview img{visibility:hidden}.ff-hidden-preview{height:0;overflow:hidden;margin:0 auto}.ff-controls{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:14px auto}.ff-controls button{padding:10px 12px;border:1px solid #8168a8;border-radius:8px;background:#20142f;color:#e6d6fa;font:12px Georgia,serif;cursor:pointer}.ff-pattern{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;width:min(90vw,390px);margin:18px auto;padding:6px;background:#392950;border:1px solid #c2a3ed;border-radius:10px;box-shadow:0 0 34px #8b53ca44}.ff-tile{aspect-ratio:1;height:auto;min-width:0;background-size:300% 300%;background-repeat:no-repeat;border:1px solid #8e73b5;border-radius:3px;cursor:pointer;transition:filter .15s,transform .15s}.ff-tile[aria-pressed=true]{outline:3px solid #fff;outline-offset:-4px;transform:scale(.96);filter:brightness(1.5)}.ff-inactive{opacity:.45}.ff-tile:disabled{cursor:not-allowed}.ff-solve:not(:disabled){box-shadow:0 0 22px #ab78e288;background:#3a2257}.ff-status{padding:0 8px}.ff-crystal:focus-visible,.ff-tile:focus-visible,.ff-controls button:focus-visible{outline:3px solid white}
