/* ===== Nosta profiel-stijl (Mijn indeling > Stijl), zie functions_style.php =====
   Profiel: klassen op .wo_user_profile, kleuren in --ns-c1/2/3 en het lettertype in --ns-font (nosta/profile-style).
   Editor: dezelfde klassen op het voorbeeld #ns-sp en op de keuzetegels. */
/* Groepen en pagina's pimpen: dezelfde klassen op .wo_group_profile / .wo_page_profile (group/ en page/content.phtml). */
.wo_group_profile .hovercard .cardheader.user-cover,.wo_page_profile .hovercard .cardheader.user-cover{position:relative}
.ns-se-back{display:inline-block;margin:0 0 10px}

/* ---------- Kleuren ---------- */
.ns-sty-col .hovercard{background:linear-gradient(160deg,color-mix(in srgb,var(--ns-c3) 75%,#0d0826),#0d0826)!important;border-color:color-mix(in srgb,var(--ns-c1) 35%,transparent)!important}
.ns-sty-col .user-avatar,.ns-sty-col .ns-sp-av{background:conic-gradient(var(--ns-c1),var(--ns-c2),var(--ns-c1))!important;box-shadow:0 0 28px color-mix(in srgb,var(--ns-c1) 60%,transparent)!important}
.ns-sty-col .ns-pc{background:color-mix(in srgb,var(--ns-c3) 45%,rgba(14,10,40,.9))!important;border-color:color-mix(in srgb,var(--ns-c1) 45%,transparent)!important;box-shadow:0 8px 24px rgba(0,0,0,.25)!important}
.ns-sty-col .ns-pc-head h2,.ns-sty-col .ns-pc h2{color:color-mix(in srgb,var(--ns-c1) 60%,#fff)!important}
.ns-sty-col .user-bottom-nav{background:color-mix(in srgb,var(--ns-c3) 55%,rgba(14,10,40,.9))!important;border-color:color-mix(in srgb,var(--ns-c1) 40%,transparent)!important}
.ns-sty-col .user-bottom-nav li.active a{color:color-mix(in srgb,var(--ns-c1) 60%,#fff)!important}
.ns-sty-col .nv-submit,.ns-sty-col .ns-send{background:linear-gradient(90deg,var(--ns-c1),var(--ns-c2))!important;box-shadow:0 6px 18px color-mix(in srgb,var(--ns-c1) 35%,transparent)!important}
.ns-sty-col .info .title a{text-shadow:0 2px 14px color-mix(in srgb,var(--ns-c1) 60%,transparent)!important}
.ns-sty-col .ns-hs-view{border-color:color-mix(in srgb,var(--ns-c1) 45%,transparent);background:color-mix(in srgb,var(--ns-c1) 18%,transparent)}
.ns-sty-col #posts .post .panel{border-color:color-mix(in srgb,var(--ns-c1) 30%,transparent)!important}

/* ---------- Lettertype voor naam en koppen ---------- */
.ns-sty-font .info .title,.ns-sty-font .info .title a,.ns-sty-font .ns-pc-head h2,.ns-sty-font .ns-sp-name{font-family:var(--ns-font)!important}

/* ---------- Naam-effect ---------- */
.ns-name-glitter :is(.info .title a,.ns-sp-name),.ns-name-regenboog :is(.info .title a,.ns-sp-name),.ns-name-goud :is(.info .title a,.ns-sp-name){-webkit-background-clip:text;background-clip:text;color:transparent!important;-webkit-text-fill-color:transparent;text-shadow:none!important;animation:ns-shine 3s linear infinite}
.ns-name-glitter :is(.info .title a,.ns-sp-name){background-image:linear-gradient(90deg,var(--ns-c1,#b18cff),#fff 25%,var(--ns-c2,#22d3ee) 50%,#fff 75%,var(--ns-c1,#b18cff));background-size:200% 100%}
.ns-name-regenboog :is(.info .title a,.ns-sp-name){background-image:linear-gradient(90deg,#ff5f6d,#ffc371,#fff36b,#5bf28a,#4fc3ff,#b18cff,#ff5f6d);background-size:200% 100%}
.ns-name-goud :is(.info .title a,.ns-sp-name){background-image:linear-gradient(90deg,#a86b00,#ffd86b,#fff6c8,#ffcf40,#a86b00);background-size:200% 100%;filter:drop-shadow(0 2px 6px rgba(0,0,0,.5))}
.ns-name-neon :is(.info .title a,.ns-sp-name){color:#fff!important;-webkit-text-fill-color:#fff;text-shadow:0 0 4px #fff,0 0 12px var(--ns-c1,#b18cff),0 0 24px var(--ns-c1,#b18cff),0 0 42px var(--ns-c2,#22d3ee)!important}
.ns-name-vuur :is(.info .title a,.ns-sp-name),.ns-name-ijs :is(.info .title a,.ns-sp-name){-webkit-background-clip:text;background-clip:text;color:transparent!important;-webkit-text-fill-color:transparent;text-shadow:none!important;background-size:200% 100%;animation:ns-shine 3s linear infinite}
.ns-name-vuur :is(.info .title a,.ns-sp-name){background-image:linear-gradient(90deg,#ff3d00,#ffb300,#fff176,#ff7a00,#ff3d00);filter:drop-shadow(0 0 8px rgba(255,98,0,.65))}
.ns-name-ijs :is(.info .title a,.ns-sp-name){background-image:linear-gradient(90deg,#7dd3fc,#fff,#bae6fd,#e0f2fe,#7dd3fc);filter:drop-shadow(0 0 8px rgba(125,211,252,.7))}
.ns-name-3d :is(.info .title a,.ns-sp-name){color:#fff!important;-webkit-text-fill-color:#fff;text-shadow:1px 1px 0 var(--ns-c2,#22d3ee),2px 2px 0 var(--ns-c2,#22d3ee),3px 3px 0 var(--ns-c1,#b18cff),4px 4px 0 var(--ns-c1,#b18cff),6px 7px 10px rgba(0,0,0,.55)!important}
@keyframes ns-shine{to{background-position:200% 0}}

/* ---------- Vorm van de profielfoto ---------- */
.ns-av-afgerond :is(.user-avatar,.ns-sp-av),.ns-av-afgerond :is(.user-avatar,.ns-sp-av) img{border-radius:28%!important}
.ns-av-vierkant :is(.user-avatar,.ns-sp-av),.ns-av-vierkant :is(.user-avatar,.ns-sp-av) img{border-radius:8px!important}
.ns-av-blad :is(.user-avatar,.ns-sp-av),.ns-av-blad :is(.user-avatar,.ns-sp-av) img{border-radius:0 50%!important}
.ns-av-hart :is(.user-avatar,.ns-sp-av),.ns-av-ster :is(.user-avatar,.ns-sp-av),.ns-av-wolk :is(.user-avatar,.ns-sp-av),.ns-av-zeshoek :is(.user-avatar,.ns-sp-av),.ns-av-ruit :is(.user-avatar,.ns-sp-av){border-radius:0!important;box-shadow:none!important;-webkit-mask:var(--ns-shape) center/contain no-repeat;mask:var(--ns-shape) center/contain no-repeat}
.ns-av-hart :is(.user-avatar,.ns-sp-av) img,.ns-av-ster :is(.user-avatar,.ns-sp-av) img,.ns-av-wolk :is(.user-avatar,.ns-sp-av) img,.ns-av-zeshoek :is(.user-avatar,.ns-sp-av) img,.ns-av-ruit :is(.user-avatar,.ns-sp-av) img{border-radius:0!important;-webkit-mask:var(--ns-shape) center/contain no-repeat;mask:var(--ns-shape) center/contain no-repeat}
.ns-av-zeshoek{--ns-shape:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 .5l10 5.75v11.5L12 23.5 2 17.75V6.25z'/%3E%3C/svg%3E")}
.ns-av-ruit{--ns-shape:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 .5L23.5 12 12 23.5.5 12z'/%3E%3C/svg%3E")}
.ns-av-hart{--ns-shape:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z'/%3E%3C/svg%3E")}
.ns-av-ster{--ns-shape:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 1.5l3.1 6.6 7.2.9-5.3 5 1.4 7.1L12 17.6l-6.4 3.5 1.4-7.1-5.3-5 7.2-.9z'/%3E%3C/svg%3E")}
.ns-av-wolk{--ns-shape:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96z'/%3E%3C/svg%3E")}

/* ---------- Rand om de profielfoto (gaat voor de kleur-ring; een Sinterklaas-fotorand gaat weer hiervoor) ---------- */
@property --ns-ang{syntax:"<angle>";inherits:false;initial-value:0deg}
:is(.wo_user_profile,.wo_group_profile,.wo_page_profile,.ns-sp,.ns-se-tile).ns-rand-geen :is(.user-avatar,.ns-sp-av){padding:0!important;background:none!important;box-shadow:none!important}
:is(.wo_user_profile,.wo_group_profile,.wo_page_profile,.ns-sp,.ns-se-tile).ns-rand-gloed :is(.user-avatar,.ns-sp-av){background:conic-gradient(var(--ns-c1,#b18cff),var(--ns-c2,#22d3ee),var(--ns-c1,#b18cff))!important;animation:ns-glow 2.4s ease-in-out infinite}
:is(.wo_user_profile,.wo_group_profile,.wo_page_profile,.ns-sp,.ns-se-tile).ns-rand-regenboog :is(.user-avatar,.ns-sp-av){background:conic-gradient(from var(--ns-ang),#ff5f6d,#ffc371,#fff36b,#5bf28a,#4fc3ff,#b18cff,#ff5f6d)!important;box-shadow:0 0 26px rgba(177,140,255,.55)!important;animation:ns-spin 4s linear infinite}
:is(.wo_user_profile,.wo_group_profile,.wo_page_profile,.ns-sp,.ns-se-tile).ns-rand-goud :is(.user-avatar,.ns-sp-av){background:conic-gradient(from var(--ns-ang),#a86b00,#ffd86b,#fff6c8,#ffcf40,#a86b00)!important;box-shadow:0 0 24px rgba(255,200,60,.6)!important;animation:ns-spin 6s linear infinite}
:is(.wo_user_profile,.wo_group_profile,.wo_page_profile,.ns-sp,.ns-se-tile).ns-rand-dubbel :is(.user-avatar,.ns-sp-av){background:var(--ns-c1,#b18cff)!important;box-shadow:0 0 0 4px #0d0826,0 0 0 8px var(--ns-c2,#22d3ee),0 0 26px color-mix(in srgb,var(--ns-c2,#22d3ee) 50%,transparent)!important}
@keyframes ns-glow{0%,100%{filter:drop-shadow(0 0 6px var(--ns-c1,#b18cff))}50%{filter:drop-shadow(0 0 22px var(--ns-c2,#22d3ee))}}
@keyframes ns-spin{to{--ns-ang:360deg}}

/* ---------- Stijl van de blokken (Over mij, vrienden enz.) ---------- */
:is(.wo_user_profile,.wo_group_profile,.wo_page_profile,.ns-sp,.ns-se-tile).ns-blok-glas .ns-pc{background:rgba(255,255,255,.08)!important;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.25)!important;box-shadow:0 8px 30px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.2)!important}
:is(.wo_user_profile,.wo_group_profile,.wo_page_profile,.ns-sp,.ns-se-tile).ns-blok-rand .ns-pc{border:3px solid var(--ns-c1,#b18cff)!important;border-radius:10px!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--ns-c2,#22d3ee) 40%,transparent)!important}
:is(.wo_user_profile,.wo_group_profile,.wo_page_profile,.ns-sp,.ns-se-tile).ns-blok-retro .ns-pc{border-radius:0!important;border:2px solid #fff!important;background:color-mix(in srgb,var(--ns-c3,#2a1a66) 70%,#0b0720)!important;box-shadow:6px 6px 0 var(--ns-c2,#22d3ee)!important}
:is(.wo_user_profile,.wo_group_profile,.wo_page_profile,.ns-sp,.ns-se-tile).ns-blok-zacht .ns-pc{border:0!important;border-radius:30px!important;background:linear-gradient(160deg,color-mix(in srgb,var(--ns-c1,#b18cff) 30%,#140e36),color-mix(in srgb,var(--ns-c3,#2a1a66) 60%,#0b0720))!important;box-shadow:0 12px 30px rgba(0,0,0,.3)!important}
:is(.wo_user_profile,.wo_group_profile,.wo_page_profile,.ns-sp,.ns-se-tile).ns-blok-donker .ns-pc{background:rgba(6,4,16,.92)!important;border:1px solid rgba(255,255,255,.08)!important;box-shadow:none!important}

/* ---------- Stijl van krabbels (berichten op het profiel) ---------- */
:is(.wo_user_profile,.wo_group_profile,.wo_page_profile).ns-kr-wolkje #posts .post .panel,.ns-kr-wolkje .ns-sp-krabbel{border-radius:26px!important;background:color-mix(in srgb,var(--ns-c3,#2a1a66) 50%,#130d33)!important;border:1px solid color-mix(in srgb,var(--ns-c1,#b18cff) 40%,transparent)!important}
:is(.wo_user_profile,.wo_group_profile,.wo_page_profile).ns-kr-briefje #posts .post .panel,.ns-kr-briefje .ns-sp-krabbel{border-radius:6px!important;background:repeating-linear-gradient(180deg,transparent 0 27px,rgba(255,255,255,.08) 27px 28px),#151036!important;border:1px solid rgba(255,255,255,.12)!important;border-left:5px solid var(--ns-c1,#b18cff)!important}
:is(.wo_user_profile,.wo_group_profile,.wo_page_profile).ns-kr-postit #posts .post .panel,.ns-kr-postit .ns-sp-krabbel{position:relative;overflow:visible;border-radius:4px!important;background:linear-gradient(180deg,rgba(255,214,90,.26),rgba(255,214,90,.1)),#1d1636!important;border:1px solid rgba(255,214,90,.5)!important}
:is(.wo_user_profile,.wo_group_profile,.wo_page_profile).ns-kr-postit #posts .post .panel::before,.ns-kr-postit .ns-sp-krabbel::before{content:"";position:absolute;top:-9px;left:50%;width:70px;height:18px;margin-left:-35px;transform:rotate(-3deg);background:rgba(255,240,180,.5);border-radius:2px}
:is(.wo_user_profile,.wo_group_profile,.wo_page_profile).ns-kr-strip #posts .post .panel,.ns-kr-strip .ns-sp-krabbel{border:3px solid #fff!important;border-radius:22px!important;box-shadow:6px 6px 0 var(--ns-c1,#b18cff)!important}

/* ---------- Indeling (alleen op de computer) ---------- */
@media (min-width:992px){
	:is(.wo_user_profile,.wo_group_profile,.wo_page_profile).ns-lay-links>.col-md-8{float:right}
	:is(.wo_user_profile,.wo_group_profile,.wo_page_profile).ns-lay-breed>.col-md-8,.wo_user_profile.ns-lay-breed>.col-md-4{float:none;width:100%}
}

/* ---------- Op de omslagfoto: stickers en tekst (plek in procenten, midden van het ding) ---------- */
.ns-stickers{position:absolute;inset:0;z-index:3;pointer-events:none;overflow:hidden}
.ns-stk{position:absolute;transform:translate(-50%,-50%);font-size:calc(clamp(28px,5vw,46px) * var(--k,1));line-height:1;filter:drop-shadow(0 3px 6px rgba(0,0,0,.45));animation:ns-stk-bob 4s ease-in-out infinite}
.ns-stk-k0{--k:.65}
.ns-stk-k2{--k:1.6}
.ns-stk:nth-of-type(4n+1){rotate:-10deg}
.ns-stk:nth-of-type(4n+2){rotate:8deg;animation-delay:-1s}
.ns-stk:nth-of-type(4n+3){rotate:5deg;animation-delay:-2s}
.ns-stk:nth-of-type(4n){rotate:-6deg;animation-delay:-3s}
@keyframes ns-stk-bob{50%{translate:0 -6px}}
.ns-txt{position:absolute;transform:translate(-50%,-50%);max-width:92%;overflow:hidden;padding:.3em .9em;border-radius:8px;white-space:nowrap;text-overflow:ellipsis;font-family:var(--ns-font,inherit);font-size:clamp(15px,2.6vw,26px);font-weight:800;line-height:1.25;color:#fff;
  background:linear-gradient(90deg,var(--ns-c1,#b18cff),var(--ns-c2,#22d3ee));box-shadow:0 6px 18px rgba(0,0,0,.35);text-shadow:0 1px 3px rgba(0,0,0,.4)}
.ns-txt-neon{background:rgba(5,3,20,.55);border:2px solid var(--ns-c1,#b18cff);box-shadow:0 0 14px var(--ns-c1,#b18cff),inset 0 0 12px color-mix(in srgb,var(--ns-c1,#b18cff) 50%,transparent);text-shadow:0 0 4px #fff,0 0 12px var(--ns-c1,#b18cff),0 0 22px var(--ns-c2,#22d3ee)}
.ns-txt-goud{background:rgba(20,12,0,.55);border:2px solid #ffcf40;color:#ffe08a;text-shadow:0 0 10px rgba(255,200,60,.8),0 2px 0 #8a5a00}
.ns-txt-wolk{border-radius:999px;background:#fff;color:#1d1640;text-shadow:none;overflow:visible}
.ns-txt-wolk::after{content:"";position:absolute;left:22%;bottom:-9px;border:9px solid transparent;border-top-color:#fff;border-bottom:0}
.ns-txt-krijt{border-radius:4px;background:#1f3a2c;border:5px solid #8b5a2b;color:#f1f5f9;font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive;font-weight:700;text-shadow:0 0 1px rgba(255,255,255,.6)}

/* ---------- Sfeerverlichting: slinger langs de omslagfoto ---------- */
.ns-slinger{position:absolute;top:0;left:0;right:0;display:flex;height:34px;overflow:hidden;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 24'%3E%3Cpath d='M0 3Q25 21 50 3' stroke='%23163a20' stroke-width='2' fill='none'/%3E%3C/svg%3E") 0 0/50px 24px repeat-x}
.ns-slinger i{position:relative;flex:none;width:50px}
.ns-slinger i::before{content:"";position:absolute;left:21px;top:12px;width:8px;height:13px;border-radius:45% 45% 50% 50%;background:var(--b,#ffd88a);box-shadow:0 0 10px 2px var(--b,#ffd88a);animation:ns-blink 1.6s ease-in-out infinite}
.ns-slinger i::after{content:"";position:absolute;left:22px;top:9px;width:6px;height:5px;border-radius:1px;background:#2c3a2c}
.ns-slinger-kerst i:nth-child(4n+1){--b:#ff3b3b}
.ns-slinger-kerst i:nth-child(4n+2){--b:#3bff6e}
.ns-slinger-kerst i:nth-child(4n+3){--b:#ffd23b}
.ns-slinger-kerst i:nth-child(4n){--b:#3bb5ff}
.ns-slinger i:nth-child(2n)::before{animation-delay:-.8s}
.ns-slinger i:nth-child(3n)::before{animation-delay:-.4s}
.ns-slinger-warm i::before{animation-duration:3s}
@keyframes ns-blink{0%,100%{opacity:1}50%{opacity:.35;box-shadow:0 0 3px 0 var(--b,#ffd88a)}}

/* ---------- Sfeerverlichting: licht over de pagina, achter de inhoud ---------- */
.ns-glow{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.ns-glow-in{position:absolute}
.ns-glow i{position:absolute;border-radius:50%;filter:blur(40px);mix-blend-mode:screen}
.ns-glow-disco i{width:45vmax;height:45vmax;opacity:.45;animation:ns-disco 9s ease-in-out infinite alternate}
.ns-glow-disco i:nth-child(1){left:-10%;top:-10%;background:#ff2fb4}
.ns-glow-disco i:nth-child(2){right:-10%;top:20%;background:#2fd3ff;animation-delay:-3s;animation-duration:11s}
.ns-glow-disco i:nth-child(3){left:30%;bottom:-20%;background:#b4ff2f;animation-delay:-6s;animation-duration:13s}
.ns-glow-in.ns-glow-disco i{width:60%;height:60%}
@keyframes ns-disco{33%{translate:30% 20%}66%{translate:-20% 35%}100%{translate:15% -25%}}
.ns-glow-kaars i{inset:auto -20% -40% -20%;height:80%;background:radial-gradient(ellipse at 50% 100%,rgba(255,160,50,.55),transparent 70%);filter:none;animation:ns-flicker 2.2s ease-in-out infinite}
.ns-glow-kaars i:nth-child(2){inset:-40% -20% auto -20%;background:radial-gradient(ellipse at 50% 0,rgba(255,120,40,.3),transparent 70%);animation-delay:-.7s}
.ns-glow-kaars i:nth-child(3){display:none}
@keyframes ns-flicker{0%,100%{opacity:.9}20%{opacity:.7}45%{opacity:1}70%{opacity:.75}}
.ns-glow-aurora i{left:-20%;width:140%;height:30%;border-radius:40%;opacity:.5;animation:ns-aurora 12s ease-in-out infinite alternate}
.ns-glow-aurora i:nth-child(1){top:-5%;background:linear-gradient(90deg,transparent,#2dd4bf,#4ade80,transparent)}
.ns-glow-aurora i:nth-child(2){top:8%;background:linear-gradient(90deg,transparent,#a78bfa,#22d3ee,transparent);animation-delay:-4s}
.ns-glow-aurora i:nth-child(3){top:18%;height:18%;background:linear-gradient(90deg,transparent,#f472b6,#a78bfa,transparent);animation-delay:-8s;opacity:.35}
@keyframes ns-aurora{to{translate:12% 6%;rotate:4deg}}
:is(.wo_user_profile,.wo_group_profile,.wo_page_profile).ns-licht-neon .hovercard,.ns-sp.ns-licht-neon{box-shadow:0 0 0 2px var(--ns-c1,#b18cff),0 0 22px var(--ns-c1,#b18cff),0 0 46px color-mix(in srgb,var(--ns-c2,#22d3ee) 60%,transparent)!important;animation:ns-neon 5s linear infinite}
@keyframes ns-neon{0%,18%,22%,60%,100%{filter:none}20%,61%{filter:brightness(.75)}}

/* ---------- Versiering rond de profielfoto (in .user-avatar / .ns-sp-av) ---------- */
.ns-sp-av{position:relative}
.ns-avd{position:absolute;inset:-14%;z-index:2;pointer-events:none;container-type:size}
.ns-avd i{position:absolute;inset:0;rotate:var(--a,0deg);font-style:normal}
.ns-avd i::before{position:absolute;left:50%;top:0;translate:-50% 0;font-size:15cqw;line-height:1}
.ns-avd b{position:absolute;font-weight:400;line-height:1}
/* kerstmuts: rode punt, witte rand en bolletje */
.ns-avd-kerstmuts i{inset:auto;right:-2%;top:-6%;width:56%;height:46%;rotate:24deg}
.ns-avd-kerstmuts i::before{content:"";inset:0 10% 18% 10%;translate:none;background:linear-gradient(160deg,#ef4444,#991b1b);clip-path:polygon(58% 0,100% 100%,0 100%)}
.ns-avd-kerstmuts i::after{content:"";position:absolute;left:0;right:0;bottom:4%;height:26%;border-radius:999px;background:#fff;box-shadow:inset 0 -3px 0 #dfe3ea,0 3px 6px rgba(0,0,0,.3)}
.ns-avd-kerstmuts b{left:58%;top:-8%;width:20%;aspect-ratio:1;translate:-50% 0;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff,#e5e7eb);box-shadow:0 2px 4px rgba(0,0,0,.3)}
/* kerstlampjes rondom */
.ns-avd-lampjes::before{content:"";position:absolute;inset:11%;border-radius:50%;border:2px solid #163a20}
.ns-avd-lampjes i::before{content:"";top:7%;width:7cqw;height:10cqw;border-radius:45% 45% 50% 50%;background:var(--b);box-shadow:0 0 3cqw 1cqw var(--b);animation:ns-blink 1.6s ease-in-out infinite}
.ns-avd-lampjes i:nth-child(4n+1){--b:#ff3b3b}
.ns-avd-lampjes i:nth-child(4n+2){--b:#3bff6e}
.ns-avd-lampjes i:nth-child(4n+3){--b:#ffd23b}
.ns-avd-lampjes i:nth-child(4n){--b:#3bb5ff}
.ns-avd-lampjes i:nth-child(2n)::before{animation-delay:-.8s}
/* kerstkrans met besjes en een strik */
.ns-avd-krans::before{content:"";position:absolute;inset:4%;border-radius:50%;background:repeating-conic-gradient(#166534 0 9deg,#15803d 9deg 18deg,#14532d 18deg 27deg);
  -webkit-mask:radial-gradient(farthest-side,transparent 78%,#000 79%);mask:radial-gradient(farthest-side,transparent 78%,#000 79%)}
.ns-avd-krans i::before{content:"";top:5%;width:6cqw;height:6cqw;border-radius:50%;background:radial-gradient(circle at 35% 35%,#ff6b6b,#b91c1c)}
.ns-avd-krans b{left:50%;bottom:-2%;translate:-50% 0;font-size:24cqw}
/* rondjes die om de foto draaien */
.ns-avd-sneeuw,.ns-avd-sterren,.ns-avd-hartjes{animation:ns-orbit 18s linear infinite}
.ns-avd-sneeuw i::before{content:"\2744";color:#fff;text-shadow:0 0 6px #9bdcff}
.ns-avd-sterren i::before{content:"\2728"}
.ns-avd-hartjes i::before{content:"\1F496"}
@keyframes ns-orbit{to{rotate:360deg}}
/* kroontje en bloemenkrans */
.ns-avd-kroon b{left:50%;top:-12%;translate:-50% 0;rotate:-10deg;font-size:34cqw;filter:drop-shadow(0 3px 5px rgba(0,0,0,.4))}
.ns-avd-bloemen i::before{content:"\1F338";font-size:17cqw;top:-1%}
.ns-avd-bloemen i:nth-child(3n+2)::before{content:"\1F33C"}
.ns-avd-bloemen i:nth-child(3n)::before{content:"\1F33A"}
/* lichtkrans: zachte gloed achter de foto */
.ns-avd-aura{z-index:-1;inset:-30%;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--ns-c1,#b18cff) 70%,transparent) 30%,color-mix(in srgb,var(--ns-c2,#22d3ee) 35%,transparent) 50%,transparent 70%);animation:ns-aura 3s ease-in-out infinite}
@keyframes ns-aura{50%{scale:1.12;opacity:.7}}

/* ---------- Bewegend effect ---------- */
.ns-fx{position:fixed;inset:0;z-index:4;pointer-events:none;overflow:hidden}
.ns-fx-in{position:absolute;z-index:5}
.ns-fx i{position:absolute;left:var(--x);top:-40px;font-style:normal;font-size:var(--s);line-height:1;opacity:.85;animation:ns-fall var(--d) linear var(--dl) infinite}
.ns-fx-in i{animation-name:ns-fall-in}
.ns-fx-sneeuw i{color:#fff}
.ns-fx-sneeuw i::before{content:"\2744"}
.ns-fx-hartjes i::before{content:"\1F496"}
.ns-fx-confetti i::before{content:"";display:block;width:8px;height:13px;border-radius:2px;background:var(--ns-c1,#b18cff)}
.ns-fx-confetti i:nth-child(3n)::before{background:var(--ns-c2,#22d3ee)}
.ns-fx-confetti i:nth-child(3n+1)::before{background:#ffd93d}
.ns-fx-sterretjes i{top:var(--y);animation:ns-twinkle calc(var(--d) / 3) ease-in-out var(--dl) infinite}
.ns-fx-sterretjes i::before{content:"\2728"}
.ns-fx-bubbels i{top:auto;bottom:-40px;width:var(--s);height:var(--s);border-radius:50%;border:2px solid rgba(255,255,255,.55);background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.55),transparent 60%);animation-name:ns-rise}
.ns-fx-in.ns-fx-bubbels i{animation-name:ns-rise-in}
.ns-fx-bladeren i::before{content:"\1F342"}
.ns-fx-bladeren i:nth-child(3n)::before{content:"\1F341"}
.ns-fx-noten i,.ns-fx-vlinders i{top:auto;bottom:-40px;animation-name:ns-rise}
.ns-fx-in:is(.ns-fx-noten,.ns-fx-vlinders) i{animation-name:ns-rise-in}
.ns-fx-noten i{color:var(--ns-c1,#b18cff);text-shadow:0 0 8px var(--ns-c2,#22d3ee)}
.ns-fx-noten i::before{content:"\266B"}
.ns-fx-noten i:nth-child(2n)::before{content:"\2669"}
.ns-fx-vlinders i::before{content:"\1F98B"}
.ns-fx-kerstman i{display:none}
.ns-fx-kerstman i:first-child{display:block;top:10%;font-size:40px;white-space:nowrap;opacity:1;filter:drop-shadow(0 0 8px rgba(255,255,255,.5));animation:ns-sleigh 16s linear infinite}
.ns-fx-in.ns-fx-kerstman i:first-child{font-size:26px;animation-duration:9s}
.ns-fx-kerstman i:first-child::before{content:"\1F98C\1F98C\1F6F7\1F385"}
@keyframes ns-sleigh{0%{left:105%;translate:0 0}25%{translate:0 -14px}50%{translate:0 8px}75%{translate:0 -10px}100%{left:-60%;translate:0 0}}
.ns-fx-in.ns-fx-sterretjes i{animation-name:ns-twinkle}
@keyframes ns-fall{to{transform:translateY(calc(100vh + 80px)) rotate(360deg)}}
@keyframes ns-fall-in{to{transform:translateY(440px) rotate(360deg)}}
@keyframes ns-rise{to{transform:translateY(calc(-100vh - 80px))}}
@keyframes ns-rise-in{to{transform:translateY(-440px)}}
@keyframes ns-twinkle{0%,100%{opacity:.1;transform:scale(.6)}50%{opacity:1;transform:scale(1)}}

@media (prefers-reduced-motion:reduce){
	.ns-fx{display:none}
	.ns-stk,.ns-name-glitter :is(.info .title a,.ns-sp-name),.ns-name-regenboog :is(.info .title a,.ns-sp-name),.ns-name-goud :is(.info .title a,.ns-sp-name),.ns-name-vuur :is(.info .title a,.ns-sp-name),.ns-name-ijs :is(.info .title a,.ns-sp-name){animation:none}
	:is(.wo_user_profile,.wo_group_profile,.wo_page_profile,.ns-sp,.ns-se-tile)[class*="ns-rand-"] :is(.user-avatar,.ns-sp-av){animation:none}
	.ns-slinger i::before,.ns-glow i,.ns-avd,.ns-avd i::before,:is(.wo_user_profile,.wo_group_profile,.wo_page_profile).ns-licht-neon .hovercard,.ns-sp.ns-licht-neon{animation:none!important}
}

/* ---------- Knop "Profiel pimpen" op je eigen profiel ---------- */
.btn-glossy .ns-pimp-btn{color:#fff!important;border-color:transparent!important;background:linear-gradient(90deg,#ff5fa2,#b18cff,#22d3ee)!important;box-shadow:0 6px 18px rgba(177,140,255,.35)}
.btn-glossy .ns-pimp-btn:hover{filter:brightness(1.08)}

/* ---------- Mijn indeling: tabs Stijl / Indeling ---------- */
.ns-ctabs{display:flex;gap:8px;margin-bottom:12px}
.ns-ctabs button{flex:1;height:46px;border:1px solid rgba(170,130,255,.3);border-radius:14px;background:rgba(24,16,58,.85);color:#d9cff0;font-weight:700;font-size:15px}
.ns-ctabs button.on{background:linear-gradient(90deg,#7b4dff,#33a5ff);color:#fff;border-color:transparent}

/* ---------- Stijl-editor ---------- */
.ns-se-h{margin:24px 0 10px;font-size:17px;font-weight:800;color:#fff}
.ns-se-h small{font-size:13px;font-weight:600;color:#aaa5d8}
.ns-se-grid{display:grid;gap:10px}
.ns-se-g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.ns-se-g3{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:600px){.ns-se-g3{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ns-se-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:64px;padding:10px 8px;border-radius:14px;border:2px solid rgba(170,130,255,.25);background:rgba(14,10,40,.55);color:#f3f1ff;font-weight:700;font-size:14px;cursor:pointer;transition:transform .15s,border-color .15s}
.ns-se-tile:hover{transform:translateY(-2px)}
.ns-se-tile.on{border-color:#ffb300;box-shadow:0 0 0 3px rgba(255,179,0,.25)}
.ns-se-tile small{font-size:12px;font-weight:600;color:#c9c3ee}
.ns-se-swatch{display:flex;width:100%;height:30px;border-radius:8px;overflow:hidden}
.ns-se-swatch i{flex:1}
.ns-se-bg{min-height:86px;justify-content:flex-end}
.ns-se-bg span{padding:3px 10px;border-radius:999px;background:rgba(10,8,30,.75);font-size:13px}
.ns-se-font b{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:20px}
.ns-se-tile .ns-sp-name{padding:0;font-size:20px}
.ns-se-shape .ns-sp-av{width:52px;height:52px}
.ns-se-kr .ns-sp-krabbel{padding:6px 16px;font-weight:700}
.ns-se-avd .ns-sp-av{margin:8px 0 2px}
.ns-se-ts .ns-txt{position:static;transform:none;font-size:15px}
.ns-se-tsgrid{margin-top:10px}
.ns-se-txtchip{flex-direction:row;min-height:0;padding:7px 14px;border-radius:999px;font-size:14px}
.ns-se-eigen{width:100%;height:44px;margin-top:10px;padding:0 14px;border-radius:12px;border:1px solid rgba(170,130,255,.35);background:rgba(14,10,40,.55);color:#fff;font-size:15px}
.ns-se-group{margin:14px 0 6px;font-size:13px;font-weight:700;color:#c9c3ee}
.ns-se-toprev{margin-top:10px}
.ns-se-draghint{margin-top:8px}
#ns-sp-stk .ns-drag{pointer-events:auto;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}
#ns-sp-stk .ns-drag.dragging{cursor:grabbing;outline:2px dashed rgba(255,255,255,.7);outline-offset:4px;animation:none}
#ns-sp-stk .ns-stk{font-size:calc(30px * var(--k,1))}
#ns-sp-stk .ns-txt{font-size:15px}
.ns-se-blok .ns-pc{display:block;width:100%;padding:12px 8px;border-radius:14px}
.ns-se-blok .ns-pc b{color:color-mix(in srgb,var(--ns-c1) 60%,#fff)}
.ns-se-laypic{display:flex;gap:4px;width:70px;height:40px}
.ns-se-laypic i{flex:1;border-radius:5px;background:rgba(255,255,255,.25)}
.ns-se-laypic i:first-child{flex:2;background:#7db7ff}
.ns-se-lay-links .ns-se-laypic{flex-direction:row-reverse}
.ns-se-lay-breed .ns-se-laypic{flex-direction:column}
.ns-se-chips{display:flex;flex-wrap:wrap;gap:8px}
.ns-se-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 14px 7px 7px;border-radius:999px;border:1px solid rgba(170,130,255,.35);background:rgba(14,10,40,.55);color:#fff;font-weight:700;font-size:14px}
.ns-se-chip i{width:24px;height:24px;border-radius:50%}
.ns-se-colors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
@media (max-width:767px){.ns-se-colors{grid-template-columns:1fr}}
.ns-se-color{display:flex;align-items:center;gap:10px;margin:0;padding:10px;border-radius:14px;border:1px solid rgba(170,130,255,.25);background:rgba(14,10,40,.55);cursor:pointer}
.ns-se-color input{flex:none;width:44px;height:44px;padding:0;border:0;border-radius:10px;background:none;cursor:pointer}
.ns-se-color span{display:flex;flex-direction:column;min-width:0}
.ns-se-color b{color:#fff}
.ns-se-color small{font-size:12px;color:#aaa5d8}
.ns-se-upload{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:10px}
.ns-se-upbtn{display:inline-block;margin:0;padding:9px 14px;border-radius:12px;border:1px dashed rgba(170,130,255,.55);color:#fff;font-weight:700;cursor:pointer}
.ns-se-stickers{display:grid;grid-template-columns:repeat(auto-fill,minmax(52px,1fr));gap:8px}
.ns-se-stk{height:52px;border-radius:14px;border:2px solid rgba(170,130,255,.25);background:rgba(14,10,40,.55);font-size:26px;line-height:1}
.ns-se-stk.on{border-color:#ffb300;background:rgba(255,179,0,.15)}
.ns-se-save{position:sticky;bottom:12px;z-index:6;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:26px -6px 0;padding:12px 14px;border-radius:16px;background:rgba(20,14,50,.96);border:1px solid rgba(170,130,255,.35);box-shadow:0 10px 30px rgba(0,0,0,.5)}
#ns-se-msg{font-weight:700;color:#fff}
#ns-se-msg.nv-ok{color:#7dffb0}
.ns-se-savebtn{flex:none;padding:12px 20px;border:0;border-radius:14px;color:#fff;font-weight:800;font-size:16px;background:linear-gradient(180deg,#5fd35a,#2fa52b);box-shadow:0 4px 0 #1f7a1c}
.ns-se-savebtn:disabled{opacity:.6}
@media (max-width:767px){.ns-se-save{bottom:86px}}

/* ---------- Voorbeeld bovenaan de editor ---------- */
.ns-sp{position:relative;isolation:isolate;overflow:hidden;min-height:330px;margin-top:14px;border-radius:18px;border:1px solid rgba(170,130,255,.3);background:#0d0826}
.ns-sp-bg{position:absolute;inset:0;z-index:-1}
.ns-sp-cover{position:relative;height:160px;background:linear-gradient(135deg,var(--ns-c2),var(--ns-c1))}
.ns-sp-head{position:relative;z-index:4;display:flex;align-items:flex-end;gap:12px;margin:-38px 16px 0}
.ns-sp-av{display:inline-block;flex:none;width:78px;height:78px;padding:4px;border-radius:50%;background:conic-gradient(#22d3ee,#7b4dff,#33b0ff,#22d3ee)}
.ns-sp-av img{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover}
.ns-sp-name{min-width:0;overflow:hidden;padding-bottom:6px;font-size:26px;font-weight:800;color:#fff;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 2px 10px rgba(0,0,0,.5)}
.ns-sp-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px}
@media (max-width:600px){.ns-sp-cards{grid-template-columns:1fr}}
.ns-sp-cards .ns-pc{grid-column:auto}
.ns-sp-card p{margin:0 0 10px;font-size:14px;color:#d9d4ff}
.ns-sp-btn{display:inline-flex;align-items:center;justify-content:center;width:auto;height:38px;padding:0 18px;font-size:15px}
.ns-sp-krabbel{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border-radius:14px;background:rgba(24,20,66,.85);border:1px solid rgba(124,108,255,.3);color:#f3f1ff;font-size:14px}
.ns-sp-krabbel b{color:#fff}

/* ---------- Stickers over het hele profiel (Wo_NostaStylePageStickers): vast op het scherm, je tikt erdoorheen ---------- */
.ns-pstickers{position:fixed;inset:0;z-index:3;pointer-events:none;overflow:hidden}
.ns-pstickers .ns-stk{opacity:.95}
.ns-sp-pstk{z-index:6}
#ns-sp-pstk .ns-drag{pointer-events:auto;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}
#ns-sp-pstk .ns-drag.dragging{cursor:grabbing;outline:2px dashed rgba(255,255,255,.7);outline-offset:4px;animation:none}
#ns-sp-pstk .ns-stk{font-size:calc(26px * var(--k,1))}

/* ---------- Versiering op alle blokken (ns-bdeco-...) ---------- */
:is(.wo_user_profile,.ns-sp,.ns-se-tile)[class*="ns-bdeco-"] .ns-pc{position:relative;overflow:visible}
:is(.wo_user_profile,.ns-sp,.ns-se-tile).ns-bdeco-tape .ns-pc::before{content:"";position:absolute;top:-9px;left:50%;width:84px;height:20px;margin-left:-42px;transform:rotate(-4deg);background:repeating-linear-gradient(45deg,color-mix(in srgb,var(--ns-c1,#b18cff) 70%,#fff) 0 6px,color-mix(in srgb,var(--ns-c2,#22d3ee) 60%,#fff) 6px 12px);opacity:.7;border-radius:2px;pointer-events:none;z-index:2}
:is(.wo_user_profile,.ns-sp,.ns-se-tile).ns-bdeco-lampjes .ns-pc::before{content:"";position:absolute;top:-6px;left:14px;right:14px;height:12px;background:radial-gradient(circle,#ff4f6d 0 4px,transparent 5px) 0 0/48px 12px,radial-gradient(circle,#ffd23f 0 4px,transparent 5px) 16px 0/48px 12px,radial-gradient(circle,#3bd6ff 0 4px,transparent 5px) 32px 0/48px 12px;filter:drop-shadow(0 0 4px rgba(255,220,120,.8));pointer-events:none;z-index:2;animation:ns-bdeco-blink 2.4s ease-in-out infinite}
@keyframes ns-bdeco-blink{50%{opacity:.55}}
:is(.wo_user_profile,.ns-sp,.ns-se-tile):is(.ns-bdeco-hartjes,.ns-bdeco-sterren,.ns-bdeco-bloemen) .ns-pc::before,
:is(.wo_user_profile,.ns-sp,.ns-se-tile):is(.ns-bdeco-hartjes,.ns-bdeco-sterren,.ns-bdeco-bloemen) .ns-pc::after{position:absolute;font-size:20px;line-height:1;pointer-events:none;z-index:2;filter:drop-shadow(0 2px 3px rgba(0,0,0,.35))}
:is(.wo_user_profile,.ns-sp,.ns-se-tile):is(.ns-bdeco-hartjes,.ns-bdeco-sterren,.ns-bdeco-bloemen) .ns-pc::before{top:-9px;left:-7px;transform:rotate(-14deg)}
:is(.wo_user_profile,.ns-sp,.ns-se-tile):is(.ns-bdeco-hartjes,.ns-bdeco-sterren,.ns-bdeco-bloemen) .ns-pc::after{bottom:-9px;right:-7px;transform:rotate(12deg)}
:is(.wo_user_profile,.ns-sp,.ns-se-tile).ns-bdeco-hartjes .ns-pc::before,:is(.wo_user_profile,.ns-sp,.ns-se-tile).ns-bdeco-hartjes .ns-pc::after{content:"\1F496"}
:is(.wo_user_profile,.ns-sp,.ns-se-tile).ns-bdeco-sterren .ns-pc::before,:is(.wo_user_profile,.ns-sp,.ns-se-tile).ns-bdeco-sterren .ns-pc::after{content:"\2728"}
:is(.wo_user_profile,.ns-sp,.ns-se-tile).ns-bdeco-bloemen .ns-pc::before{content:"\1F338"}
:is(.wo_user_profile,.ns-sp,.ns-se-tile).ns-bdeco-bloemen .ns-pc::after{content:"\1F33C"}
:is(.wo_user_profile,.ns-sp,.ns-se-tile).ns-bdeco-sneeuw .ns-pc::before{content:"";position:absolute;top:-5px;left:6px;right:6px;height:12px;border-radius:8px 8px 4px 4px;background:radial-gradient(circle at 50% 100%,#fff 0 6px,transparent 7px) 0 0/16px 12px,linear-gradient(#fff,#eaf6ff);opacity:.92;pointer-events:none;z-index:2}
:is(.wo_user_profile,.ns-sp,.ns-se-tile).ns-bdeco-stippen .ns-pc{border:3px dotted var(--ns-c1,#b18cff)!important}
.ns-se-tile[class*="ns-bdeco-"] .ns-pc{margin-top:8px}
@media (prefers-reduced-motion:reduce){:is(.wo_user_profile,.ns-sp,.ns-se-tile).ns-bdeco-lampjes .ns-pc::before{animation:none}}

/* ---------- Exclusief uit Nosta Showdown (WO_STYLE_LOCKED): kroon, rand, gouden achtergrond, effect ---------- */
.ns-se-sd{position:relative}
.ns-se-sd::after{content:"\1F3AF";position:absolute;top:3px;right:5px;font-size:12px}
.ns-se-locked{opacity:.45;cursor:not-allowed;filter:grayscale(.7)}
.ns-se-locked::after{content:"\1F512"}
.ns-avd-sdkroon b{left:50%;top:-20%;translate:-50% 0;rotate:-8deg;font-size:40cqw;filter:drop-shadow(0 0 8px rgba(255,210,80,.9)) drop-shadow(0 3px 5px rgba(0,0,0,.4));animation:ns-sd-crown 3s ease-in-out infinite}
.ns-avd-sdkroon i{position:absolute;inset:6%;border-radius:50%;box-shadow:0 0 0 3px rgba(255,210,80,.6),0 0 26px rgba(255,210,80,.55)}
@keyframes ns-sd-crown{50%{translate:-50% -6%}}
:is(.wo_user_profile,.wo_group_profile,.wo_page_profile,.ns-sp,.ns-se-tile).ns-rand-sdrand :is(.user-avatar,.ns-sp-av){background:conic-gradient(from var(--ns-ang),#9b3cff,#33a5ff,#ffd86b,#9b3cff)!important;box-shadow:0 0 0 3px rgba(155,60,255,.35),0 0 30px rgba(155,60,255,.7)!important;animation:ns-spin 3s linear infinite}
.ns-fx-sdquiz i{top:var(--y);animation:ns-twinkle calc(var(--d) / 3) ease-in-out var(--dl) infinite}
.ns-fx-sdquiz i::before{content:"\2753"}
.ns-fx-sdquiz i:nth-child(3n)::before{content:"\1F3C6"}
.ns-fx-sdquiz i:nth-child(3n+1)::before{content:"\2728"}
.ns-fx-in.ns-fx-sdquiz i{animation-name:ns-twinkle}
@media (prefers-reduced-motion:reduce){.ns-avd-sdkroon b{animation:none}}
