/* =========================================================
   R2V Unified Portal — profile.css
   ========================================================= */

.r2v-prof {
  display: grid; gap: 22px;
  grid-template-columns: 280px 1fr;
}
@media (max-width: 980px) { .r2v-prof { grid-template-columns: 1fr; } }

.r2v-prof__side {
  position: sticky; top: calc(var(--r2v-topbar-h) + 20px); align-self: flex-start;
}
.r2v-prof__card {
  background: var(--r2v-surface); border: 1px solid var(--r2v-border);
  border-radius: var(--r2v-radius-lg); padding: 18px;
  box-shadow: var(--r2v-shadow-1); text-align: center;
}
.r2v-prof__avatar {
  width: 110px; height: 110px; border-radius: 50%; margin: 0 auto 12px;
  display: block; object-fit: cover;
  border: 4px solid #fff; box-shadow: 0 0 0 2px var(--r2v-border), 0 6px 16px rgba(0,0,0,.10);
}
.r2v-prof__name { font-family: var(--r2v-font-head); font-size: 20px; font-weight: 700; margin: 6px 0 2px; }
.r2v-prof__role { font-size: 12px; color: var(--r2v-ink-mute); letter-spacing: .04em; text-transform: uppercase; }

.r2v-prof__nav {
  margin-top: 16px;
  display: flex; flex-direction: column; gap: 2px;
}
.r2v-prof__nav button {
  display: flex; align-items: center; gap: 10px;
  padding: 10px 12px; border-radius: 10px; border: 0; background: transparent;
  color: var(--r2v-ink); font: inherit; cursor: pointer; text-align: left;
}
.r2v-prof__nav button:hover { background: var(--r2v-surface-2); }
.r2v-prof__nav button.is-active {
  background: var(--r2v-blue-soft); color: var(--r2v-blue-dark); font-weight: 700;
}
.r2v-prof__nav button i { width: 16px; height: 16px; color: var(--r2v-ink-mute); }
.r2v-prof__nav button.is-active i { color: var(--r2v-blue-dark); }

.r2v-prof__body { display: flex; flex-direction: column; gap: 18px; }

.r2v-doc-row {
  display: grid; grid-template-columns: auto 1fr auto; gap: 14px; align-items: center;
  padding: 14px 16px; border: 1px solid var(--r2v-border); border-radius: 12px;
  background: var(--r2v-surface);
}
.r2v-doc-row + .r2v-doc-row { margin-top: 10px; }
.r2v-doc-row__icon {
  width: 44px; height: 44px; border-radius: 12px;
  display: grid; place-items: center;
  background: var(--r2v-cream-2); color: var(--r2v-blue-dark);
}
.r2v-doc-row__title { font-weight: 700; }
.r2v-doc-row__sub   { color: var(--r2v-ink-soft); font-size: 13px; }
.r2v-doc-row[data-status="expired"] { background: var(--r2v-red-soft); border-color: #F2C4C1; }
.r2v-doc-row[data-status="warn"]    { background: #FBEFC8; border-color: #F1DD9A; }
.r2v-doc-row[data-status="ok"]      { background: #E1F4EC; border-color: #B7E5D2; }
