.dashboard-main { padding-top: 80px; min-height: 100vh; }
.dash-container { max-width: 900px; margin: 0 auto; padding: 2rem; display: flex; flex-direction: column; gap: 2rem; }
.dash-breadcrumb { margin-bottom: -0.5rem; }
.breadcrumb-link { font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.05em; color: var(--text-dim); text-decoration: none; transition: color 0.2s; }
.breadcrumb-link::before { content: '- '; }
.breadcrumb-link:hover { color: var(--text); }

.profile-card { background: var(--bg-card); border: 1px solid var(--border); padding: 1.5rem; display: flex; align-items: center; gap: 1.5rem; position: relative; }
.profile-avatar-wrap { width: 64px; height: 64px; border: 3px solid var(--orange); border-radius: 4px; overflow: hidden; flex-shrink: 0; }
.profile-avatar { width: 100%; height: 100%; object-fit: cover; }
.profile-name { font-size: 1.5rem; font-weight: 800; letter-spacing: -0.02em; }
.profile-id { font-size: 0.75rem; color: var(--text-dim); font-family: var(--mono); margin-top: 0.25rem; }
.profile-plan-badge { margin-left: auto; background: transparent; border: 1px solid var(--orange); color: var(--orange); font-size: 0.7rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; padding: 0.3rem 0.75rem; }

.dash-stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--border); border: 1px solid var(--border); }
.dash-stat-card { background: var(--bg-card); padding: 1.5rem; border-top: 2px solid transparent; }
.dash-stat-card.highlight-green { border-top-color: var(--green); }
.dash-stat-card.highlight-blue { border-top-color: var(--blue); }
.dash-stat-label { font-size: 0.65rem; text-transform: uppercase; letter-spacing: 0.08em; color: var(--text-dim); margin-bottom: 0.5rem; }
.dash-stat-value { font-size: 2rem; font-weight: 900; line-height: 1; margin-bottom: 0.5rem; font-family: var(--mono); }
.dash-stat-sub { font-size: 0.72rem; color: var(--text-dim); }

.api-key-section { background: var(--bg-card); border: 1px solid var(--border); padding: 1.5rem; }
.api-key-label { font-size: 0.65rem; text-transform: uppercase; letter-spacing: 0.08em; color: var(--text-dim); margin-bottom: 0.75rem; }
.api-key-row { display: flex; align-items: center; gap: 1rem; background: #0a0a0a; border: 1px solid var(--orange); padding: 0.75rem 1rem; border-radius: 2px; margin-bottom: 0.75rem; }
.api-key-display { font-family: var(--mono); font-size: 0.85rem; color: var(--orange); flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.api-key-usage { display: flex; align-items: center; gap: 1rem; margin-bottom: 0.75rem; }
.api-key-bar-wrap { flex: 1; height: 4px; background: var(--border); border-radius: 2px; overflow: hidden; }
.api-key-bar { height: 100%; background: var(--orange); border-radius: 2px; transition: width 0.5s; }
.api-key-usage-text { font-size: 0.72rem; color: var(--text-dim); white-space: nowrap; }
.api-key-hint { font-size: 0.78rem; color: var(--text-dim); }
.inline-code { font-family: var(--mono); font-size: 0.78rem; color: var(--orange); }

.quick-access-title { font-size: 1.1rem; font-weight: 700; margin-bottom: 1rem; }
.quick-access-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--border); border: 1px solid var(--border); }
.quick-card { background: var(--bg-card); padding: 1.25rem; text-decoration: none; color: var(--text); transition: background 0.2s; display: block; }
.quick-card:hover { background: var(--bg-card2); }
.quick-card-title { font-size: 0.85rem; font-weight: 700; margin-bottom: 0.4rem; color: var(--text); }
.quick-card-title::after { content: ' -'; color: var(--orange); }
.quick-card-desc { font-size: 0.75rem; color: var(--text-muted); line-height: 1.5; }

@media (max-width: 768px) {
  .dash-stats-grid { grid-template-columns: repeat(2, 1fr); }
  .quick-access-grid { grid-template-columns: repeat(2, 1fr); }
  .profile-card { flex-wrap: wrap; }
  .profile-plan-badge { margin-left: 0; }
  /* Hide Playground ghost btn in dashboard nav on mobile */
  .nav-actions-auth a.btn-ghost { display: none; }
  /* Compact upgrade + logout buttons */
  .nav-actions-auth .btn-outline, .nav-actions-auth .btn-ghost { font-size: 0.68rem; padding: 0.3rem 0.6rem; }
}

@media (max-width: 480px) {
  .dashboard-main { padding-top: 70px; }
  .dash-container { padding: 1rem; gap: 1.25rem; }
  .profile-card { padding: 1.25rem; gap: 1rem; }
  .profile-avatar-wrap { width: 52px; height: 52px; }
  .profile-name { font-size: 1.25rem; }
  .dash-stat-value { font-size: 1.5rem; }
  .dash-stat-card { padding: 1.1rem 1rem; }
  .api-key-section { padding: 1.1rem; }
  .api-key-row { flex-wrap: wrap; gap: 0.5rem; }
  .api-key-display { font-size: 0.75rem; min-width: 0; }
  .quick-access-grid { grid-template-columns: 1fr 1fr; }
  .quick-card { padding: 1rem; }
  .quick-card-title { font-size: 0.78rem; }
  .quick-card-desc { font-size: 0.7rem; }
}
