/* 香草AI-inspired TEST features (dark card UI) */
.xc-frame{position:relative;margin:6px 10px 0;border-radius:18px;overflow:hidden;height:34vh;max-height:300px;flex:none;background:#1b1622;box-shadow:0 6px 24px #0003;transition:height .25s}
.xc-frame img{width:100%;height:100%;object-fit:cover;object-position:top}
.xc-frame.min{height:44px}.xc-frame.min img{filter:blur(2px) brightness(.7)}
.xc-fbar{position:absolute;left:8px;right:8px;bottom:8px;display:flex;justify-content:space-between;gap:6px}
.xc-pill{background:#1d1726cc;color:#fff;border-radius:12px;padding:7px 12px;font-size:14px;backdrop-filter:blur(6px)}
.xc-pill.pri{background:linear-gradient(135deg,#a77bff,#f48fb1)}.xc-pill.wide{width:100%;margin-top:10px}
#msgs.xc-bg{background-size:cover;background-position:center;background-attachment:local}
#msgs.xc-bg .day{color:#fff}
#xc-menu-btn{font-size:20px}
.xc-ov{position:absolute;inset:0;background:#0007;z-index:50;display:flex;align-items:flex-end;justify-content:flex-start}
.xc-sheet{background:#211b2b;color:#eee6f5;width:100%;max-height:85%;overflow:auto;border-radius:20px 20px 0 0;padding:14px 14px calc(14px + var(--safe-b));box-shadow:0 -6px 30px #0006}
.xc-menu .xc-sheet{width:70%;margin:0 0 70px 10px;border-radius:18px}
.xc-menu button{display:flex;width:100%;padding:12px 8px;font-size:16px;color:#eee6f5;border-radius:10px;text-align:left}
.xc-menu button:active{background:#ffffff14}
.xc-h{color:#b9a9cc;font-size:13px;margin:8px 4px 4px}.xc-sub{color:#8a7d9b;font-size:12px;margin-left:6px}
.xc-opts{display:flex;flex-direction:column;gap:10px;margin-top:6px}
.xc-opt{background:#2c2338;border:1px solid #6d4fa0;border-radius:16px;padding:12px 14px;text-align:left;color:#eee6f5;line-height:1.5}
.xc-opt b{display:block;color:#c9a8ff;font-size:13px;margin-bottom:2px}
.xc-wait{color:#8a7d9b;text-align:center;padding:20px}
.xc-form label{display:block;color:#b9a9cc;font-size:13px;margin:10px 4px 0}
.xc-form input,.xc-form textarea{background:#2c2338;border-color:#4a3b5e;color:#eee6f5;margin-top:4px}
.xc-row{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}
.xc-rank{align-items:stretch}.xc-rank .xc-sheet{max-height:100%;height:100%;border-radius:0;background:#16121d}
.xc-rhead{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.xc-tabs{display:flex;gap:8px;justify-content:center;margin-bottom:12px}
.xc-tabs button{padding:6px 16px;border-radius:14px;color:#b9a9cc;background:#241d2e}.xc-tabs button.on{background:#5b3f8f;color:#fff}
.xc-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.xc-card{background:#221b2c;border-radius:16px;overflow:hidden;border:1px solid #c9a8ff55;box-shadow:0 0 0 1px #f48fb122}
.xc-cimg{height:180px;background-size:cover;background-position:top;position:relative}
.xc-badge{position:absolute;top:6px;left:6px;font-weight:800;font-size:18px;color:#fff;text-shadow:0 1px 4px #000}
.xc-cname{position:absolute;left:0;right:0;bottom:0;padding:18px 8px 6px;background:linear-gradient(transparent,#000c);color:#fff;font-weight:700}
.xc-cname small{font-weight:400;margin-left:6px;opacity:.8}
.xc-cbody{padding:8px}.xc-blurb{font-size:12px;color:#b9a9cc;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.xc-tags{display:flex;flex-wrap:wrap;gap:4px;margin:6px 0}.xc-tags span{font-size:11px;background:#33294a;color:#d9c8f0;border-radius:10px;padding:2px 8px}
.xc-heat{font-size:12px;color:#f9a8c9;text-align:right}
