.discovery-tabs,.personal-tabs { display:flex; gap:6px; border-bottom:1px solid var(--hime-line); padding:0 0 14px; margin:0 0 24px; }
.discovery-tabs a,.personal-tabs a { position:relative; flex:1; max-width:220px; min-height:44px; display:flex; align-items:center; justify-content:center; gap:8px; padding:10px; border-radius:24px; font-size:13px; font-weight:700; color:var(--hime-muted); }
.discovery-tabs a[aria-current],.personal-tabs a[aria-current] { color:var(--hime-berry); background:#fff; box-shadow:var(--hime-soft-shadow); border:1px solid var(--hime-line); }
.follow-button { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 18px; border:1px solid var(--hime-pink); border-radius:24px; background:var(--hime-pink); color:#fff; font:700 13px/1.4 var(--hime-font); white-space:nowrap; cursor:pointer; }
.follow-button[aria-pressed="true"] { background:#fff; color:var(--hime-berry); border-color:var(--hime-line); }
.follow-button:disabled { cursor:wait; opacity:.65; }
.follow-button:focus-visible,.performer-card-profile:focus-visible { outline:3px solid var(--hime-berry); outline-offset:3px; }
.follow-button-compact { min-height:36px; padding:7px 12px; font-size:12px; }
.follow-new-dot { display:inline-block; width:7px; height:7px; flex:none; border-radius:50%; background:#c41662; }
.follow-new-dot[hidden] { display:none; }
.bubble-browse-page .pop-sort.pop-sort-following, .bubble-browse-page .sort-tabs.sort-tabs-following { width:390px; grid-template-columns:repeat(4,minmax(0,1fr)); }
.pop-sort-following a { position:relative; padding-inline:5px; }
.pop-sort-following .follow-new-dot { position:absolute; right:6px; top:5px; }
.pop-sort-following a[aria-current] .follow-new-dot { background:white; }
.performer-directory-filters { display:flex; gap:12px; align-items:center; margin:24px 0 12px; }
.performer-directory-filters label:first-child { flex:1; max-width:520px; }
.performer-directory-filters input,.performer-directory-filters select { width:100%; min-height:44px; padding:10px 16px; border:1px solid var(--hime-line); border-radius:24px; background:#fff; color:var(--hime-ink); font:inherit; font-size:14px; }
.performer-directory-filters label:nth-child(2) { flex:0 1 240px; }
.directory-result-count { margin:12px 0 20px; font-size:13px; color:var(--hime-muted); }
.performer-directory-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.performer-directory-card { display:flex; flex-direction:column; align-items:flex-start; gap:18px; padding:22px; border:1px solid var(--hime-line); border-radius:24px; background:#fff; box-shadow:var(--hime-soft-shadow); }
.performer-card-profile { display:flex; align-items:center; gap:18px; width:100%; min-width:0; color:var(--hime-ink); }
.performer-card-profile img { width:88px; height:88px; flex:none; border-radius:50%; object-fit:cover; object-position:center 25%; }
.performer-card-profile h2 { margin:0 0 6px; font-size:20px; overflow-wrap:anywhere; }
.performer-card-profile p,.performer-card-profile small { margin:0; line-height:1.8; color:var(--hime-muted); }
.performer-card-tagline { margin:0; font-size:13px; line-height:1.7; flex:1; }
.performer-directory-card>.follow-button { width:100%; margin-top:auto; }
.performer-new-count { display:block; color:var(--hime-berry); font-size:12px; font-weight:700; }
.following-unavailable { border-top:1px solid var(--hime-line); margin-top:32px; padding-top:24px; color:var(--hime-muted); }
.following-unavailable h2 { font-size:16px; }.following-unavailable p,.following-help { font-size:13px; line-height:1.8; }
.following-help { margin-top:28px; padding-top:18px; border-top:1px solid var(--hime-line); color:var(--hime-muted); }
.following-feed-link { margin-bottom:12px; }.following-feed-link .bubble-icon { width:16px; height:16px; }
.performer-directory-card.is-unfollowed { opacity:.65; }
.profile-intro>.follow-button { margin-top:16px; }
.member-follow-item { display:flex; flex-direction:column; align-items:center; gap:10px; flex:none; }
.watch-follow { margin-top:12px; }
.follow-toast { position:fixed; z-index:10000; left:50%; bottom:calc(90px + env(safe-area-inset-bottom)); transform:translateX(-50%); display:flex; align-items:center; gap:14px; width:max-content; max-width:calc(100vw - 28px); padding:14px 18px; border-radius:18px; background:#342b35; color:#fff; font-size:13px; box-shadow:0 4px 20px #0002; }
.follow-toast[hidden] { display:none; }.follow-toast button { flex:none; border:1px solid #fff8; border-radius:14px; color:#fff; background:transparent; padding:7px 10px; cursor:pointer; }
.age-confirmation-header { display:flex; align-items:center; justify-content:center; min-height:100px; padding:16px; }
.age-confirmation-header .hime-logo { width:228px; height:auto; }
@media(max-width:1000px) { .performer-directory-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:700px) {
 .discovery-tabs,.personal-tabs { margin-bottom:20px; gap:2px; }.discovery-tabs a,.personal-tabs a { font-size:12px; padding:9px 5px; }
 .bubble-browse-page .pop-sort.pop-sort-following, .bubble-browse-page .sort-tabs.sort-tabs-following { width:100%; }.pop-sort-following a { font-size:12px; }
 .performer-directory-filters { flex-wrap:wrap; gap:10px; }.performer-directory-filters label:first-child { flex:1 0 100%; }.performer-directory-filters label:nth-child(2) { flex:1; }.performer-directory-filters button { min-width:80px; }
 .performer-directory-grid { grid-template-columns:minmax(0,1fr); gap:14px; }.performer-directory-card { padding:18px; gap:14px; }.performer-card-profile img { width:80px; height:80px; }
 .watch-information .watch-follow { display:none; }.watch-follow-dialog { margin-bottom:14px; }
}

.bubble-watch-page .performer-follow-shortcut { padding:0; border:0; background:transparent; box-shadow:none; }

.pop-performer-with-follow { display:flex; flex-direction:column; gap:10px; min-width:0; }
.pop-performer-with-follow>.pop-performer-card { flex:1; }
.pop-performer-with-follow>.follow-button { width:100%; }

@media(max-width:700px) {
 .bubble-browse-page .browse-toolbar-following { flex-wrap:wrap!important; }
 .bubble-browse-page .browse-toolbar-following>.sort-tabs-following { flex:0 0 100%; }
 .bubble-browse-page :is(.sort-tabs-following,.pop-sort-following) a { padding-inline:2px!important; }
}
