
.stone-dialogue{background:#e8f0f2;padding:28px 24px;margin-top:18px;text-align:left}
.stone-dialogue>h2{font:400 23px/1.7 var(--font-jp);margin:12px 0 16px;color:var(--rust)}
.stone-dialogue .dialogue-intro{font-size:14px;line-height:2;margin-bottom:28px}
.dialogue-speaker,.dialogue-progress{font-size:10px;letter-spacing:.13em;color:var(--rust);margin:0 0 8px}
.dialogue-exchange{margin-bottom:22px}.dialogue-question{font-size:14px;line-height:1.9;margin:0 0 12px}
.dialogue-answer{background:#fff9;border:1px solid #cad8dc;padding:10px 15px;border-radius:16px 16px 0 16px;width:fit-content;max-width:95%;margin:0 0 0 auto;font-size:13px}
.dialogue-current{scroll-margin:175px 0 24px}
.dialogue-current>div,.stone-amulet{animation:charm-arrive .45s ease both}
.dialogue-current h3{font:400 17px/1.8 var(--font-jp);margin:10px 0 18px}
.dialogue-options{display:grid;gap:9px}
.dialogue-options button{min-height:48px;padding:12px 15px;text-align:left;font-size:14px;line-height:1.6;background:#fafbfc;border:1px solid #b8c9ce;border-radius:3px;transition:background .2s,border-color .2s}
.dialogue-options button:hover{background:#f1e9e3;border-color:var(--rust)}
.stone-amulet{text-align:center;padding:30px 20px 20px;background:#faf8f3;border:1px solid #d9d2c7}
.amulet-stone{display:block;width:76px;height:92px;margin:24px auto;background:radial-gradient(ellipse at 28% 22%,#ffffffa0,transparent 40%),linear-gradient(135deg,#ffffff33,transparent 48%,#0004),var(--stone-color);border-radius:48% 48% 44% 44%;box-shadow:inset 0 0 0 1px #ffffff50,0 8px 18px #0001}
.amulet-stone-pearl{border-radius:50%;height:76px;background:radial-gradient(circle at 31% 25%,#fff 0%,#f4eced 24%,#d3d9d7 62%,#afb7b8 85%,#f4ead7);box-shadow:inset -5px -5px 12px #a4aaac55,0 8px 18px #0001}
.amulet-stone-onyx{background:radial-gradient(ellipse at 30% 20%,#788083,#24272b 45%,#101214 85%)}
.amulet-stone-name{font-size:11px;letter-spacing:.12em;color:var(--muted)}
.stone-amulet h3{font-size:20px;line-height:1.85;color:var(--rust);margin:22px 0}
.amulet-poem{white-space:pre-line;font-size:14px;line-height:2.25}
.amulet-meaning{font-size:11px;line-height:1.8;margin:24px 0 14px;color:var(--muted)}
.amulet-personal{font-size:12px;line-height:1.9;margin:18px 0}
.stone-amulet>small{display:block;font-size:10px;line-height:1.8;color:var(--muted)}
.stone-amulet .button{margin-top:24px;font-size:13px;justify-content:center;padding:14px 10px}
.amulet-spec-note{font-size:11px;line-height:1.8;margin-top:12px}
.dialogue-restart{font-size:12px;margin-top:20px;border-bottom:1px solid var(--muted);padding:4px 0}
.dialogue-birthstones{margin-top:30px;border-top:1px solid #bccdd3;padding-top:17px}
.dialogue-birthstones summary{font-size:13px;cursor:pointer;line-height:1.8}
.dialogue-birthstones>p{font-size:12px;line-height:1.9;margin:14px 0}
.dialogue-birth-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:16px 0}
.dialogue-birth-grid button{padding:10px 5px;min-height:58px;background:#fafbfc;border:1px solid #bdcdd2}
.dialogue-birth-grid button[aria-pressed=true]{border-color:var(--rust);box-shadow:inset 0 -2px var(--rust)}
.dialogue-birth-grid small,.dialogue-birth-grid span{display:block;font-size:11px;line-height:1.7}
.filter-stone-inspiration{min-height:380px;aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#e8f0f2;padding:28px}
.filter-stone-inspiration .amulet-stone{width:120px;height:145px;margin:36px auto}
.filter-stone-inspiration .amulet-stone-pearl{height:120px}
.filter-stone-inspiration h2{font-size:22px;font-weight:400;margin-bottom:14px}
.filter-stone-inspiration p:not(.eyebrow){font-size:14px;line-height:1.9}
.filter-stone-inspiration small{font-size:11px;line-height:1.8;max-width:300px;margin-top:24px}
@keyframes charm-arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:650px){.stone-dialogue{padding:22px 16px}.stone-dialogue>h2{font-size:20px}.stone-amulet{padding:24px 14px 18px}.stone-amulet h3{font-size:18px}.amulet-poem{font-size:13px}.dialogue-current{scroll-margin-top:125px}.filter-stone-inspiration{min-height:320px}}
@media(prefers-reduced-motion:reduce){.dialogue-current>div,.stone-amulet{animation:none}.dialogue-options button{transition:none}}
