/* ============================================================
   FinancePress Extra Components - Scroll Top, Comments, Search Form
   ============================================================ */

/* ---- Scroll to Top ---- */
.fp-scroll-top {
    position: fixed;
    bottom: var(--fp-space-6);
    right: var(--fp-space-6);
    width: 44px;
    height: 44px;
    background: var(--fp-navy);
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    box-shadow: var(--fp-shadow-lg);
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: all var(--fp-duration-base) var(--fp-ease);
    z-index: 99;
    cursor: pointer;
    border: none;
}
.fp-scroll-top--visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}
.fp-scroll-top:hover { background: var(--fp-gold); color: var(--fp-navy); }

/* ---- Header Scrolled State ---- */
.fp-header--scrolled { box-shadow: var(--fp-shadow-md); }

/* ---- Search Form ---- */
.search-form { display: flex; gap: var(--fp-space-2); }
.search-form label { flex: 1; }
.search-form .search-field { width: 100%; }
.search-form .search-submit { flex-shrink: 0; }

/* ---- Comments ---- */
.fp-comment-list { list-style: none; display: flex; flex-direction: column; gap: var(--fp-space-6); margin-bottom: var(--fp-space-8); }
.fp-comment { padding: var(--fp-space-5); background: var(--fp-bg-subtle); border-radius: var(--fp-radius-lg); border: 1px solid var(--fp-border); }
.fp-comment__header { display: flex; align-items: center; gap: var(--fp-space-3); margin-bottom: var(--fp-space-4); }
.fp-comment__avatar img { width: 40px; height: 40px; border-radius: 50%; }
.fp-comment__meta { flex: 1; }
.fp-comment__author { font-weight: 600; font-size: var(--fp-text-sm); display: block; }
.fp-comment__date { font-size: var(--fp-text-xs); color: var(--fp-text-muted); }
.fp-comment__actions { font-size: var(--fp-text-xs); }
.fp-comment__actions a { color: var(--fp-gold); }
.fp-comment__moderation { font-size: var(--fp-text-xs); color: var(--fp-bear); margin-bottom: var(--fp-space-3); }
.fp-comment__content { font-size: var(--fp-text-sm); line-height: 1.7; }
.fp-comments-closed { font-size: var(--fp-text-sm); color: var(--fp-text-muted); padding: var(--fp-space-4); background: var(--fp-bg-subtle); border-radius: var(--fp-radius-md); text-align: center; }
.fp-comment-reply-title { font-family: var(--fp-font-display); font-size: var(--fp-text-xl); font-weight: 700; margin-bottom: var(--fp-space-6); }

/* ---- Page Links ---- */
.fp-page-links .page-links-title { margin-right: var(--fp-space-2); font-size: var(--fp-text-sm); color: var(--fp-text-muted); }
