/* NeoFollower Category Directory — compact, future-proof nested accordion */
.smm-category-directory.nf-directory{max-width:var(--content-wide,1200px);margin:0 auto;padding:var(--space-5,1.25rem);color:var(--color-text,#f8fafc);font-family:var(--font-body,ui-sans-serif,system-ui,sans-serif)}
.nf-directory-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,440px);gap:var(--space-4,1rem);align-items:center;margin-bottom:var(--space-4,1rem);padding:var(--space-4,1rem);background:var(--color-surface,#081626);border:1px solid var(--color-border,rgba(255,255,255,.1));border-radius:var(--radius-xl,1rem);box-shadow:var(--shadow-sm,0 2px 8px rgba(0,0,0,.45))}
.nf-directory-eyebrow{display:inline-flex;margin-bottom:var(--space-1,.25rem);color:var(--color-text-gold,#E9A020);font-size:var(--type-eyebrow-size,.75rem);font-weight:var(--type-eyebrow-weight,600);letter-spacing:var(--type-eyebrow-tracking,.1em);text-transform:uppercase}
.nf-directory-title{margin:0;color:var(--color-text,#f8fafc);font-family:var(--font-display,ui-sans-serif,system-ui,sans-serif);font-size:clamp(1.35rem,2vw,1.85rem);line-height:var(--leading-tight,1.2);letter-spacing:var(--tracking-snug,-.015em)}
.nf-directory-search-wrap{display:grid;gap:var(--space-2,.5rem)}
.nf-directory-search-field{display:flex;align-items:center;gap:var(--space-2,.5rem);min-height:44px;padding:0 var(--space-3,.75rem);background:var(--color-glass-bg,rgba(8,22,38,.82));border:1px solid var(--color-border,rgba(255,255,255,.1));border-radius:var(--radius-full,9999px);box-shadow:var(--shadow-inner,inset 0 2px 4px rgba(0,0,0,.45));backdrop-filter:blur(16px) saturate(160%)}
.nf-directory-search-field:focus-within{border-color:var(--color-border-focus,rgba(74,173,219,.7));box-shadow:var(--shadow-focus,0 0 0 3px rgba(74,173,219,.45))}
.nf-directory-search-icon{color:var(--color-text-muted,#7A8BA8);font-size:var(--text-lg,1.25rem);line-height:1}.nf-directory-search{width:100%;min-width:0;color:var(--color-text,#f8fafc)!important;background:transparent!important;border:0!important;outline:0!important;box-shadow:none!important;font:inherit}.nf-directory-search::placeholder{color:var(--color-text-muted,#7A8BA8)}
.nf-directory-search-clear{width:28px;height:28px;display:inline-grid;place-items:center;color:var(--color-text-secondary,#A8BBCC);background:var(--highlight-hover,rgba(255,255,255,.05));border:1px solid var(--color-border,rgba(255,255,255,.1));border-radius:var(--radius-full,9999px);cursor:pointer;transition:var(--transition-base,all .18s ease)}.nf-directory-search-clear:hover{color:var(--color-text,#f8fafc);border-color:var(--color-border-strong,rgba(255,255,255,.18))}.nf-directory-stats{color:var(--color-text-muted,#7A8BA8);font-size:var(--type-caption-size,.75rem)}
.nf-directory-section{position:relative;margin-top:var(--space-4,1rem);padding:var(--space-3,.75rem);background:var(--color-surface,#081626);border:1px solid var(--color-border,rgba(255,255,255,.1));border-radius:var(--radius-xl,1rem);box-shadow:var(--shadow-sm,0 2px 8px rgba(0,0,0,.45));overflow:hidden}.nf-directory-section::before{content:"";position:absolute;inset:0;pointer-events:none;background:var(--gradient-surface-lit,linear-gradient(180deg,rgba(255,255,255,.04),transparent))}.nf-directory-section>*{position:relative;z-index:1}
.nf-directory-section-head{display:flex;justify-content:space-between;gap:var(--space-3,.75rem);align-items:flex-start;margin-bottom:var(--space-3,.75rem);padding:0 var(--space-1,.25rem)}.nf-directory-section-title{margin:0;color:var(--color-text,#f8fafc);font-family:var(--font-display,ui-sans-serif,system-ui,sans-serif);font-size:var(--text-lg,1.25rem);line-height:var(--leading-snug,1.35)}.nf-directory-section-subtitle{margin:var(--space-1,.25rem) 0 0;color:var(--color-text-secondary,#A8BBCC);font-size:var(--text-sm,.875rem)}.nf-directory-section-count{flex:0 0 auto;display:inline-flex;align-items:center;min-height:26px;padding:0 var(--space-2,.5rem);color:var(--color-text-gold,#E9A020);background:var(--color-primary-subtle,rgba(233,160,32,.12));border:1px solid var(--color-border-gold,rgba(233,160,32,.35));border-radius:var(--radius-full,9999px);font-size:var(--text-xs,.75rem);font-weight:var(--weight-semibold,600);white-space:nowrap}
.nf-dir-list{display:grid;gap:var(--space-2,.5rem)}.nf-dir-node{min-width:0}.nf-dir-toggle{min-width:0;min-height:42px;display:flex;align-items:center;gap:var(--space-3,.75rem);width:100%;padding:var(--space-2,.5rem) var(--space-3,.75rem);color:var(--color-text,#f8fafc)!important;text-align:left;background:var(--color-surface-2,#112239);border:1px solid var(--color-border-subtle,rgba(255,255,255,.07));border-radius:var(--radius-lg,.75rem);box-shadow:var(--shadow-xs,0 1px 2px rgba(0,0,0,.45));cursor:pointer;transition:var(--transition-base,all .18s ease)}.nf-dir-toggle:hover,.nf-dir-node.is-open>.nf-dir-toggle{background:var(--color-surface-3,#1B314F);border-color:var(--color-border-strong,rgba(255,255,255,.18))}.nf-dir-level-1>.nf-dir-toggle{min-height:40px;padding-block:var(--space-1-5,.375rem)}.nf-dir-level-1.is-high-demand>.nf-dir-toggle{border-color:var(--color-border-gold,rgba(233,160,32,.35));background:linear-gradient(90deg,var(--color-primary-subtle,rgba(233,160,32,.12)),var(--color-surface-2,#112239) 42%)}.nf-dir-priority-gap{height:var(--space-2,.5rem);margin:var(--space-1,.25rem) 0;border-top:1px solid var(--color-border-subtle,rgba(255,255,255,.07))}.nf-directory.is-searching .nf-dir-priority-gap{display:none}
.nf-dir-level-2>.nf-dir-toggle{background:rgba(17,34,57,.78)}.nf-dir-level-3>.nf-dir-toggle{background:rgba(17,34,57,.62)}.nf-dir-level-4>.nf-dir-toggle{background:rgba(17,34,57,.5)}.nf-dir-level-5>.nf-dir-toggle{background:rgba(17,34,57,.4)}
.nf-dir-toggle-icon{flex:0 0 auto;width:20px;height:20px;display:inline-grid;place-items:center;border-radius:var(--radius-full,9999px);background:var(--color-secondary-subtle,rgba(74,173,219,.12));border:1px solid var(--color-border,rgba(255,255,255,.1))}.nf-dir-toggle-icon::before{content:"+";color:var(--color-secondary,#4AADDB);font-size:var(--text-xs,.75rem);font-weight:var(--weight-bold,700);line-height:1}.nf-dir-node.is-open>.nf-dir-toggle .nf-dir-toggle-icon::before{content:"−";color:var(--color-primary,#E9A020)}
.nf-dir-copy{min-width:0;display:grid;gap:1px}.nf-dir-name{min-width:0;color:var(--color-text,#f8fafc);font-size:var(--text-sm,.875rem);font-weight:var(--weight-semibold,600);line-height:var(--leading-normal,1.5);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nf-dir-path{min-width:0;color:var(--color-text-muted,#7A8BA8);font-size:var(--text-xs,.75rem);line-height:var(--leading-normal,1.5);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nf-dir-meta{flex:0 0 auto;display:inline-flex;align-items:center;gap:var(--space-2,.5rem);margin-left:auto}.nf-dir-demand-badge{display:inline-flex;align-items:center;min-height:22px;padding:0 var(--space-2,.5rem);color:var(--color-text-gold,#E9A020);background:var(--color-primary-subtle,rgba(233,160,32,.12));border:1px solid var(--color-border-gold,rgba(233,160,32,.35));border-radius:var(--radius-full,9999px);font-size:var(--text-2xs,.625rem);font-weight:var(--weight-bold,700);letter-spacing:.02em;text-transform:uppercase;white-space:nowrap}.nf-dir-count,.nf-dir-level-badge,.nf-dir-panel-note{color:var(--color-text-secondary,#A8BBCC);font-size:var(--text-xs,.75rem);font-weight:var(--weight-medium,500);white-space:nowrap}.nf-dir-level-badge{color:var(--color-text-muted,#7A8BA8)}.nf-dir-chevron{color:var(--color-text-muted,#7A8BA8);transition:transform var(--duration-fast,140ms) var(--ease-out,ease)}.nf-dir-node.is-open>.nf-dir-toggle .nf-dir-chevron{transform:rotate(180deg);color:var(--color-primary,#E9A020)}
.nf-dir-panel{margin:var(--space-2,.5rem) 0 0;padding:var(--space-2,.5rem) var(--space-2,.5rem) var(--space-2,.5rem) var(--space-5,1.25rem);border-left:1px solid var(--color-border,rgba(255,255,255,.1))}.nf-dir-panel-note{display:block;margin-bottom:var(--space-2,.5rem)}.nf-dir-panel-actions{display:flex;flex-wrap:wrap;gap:var(--space-2,.5rem);align-items:center;margin-top:var(--space-2,.5rem)}.nf-dir-view{min-height:34px;display:inline-flex;align-items:center;justify-content:center;padding:0 var(--space-3,.75rem);color:var(--color-primary-text,#010915)!important;text-decoration:none!important;white-space:nowrap;background:var(--gradient-gold,linear-gradient(155deg,#F5C842 0%,#E9A020 52%,#C47A0A 100%));border:1px solid rgba(255,228,130,.22);border-radius:var(--radius-full,9999px);box-shadow:var(--shadow-gold,0 0 24px rgba(233,160,32,.25));font-size:var(--text-xs,.75rem);font-weight:var(--weight-bold,700);transition:var(--transition-base,all .18s ease)}.nf-dir-view:hover{background:var(--gradient-gold-hover,linear-gradient(155deg,#FFDE6E 0%,#F0AE28 52%,#D48C10 100%));transform:translateY(-1px);box-shadow:var(--shadow-gold-intense,0 0 52px rgba(233,160,32,.4))}.nf-dir-children{display:grid;gap:var(--space-2,.5rem)}
.nf-dir-node.is-search-hidden,.nf-directory-section[hidden],.nf-directory-empty[hidden],.nf-directory-search-clear[hidden],.nf-dir-panel[hidden]{display:none!important}.nf-directory.is-searching .nf-dir-node.is-search-match>.nf-dir-toggle{border-color:var(--color-border-gold,rgba(233,160,32,.35));box-shadow:0 0 0 1px var(--color-primary-subtle,rgba(233,160,32,.12))}.nf-directory-empty,.nf-directory-message,.smm-directory-error{margin:var(--space-4,1rem) 0;padding:var(--space-4,1rem);color:var(--color-text-secondary,#A8BBCC);background:var(--color-surface-2,#112239);border:1px solid var(--color-border,rgba(255,255,255,.1));border-radius:var(--radius-xl,1rem)}
@media(max-width:900px){.nf-directory-toolbar{grid-template-columns:1fr;align-items:stretch}}@media(max-width:640px){.smm-category-directory.nf-directory{padding:var(--space-3,.75rem)}.nf-directory-toolbar,.nf-directory-section{border-radius:var(--radius-lg,.75rem);padding:var(--space-3,.75rem)}.nf-directory-section-head{display:grid}.nf-directory-section-count{width:fit-content}.nf-dir-meta{gap:var(--space-1,.25rem)}.nf-dir-level-badge,.nf-dir-path{display:none}.nf-dir-panel{padding-left:var(--space-3,.75rem)}.nf-dir-view{width:100%}.nf-dir-panel-note{white-space:normal}}
