/* 奇幻世界共用色系：TRPG深夜藍金、奇幻世界霧粉薰衣草與薄荷 */
:root{--fantasy-bg:#fffaf8;--fantasy-ink:#574c5a;--fantasy-pink:#ba759f;--fantasy-iris:#9074ba;--fantasy-mint:#64a491;--fantasy-gold:#e8b56e}
body.fantasy-area{background:
 radial-gradient(circle at 10% 4%,#f9e4ee 0,transparent 28%),
 radial-gradient(circle at 85% 12%,#e4f1e8 0,transparent 29%),
 linear-gradient(150deg,#fffaf8,#f8f3ff 70%,#f3f9f5);
 color:var(--fantasy-ink)}
.fantasy-area main{max-width:1160px;margin:auto;padding:31px 20px 55px}
.fantasy-intro{padding:34px;border-radius:24px;
 background:linear-gradient(130deg,#fffcfaeb,#f1e8f8ec);
 border:1px solid #e6d6e8;box-shadow:0 15px 30px #68517312}
.fantasy-intro .overline{font-size:12px;letter-spacing:3px;font-weight:800;color:#86689b}
.fantasy-intro h1{font-size:clamp(30px,5vw,51px);line-height:1.2;color:#9a638c;margin:8px 0}
.fantasy-intro p{color:#7e7083;line-height:1.9;max-width:800px}
.fantasy-area .soft-panel{background:#ffffffde;border:1px solid #e8dce9;
 border-radius:18px;padding:22px;margin-top:20px;box-shadow:0 8px 22px #aa98aa11}
.fantasy-area .soft-panel h2{color:#925e84;margin:2px 0 15px}
.fantasy-area .soft-panel h3{color:#815d81;margin:5px 0 10px}
.fantasy-area .soft-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.fantasy-area .soft-card{background:#fff;border:1px solid #eadfe9;border-radius:18px;padding:19px;
 box-shadow:0 7px 24px #71616b13;min-width:0}
.fantasy-area .soft-card p{font-size:14px;color:#7e717f}
.fantasy-area .soft-card h3{font-size:20px}
.fantasy-area .fantasy-icon{width:62px;height:62px;border-radius:22px;
 background:linear-gradient(130deg,#e7f4e9,#f3e3f0);display:grid;place-items:center;font-size:35px;margin-bottom:12px}
.fantasy-area .soft-field label{display:block;font-weight:800;font-size:13px;margin-bottom:7px}
.fantasy-area .soft-field input,.fantasy-area .soft-field select{width:100%;padding:11px 13px;background:white;border:1px solid #cbbbd0;border-radius:10px;color:#5f5065;font:inherit}
.fantasy-area .soft-btn{cursor:pointer;font:700 14px/1.4 inherit;line-height:1.5;border:1px solid #bb8dad;
 background:#f8edf5;padding:9px 15px;border-radius:10px;color:#805e83;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.fantasy-area .soft-btn:hover{background:#eedde9}
.fantasy-area .soft-btn.primary{background:linear-gradient(120deg,#c48eaf,#9a80ba);color:white;border-color:#b888b2}
.fantasy-area .soft-btn:disabled{opacity:.5;cursor:default}
.fantasy-area .soft-row{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin:12px 0}
.fantasy-area .pill{display:inline-block;background:#f1e7f0;border:1px solid #e5d2e5;
 padding:4px 9px;border-radius:40px;color:#835e83;font-size:12px}
.fantasy-area .soft-message{padding:12px 15px;background:#fff6de;border:1px solid #e8d4aa;color:#79643e;border-radius:12px;margin:15px 0}
.fantasy-area .soft-message.error{background:#fff0ef;border-color:#ddacaf;color:#98505a}
.fantasy-area .soft-note{font-size:13px;color:#867782}
.fantasy-area .soft-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.fantasy-area .soft-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:15px}
.fantasy-area .soft-card .dialogue{margin-top:12px;padding:11px;border-left:3px solid #c69dbb;background:#faf1f7;border-radius:8px;color:#7b5b78}
@media(max-width:880px){.fantasy-area .soft-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:610px){.fantasy-area .soft-grid,.fantasy-area .soft-grid.two{grid-template-columns:1fr}
 .fantasy-area main{padding-left:13px;padding-right:13px}.fantasy-intro{padding:22px}}
