/* OgraFi profile page — layout rules adapted from the supplied Repost profile.html/app.css.
   Kept isolated from the shared theme stylesheets so other pages are unaffected. */

/* The page shell follows the original Repost 55px sidebar + content grid. */
.main {
  display: grid;
  min-width: 0;
  margin-top: var(--header-offset);
}
.main__grid-full {
  grid-template-columns: 55px minmax(280px, auto);
  gap: var(--main-gap);
}
.main__grid-feed {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(280px, auto) 320px;
  gap: var(--main-gap);
}
.main__grid-feed > *,
.main__grid-feed .feed,
.main__grid-feed .tabs-content {
  min-width: 0;
}
.feed {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--main-gap);
  padding-bottom: var(--main-gap);
}

/* Original Repost widgets */
.widgets {
  display: flex;
  flex-direction: column;
  gap: var(--main-gap);
}
.widget {
  --widget-gap: 15px;
  --widget-content-bleed: 10px;
  --widget-list-gap: 2px;
  display: flex;
  flex-direction: column;
  gap: var(--widget-gap);
}
.widget__title { margin: 0; }
.widget__footer { font-size: .8rem; }
.widget__content { min-width: 0; }
.widget__content--bleed { margin-inline: calc(var(--widget-content-bleed) * -1); }
.widget__content--full-bleed { margin-inline: calc(var(--card-spacer-x) * -1); }
.widget__content-offset { margin-top: 10px; }
.channel-subscriber-grid {
  display: grid;
  grid-template-columns: repeat(6, 40px);
  gap: 10px 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.channel-subscriber-grid > li { width: 40px; height: 40px; }

/* Original Repost profile card */
.profile {
  position: relative;
  padding-bottom: 0;
  margin-bottom: 20px;
}
.profile__offset { padding-bottom: 20px; }
.profile__avatar {
  position: relative;
  width: 100px;
  height: 100px;
  border-radius: 50%;
}
.profile__avatar img {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
}
.profile__online::before {
  content: "";
  position: absolute;
  right: 13px;
  bottom: 6px;
  width: 10px;
  height: 10px;
  border: 2px solid var(--card-bg);
  border-radius: 50%;
  background-color: var(--color-green);
}
.profile__content {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 20px;
  margin-top: 16px;
}
.profile__info {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 5px;
}
.profile__name {
  display: flex;
  align-items: center;
  gap: 5px;
}
.profile__name h1 { margin-bottom: 0; }
.profile__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
}
.profile__rate {
  font-family: var(--font-secondary);
  font-size: .9rem;
  font-weight: 600;
}
.profile__rate .ratingplus { color: var(--color-green); }
.profile__rate .ratinminus { color: var(--color-red); }
.profile__top {
  display: flex;
  align-items: center;
  gap: 5px;
  font-family: var(--font-secondary);
  font-size: .9rem;
  font-weight: 600;
}
.profile__signature { margin-top: 15px; }
.profile__nav { margin-top: 20px; }
.profile__about {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.profile__site {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 5px;
  font-size: .85rem;
}
.profile__site span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.profile__about-info { margin-top: 10px; }
.profile__social {
  display: flex;
  gap: 5px;
  margin-top: 15px;
}
.profile__aside {
  position: sticky;
  top: calc(var(--header-height) + var(--header-offset));
  align-self: start;
  min-width: 0;
}
.profile__aside > aside { min-width: 0; }
.profile__aside .widget { min-width: 0; }

/* Keep the reference proportions as the viewport narrows. */
@media screen and (max-width: 1120px) {
  .main__grid-feed { grid-template-columns: minmax(0, 1fr) 290px; }
}
@media screen and (max-width: 920px) {
  .main__grid-full { grid-template-columns: minmax(0, 1fr); }
  .main__grid-feed { grid-template-columns: minmax(0, 1fr); }
  .profile__aside {
    position: static;
    order: -1;
  }
  .profile__aside-footer { display: none; }
}
@media screen and (max-width: 520px) {
  .profile__content { grid-template-columns: minmax(0, 1fr); }
  .profile__avatar { width: 80px; height: 80px; }
  .channel-subscriber-grid {
    grid-template-columns: repeat(6, minmax(0, 40px));
    justify-content: start;
  }
}

/* Profile action dropdown: keep the block action inside the same menu surface. */
.profile__block-form {
  display: block;
  width: 100%;
  margin: 0;
}
.profile__block-action {
  display: flex;
  width: 100%;
  min-height: var(--dropdown-item-min-height, 35px);
  align-items: center;
  padding: 0 var(--dropdown-item-padding-x, 10px);
  border: 0;
  border-radius: var(--dropdown-item-radius, 11px);
  background: transparent;
  color: var(--text-color);
  font: inherit;
  font-size: var(--dropdown-item-font-size, .85rem);
  line-height: 1.2;
  text-align: left;
  cursor: pointer;
}
.profile__block-action:hover,
.profile__block-action:focus-visible {
  outline: 0;
  color: var(--title-color);
  background: var(--gray-100);
}


/* Profile follow and direct-message actions */
.profile__actions{grid-column:2;grid-row:1;display:flex!important;align-items:center;justify-content:flex-end;gap:10px;align-self:start;margin:0 0 0 auto;padding-top:0!important}.profile__content>.profile__info{grid-column:1;grid-row:1;min-width:0}
.profile__actions form{margin:0}
.profile__message-button{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;border:1px solid var(--border-color,#e5e9f0);border-radius:50%;background:var(--card-bg,#fff);color:var(--color-title,#344054);cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}
.profile__message-button:hover{background:var(--color-primary-soft,#eff6ff);border-color:var(--color-primary,#1769f5);color:var(--color-primary,#1769f5)}
.profile__subscribe-button{display:inline-flex;min-height:42px;align-items:center;justify-content:center;padding:0 19px;border:1px solid var(--color-primary,#1769f5);border-radius:12px;background:var(--color-primary,#1769f5);color:#fff!important;font-size:.9rem;font-weight:650;line-height:1;text-decoration:none!important;white-space:nowrap;cursor:pointer;transition:background-color .15s,border-color .15s}
.profile__subscribe-button:hover{background:var(--color-primary-hover,#075bdc);border-color:var(--color-primary-hover,#075bdc)}
.profile__subscribe-button.is-following{background:var(--card-bg,#fff);color:var(--color-title,#344054)!important;border-color:var(--border-color,#e5e9f0)}
.profile__subscribe-button.is-following:hover{background:#fff1f2;border-color:#e11d48;color:#e11d48!important}
@media(max-width:575px){.profile__content{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px}.profile__actions{grid-column:2;grid-row:1;gap:7px;margin-bottom:0}.profile__message-button{width:38px;height:38px}.profile__subscribe-button{min-height:38px;padding-inline:13px;font-size:.82rem}}
