/* Crypto dashboards (/crypto, /crypto/{slug}). Dark by default; platform palette only. */
.cd { --bg:#0a0e17; --bg2:#0d1520; --bg3:#111a28; --panel:rgba(17,24,39,0.6); --edge:rgba(0,150,255,0.15);
      --accent:#00cfff; --pos:#00ff88; --neg:#ff4444; --blue:#3b82f6; --txt:#e6f1ff; --dim:#8aa0b8;
      color:var(--txt); max-width:1100px; margin:0 auto; padding:16px 16px 40px; box-sizing:border-box;
      font-family:system-ui,-apple-system,"Segoe UI",sans-serif; }
.cd *, .cd *::before, .cd *::after { box-sizing:border-box; }
.cd a { color:var(--accent); text-decoration:none; }
.cd a:hover { text-decoration:underline; }
.cd h1, .cd h2 { color:var(--text-heading,#e6f1ff); font-family:var(--font-display); font-weight:400; line-height:1.1; margin:0; }
.cd h1 { font-size:clamp(26px,6vw,42px); }
.cd h2 { font-size:clamp(18px,4vw,24px); margin-bottom:12px; }
.cd h3 { font-size:14px; letter-spacing:.06em; text-transform:uppercase; color:var(--dim); margin:16px 0 8px; }
.cd-sr { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }
nav.cd-crumb { font-size:13px; color:var(--dim); margin-bottom:12px; display:flex; flex-direction:row; flex-wrap:wrap; align-items:center; gap:6px; padding:0; }
nav.cd-crumb a, nav.cd-crumb span { display:inline; padding:0; margin:0; min-height:0; min-width:0; width:auto; }

.cd-head { display:flex; flex-wrap:wrap; gap:16px 24px; justify-content:space-between; align-items:flex-start; }
.cd-id { display:flex; gap:14px; align-items:center; min-width:0; }
.cd-logo { width:56px; height:56px; border-radius:50%; background:var(--bg3); flex:0 0 56px; object-fit:cover; }
.cd-logo-txt { display:flex; align-items:center; justify-content:center; font-weight:900; font-size:15px;
               color:var(--accent); border:1px solid var(--edge); }
.cd-sym { color:var(--dim); font-size:.55em; letter-spacing:.06em; }
.cd-chips, .cd-venues, .cd-contracts { display:flex; flex-wrap:wrap; gap:8px; margin-top:8px; }
.cd-chip { display:inline-flex; align-items:center; gap:6px; background:var(--bg3); color:var(--txt);
           border:1px solid var(--edge); border-radius:999px; padding:6px 12px; font-size:13px; font-weight:600;
           font-family:inherit; min-height:32px; }
.cd-chip small { color:var(--dim); font-weight:600; }
.cd-chip code { font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; font-size:12px; color:var(--dim); }
.cd-chip-on { border-color:rgba(0,207,255,0.5); color:var(--accent); }
.cd-chip-warn { border-color:rgba(255,68,68,0.5); color:var(--neg); }
button.cd-chip { cursor:pointer; min-height:44px; }
button.cd-chip:hover, a.cd-chip:hover { border-color:var(--accent); text-decoration:none; }
.cd-copy-l { color:var(--accent); font-size:12px; }
.cd-copy.copied .cd-copy-l { color:var(--pos); }

.cd-price { text-align:right; margin-left:auto; }
.cd-px { font-family:var(--font-display); font-size:clamp(30px,8vw,52px); line-height:1; color:var(--accent);
         font-variant-numeric:tabular-nums; }
.cd-chg { display:flex; gap:12px; justify-content:flex-end; flex-wrap:wrap; margin-top:8px; font-weight:700;
          font-size:14px; font-variant-numeric:tabular-nums; }
.cd-up { color:var(--pos); } .cd-down { color:var(--neg); } .cd-flat { color:var(--dim); }
.cd-asof, .cd-note { color:var(--dim); font-size:12.5px; margin-top:8px; line-height:1.5; }
.cd-summary, .cd-about { color:#cfe3f5; font-size:15px; line-height:1.6; margin:16px 0 0; max-width:75ch; }

.cd-panel { background:var(--panel); border:1px solid var(--edge); border-radius:14px; padding:18px; margin-top:18px; }
.cd-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(160px,1fr)); gap:10px; margin:0; }
.cd-stat { background:var(--bg2); border:1px solid var(--edge); border-radius:10px; padding:10px 12px; min-width:0; }
.cd-stat dt { color:var(--dim); font-size:12px; font-weight:600; }
.cd-stat dd { margin:4px 0 0; font-size:18px; font-weight:800; font-variant-numeric:tabular-nums;
              overflow-wrap:anywhere; }
.cd-bar { height:10px; border-radius:999px; background:var(--bg); border:1px solid var(--edge); margin-top:14px;
          overflow:hidden; }
.cd-bar i { display:block; height:100%; background:var(--accent); border-radius:999px; }

.cd-meters { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:16px 28px; margin-bottom:14px; }
.cd-meter-top { display:flex; justify-content:space-between; align-items:baseline; color:var(--dim); font-size:13px;
                font-weight:600; }
.cd-meter-top b { font-family:var(--font-display); font-weight:400; font-size:30px; color:var(--txt);
                  font-variant-numeric:tabular-nums; }
.cd-meter-top b small { font-size:13px; color:var(--dim); font-family:system-ui,sans-serif; }
.cd-track { position:relative; height:12px; border-radius:999px; background:var(--bg); border:1px solid var(--edge);
            margin-top:8px; overflow:hidden; }
.cd-track i { display:block; height:100%; border-radius:999px; background:linear-gradient(90deg,var(--blue),var(--accent)); }
.cd-track-mid { overflow:visible; background:linear-gradient(90deg,var(--neg),var(--bg3) 50%,var(--pos)); }
.cd-track-mid u { position:absolute; top:-5px; width:4px; height:20px; margin-left:-2px; border-radius:2px;
                  background:var(--txt); box-shadow:0 0 0 2px var(--bg); text-decoration:none; }
.cd-meter-word { font-weight:800; font-size:14px; margin-top:6px; color:var(--txt); }
.cd-meter-ends { display:flex; justify-content:space-between; align-items:baseline; color:var(--dim); font-size:12px;
                 margin-top:6px; }
.cd-meter-ends .cd-meter-word { margin-top:0; }
.cd-grid-tight { grid-template-columns:repeat(auto-fill,minmax(130px,1fr)); margin-top:12px; }
.cd-days { display:flex; align-items:flex-end; gap:6px; height:44px; margin-top:8px; }
.cd-days i { flex:1 1 0; min-width:0; border-radius:4px 4px 0 0; background:linear-gradient(180deg,var(--accent),var(--blue)); }
.cd-row-on td { background:rgba(0,207,255,0.06); font-weight:700; }
.cd-table td small { color:var(--dim); font-weight:400; margin-left:4px; }
.cd-posts { list-style:none; margin:0 0 12px; padding:0; display:grid; gap:10px; }
.cd-post { background:var(--bg2); border:1px solid var(--edge); border-radius:10px; padding:12px 14px; min-width:0; }
.cd-post-h { font-size:15px; overflow-wrap:anywhere; }
.cd-post-t { margin:6px 0 0; color:var(--txt); font-size:14px; line-height:1.55; white-space:pre-wrap; overflow-wrap:anywhere; }
.cd-more { cursor:pointer; margin-bottom:12px; }
.cd-docs pre { background:var(--bg); border:1px solid var(--edge); border-radius:10px; padding:14px; overflow-x:auto;
               font:13px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace; color:var(--txt); position:relative; }
.cd-docs code { font-family:ui-monospace,SFMono-Regular,Menlo,monospace; color:var(--accent); }
.cd-docs pre code { color:inherit; }
.cd-docs p, .cd-docs li { color:var(--txt); line-height:1.6; }
.cd-docs .cd-table td { white-space:normal; vertical-align:top; }
.cd-docs .cd-copy { cursor:pointer; margin:0 0 6px; }
.cd-light { display:flex; align-items:center; gap:10px; font-size:16px; }
.cd-light i { width:14px; height:14px; border-radius:50%; background:var(--dim); flex:0 0 14px; }
.cd-light small { color:var(--dim); }
.cd-light-ok i { background:var(--pos); box-shadow:0 0 10px rgba(0,255,136,0.5); }
.cd-light-watch i { background:var(--accent); box-shadow:0 0 10px rgba(0,207,255,0.5); }
.cd-light-alert i { background:var(--neg); box-shadow:0 0 10px rgba(255,68,68,0.5); }

.cd-mine { border-color:rgba(0,207,255,0.5); }
.cd-mine h3:first-of-type { margin-top:14px; }
.cd-stat-pin { border-color:rgba(0,207,255,0.5); }
.cd-mine .cd-posts { margin-bottom:0; }
.cd-mine-act:disabled { opacity:.55; cursor:default; }

.cd-tablewrap { overflow-x:auto; -webkit-overflow-scrolling:touch; }
.cd-table { width:100%; border-collapse:collapse; font-size:14px; font-variant-numeric:tabular-nums; }
.cd-table th { text-align:left; color:var(--dim); font-size:12px; font-weight:600; padding:8px 10px;
               border-bottom:1px solid var(--edge); white-space:nowrap; }
.cd-table td { padding:10px; border-bottom:1px solid rgba(0,150,255,0.08); white-space:nowrap; }
.cd-hub-table td a { display:inline-flex; gap:8px; align-items:baseline; }
.cd-hub-table td a span { color:var(--dim); font-size:13px; }

.cd-cta, .cd-rail-a { display:inline-flex; align-items:center; justify-content:center; min-height:44px;
                      padding:10px 18px; border-radius:10px; border:1px solid var(--edge); background:var(--bg3);
                      color:var(--txt); font-weight:700; font-size:14px; font-family:inherit; cursor:pointer; }
.cd a.cd-cta, .cd a.cd-rail-main, .cd-rail-main { background:var(--accent); color:#04121c; border-color:var(--accent); }
.cd a.cd-rail-a { color:var(--txt); } .cd a.cd-rail-main { color:#04121c; }
.cd-cta:hover, .cd-rail-a:hover { filter:brightness(1.1); text-decoration:none; }
.cd-rail { display:flex; flex-wrap:wrap; gap:10px; margin-top:18px; }
.cd-agent .as-card { margin:0 0 12px; }
.cd-foot { color:var(--dim); font-size:12.5px; margin-top:22px; }

.cd-hub-head { margin-bottom:6px; }
.cd-search { display:flex; gap:8px; margin-top:16px; max-width:620px; }
.cd-search input { flex:1 1 auto; min-width:0; background:var(--bg3); color:var(--txt); border:1px solid var(--edge);
                   border-radius:12px; padding:12px 14px; font-size:16px; min-height:48px; }
.cd-search input:focus-visible { outline:2px solid var(--accent); outline-offset:1px; }
.cd-search button { background:var(--accent); color:#04121c; border:0; border-radius:12px; padding:0 20px;
                    font-weight:800; font-size:15px; cursor:pointer; min-height:48px; }
.cd-search button:disabled { opacity:.55; cursor:default; }
.cd-ask { margin:12px 0 0; max-width:720px; }
.cd-ask + .cd-note { min-height:1.5em; margin-bottom:12px; }
.cd-report-body { max-width:78ch; color:var(--txt); font-size:16px; line-height:1.65; overflow-wrap:anywhere; }
.cd-report-body h2 { font-size:clamp(18px,4.4vw,22px); margin:22px 0 8px; }
.cd-report-body h2:first-child { margin-top:0; }
.cd-report-body h3 { color:var(--text-heading,#e6f1ff); font-size:16px; margin:16px 0 6px; }
.cd-report-body p { margin:0 0 12px; }
.cd-report-body ul { margin:0 0 12px; padding-left:20px; }
.cd-report-body li { margin:4px 0; }
.cd-report .cd-copy { cursor:pointer; }
.cd-q { border-top:1px solid var(--edge); padding:12px 0; }
.cd-q:first-of-type { border-top:0; }
.cd-q summary { cursor:pointer; color:var(--txt); font-weight:700; font-size:15px; min-height:28px; overflow-wrap:anywhere; }
.cd-q summary:focus-visible { outline:2px solid var(--accent); outline-offset:2px; }
.cd-q p { margin:8px 0 0; color:var(--txt); font-size:14.5px; line-height:1.6; max-width:75ch; overflow-wrap:anywhere; }
.cd-results { display:grid; gap:8px; }
.cd a.cd-result { display:flex; gap:10px; align-items:baseline; background:var(--bg2); border:1px solid var(--edge);
                  border-radius:10px; padding:12px 14px; color:var(--txt); min-height:44px; }
.cd-result span { color:var(--dim); flex:1 1 auto; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.cd-result em { font-style:normal; font-weight:700; color:var(--accent); }

[data-theme="light"] .cd { --bg:#f3f7fb; --bg2:#ffffff; --bg3:#eaf1f8; --panel:#ffffff; --edge:rgba(0,145,213,0.25);
                           --txt:#0f172a; --dim:#51657c; --accent:#0077a8; --pos:#047a45; --neg:#c62828; }
[data-theme="light"] .cd-summary, [data-theme="light"] .cd-about { color:#1e293b; }
[data-theme="light"] .cd a.cd-cta, [data-theme="light"] .cd a.cd-rail-main,
[data-theme="light"] .cd-search button { color:#ffffff; }

@media (max-width:640px) {
  .cd-price { text-align:left; margin-left:0; width:100%; }
  .cd-chg { justify-content:flex-start; }
  .cd-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cd-stat dd { font-size:16px; }
  .cd-rail-a, .cd-cta { flex:1 1 100%; }
}
@media (prefers-reduced-motion:no-preference) { .cd-chip, .cd-rail-a, .cd-cta { transition:border-color .15s, filter .15s; } }
