.coin-tray{display:flex;gap:24px;justify-content:center;margin:30px 0}.yi-coin{width:95px;height:95px;border:7px double #9e783e;border-radius:50%;background:radial-gradient(circle at 35% 25%,#f2d993,#c19a50 65%,#6f4e27);box-shadow:inset 0 0 12px #fff5,4px 8px 15px #0007;color:#342514;font:20px Georgia,serif;position:relative}.yi-coin:after{content:'';position:absolute;width:16px;height:16px;border:2px solid #a68045;background:#29222b;left:calc(50% - 10px);top:calc(50% - 2px)}.yi-coin small{display:block;font-size:15px;margin-top:25px}.yi-coin.pile{background:radial-gradient(circle at 35% 25%,#d6b876,#a78343 65%,#604321)}.rune-table{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin:22px 0}.rune-reading{padding:25px;background:radial-gradient(ellipse at top,#48433744,#211b24);border:1px solid var(--line)}.rune-stone{width:100px;height:125px;margin:0 auto 25px;display:grid;place-items:center;background:radial-gradient(ellipse at 30% 20%,#9b9b91,#64685e 60%,#393d36);border-radius:43% 49% 45% 39%;color:#1a2019;text-shadow:1px 1px #d1cdb6;font:68px Georgia,serif;box-shadow:inset -7px -7px 12px #0006,5px 12px 15px #0007;transform:rotate(-5deg)}.rune-reading:nth-child(2) .rune-stone{transform:rotate(7deg)}.rune-reading p{line-height:1.8}.calculation-trace{white-space:pre-wrap;overflow-wrap:anywhere;font:16px/1.9 Georgia,serif}.book-passage{margin:25px 0;background:linear-gradient(90deg,#c7b997,#eee4c8 4%,#f7efd8 48%,#d3c4a0 50%,#f0e6cb 52%,#e4d6b8);color:#33271f;padding:35px 45px;border-radius:3px 12px 12px 3px;box-shadow:0 8px 16px #0006;font:17px/1.9 Georgia,serif}.book-passage:empty{display:none}.book-passage blockquote{color:#33271f;border-color:#9a7947}.book-passage small{color:#6b5037}.pendulum-canvas{width:100%;height:auto;border:1px solid var(--line);touch-action:none;cursor:grab;margin-top:22px}.learning-card{position:relative;box-shadow:3px 5px 9px #0006;border:5px double #b7a16b;background:repeating-linear-gradient(45deg,#372b3e,#372b3e 4px,#44364a 4px,#44364a 5px);transition:translate .2s,box-shadow .2s}.learning-card:hover{translate:0 -5px;box-shadow:5px 12px 15px #0008}.learning-card[data-revealed=true]{background:linear-gradient(135deg,#eee1bf,#d6c39b);color:#372a23}.learning-card[data-revealed=true] small{color:#665135}.learning-card .card-glyph{color:#b9a16a}.learning-card[data-revealed=true] .card-glyph{color:#675035}.tea-canvas{border-radius:16px;background:radial-gradient(ellipse,#41372e44,transparent);cursor:crosshair}.lab-canvas:focus{outline:2px solid var(--gold)}.virtual-bone{width:73px;height:98px;border-radius:38% 28% 37% 25%;background:radial-gradient(ellipse at 50% 44%,#a08a67 0,#cebb91 20%,#f5e8c9 50%,#b5a07a 85%);box-shadow:inset -6px -6px 9px #66533477,6px 12px 13px #0007;font:24px Georgia,serif;transform:rotate(var(--angle,-12deg))}.virtual-bone:before{width:60%;height:22px;left:15%;top:-5px;background:#e6d8b6;box-shadow:inset 0 5px 6px #fff6}.virtual-bone:after{width:65%;height:20px;bottom:-4px;left:25%;background:#c5b18c}.bone-stage{background:radial-gradient(ellipse,#67584044,#2b242b);border-style:solid}.lab-property-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(prefers-reduced-motion:reduce){.learning-card{transition:none}}

.tool-conclusion{margin:30px 0;padding:28px;border:1px solid var(--gold);background:linear-gradient(135deg,#c8ae7215,#3c304033)}.tool-conclusion>p:not(.eyebrow){font:19px/1.85 Georgia,serif;white-space:pre-line}.tool-conclusion details p{line-height:1.8}.tool-conclusion small{display:block;margin-top:18px;color:var(--muted);line-height:1.7}.tool-conclusion select{max-width:400px}

.bone-scene{height:480px;position:relative;touch-action:none;overflow:hidden;border:1px solid var(--gold);border-radius:12px;background:#17141c;margin:25px 0}.bone-scene canvas{display:block;width:100%;height:100%;cursor:grab}#schoolBones:empty{display:none}

.pendulum-scene{height:560px;min-height:400px;border:1px solid #bda66b88;border-radius:14px;overflow:hidden;touch-action:none;background:#17141c;margin:20px 0}.pendulum-scene canvas{display:block;width:100%;height:100%;cursor:grab}.pendulum-scene canvas:active{cursor:grabbing}

.pendulum-sector-list{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.pendulum-sector-list span{padding:8px 12px;border:1px solid #bda66b66;border-radius:6px;color:var(--text)}.pendulum-sector-list .selected{background:#c3a566;color:#19151b;border-color:#e7cf90}
