/* Shared components, with theme colours and light/dark surfaces kept distinct. */
html:is([data-theme="firecrak"],[data-theme="xstarstheme"]){--ds-bg:#0a0d14;--ds-panel:#121923;--ds-text:#edf2f8;--ds-muted:#a2b0c3;--ds-border:#293447;--ds-accent:#ec693c;--ds-soft:#251b19;color-scheme:dark}
html[data-theme="xstarstheme"]{--ds-bg:#090b16;--ds-panel:#14182a;--ds-border:#2b304b;--ds-accent:#be8bff;--ds-soft:#241c3e}
html[data-bs-theme="light"]:is([data-theme="firecrak"],[data-theme="xstarstheme"]){--ds-bg:#f5f5f4;--ds-panel:#fff;--ds-text:#202631;--ds-muted:#596577;--ds-border:#dce1e8;--ds-accent:#a74424;--ds-soft:#fbeee7;color-scheme:light}
html[data-theme="xstarstheme"][data-bs-theme="light"]{--ds-bg:#f4f5fc;--ds-panel:#fff;--ds-text:#20263e;--ds-muted:#616987;--ds-border:#dee1f0;--ds-accent:#6840bb;--ds-soft:#efebff}
html:is([data-theme="firecrak"],[data-theme="xstarstheme"]) body{background:var(--ds-bg);color:var(--ds-text);--fc-bg:var(--ds-bg);--fc-surface:var(--ds-panel);--fc-border:var(--ds-border);--fc-text:var(--ds-text);--fc-muted:var(--ds-muted);--fc-accent:var(--ds-accent)}
html:is([data-theme="firecrak"],[data-theme="xstarstheme"]) :is(.fc-header,.fc-sidebar,.fc-footer,.fc-search,.post-content,.sidebar-widget,.profile-details,.dropdown-menu,.modal-content,.card){background:var(--ds-panel);color:var(--ds-text);border-color:var(--ds-border)}
html:is([data-theme="firecrak"],[data-theme="xstarstheme"]) :is(.form-control,.form-select){background:var(--ds-bg);color:var(--ds-text);border-color:var(--ds-border)}
html:is([data-theme="firecrak"],[data-theme="xstarstheme"]) :is(.entry-content,.post-title,.profile-username,.username,.post-item .title){color:var(--ds-text)}
html:is([data-theme="firecrak"],[data-theme="xstarstheme"]) :is(.fc-sidebar nav>a,.dropdown-item){color:var(--ds-text)}
html:is([data-theme="firecrak"],[data-theme="xstarstheme"]) .fc-sidebar nav>a:is(.active,:hover){background:var(--ds-soft);color:var(--ds-accent);border-inline-start:3px solid var(--ds-accent)}
html:is([data-theme="firecrak"],[data-theme="xstarstheme"]) .fc-search input{color:var(--ds-text)}
html[data-bs-theme="dark"] .ds-logo-light,html[data-bs-theme="light"] .ds-logo-dark{display:none!important}
.ds-theme-toggle{background:transparent;border:1px solid var(--ds-border,#8993a4);color:inherit;border-radius:50%;width:32px;height:32px;flex-shrink:0;font-size:20px;cursor:pointer}.fc-header-actions{gap:12px}.fc-category-pills{scrollbar-width:thin}.fc-category-pills a{background:var(--ds-panel);color:var(--ds-text)}.fc-category-pills a:first-child{color:white}
.fc-grid.ds-popular-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.fc-grid.ds-related-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.fc-grid.ds-trending-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.ds-video-counts{display:flex;align-items:center;gap:20px;padding:14px 0;color:var(--ds-muted);font-size:13px;border-bottom:1px solid var(--ds-border)}.ds-post-models{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin:16px 0}.ds-post-models a,.ds-tag-chip{padding:6px 12px;border:1px solid var(--ds-border,#cdd4e0);border-radius:30px;background:var(--ds-soft,#eef1f8);color:var(--ds-accent,#6156af);font-size:13px}.ds-tag-chip{display:inline-flex;align-items:center;gap:9px}.ds-tag-chip button{border:0;background:none;color:inherit;font-size:20px;line-height:1;cursor:pointer}.post-share-buttons{padding-top:20px;border-top:1px solid var(--ds-border);margin-top:24px}.ds-adjacent{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.ds-adjacent a{display:flex;gap:12px;align-items:center;padding:14px;border:1px solid var(--ds-border);border-radius:12px;background:var(--ds-panel);min-width:0}.ds-adjacent img{flex:0 0 64px;width:64px;height:40px;object-fit:cover;border-radius:6px}.ds-adjacent span{min-width:0}.ds-adjacent small{display:block;color:var(--ds-accent);font-size:11px;margin-bottom:4px}.ds-adjacent strong{font-size:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.fc-search{position:relative;overflow:visible}.ds-autocomplete{position:absolute;top:calc(100% + 8px);inset-inline:0;max-height:350px;overflow:auto;background:var(--ds-panel);border-radius:12px;box-shadow:0 16px 50px #0003;z-index:1080}.ds-autocomplete:empty{display:none}.ds-suggestion{display:flex;width:100%;align-items:center;gap:12px;border:0;border-bottom:1px solid var(--ds-border,#dde2eb);padding:13px;background:var(--ds-panel,var(--bs-body-bg,#fff));text-align:start;color:var(--ds-text,var(--bs-body-color,#202631));cursor:pointer;text-decoration:none}.ds-suggestion:hover,.ds-suggestion:focus-visible{background:var(--ds-soft,#edf0fb);outline:2px solid var(--ds-accent,#6840bb);outline-offset:-2px}.ds-kind{font-size:10px;letter-spacing:.07em;text-transform:uppercase;border:1px solid currentColor;border-radius:5px;padding:3px 5px;min-width:57px;color:var(--ds-accent,#6840bb)}.ds-suggestion strong{font-size:13px;overflow-wrap:anywhere}.ds-name-results{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}.ds-name-results a{display:flex;flex-direction:column;gap:5px;padding:14px 22px;border:1px solid var(--ds-border);border-radius:12px;background:var(--ds-panel)}.ds-name-results span{font-size:11px;color:var(--ds-accent)}
.ds-creators-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.ds-creator-card{display:flex;flex-direction:column;align-items:center;padding:24px 16px;gap:12px;background:var(--ds-panel);border:1px solid var(--ds-border);border-radius:18px;position:relative;text-align:center}.ds-creator-card img{border-radius:50%;object-fit:cover}.ds-creator-card h3{font-size:17px;margin:0}.ds-creator-card p{font-size:12px;color:var(--ds-muted);margin:0}.ds-creator-card>span:last-child{font-size:12px;color:var(--ds-accent)}.ds-rank{align-self:flex-start;font-size:10px;padding:4px 8px;border-radius:8px;background:var(--ds-soft);color:var(--ds-accent)}
.ds-profile .profile-header{border:1px solid var(--ds-border);border-radius:22px;overflow:hidden;background:linear-gradient(115deg,var(--ds-soft),var(--ds-panel));margin-bottom:28px}.ds-profile .profile-info-container{background:transparent;padding:34px 18px}.ds-profile .profile-image img{border:5px solid var(--ds-panel);border-radius:24px;box-shadow:0 8px 30px #0002;object-fit:cover}.ds-profile .profile-username h1{font-size:30px;letter-spacing:-.7px}.ds-profile-label{text-transform:uppercase;letter-spacing:.14em;color:var(--ds-accent);font-size:10px;font-weight:700;margin:8px 0}.ds-profile-stats{display:flex;gap:22px;margin:12px 0;font-size:12px;color:var(--ds-muted)}.ds-profile-stats strong{color:var(--ds-text);font-size:18px;margin-inline-end:5px}.ds-profile .profile-last-seen{font-size:11px}.ds-profile .profile-details{border-radius:16px}.ds-profile .container-profile-follow{display:flex;flex-wrap:wrap;gap:8px}.ds-profile .profile-cover-image{opacity:.35}html[data-theme="xstarstheme"] .ds-profile .profile-image img{border-radius:50%}html[data-theme="xstarstheme"] .ds-profile .profile-header{background:radial-gradient(ellipse at top right,#7038a638,transparent 60%),var(--ds-panel)}
@media(max-width:991px){.fc-grid.ds-popular-grid,.fc-grid.ds-trending-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fc-grid.ds-related-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 7px}.ds-related-grid .post-meta{display:none}.ds-related-grid .post-item .title{font-size:11px}.fc-bottom-nav{display:none!important}.fc-footer nav{display:none!important}.fc-footer{padding-bottom:22px}.ds-creators-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ds-profile .profile-info-container{padding:24px 0}.ds-profile .profile-image img{width:88px;height:88px}.ds-profile .profile-username h1{font-size:23px}.ds-profile-stats{gap:12px}.ds-profile-stats strong{font-size:15px}}
@media(max-width:575px){.fc-main{padding-inline:11px}.ds-adjacent{gap:8px}.ds-adjacent a{padding:9px;gap:7px}.ds-adjacent img{width:40px;height:28px;flex-basis:40px}.ds-adjacent strong{font-size:10px}.fc-search{height:37px}.fc-header-actions{gap:6px}.ds-theme-toggle{width:27px;height:27px}.ds-profile .profile-info{align-items:center!important;gap:12px!important}.ds-profile-stats{flex-wrap:wrap}.ds-creators-grid{gap:10px}.ds-creator-card{padding:18px 10px}.ds-creator-card h3{font-size:14px}.xs-hero-content{padding:22px}.xs-hero{margin-top:6px;border-radius:16px}.fc-page-heading{margin-bottom:16px}html[data-theme="xstarstheme"] .fc-page-heading{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}html[data-theme="xstarstheme"] .fc-grid .post-meta .meta-item{font-size:10px}.ds-related-grid .post-item .title{font-size:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.ds-video-info{display:flex;gap:9px;align-items:flex-start}.ds-video-copy{min-width:0;flex:1}.ds-channel-initial{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,#d94880,#7759ce);color:white;font-size:11px;font-weight:700}.ds-related-grid .ds-channel-initial{display:none}@media(max-width:575px){.ds-channel-initial{flex-basis:24px;width:24px;height:24px;font-size:10px}.ds-video-info{gap:7px}html[data-theme="xstarstheme"] .ds-video-info .title{font-size:11px}}
.fc-grid.ds-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ds-profile .container-profile{margin-top:24px}

/* Creator platform refinement */
@media(min-width:992px){.fc-header .fc-icon-button{display:block}.cp-sidebar-collapsed .fc-sidebar{transform:translateX(-110%);visibility:hidden}.cp-sidebar-collapsed .fc-main,.cp-sidebar-collapsed .fc-footer{margin-inline-start:0}.fc-main,.fc-footer{transition:margin-inline-start .2s ease}.fc-sidebar{transition:transform .2s ease}}
.cp-profile .profile-header{border-radius:24px;overflow:hidden;min-height:250px;background:linear-gradient(120deg,var(--fc-surface),var(--fc-border))}.cp-profile .profile-info-container{position:relative;padding:36px 24px;background:linear-gradient(0deg,var(--fc-surface),transparent)}.cp-profile .profile-cover-image{opacity:.42}.cp-profile .profile-image img{box-shadow:0 10px 30px #0002;border:5px solid var(--fc-surface)}.cp-profile .container-profile{padding-top:24px}.cp-profile-about .profile-sidebar{position:static!important;display:block}.cp-profile-about .profile-details{padding:24px;border:1px solid var(--fc-border);border-radius:20px;background:var(--fc-surface);margin-bottom:24px}.cp-profile-about .profile-sidebar>.row{display:block}.cp-profile-about .profile-sidebar>.row>div{width:100%}.cp-profile .cp-library-title{margin:16px 0 24px;font-size:24px;font-weight:700}.cp-profile .ds-profile-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 18px}.cp-profile .ds-profile-grid>.cp-video-cell{width:100%;padding:0}.cp-profile .ds-profile-grid>.col-12{grid-column:1/-1}.cp-profile .container-profile-follow{position:static;display:flex;justify-content:flex-end;margin-top:16px}.cp-profile .btn-follow span{display:inline!important}.cp-follow-notice{padding:12px 16px;background:var(--fc-bg);border:1px solid var(--fc-border);border-radius:12px;font-size:13px}.cp-report{max-width:720px;margin:30px auto!important}.cp-report label{display:block;margin-bottom:8px}.post-share-buttons{flex-wrap:wrap;gap:8px}.cp-profile .profile-details .description{font-size:15px;line-height:1.8;max-width:850px}
@media(max-width:767px){.cp-profile .profile-info-container{padding:24px 12px}.cp-profile .profile-image img{width:88px;height:88px}.cp-profile .profile-info{align-items:center!important}.cp-profile .username{font-size:23px}.cp-profile .ds-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.cp-profile .profile-header{min-height:200px}.cp-profile .profile-details{padding:18px}.cp-profile .profile-last-seen{font-size:11px}.cp-profile .contact-details{flex-wrap:wrap;gap:8px}}
@media(prefers-reduced-motion:reduce){.fc-main,.fc-footer,.fc-sidebar{transition:none}}

.cp-profile.section-profile .profile-header,.cp-profile.section-profile .profile-header.has-image{height:auto!important;min-height:0;margin-bottom:0}.cp-profile .profile-cover-image{position:absolute;inset:0}.cp-profile .profile-info-container{position:relative;bottom:auto}.cp-profile .profile-info .profile-image{bottom:auto;width:140px;height:140px;padding:0;border:0;background:transparent;border-radius:24px}.cp-profile .profile-info .profile-image img{width:140px;height:140px}.cp-profile .profile-info .profile-username{margin:0;min-width:0}.cp-profile .profile-info .profile-username .username{font-size:30px;line-height:1.2;color:var(--ds-text);overflow-wrap:anywhere}.cp-profile .container-profile{padding-top:20px!important;margin-top:0}.cp-profile .container-profile-follow .btn-follow{width:auto;height:auto;padding:10px 22px!important;border-radius:12px;display:inline-flex;align-items:center;white-space:nowrap}.cp-profile .cp-community{border:1px solid var(--ds-border);border-radius:14px;padding:16px 22px;margin-bottom:20px}.cp-profile .cp-community summary{cursor:pointer;font-weight:600}.cp-profile .cp-community .sidebar-widget{margin:18px 0}.cp-profile .cp-community .widget-head{border:0}.cp-profile .profile-details{margin-bottom:16px!important}@media(max-width:767px){.cp-profile .profile-info .profile-image,.cp-profile .profile-info .profile-image img{width:84px;height:84px}.cp-profile .profile-info .profile-username .username{font-size:23px}.cp-profile .profile-info-container{padding:24px 14px}.cp-profile .container-profile-follow{justify-content:flex-start;margin-top:20px}.cp-profile .profile-last-seen{font-size:10px}.cp-profile .profile-header>.profile-info-container>.container-xl{padding:0}}/* Ranking badges share the same placement in both themes. */
.ds-rank-award{display:inline-flex;align-items:center;gap:5px;padding:7px 12px;border-radius:30px;font-size:12px;font-weight:700;background:#f4df9d;color:#61450c;border:1px solid #caa85566;margin:8px 0}.ds-award-2{background:#e1e8ef;color:#455263;border-color:#8293a466}.ds-award-3{background:#efcfb6;color:#774524;border-color:#ad704266}.ds-award-4{background:#cfefdf;color:#176a4b;border-color:#358f6466}.ds-award-5{background:#d5e4ff;color:#345f9a;border-color:#507fbe66}.ds-award-6{background:#e9def8;color:#704392;border-color:#966ab766}.dr-public-ranking .ds-creator-card{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px 15px}.dr-public-ranking h3{overflow-wrap:anywhere}.dr-public-ranking img{object-fit:cover;border-radius:50%}.dr-public-ranking .ds-rank-award{max-width:100%;white-space:normal}
