.tcp-wrap{--tcp-accent:#6f35c8;max-width:980px;margin:24px auto;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#251739}
.tcp-card{background:linear-gradient(180deg,#fff 0%,#f8f3ff 100%);border:1px solid rgba(111,53,200,.16);border-radius:22px;box-shadow:0 20px 40px rgba(64,27,122,.08);padding:24px}
.tcp-header h2{margin:0 0 8px;font-size:clamp(24px,3vw,34px);color:var(--tcp-accent)}
.tcp-header p{margin:0 0 20px;color:#5b4a73;line-height:1.6}
.tcp-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.tcp-grid label span{display:block;font-weight:700;margin-bottom:8px}
.tcp-grid select{width:100%;padding:14px 16px;border:1px solid #d8c9ef;border-radius:14px;background:#fff;font-size:16px;color:#2f2148}
.tcp-actions{margin-top:18px;display:flex;gap:12px;flex-wrap:wrap}
.tcp-button,.tcp-share,.tcp-cta{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:none;cursor:pointer;border-radius:14px;padding:14px 18px;font-weight:700;transition:.2s ease}
.tcp-button{background:var(--tcp-accent);color:#fff}
.tcp-button:hover,.tcp-cta:hover{filter:brightness(.95);transform:translateY(-1px)}
.tcp-result{margin-top:24px}
.tcp-result-card{border:1px solid rgba(111,53,200,.16);border-radius:18px;background:#fff;padding:22px}
.tcp-score{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:16px}
.tcp-score-badge{width:92px;height:92px;border-radius:999px;background:linear-gradient(135deg,var(--tcp-accent),#b38dff);display:flex;align-items:center;justify-content:center;color:#fff;font-size:28px;font-weight:800;box-shadow:0 14px 24px rgba(111,53,200,.22)}
.tcp-score h3{margin:0 0 6px;font-size:24px;color:#241636}
.tcp-score p{margin:0;color:#5c4b72}
.tcp-columns{display:grid;grid-template-columns:1.2fr .8fr;gap:20px;margin-top:18px}
.tcp-summary,.tcp-box{background:#fbf9ff;border:1px solid #ebdefe;border-radius:16px;padding:16px}
.tcp-summary p,.tcp-box p{margin:0;color:#48385f;line-height:1.65}
.tcp-axes{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}
.tcp-axis{border:1px solid #ebdefe;border-radius:14px;padding:14px;background:#fff}
.tcp-axis strong{display:block;margin-bottom:8px}
.tcp-axis-meter{height:10px;border-radius:999px;background:#efe8fb;overflow:hidden;margin-bottom:8px}
.tcp-axis-meter span{display:block;height:100%;background:linear-gradient(90deg,var(--tcp-accent),#c0a0ff)}
.tcp-list{margin:10px 0 0;padding-left:18px;color:#47365f}
.tcp-footer{margin-top:18px;display:flex;gap:12px;flex-wrap:wrap}
.tcp-cta{background:var(--tcp-accent);color:#fff}
.tcp-share{background:#ede2ff;color:#4a2e7e}
.tcp-loading,.tcp-error{padding:16px;border-radius:14px}
.tcp-loading{background:#f5efff;color:#52367e}
.tcp-error{background:#fff1f1;color:#a33b3b;border:1px solid #f2c5c5}
@media (max-width: 760px){.tcp-grid,.tcp-columns,.tcp-axes{grid-template-columns:1fr}.tcp-card{padding:18px}.tcp-score-badge{width:78px;height:78px;font-size:24px}}
