.cap-widget {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    border: 1px solid #e5e7eb; border-radius: 14px; overflow: hidden;
    background: #fff; box-shadow: 0 2px 12px rgba(0,0,0,0.07);
    max-width: 780px; margin: 24px auto; font-size: 14px; color: #111827;
}
.cap-header {
    display: flex; justify-content: space-between; align-items: center;
    padding: 18px 22px; border-bottom: 1px solid #f3f4f6;
    background: linear-gradient(135deg,#f9fafb 0%,#f0f4ff 100%);
}
.cap-coin-info  { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.cap-coin-name  { font-size:20px; font-weight:700; color:#111827; }
.cap-coin-symbol{ font-size:13px; color:#6b7280; font-weight:500; }
.cap-rank       { background:#e5e7eb; color:#374151; font-size:11px; padding:2px 8px; border-radius:10px; font-weight:600; }
.cap-price-block{ text-align:right; }
.cap-price-row  { display:flex; align-items:center; gap:8px; justify-content:flex-end; }
.cap-price      { font-size:24px; font-weight:700; color:#111827; letter-spacing:-0.5px; }
.cap-live-dot   { font-size:10px; color:#6b7280; font-weight:600; letter-spacing:0.5px; transition:color 0.3s; }
.cap-change     { font-size:13px; display:block; text-align:right; margin-top:2px; }
.cap-positive   { color:#16a34a; font-weight:600; }
.cap-negative   { color:#dc2626; font-weight:600; }
.cap-signal-bar { padding:14px 22px; border-bottom:1px solid rgba(0,0,0,0.06); }
.cap-signal-main{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:10px; }
.cap-signal-arrow { width:22px; height:22px; border-radius:50%; display:inline-block; }
.cap-signal-up::before   { content:'\25B2'; color:#15803d; font-weight:700; }
.cap-signal-down::before { content:'\25BC'; color:#b91c1c; font-weight:700; }
.cap-signal-hold::before { content:'\2192'; color:#b45309; font-weight:700; }
.cap-signal-text{ font-size:18px; font-weight:700; }
.cap-conf-wrap  { display:flex; align-items:center; gap:6px; }
.cap-conf-bar   { width:80px; height:7px; background:rgba(0,0,0,0.1); border-radius:4px; overflow:hidden; }
.cap-conf-fill  { height:100%; border-radius:4px; transition:width 0.6s ease; }
.cap-conf-pct   { font-size:13px; font-weight:700; min-width:32px; }
.cap-risk-badge { font-size:11px; font-weight:600; padding:3px 10px; border-radius:10px; }
.cap-signal-targets { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.cap-tgt-pill  { font-size:12px; font-weight:600; padding:4px 12px; border-radius:20px; }
.cap-tgt-green { background:#dcfce7; color:#15803d; }
.cap-tgt-red   { background:#fee2e2; color:#b91c1c; }
.cap-tgt-blue  { background:#dbeafe; color:#1d4ed8; }
.cap-sig-age   { font-size:11px; color:#9ca3af; margin-left:auto; }
.cap-no-pred   { padding:14px 22px; background:#f9fafb; border-bottom:1px solid #f3f4f6; display:flex; align-items:center; gap:12px; color:#6b7280; font-size:13px; }
.cap-btn-analyze { background:#2563eb; color:#fff; border:none; padding:6px 16px; border-radius:8px; font-size:13px; font-weight:600; cursor:pointer; transition:background 0.2s; }
.cap-btn-analyze:hover { background:#1d4ed8; }
.cap-btn-analyze:disabled { opacity:0.6; cursor:not-allowed; }
.cap-chart-section { padding:16px 22px; border-bottom:1px solid #f3f4f6; }
.cap-tf-tabs   { display:flex; align-items:center; gap:6px; margin-bottom:12px; flex-wrap:wrap; }
.cap-tf-label  { font-size:12px; color:#9ca3af; margin-right:4px; }
.cap-tf-btn    { background:#f3f4f6; color:#374151; border:1px solid #e5e7eb; padding:4px 14px; border-radius:20px; font-size:12px; font-weight:600; cursor:pointer; transition:all 0.15s; }
.cap-tf-btn:hover  { background:#e5e7eb; }
.cap-tf-btn.active { background:#2563eb; color:#fff; border-color:#2563eb; }
.cap-chart-loading { font-size:14px; color:#9ca3af; }
.cap-chart-wrap    { height:260px; position:relative; }
.cap-chart-wrap canvas { max-height:260px; }
.cap-stats-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid #f3f4f6; }
.cap-stat       { padding:14px 18px; border-right:1px solid #f3f4f6; }
.cap-stat:last-child { border-right:none; }
.cap-stat-label { display:block; font-size:11px; color:#9ca3af; margin-bottom:4px; }
.cap-stat-value { display:block; font-size:14px; font-weight:600; color:#374151; }
.cap-news-section  { padding:18px 22px; border-top:1px solid #f3f4f6; }
.cap-section-title { font-size:13px; font-weight:700; color:#374151; margin-bottom:12px; }
.cap-news-item {
    border-left:3px solid #e5e7eb; padding:10px 12px; margin-bottom:10px;
    border-radius:0 8px 8px 0; background:#fafafa; transition:background 0.15s;
}
.cap-news-item:last-child { margin-bottom:0; }
.cap-news-item:hover { background:#f3f4f6; }
.cap-news-meta-top { display:flex; align-items:center; gap:6px; margin-bottom:5px; flex-wrap:wrap; }
.cap-impact-badge  { font-size:10px; font-weight:700; padding:2px 8px; border-radius:8px; }
.cap-cat-tag       { font-size:10px; color:#6b7280; background:#e5e7eb; padding:2px 7px; border-radius:8px; }
.cap-news-time     { font-size:10px; color:#9ca3af; margin-left:auto; }
.cap-news-title    { display:block; font-size:13px; color:#1e40af; text-decoration:none; line-height:1.5; font-weight:500; }
.cap-news-title:hover { text-decoration:underline; }
.cap-news-src      { font-size:11px; color:#9ca3af; margin-top:3px; display:block; }
.cap-analysis      { padding:18px 22px; border-top:1px solid #f3f4f6; background:#fafafa; }
.cap-analysis-body { font-size:13px; color:#374151; line-height:1.75; }
.cap-disclaimer    { padding:10px 22px; background:#fffbeb; border-top:1px solid #fde68a; font-size:11px; color:#92400e; line-height:1.5; }
@media(max-width:600px){
    .cap-header { flex-direction:column; align-items:flex-start; gap:10px; }
    .cap-price-block,.cap-price-row { text-align:left; justify-content:flex-start; }
    .cap-stats-grid { grid-template-columns:repeat(2,1fr); }
    .cap-stat { border-bottom:1px solid #f3f4f6; }
    .cap-stat:nth-child(even) { border-right:none; }
    .cap-sig-age { margin-left:0; width:100%; }
}
