/* ForumX Premium User Group & Rank Studio */
@keyframes fxRankShine{0%,55%{transform:translateX(-180%) rotate(18deg)}82%,100%{transform:translateX(520%) rotate(18deg)}}
@keyframes fxRankPulse{0%,100%{filter:brightness(1);transform:translateY(0)}50%{filter:brightness(1.12);transform:translateY(-1px)}}
@keyframes fxRankAurora{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}

.fx-rank-stack{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;max-width:100%}
.fx-rank{vertical-align:middle;text-decoration:none}
.fx-rank-effect-pulse{animation:fxRankPulse 2.8s ease-in-out infinite}
.fx-rank-effect-aurora{background-size:220% 220%!important;animation:fxRankAurora 5s ease infinite}
.fx-rank-effect-none .fx-rank__shine,.fx-rank-effect-soft .fx-rank__shine{display:none}
.fx-rank-progress-card{margin:18px 0;padding:18px 20px;border:1px solid color-mix(in srgb,var(--accent) 18%,var(--line));border-radius:18px;background:linear-gradient(135deg,color-mix(in srgb,var(--card) 94%,#071225),color-mix(in srgb,var(--accent) 7%,var(--card-2)));box-shadow:0 18px 48px rgba(2,8,20,.14)}
.fx-rank-progress-head{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:12px;align-items:center}
.fx-rank-progress-icon{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;color:#fbbf24;background:linear-gradient(145deg,rgba(245,158,11,.18),rgba(79,140,255,.12));border:1px solid rgba(251,191,36,.24)}
.fx-rank-progress-icon svg{width:24px;height:24px}
.fx-rank-progress-head div{display:flex;flex-direction:column;gap:4px}.fx-rank-progress-head small,.fx-rank-progress-foot{color:var(--muted)}
.fx-rank-progress-head strong{font-size:1.05rem}.fx-rank-progress-head>b{color:color-mix(in srgb,var(--accent) 75%,white)}
.fx-rank-progress-track{height:9px;margin:16px 0 9px;border-radius:99px;overflow:hidden;background:color-mix(in srgb,var(--card-2) 82%,#020617)}
.fx-rank-progress-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),#8b5cf6,#f59e0b);box-shadow:0 0 18px color-mix(in srgb,var(--accent) 45%,transparent)}
.fx-rank-progress-foot{display:flex;justify-content:space-between;gap:14px;font-size:.82rem}

/* Admin shell */
.fx-rank-admin{--rank-panel:color-mix(in srgb,var(--card) 94%,#071120)}
.fx-rank-admin-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 30px;background:radial-gradient(circle at 88% 10%,rgba(79,140,255,.22),transparent 31%),linear-gradient(135deg,color-mix(in srgb,var(--card) 94%,#07152b),color-mix(in srgb,var(--accent) 8%,var(--card-2)))}
.fx-rank-admin-hero h1{margin:.3rem 0 .45rem;font-size:clamp(1.7rem,3vw,2.45rem)}.fx-rank-admin-hero p{max-width:760px;margin:0;color:var(--muted);line-height:1.65}
.fx-rank-tabs{display:flex;gap:8px;align-items:center;overflow-x:auto;padding:10px;margin:16px 0;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--card) 94%,transparent);scrollbar-width:none}.fx-rank-tabs::-webkit-scrollbar{display:none}
.fx-rank-tabs a{flex:0 0 auto;padding:10px 14px;border-radius:11px;color:var(--muted);font-size:.86rem;font-weight:750;text-decoration:none}.fx-rank-tabs a:hover,.fx-rank-tabs a.active{color:var(--text);background:color-mix(in srgb,var(--accent) 12%,var(--card-2));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 24%,var(--line))}
.fx-rank-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.fx-rank-overview-grid>.premium-panel{padding:22px}.fx-rank-overview-grid h2{margin:0 0 15px}
.fx-feature-list{display:grid;gap:12px}.fx-feature-list span{display:flex;flex-direction:column;gap:4px;padding:13px 14px;border:1px solid var(--line);border-radius:13px;background:color-mix(in srgb,var(--card-2) 68%,transparent)}.fx-feature-list small{color:var(--muted);line-height:1.45}

/* Studio */
.fx-rank-studio{display:grid;grid-template-columns:260px minmax(460px,1fr) minmax(320px,.78fr);gap:16px;align-items:start}
.fx-rank-library,.fx-rank-editor,.fx-rank-preview{padding:18px;min-width:0}.fx-rank-library,.fx-rank-preview{position:sticky;top:94px;max-height:calc(100vh - 120px);overflow:auto}
.fx-rank-library-list{display:grid;gap:8px;margin-top:13px}.fx-rank-library-list>a{display:flex;flex-direction:column;gap:8px;padding:11px;border:1px solid transparent;border-radius:13px;text-decoration:none;background:color-mix(in srgb,var(--card-2) 55%,transparent)}.fx-rank-library-list>a:hover,.fx-rank-library-list>a.active{border-color:color-mix(in srgb,var(--accent) 35%,var(--line));background:color-mix(in srgb,var(--accent) 8%,var(--card-2))}.fx-rank-library-list>a>span{min-width:0}.fx-rank-library-list small{color:var(--muted);font-size:.72rem}
.fx-rank-editor{display:grid;gap:15px}.fx-rank-editor-tabs{display:flex;gap:7px;padding:6px;border:1px solid var(--line);border-radius:13px;background:color-mix(in srgb,var(--card-2) 60%,transparent)}.fx-rank-editor-tabs button{flex:1;min-height:39px;border:0;border-radius:9px;background:transparent;color:var(--muted);font:inherit;font-weight:750;cursor:pointer}.fx-rank-editor-tabs button.active{color:var(--text);background:color-mix(in srgb,var(--accent) 12%,var(--card))}
.fx-rank-editor-panel{display:none;gap:14px}.fx-rank-editor-panel.active{display:grid}.fx-rank-editor-panel label{display:grid;gap:7px}.fx-rank-editor-panel textarea{resize:vertical}.fx-rank-editor-panel input[type=color]{height:46px;padding:4px}.fx-rank-editor-panel input[type=range]{width:100%}.fx-rank-editor-panel output{color:var(--muted);font-size:.78rem}
.fx-rank-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.fx-rank-check-grid label{display:flex!important;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--line);border-radius:11px;background:color-mix(in srgb,var(--card-2) 58%,transparent);font-size:.82rem}
.fx-code-editor{width:100%;min-height:380px;padding:16px;border-radius:13px;font:500 13px/1.65 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace!important;tab-size:2;background:#07101f!important;color:#dbeafe!important;border-color:#1e3558!important;white-space:pre}
.fx-code-help{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:11px 12px;border-radius:11px;background:color-mix(in srgb,var(--accent) 8%,var(--card-2));color:var(--muted);font-size:.78rem}.fx-code-help code{padding:3px 6px;border-radius:6px;background:#091426;color:#93c5fd}
.fx-rank-preview .section-header{position:sticky;top:-18px;z-index:3;padding:12px 0;background:var(--rank-panel)}.fx-device-switch{display:flex;padding:4px;border:1px solid var(--line);border-radius:10px}.fx-device-switch button{padding:7px 9px;border:0;border-radius:7px;background:transparent;color:var(--muted);font:inherit;font-size:.72rem;cursor:pointer}.fx-device-switch button.active{background:color-mix(in srgb,var(--accent) 13%,var(--card-2));color:var(--text)}
.fx-rank-preview-stage{display:grid;gap:14px;padding:14px;border:1px solid var(--line);border-radius:16px;background:radial-gradient(circle at 80% 0,rgba(79,140,255,.13),transparent 35%),#07101e;transition:max-width .2s ease}.fx-rank-preview-stage.is-mobile{max-width:330px;margin-inline:auto}
.fx-preview-post,.fx-preview-profile{position:relative;padding:16px;border:1px solid #1e3658;border-radius:14px;background:linear-gradient(160deg,#101f34,#0b1627);color:#eef5ff}.fx-preview-user{display:flex;align-items:center;gap:11px}.fx-preview-user>img,.fx-preview-profile>img{width:48px;height:48px;border-radius:50%;object-fit:cover}.fx-preview-user>div{display:grid;gap:3px}.fx-preview-user>div>span{color:#94a3b8;font-size:.75rem}.fx-preview-user [data-rank-preview-badge]{margin-top:5px}.fx-preview-post p{margin:16px 0 0;padding-top:14px;border-top:1px solid #1e3658;color:#bdcbe0;font-size:.82rem;line-height:1.55}
.fx-preview-profile{display:grid;justify-items:center;text-align:center;padding-top:42px;overflow:hidden}.fx-preview-cover{position:absolute;inset:0 0 auto;height:58px;background:linear-gradient(110deg,#1d4ed8,#7c3aed,#0e7490);opacity:.7}.fx-preview-profile>img{position:relative;width:64px;height:64px;border:3px solid #0b1627}.fx-preview-profile>strong{margin:7px 0}.fx-rank-import{margin-top:16px;padding:20px}.fx-rank-import form{display:grid;gap:10px}

/* Tables/lists */
.fx-rank-table{display:grid}.fx-rank-table-head,.fx-rank-table>article{display:grid;grid-template-columns:minmax(220px,1.4fr) .7fr .8fr .55fr 1fr;gap:14px;align-items:center;padding:13px 15px;border-bottom:1px solid var(--line)}.fx-rank-table-head{color:var(--muted);font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.fx-rank-table>article>div:first-child{display:grid;gap:7px}.fx-rank-table small{display:block;color:var(--muted);font-size:.73rem}.fx-rank-table .button-group{justify-content:flex-end;flex-wrap:wrap}
.fx-rule-timeline{display:grid;gap:10px;margin-top:16px}.fx-rule-timeline article{display:grid;grid-template-columns:minmax(210px,1fr) 120px minmax(220px,1fr) auto;gap:16px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--card-2) 58%,transparent)}.fx-rule-timeline article>span{color:var(--muted);font-size:.78rem}.fx-rule-timeline article>a{font-weight:700}
.fx-assignment-grid{display:grid;grid-template-columns:minmax(300px,.75fr) minmax(420px,1.25fr);gap:16px}.fx-assignment-grid>.premium-panel{padding:20px}.fx-assignment-grid form{display:grid;gap:12px}.fx-assignment-list{display:grid;gap:8px}.fx-assignment-list>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;border:1px solid var(--line);border-radius:12px}.fx-assignment-list span{display:grid;gap:3px}.fx-assignment-list small{color:var(--muted)}
.fx-version-list{display:grid;gap:8px}.fx-version-list>article{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 14px;border:1px solid var(--line);border-radius:13px;background:color-mix(in srgb,var(--card-2) 58%,transparent)}.fx-version-list>article>span{display:grid;gap:4px}.fx-version-list small{color:var(--muted)}

@media(max-width:1380px){.fx-rank-studio{grid-template-columns:230px minmax(430px,1fr)}.fx-rank-preview{grid-column:1/-1;position:static;max-height:none}.fx-rank-preview-stage{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:980px){.fx-rank-overview-grid,.fx-assignment-grid{grid-template-columns:1fr}.fx-rank-studio{grid-template-columns:1fr}.fx-rank-library,.fx-rank-preview{position:static;max-height:none}.fx-rank-library-list{grid-template-columns:repeat(2,minmax(0,1fr));max-height:380px;overflow:auto}.fx-rank-preview-stage{grid-template-columns:1fr}.fx-rank-table-head{display:none}.fx-rank-table>article{grid-template-columns:1fr 1fr;padding:14px}.fx-rank-table>article>div:first-child,.fx-rank-table>article>.button-group{grid-column:1/-1}.fx-rule-timeline article{grid-template-columns:1fr 1fr}.fx-rule-timeline article>span{grid-column:1/-1}}
@media(max-width:680px){.fx-rank-admin-hero{align-items:flex-start;flex-direction:column;padding:20px}.fx-rank-tabs{margin-inline:-2px}.fx-rank-library-list{grid-template-columns:1fr}.fx-rank-editor,.fx-rank-library,.fx-rank-preview{padding:14px}.fx-rank-editor .split-header{align-items:flex-start;flex-direction:column}.fx-rank-editor .button-group{width:100%}.fx-rank-editor .button-group>*{flex:1}.fx-rank-check-grid{grid-template-columns:1fr 1fr}.fx-rank-progress-head{grid-template-columns:40px minmax(0,1fr)}.fx-rank-progress-head>b{grid-column:2}.fx-rank-progress-foot{flex-direction:column;gap:4px}.fx-rank-stack-post{gap:4px}.fx-rank-stack-post .fx-rank{font-size:.7rem}.fx-rank-stack-post .fx-rank__copy small{display:none}.fx-rank-table>article,.fx-rule-timeline article{grid-template-columns:1fr}.fx-rule-timeline article>span{grid-column:auto}.fx-version-list>article{align-items:flex-start;flex-direction:column}}
