/* Vibe basic styles - black labels, clean white layout */
.vibe-form label { display:block; margin:8px 0 4px; color:#000; font-weight:600; }
.vibe-form input[type="text"],
.vibe-form input[type="email"],
.vibe-form input[type="password"],
.vibe-form textarea,
.vibe-form select { width:100%; padding:10px; border:1px solid #ddd; border-radius:8px; background:#fff; color:#111; }
.vibe-form button { margin-top:10px; padding:10px 16px; border:0; border-radius:999px; background:#111; color:#fff; cursor:pointer; }
.vibe-error{ background:#ffe8e8; border:1px solid #f5b7b7; color:#9b1c1c; padding:10px; border-radius:8px; margin:10px 0; }
.vibe-success{ background:#e8ffef; border:1px solid #b7f5c6; color:#156a2c; padding:10px; border-radius:8px; margin:10px 0; }

.vibe-avatar { display:inline-flex; align-items:center; justify-content:center; border-radius:50%; color:#111; font-size:36px; box-shadow:0 2px 8px rgba(0,0,0,.08); }
.vibe-account { display:flex; gap:16px; align-items:flex-start; }
.vibe-account-avatar { min-width:96px; }
.vibe-icon-grid, .vibe-grad-grid { display:flex; gap:8px; flex-wrap:wrap; margin:8px 0 16px; }
.vibe-icon-grid .vibe-pick-icon { width:40px; height:40px; border-radius:8px; border:1px solid #ddd; background:#fff; }
.vibe-grad-grid .vibe-pick-grad { width:40px; height:40px; border-radius:8px; border:1px solid #ddd; background:#fff; }
.vibe-grad-grid .vibe-pick-grad span { display:block; width:100%; height:100%; border-radius:8px; }

.vibe-profile-header { display:flex; gap:16px; align-items:center; }
.vibe-profile-meta .vibe-name{ font-weight:700; font-size:1.25rem; color:#000; }
.vibe-profile-meta .vibe-username{ color:#333; }
.vibe-bio{ margin:6px 0; color:#000; }
.vibe-follow-stats span{ margin-right:16px; color:#000; }
.vibe-share { display:flex; gap:8px; margin:8px 0; }
.vibe-share input{ flex:1; }
.vibe-follow-btn { padding:8px 12px; border-radius:8px; background:#111; color:#fff; border:0; }

.vibe-tabs { margin-top:16px; }
.vibe-tab-nav { list-style:none; padding:0; display:flex; gap:8px; border-bottom:1px solid #eee; }
.vibe-tab-nav a { display:inline-block; padding:8px 12px; border-radius:8px 8px 0 0; color:#000; text-decoration:none; background:#f6f6f6; }
.vibe-tab-nav a.active { background:#fff; border:1px solid #eee; border-bottom:1px solid #fff; }

.vibe-user-posts { list-style:disc; padding-left:18px; }


/* Enforce black text within profile tabs and user posts */
.vibe-profile .vibe-tab-content, 
.vibe-profile .vibe-tab-content * { color:#000 !important; }
.vibe-profile .vibe-tab-content a { color:#000 !important; }
.vibe-user-posts, .vibe-user-posts * { color:#000 !important; }
.vibe-user-posts a { color:#000 !important; }


/* Icon grid visibility on white */
.vibe-icon-grid .vibe-pick-icon { display:flex; align-items:center; justify-content:center; }
.vibe-icon-grid .vibe-pick-icon i { color:#111; font-size:18px; line-height:1; }



/* Clickable follow counts + lists */
.vibe-follow-stats a { color:#000 !important; text-decoration:none; margin-right:12px; cursor:pointer; }
.vibe-follow-lists { margin-top:8px; }
.vibe-follow-lists ul { list-style:none; padding:0; margin:0; }
.vibe-follow-lists li { padding:6px 0; border-bottom:1px solid #eee; }

/* Ensure black text inside profile tabs & posts */
.vibe-profile .vibe-tab-content, .vibe-profile .vibe-tab-content * { color:#000 !important; }
.vibe-user-posts, .vibe-user-posts * { color:#000 !important; }
.vibe-user-posts a { color:#000 !important; }


/* Account section: make FA icons black on white background */
.vibe-account .vibe-avatar i,
.vibe-account-avatar i,
.vibe-account .vibe-icon-grid i { color:#000 !important; }


/* Force icon visibility in account section */
.vibe-account .vibe-icon-grid i,
.vibe-account i[class^="fa-"],
.vibe-account i[class*=" fa-"],
.vibe-account-avatar i { color:#000 !important; }


/* Dark chip style for icon choices in account page */
.vibe-account .vibe-icon-grid .vibe-pick-icon {
  background:#000 !important;
  border-color:#000 !important;
  color:#fff !important;
  border-radius:10px;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.12);
}
.vibe-account .vibe-icon-grid .vibe-pick-icon i {
  color:#fff !important;
}
.vibe-account .vibe-icon-grid .vibe-pick-icon:hover,
.vibe-account .vibe-icon-grid .vibe-pick-icon:focus {
  background:#111 !important;
  outline: none;
}
