.dashboard-page{padding:42px 8% 80px;max-width:1500px;margin:auto}.dashboard-loading,.dashboard-error,.dashboard-guest{min-height:55vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:14px}.dashboard-spinner{width:42px;height:42px;border:4px solid #dbeafe;border-top-color:var(--blue);border-radius:50%;animation:dashboard-spin .8s linear infinite}@keyframes dashboard-spin{to{transform:rotate(360deg)}}.dashboard-error,.dashboard-guest{background:#fff;border:1px solid var(--border);border-radius:28px;padding:48px;box-shadow:var(--shadow)}.dashboard-error>span,.guest-icon{font-size:56px}.dashboard-error button{border:0;background:var(--blue);color:#fff;padding:12px 20px;border-radius:12px;font-weight:800;cursor:pointer}.dashboard-hero{background:linear-gradient(135deg,#eff6ff,#fff 55%,#ecfeff);border:1px solid var(--border);border-radius:28px;padding:28px;display:flex;align-items:center;justify-content:space-between;gap:24px;box-shadow:0 16px 45px rgba(37,99,235,.08)}.dashboard-user{display:flex;align-items:center;gap:20px}.dashboard-user img{width:82px;height:82px;border-radius:24px;object-fit:cover;border:4px solid #fff;box-shadow:0 10px 30px rgba(15,23,42,.12)}.dashboard-kicker,.panel-heading span{color:var(--blue);font-size:13px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.dashboard-user h1{font-size:34px;margin:6px 0}.dashboard-user p{color:var(--muted)}.dashboard-hero-actions{display:flex;gap:12px;flex-wrap:wrap}.dashboard-refresh{padding:12px 18px;border-radius:12px;border:1px solid var(--border);background:#fff;font-weight:800;cursor:pointer}.dashboard-level-card{margin-top:22px;background:#0f172a;color:#fff;border-radius:24px;padding:25px 28px;display:grid;grid-template-columns:minmax(260px,.7fr) 1.3fr;align-items:center;gap:32px}.level-main{display:flex;align-items:center;gap:18px}.level-badge{width:68px;height:68px;border-radius:20px;background:rgba(255,255,255,.12);display:grid;place-items:center;font-size:34px}.level-main span,.level-progress-label span{color:#cbd5e1}.level-main h2{font-size:28px;margin:3px 0}.level-progress-label{display:flex;justify-content:space-between;gap:15px;margin-bottom:10px}.dashboard-progress{height:12px;border-radius:999px;background:rgba(255,255,255,.14);overflow:hidden}.dashboard-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,#38bdf8,#818cf8);border-radius:inherit;transition:width .5s}.dashboard-stats{display:grid;grid-template-columns:repeat(6,1fr);gap:15px;margin:22px 0}.dashboard-stats article{background:#fff;border:1px solid var(--border);border-radius:20px;padding:20px;display:flex;align-items:center;gap:13px}.dashboard-stats article>span{font-size:27px}.dashboard-stats strong{display:block;font-size:24px}.dashboard-stats small{color:var(--muted)}.dashboard-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:22px;margin-top:22px}.dashboard-bottom-grid{grid-template-columns:1.3fr .7fr}.dashboard-panel{background:#fff;border:1px solid var(--border);border-radius:24px;padding:24px;box-shadow:0 10px 35px rgba(15,23,42,.05)}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:22px}.panel-heading h2{font-size:21px;margin-top:5px}.panel-heading>a{color:var(--blue);font-weight:800;text-decoration:none}.activity-chart{height:210px;display:grid;grid-template-columns:repeat(7,1fr);gap:12px;align-items:end;border-bottom:1px solid #e2e8f0;padding:10px 4px 0}.activity-day{text-align:center;height:100%;display:grid;grid-template-rows:24px 1fr 27px}.activity-value{font-size:12px;color:var(--muted);font-weight:800}.activity-bar-wrap{height:100%;display:flex;align-items:end;justify-content:center}.activity-bar-wrap span{display:block;width:min(42px,72%);background:linear-gradient(180deg,#60a5fa,#2563eb);border-radius:10px 10px 3px 3px;min-height:4px}.activity-day small{padding-top:7px;color:var(--muted);font-weight:700}.panel-note{margin-top:15px;color:var(--muted);font-size:13px;line-height:1.55}.next-achievement{display:flex;gap:16px;align-items:flex-start;background:#f8fafc;border:1px solid #e2e8f0;padding:20px;border-radius:18px}.next-achievement-icon{font-size:42px}.next-achievement-copy{flex:1}.next-achievement-copy>span{font-size:12px;color:var(--blue);font-weight:900;text-transform:uppercase}.next-achievement-copy h3{margin:5px 0}.next-achievement-copy p,.next-achievement-copy small{color:var(--muted)}.next-achievement-progress{height:9px;background:#e2e8f0;border-radius:999px;overflow:hidden;margin:14px 0 7px}.next-achievement-progress span{display:block;height:100%;background:linear-gradient(90deg,#22c55e,#3b82f6);border-radius:inherit}.all-achievements-done{text-align:center;width:100%}.all-achievements-done span{font-size:50px}.recent-documents{display:grid;gap:10px}.recent-document{display:grid;grid-template-columns:auto 1fr auto auto;gap:13px;align-items:center;padding:14px;border:1px solid #e2e8f0;border-radius:16px;text-decoration:none;transition:.2s}.recent-document:hover{border-color:#93c5fd;transform:translateY(-1px)}.recent-document-icon{width:43px;height:43px;display:grid;place-items:center;background:#eff6ff;border-radius:12px;font-size:22px}.recent-document-info h3{font-size:15px;margin-bottom:4px}.recent-document-info p,.recent-document-stats{font-size:12px;color:var(--muted)}.recent-document-stats{display:flex;gap:10px}.recent-document-open{font-size:28px;color:#94a3b8}.quick-actions{display:grid;gap:11px}.quick-actions>a{display:flex;align-items:center;gap:13px;padding:15px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;text-decoration:none}.quick-actions>a:hover{background:#eff6ff;border-color:#bfdbfe}.quick-actions>a>span{font-size:25px}.quick-actions strong,.quick-actions small{display:block}.quick-actions small{color:var(--muted);margin-top:3px}.dashboard-empty{text-align:center;padding:30px}.dashboard-empty>span{font-size:38px}.dashboard-empty a{display:inline-block;margin-top:12px;color:var(--blue);font-weight:800}.nav-links a.active{color:var(--blue)}
@media(max-width:1100px){.dashboard-stats{grid-template-columns:repeat(3,1fr)}.dashboard-grid,.dashboard-bottom-grid{grid-template-columns:1fr}}
@media(max-width:760px){.dashboard-page{padding:24px 4% 60px}.dashboard-hero,.dashboard-user{align-items:flex-start}.dashboard-hero{flex-direction:column}.dashboard-user h1{font-size:26px}.dashboard-user img{width:65px;height:65px}.dashboard-level-card{grid-template-columns:1fr;gap:20px}.dashboard-stats{grid-template-columns:repeat(2,1fr)}.dashboard-stats article{padding:15px}.activity-chart{gap:5px}.recent-document{grid-template-columns:auto 1fr auto}.recent-document-stats{grid-column:2/3}.recent-document-open{grid-row:1/3;grid-column:3}.level-progress-label{font-size:13px}.dashboard-panel{padding:18px}}
@media(max-width:430px){.dashboard-stats{grid-template-columns:1fr}.dashboard-user{flex-direction:column}.dashboard-hero-actions{width:100%}.dashboard-hero-actions>*{flex:1}.panel-heading{align-items:flex-start}.activity-chart{height:180px}}


/* V0.92 - 2.5: XP history integration */
.recent-xp-history {
  display: grid;
  gap: 10px;
}

.xp-history-item {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border: 1px solid rgba(37, 99, 235, 0.1);
  border-radius: 14px;
  background: rgba(248, 250, 252, 0.82);
}

.xp-history-icon {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 6px 18px rgba(15, 23, 42, 0.08);
  font-size: 20px;
}

.xp-history-item div {
  min-width: 0;
}

.xp-history-item strong,
.xp-history-item small {
  display: block;
}

.xp-history-item strong {
  color: #172033;
}

.xp-history-item small {
  margin-top: 3px;
  color: #748094;
}

.xp-history-item b {
  color: #0f9f6e;
  white-space: nowrap;
}

@media (max-width: 560px) {
  .xp-history-item {
    grid-template-columns: 38px minmax(0, 1fr);
  }

  .xp-history-icon {
    width: 38px;
    height: 38px;
  }

  .xp-history-item b {
    grid-column: 2;
  }
}
