*{margin:0;padding:0;box-sizing:border-box}
body{font-family:-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;color:#222;background:#fafaf7;line-height:1.7;max-width:680px;margin:0 auto;padding:12px 16px 48px}
.breadcrumb{font-size:14px;color:#888;margin-bottom:16px}
.breadcrumb a{color:#8a5a2b;text-decoration:none}
h1{font-size:26px;margin:8px 0 6px}
.intro{font-size:16px;color:#444;background:#fff;border:1px solid #ece7df;border-radius:10px;padding:14px 16px;margin:16px 0}
section{margin:18px 0}
h2{font-size:20px;margin:0 0 10px;border-left:4px solid #8a5a2b;padding-left:10px}
.fact-list{list-style:none;display:flex;flex-direction:column;gap:10px}
.fact-list li{background:#fff;border:1px solid #ece7df;border-radius:10px;padding:12px 16px}
.fact-list h3{font-size:17px;margin-bottom:4px;color:#5b3a1a}
.fact-list p{font-size:15px;color:#555}
.char-display{display:flex;align-items:center;justify-content:center;margin:12px 0}
.char-display .char-box{width:120px;height:120px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#fbf6ec,#f3e9d4);border:2px solid #c9a96a;border-radius:12px;box-shadow:0 6px 18px -6px rgba(138,90,43,.35);position:relative}
.char-display .char-box::before{content:"";position:absolute;inset:5px;border:1px solid #d4c4a0;border-radius:8px}
.char-display .char-box span{font-size:64px;font-family:serif;color:#5b3a1a;line-height:1;font-weight:700}
.faq{list-style:none}
.faq li{background:#fff;border:1px solid #ece7df;border-radius:10px;padding:12px 16px;margin-bottom:10px}
.faq h3{font-size:16px;margin-bottom:4px}
.faq p{font-size:15px;color:#555}
nav.links{margin-top:20px;display:flex;flex-wrap:wrap;gap:8px}
nav.links a{display:inline-block;padding:6px 14px;font-size:15px;color:#8a5a2b;background:#fff;border:1px solid #e6dfd2;border-radius:20px;text-decoration:none}
.prose{font-size:16px;color:#444;background:#fff;border:1px solid #ece7df;border-radius:10px;padding:14px 16px;line-height:1.9}
.totem-block{display:flex;align-items:center;gap:18px;background:#fff;border:1px solid #ece7df;border-radius:12px;padding:18px}
.totem-visual{flex:0 0 96px;width:96px;height:96px;display:flex;align-items:center;justify-content:center}
.totem-ring{width:96px;height:96px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle,#fbf6ec,#f0e3c8);border:2px solid #c9a96a;box-shadow:0 0 0 4px #fbf6ec,0 0 0 5px #d4c4a0,0 8px 20px -8px rgba(138,90,43,.45);position:relative}
.totem-ring::before{content:"";position:absolute;inset:-10px;border:1px dashed #c9a96a;border-radius:50%;opacity:.5}
.totem-ring span{font-size:48px;font-family:serif;color:#5b3a1a;font-weight:700;line-height:1}
.totem-text{flex:1;min-width:0;font-size:15px;color:#555;line-height:1.8}
@media(max-width:640px){.totem-block{flex-direction:column;text-align:center;gap:14px}.totem-visual{flex-basis:auto}}
.totem-block{background-color:#f5efe0;background-image:radial-gradient(circle at 18% 28%,rgba(170,140,90,.10) 0,transparent 42%),radial-gradient(circle at 82% 72%,rgba(170,140,90,.08) 0,transparent 46%),repeating-linear-gradient(90deg,rgba(150,120,70,.035) 0 2px,transparent 2px 6px),repeating-linear-gradient(0deg,rgba(150,120,70,.025) 0 2px,transparent 2px 9px);border:1px solid #e0d4bc}
.totem-visual{flex:0 0 96px;width:96px;display:flex;flex-direction:column;align-items:center;gap:10px}
.seal{width:46px;height:46px;background:#b22222;color:#fff;border:2px solid #8b1a1a;border-radius:5px;display:flex;align-items:center;justify-content:center;font-family:serif;font-weight:700;font-size:24px;transform:rotate(-8deg);box-shadow:0 3px 8px rgba(178,34,34,.45);position:relative}
.seal::after{content:"";position:absolute;inset:3px;border:1px solid rgba(255,255,255,.35);border-radius:3px}
.tts-bar{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #ece7df;border-radius:10px;padding:14px 16px}
.tts-btn{flex:0 0 auto;display:inline-flex;align-items:center;padding:10px 18px;font-size:16px;color:#fff;background:linear-gradient(135deg,#8a5a2b,#6f4420);border:none;border-radius:8px;cursor:pointer}
.tts-status{font-size:14px;color:#888}
.card-actions{margin-bottom:12px}
.card-btn{display:inline-flex;align-items:center;padding:10px 18px;font-size:16px;color:#fff;background:linear-gradient(135deg,#b22222,#8b1a1a);border:none;border-radius:8px;cursor:pointer}
.card-preview img{display:block}
.card-download{display:inline-block;margin-top:10px;padding:8px 16px;font-size:15px;color:#8a5a2b;background:#fbf6ec;border:1px solid #d4c4a0;border-radius:8px;text-decoration:none}
