/* thesafebay-threads.css — минималистичный одноколоночный скин в духе Threads для pleroma-fe */

/* ---- фон: сплошной тёмный, без фото ---- */
.underlay{ background:#0f0f0f !important; opacity:1 !important; }
.underlay::before,.underlay::after{ display:none !important; }
body,#app{ background:#0f0f0f !important; }

/* ---- одна центрированная колонка ---- */
.app-layout.container{
  display:flex !important;
  grid-template-columns:none !important;
  justify-content:center !important;
  max-width:100% !important;
  gap:0 !important;
  padding:var(--navbar-height, 50px) 0 0 0 !important;  /* верхний отступ под fixed-навбар */
}
/* правый столбец (уведомления) скрыт всегда */
.app-layout > .column.main ~ .column.-scrollable{ display:none !important; }
/* левый столбец скрываем ТОЛЬКО у залогиненных; аноним видит форму входа */
html[data-tsb-auth="1"] .app-layout > .column.-scrollable{ display:none !important; }
.app-layout > .column.main{
  flex:1 1 600px !important;
  max-width:600px !important;
  min-width:0 !important;
  margin:0 auto !important;
  padding:0 !important;
}

/* ---- топ-бар: плоский, по центру ---- */
.DesktopNav{
  background:#0f0f0f !important;
  border:none !important;
  box-shadow:0 1px 0 rgba(255,255,255,.06) !important;
}
.DesktopNav .inner-nav{ max-width:900px; margin:0 auto; }
.DesktopNav .nav-icon{ opacity:.8 }
.DesktopNav .nav-icon:hover{ opacity:1 }

/* ---- панели: плоско, без рамок/теней/фона ---- */
.column.main .panel,
.column.main .panel-body,
.column.main .panel-heading{
  background:transparent !important;
  border:none !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.column.main .panel{ margin:0 !important; }

/* заголовок ленты — компактный, сплошной фон (чтобы посты не просвечивали под sticky) */
.column.main .timeline-heading.panel-heading{
  padding:13px 14px !important;
  min-height:0 !important;
  font-size:.95em;
  background:#0f0f0f !important;
  border-bottom:1px solid rgba(255,255,255,.06) !important;
  z-index:5;
}
.column.main .timeline-heading .loadmore-text,
.column.main .timeline-heading .alert{ font-size:.8em; opacity:.6 }

/* ---- посты как в Threads: плоская строка + тонкий разделитель ---- */
.column.main .Status.panel-body,
.column.main .status-container{
  background:transparent !important;
  border:none !important;
  border-bottom:1px solid rgba(255,255,255,.08) !important;
  padding:16px 14px !important;
}
.column.main .Status .StatusContent,
.column.main .status-body{ font-size:1.02em; line-height:1.5; }

/* круглые аватары */
.Avatar,.avatar,.post-avatar,.Avatar img,img.avatar,.still-image.avatar img{
  border-radius:50% !important;
}

/* имя/хэндл/время — спокойнее */
.column.main .user-name,.column.main .display-name{ font-weight:600; }
.column.main .h-card .handle,.column.main .user-screen-name{ opacity:.55; }

/* действия под постом — тонкие приглушённые иконки с воздухом */
.column.main .status-actions{ gap:6px; margin-top:8px; opacity:.85; }
.column.main .status-actions .button-unstyled{ opacity:.7; }
.column.main .status-actions .button-unstyled:hover{ opacity:1; }

/* ---- плавающая кнопка «написать» (как в Threads) ---- */
.new-status-button{
  display:flex !important;
  position:fixed !important;
  right:22px !important; bottom:22px !important;
  width:56px !important; height:56px !important;
  align-items:center !important; justify-content:center !important;
  border-radius:18px !important;
  background:#f2f2f2 !important; color:#111 !important;
  box-shadow:0 8px 24px rgba(0,0,0,.45) !important;
  z-index:9000 !important; font-size:22px !important; border:none !important;
}
.new-status-button:hover{ background:#fff !important; }
/* плавающая кнопка «написать» — только у залогиненных */
html:not([data-tsb-auth="1"]) .new-status-button{ display:none !important; }
.new-status-button svg,.new-status-button i{ color:#111 !important; fill:#111 !important; }

/* ---- модалка нового поста: аккуратная, по центру ---- */
.post-form-modal-view .panel{ border-radius:16px !important; overflow:hidden; }

/* скроллбар тоньше */
.column.main::-webkit-scrollbar{ width:8px }
.column.main::-webkit-scrollbar-thumb{ background:rgba(255,255,255,.14); border-radius:8px }

/* узкий экран — колонка на всю ширину */
@media (max-width:620px){
  .app-layout > .column.main{ max-width:100% !important; }
}

/* ===== публичная главная (манифест + форма заявки) ===== */
#tsb-landing{ position:fixed; inset:0; z-index:100000; background:#0f0f0f; overflow-y:auto; -webkit-overflow-scrolling:touch; }
.tsb-land-wrap{ min-height:100%; display:flex; align-items:center; justify-content:center; padding:48px 18px; box-sizing:border-box; }
.tsb-land-card{ width:100%; max-width:560px; color:#e8e8e8; font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif; }
.tsb-land-brand{ font-size:30px; font-weight:700; letter-spacing:-.5px; margin-bottom:22px; }
.tsb-land-text p{ font-size:16px; line-height:1.6; margin:0 0 14px; color:#cfd3d8; }
.tsb-land-text b{ color:#fff; }
.tsb-land-welcome{ font-weight:700; color:#fff !important; font-size:18px !important; }
#tsb-apply-form{ display:flex; flex-direction:column; gap:12px; margin-top:26px; }
#tsb-apply-form input{ background:#191919; border:1px solid #2a2a2a; border-radius:12px; padding:14px 16px; color:#fff; font-size:16px; outline:none; }
#tsb-apply-form input:focus{ border-color:#4a4a4a; }
#tsb-apply-form button{ background:#f2f2f2; color:#111; border:none; border-radius:12px; padding:14px; font-size:16px; font-weight:700; cursor:pointer; }
#tsb-apply-form button:disabled{ opacity:.6; cursor:default; }
.tsb-err{ color:#ff8a8a; font-size:13px; min-height:1px; }
.tsb-land-thanks{ margin-top:26px; background:#141f16; border:1px solid #244a2a; border-radius:12px; padding:18px; font-size:15px; line-height:1.5; }
.tsb-land-login{ display:inline-block; margin-top:20px; color:#8a8f96; font-size:13px; text-decoration:none; }
.tsb-land-login:hover{ color:#cfd3d8; }
