/* 268: Rumuz Stili (yazıyla flaş rumuz): .fnk dış (animasyon) > .fnb iç (renk + efekt + yazı tipi) > i (harf) */
.fnk{display:inline-block;line-height:1.15;white-space:nowrap;vertical-align:middle;transform-origin:50% 60%;perspective:400px;--g:linear-gradient(90deg,var(--uc,#ece9ff),var(--uc,#ece9ff));--d:rgba(0,0,0,.55);--l:var(--uc,#c4b5fd)}
.fnk .fnb{display:inline-block;font-weight:800;background:var(--sh,linear-gradient(transparent,transparent)),var(--g);background-size:250% 100%,200% 100%;background-position:120% 0,0 0;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;padding:.06em .08em .1em}
.fnk .fnb i{display:inline-block;font-style:normal}
/* harf animasyonu varken renk harf harf (kayan harfte kelime boyu boyanamıyor) */
.fnk[data-h]:not([data-h=""]) .fnb{background:none}
.fnk[data-h]:not([data-h=""]) .fnb i{background:var(--g);background-size:calc(var(--n)*100%) 100%;background-position:calc(var(--i)*100%/max(1,var(--n) - 1)) 0;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}

/* ---- Renk ---- */
.fnk[data-c=altin]{--g:linear-gradient(100deg,#fff4b8,#f2c94c 30%,#b8860b 55%,#ffe58a 75%,#c99a2e);--d:#6b4a08;--l:#ffd75a}
.fnk[data-c=krom]{--g:linear-gradient(180deg,#ffffff,#c9d1d9 45%,#6b7480 50%,#e8edf2 70%,#9aa3ad);--d:#3a4048;--l:#e2e8f0}
.fnk[data-c=gul]{--g:linear-gradient(100deg,#ffe3da,#e8a598 40%,#b76e79 70%,#f6c1b3);--d:#6e3540;--l:#f8b4c4}
.fnk[data-c=bronz]{--g:linear-gradient(100deg,#f3c99a,#cd7f32 45%,#8c5a2b 70%,#e0a96d);--d:#4a2c10;--l:#e8a25c}
.fnk[data-c=yakut]{--g:linear-gradient(100deg,#ffb3c0,#ff3b5c 40%,#a3002a 75%,#ff7a90);--d:#5a0017;--l:#ff4d6d}
.fnk[data-c=zumrut]{--g:linear-gradient(100deg,#b8ffd9,#2ee59d 40%,#0b7a52 75%,#5ff2b4);--d:#04402a;--l:#34f5a5}
.fnk[data-c=safir]{--g:linear-gradient(100deg,#c7ddff,#4f8cff 40%,#1e3fae 75%,#7fb2ff);--d:#0e1f5c;--l:#5b9dff}
.fnk[data-c=ametist]{--g:linear-gradient(100deg,#f0d9ff,#c084fc 40%,#7e22ce 75%,#d8a6ff);--d:#3b0d66;--l:#c084fc}
.fnk[data-c=ates]{--g:linear-gradient(0deg,#ff2a00,#ff7b00 45%,#ffe259 90%);--d:#5c1000;--l:#ff6a00}
.fnk[data-c=buz]{--g:linear-gradient(100deg,#ffffff,#bdf3ff 35%,#5cc8f0 65%,#e9fcff);--d:#1d5a78;--l:#9eeaff}
.fnk[data-c=gunbatimi]{--g:linear-gradient(100deg,#ffd166,#ff7a59 40%,#ef476f 70%,#a855f7);--d:#5a1a40;--l:#ff7a59}
.fnk[data-c=okyanus]{--g:linear-gradient(100deg,#7ff3ff,#00c2ff 40%,#0057ff 80%);--d:#002266;--l:#22d3ee}
.fnk[data-c=orman]{--g:linear-gradient(100deg,#d9f99d,#65c94a 40%,#1f7a3a 80%);--d:#0c3518;--l:#84e05c}
.fnk[data-c=mercan]{--g:linear-gradient(100deg,#ffd0c2,#ff8a7a 40%,#ff5e7e 80%);--d:#6b1f2c;--l:#ff8a7a}
.fnk[data-c=seker]{--g:linear-gradient(100deg,#ff9ad5,#ffc6ec 35%,#9ad0ff 70%,#c7b6ff);--d:#6a3a7a;--l:#ffa8de}
.fnk[data-c=aurora]{--g:linear-gradient(100deg,#4ade80,#22d3ee 40%,#a78bfa 75%,#4ade80);--d:#173a4a;--l:#5eead4}
.fnk[data-c=galaksi]{--g:linear-gradient(100deg,#f0abfc,#a855f7 35%,#6366f1 65%,#ec4899);--d:#2a0f55;--l:#c084fc}
.fnk[data-c=lavanta]{--g:linear-gradient(100deg,#f5ecff,#d8c4ff 45%,#a78bfa 85%);--d:#41306e;--l:#c4b5fd}
.fnk[data-c=gokkusagi]{--g:linear-gradient(90deg,#ff4d4d,#ffb84d,#ffee4d,#4dff88,#4dc3ff,#9b6bff,#ff4dd2);--d:#2a1d4a;--l:#ffffff}
.fnk[data-c=gece]{--g:linear-gradient(100deg,#e0e7ff,#93c5fd 40%,#6366f1 80%);--d:#0b1033;--l:#818cf8}

/* ---- Efekt (iç kutuya filtre) ---- */
.fnk[data-e=kalin] .fnb{font-weight:900;letter-spacing:.03em}
.fnk[data-e=italik] .fnb{transform:skewX(-12deg)}
.fnk[data-e=neon] .fnb{filter:drop-shadow(0 0 .02em #fff) drop-shadow(0 0 .07em var(--l)) drop-shadow(0 0 .18em var(--l))}
.fnk[data-e=golge] .fnb{filter:drop-shadow(max(1px,.06em) max(1.5px,.09em) max(.5px,.03em) rgba(0,0,0,.8))}
.fnk[data-e=cerceve] .fnb{--o:max(1px,.035em);filter:drop-shadow(var(--o) 0 0 #fff) drop-shadow(calc(var(--o) * -1) 0 0 #fff) drop-shadow(0 var(--o) 0 #fff) drop-shadow(0 calc(var(--o) * -1) 0 #fff) drop-shadow(0 .06em .06em rgba(0,0,0,.6))}
.fnk[data-e=uc] .fnb{--o:max(.7px,.03em);filter:drop-shadow(var(--o) var(--o) 0 var(--d)) drop-shadow(var(--o) var(--o) 0 var(--d)) drop-shadow(var(--o) var(--o) 0 var(--d)) drop-shadow(var(--o) var(--o) 0 rgba(0,0,0,.5)) drop-shadow(.05em .08em .05em rgba(0,0,0,.55))}
.fnk[data-e=kabartma] .fnb{--o:max(.8px,.03em);filter:drop-shadow(calc(var(--o) * -1) calc(var(--o) * -1) 0 rgba(255,255,255,.75)) drop-shadow(calc(var(--o) * 1.5) calc(var(--o) * 1.5) 0 var(--d)) drop-shadow(.02em .05em .04em rgba(0,0,0,.5))}

/* ---- Yazı tipi (Google Fonts; index.php yükler) ---- */
.fnk[data-f]:not([data-f=""]) .fnb{font-weight:400}
.fnk[data-f=gv] .fnb{font-family:'Great Vibes',cursive;font-size:1.18em}
.fnk[data-f=al] .fnb{font-family:'Allura',cursive;font-size:1.18em}
.fnk[data-f=ab] .fnb{font-family:'Alex Brush',cursive;font-size:1.12em}
.fnk[data-f=pn] .fnb{font-family:'Pinyon Script',cursive;font-size:1.12em}
.fnk[data-f=sc] .fnb{font-family:'Sacramento',cursive;font-size:1.2em}
.fnk[data-f=tg] .fnb{font-family:'Tangerine',cursive;font-size:1.38em}
.fnk[data-f=pr] .fnb{font-family:'Parisienne',cursive;font-size:1.08em}
.fnk[data-f=ds] .fnb{font-family:'Dancing Script',cursive}
.fnk[data-f=ks] .fnb{font-family:'Kaushan Script',cursive}
.fnk[data-f=ck] .fnb{font-family:'Cookie',cursive;font-size:1.12em}
.fnk[data-f=yt] .fnb{font-family:'Yellowtail',cursive;font-size:1.05em}
.fnk[data-f=sf] .fnb{font-family:'Satisfy',cursive}
.fnk[data-f=pc] .fnb{font-family:'Pacifico',cursive}
.fnk[data-f=lb] .fnb{font-family:'Lobster',cursive}
.fnk[data-f=cg] .fnb{font-family:'Courgette',cursive}
.fnk[data-f=pb] .fnb{font-family:'Playball',cursive}
.fnk[data-f=rg] .fnb{font-family:'Righteous',sans-serif}
.fnk[data-f=aw] .fnb{font-family:'Audiowide',sans-serif}
.fnk[data-f=cz] .fnb{font-family:'Cinzel',serif}
.fnk[data-f=li] .fnb{font-family:'Lilita One',sans-serif}
.fnk[data-f=fr] .fnb{font-family:'Fredoka',sans-serif}
.fnk[data-f=gt] .fnb{font-family:'UnifrakturMaguntia',serif}
.fnk[data-f=ds] .fnb,.fnk[data-f=cz] .fnb,.fnk[data-f=fr] .fnb{font-weight:700}

/* ---- Animasyon (dış kutu) ---- */
.fnk[data-a=nabiz]{animation:fnNab 1.4s ease-in-out infinite}
.fnk[data-a=zipla]{animation:fnZip 1.1s cubic-bezier(.3,0,.3,1) infinite}
.fnk[data-a=gokk]{animation:fnHue 3s linear infinite}
.fnk[data-a=parilti] .fnb{--sh:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.95) 50%,transparent 60%);animation:fnShine 2.4s linear infinite}
.fnk[data-a=dalga]{animation:fnDal 2s ease-in-out infinite}
.fnk[data-a=neon]{animation:fnFlk 3s linear infinite}
.fnk[data-a=yanip]{animation:fnBlk 1.2s ease-in-out infinite}
.fnk[data-a=donen] .fnb{animation:fnRY 3s linear infinite}
.fnk[data-a=sallanan]{animation:fnSal 1.6s ease-in-out infinite}
.fnk[data-a=cevir] .fnb{animation:fnRX 2.6s ease-in-out infinite}
.fnk[data-a=kup] .fnb{animation:fnKup 3.2s ease-in-out infinite}
.fnk[data-a=salinim]{animation:fnSwy 2.2s ease-in-out infinite}
.fnk[data-a=kalp]{animation:fnKlp 1.3s ease-in-out infinite}
.fnk[data-a=suzul]{animation:fnSuz 3.4s ease-in-out infinite}
.fnk[data-a=akis] .fnb{animation:fnFlow 3s linear infinite}
.fnk[data-a=akis] .fnb,.fnk[data-c=gokkusagi][data-a=akis] .fnb{background-size:250% 100%,300% 100%}

@keyframes fnNab{50%{transform:scale(1.12)}}
@keyframes fnZip{0%,100%{transform:translateY(0)}35%{transform:translateY(-.28em)}55%{transform:translateY(0)}65%{transform:translateY(-.08em)}}
@keyframes fnHue{to{filter:hue-rotate(360deg)}}
@keyframes fnShine{0%{background-position:130% 0,0 0}60%,100%{background-position:-60% 0,0 0}}
@keyframes fnFlow{to{background-position:120% 0,-200% 0}}
@keyframes fnDal{0%,100%{transform:skewX(0)}25%{transform:skewX(-10deg)}75%{transform:skewX(10deg)}}
@keyframes fnFlk{0%,18%,22%,25%,53%,57%,100%{opacity:1;filter:brightness(1.15)}20%,24%,55%{opacity:.35;filter:brightness(.7)}}
@keyframes fnBlk{50%{opacity:.15}}
@keyframes fnRY{to{transform:rotateY(360deg)}}
@keyframes fnSal{0%,100%{transform:rotate(-7deg)}50%{transform:rotate(7deg)}}
@keyframes fnRX{0%,25%{transform:rotateX(0)}60%,100%{transform:rotateX(360deg)}}
@keyframes fnKup{0%,100%{transform:rotateY(-38deg) rotateX(8deg)}50%{transform:rotateY(38deg) rotateX(-8deg)}}
@keyframes fnSwy{0%,100%{transform:translateX(-.18em)}50%{transform:translateX(.18em)}}
@keyframes fnKlp{0%,40%,100%{transform:scale(1)}12%{transform:scale(1.16)}24%{transform:scale(1.02)}32%{transform:scale(1.12)}}
@keyframes fnSuz{0%,100%{transform:translateY(.06em) rotate(-1deg)}50%{transform:translateY(-.16em) rotate(1deg)}}

/* ---- Harf (her harf ayrı) ---- */
.fnk[data-h=hdon] .fnb i{animation:fnHd 2.6s ease-in-out infinite;animation-delay:calc(var(--i)*.12s)}
.fnk[data-h=hdalga] .fnb i{animation:fnHw 1.4s ease-in-out infinite;animation-delay:calc(var(--i)*.1s)}
.fnk[data-h=hzipla] .fnb i{animation:fnHz 2s cubic-bezier(.3,0,.3,1) infinite;animation-delay:calc(var(--i)*.13s)}
.fnk[data-h=takla] .fnb i{animation:fnHt 3s ease-in-out infinite;animation-delay:calc(var(--i)*.15s)}
.fnk[data-h=rakis] .fnb i{animation:fnHue 2.4s linear infinite;animation-delay:calc(var(--i)*-.2s)}
.fnk[data-h=isik] .fnb i{animation:fnHl 2.2s ease-in-out infinite;animation-delay:calc(var(--i)*.14s)}
@keyframes fnHd{0%{transform:rotateY(0)}30%,100%{transform:rotateY(360deg)}}
@keyframes fnHw{0%,100%{transform:translateY(0)}50%{transform:translateY(-.22em)}}
@keyframes fnHz{0%,40%,100%{transform:translateY(0)}15%{transform:translateY(-.34em) scale(1.05)}28%{transform:translateY(0) scaleY(.92)}}
@keyframes fnHt{0%{transform:rotate(0)}25%,100%{transform:rotate(360deg)}}
@keyframes fnHl{0%,30%,100%{filter:brightness(1);transform:none}12%{filter:brightness(1.9) drop-shadow(0 0 .12em #fff);transform:translateY(-.06em) scale(1.12)}}

@media (prefers-reduced-motion:reduce){.fnk,.fnk *{animation:none!important}}

/* ---- Rumuz Stili penceresi ---- */
.fnS{position:fixed;inset:0;z-index:2147483000;background:#120f26;color:#f4f2ff;display:flex;flex-direction:column;font:15px/1.4 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;transform:translateY(100%);transition:transform .28s cubic-bezier(.2,.8,.2,1)}
.fnS.on{transform:none}
@media (min-width:701px){.fnS{inset:auto;left:50%;top:50%;width:420px;height:min(760px,92vh);border-radius:22px;border:1px solid #332b5e;box-shadow:0 30px 80px rgba(0,0,0,.6);transform:translate(-50%,-46%);opacity:0;transition:.22s}.fnS.on{transform:translate(-50%,-50%);opacity:1}.fnSd{position:fixed;inset:0;z-index:2147482999;background:rgba(5,4,14,.6)}}
.fnSh{display:flex;align-items:center;gap:8px;padding:calc(10px + env(safe-area-inset-top,0px)) 12px 8px}
.fnSh button{all:unset;cursor:pointer;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#1d1838;border:1px solid #2f2958;font-size:20px;color:#f4f2ff}
.fnSh b{flex:1;text-align:center;font-size:16px;font-weight:800}
.fnSh i{width:38px}
.fnSp{margin:2px 12px 8px;border-radius:20px;border:1px solid #362d6b;background:radial-gradient(90% 120% at 50% 0,#3a2a78 0,#1d1640 60%,#15112e 100%);padding:18px 10px 10px;text-align:center;overflow:hidden}
.fnSp .big{font-size:40px;min-height:60px;display:flex;align-items:center;justify-content:center;max-width:100%;overflow:hidden}
.fnSp small{display:block;color:#b9b2e6;font-size:12px;margin-top:4px}
.fnSw{margin:0 12px 8px;font-size:12px;color:#ffd38a;background:rgba(255,190,80,.1);border:1px solid rgba(255,190,80,.3);border-radius:10px;padding:6px 10px}
.fnSt{display:flex;gap:6px;padding:0 12px 10px;overflow-x:auto;scrollbar-width:none;flex:none}
.fnSt::-webkit-scrollbar{display:none}
.fnSt button{all:unset;cursor:pointer;flex:none;padding:8px 13px;border-radius:12px;background:#1d1838;border:1px solid #2f2958;font-size:13.5px;font-weight:700;color:#c9c3ff}
.fnSt button.on{background:#f4f2ff;color:#1a1438;border-color:#f4f2ff}
.fnSg{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:0 12px 96px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-content:start}
.fnSg .sec{grid-column:1/-1;font-size:11px;font-weight:800;letter-spacing:.8px;color:#8f88bd;margin:8px 2px 0}
.fnSg .tl{all:unset;cursor:pointer;position:relative;border-radius:14px;background:#1b1636;border:1px solid #2a2452;height:78px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;overflow:hidden;min-width:0}
.fnSg .tl .nk{font-size:20px;max-width:100%}
.fnSg .tl small{font-size:11px;color:#9d95cf;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:94%}
.fnSg .tl.on{background:#3a2a86;border-color:#8b6bff}
.fnSg .tl.on small{color:#fff}
.fnSg .tl.on::after{content:'✓';position:absolute;left:6px;top:5px;width:16px;height:16px;border-radius:50%;background:#8b6bff;color:#fff;font-size:10px;font-weight:800;display:grid;place-items:center}
.fnSf{position:absolute;left:0;right:0;bottom:0;display:flex;gap:8px;padding:12px 12px calc(14px + env(safe-area-inset-bottom,0px));background:linear-gradient(transparent,#120f26 35%)}
.fnSf button{all:unset;cursor:pointer;height:48px;border-radius:15px;display:grid;place-items:center;font-weight:800;font-size:15.5px}
.fnSf .rm{flex:none;width:96px;background:#1d1838;border:1px solid #2f2958;color:#c9c3ff}
.fnSf .sv{flex:1;background:linear-gradient(135deg,#ff3d68,#a855f7);color:#fff;box-shadow:0 10px 24px rgba(168,85,247,.35)}
.fnSf button[disabled]{opacity:.6}
/* açık temada renk seçilmemiş ve üyenin rengi yoksa yazı koyu olsun (beyaz zeminde kaybolmasın); seçim penceresi hep koyu */
html[data-theme=light] .fnk[data-c=""]:not([style*="--uc"]),html[data-theme=soft] .fnk[data-c=""]:not([style*="--uc"]){--g:linear-gradient(90deg,#2b2557,#2b2557);--d:#9a93c9;--l:#7c4dff}
html[data-theme] .fnS .fnk[data-c=""]:not([style*="--uc"]){--g:linear-gradient(90deg,#ece9ff,#ece9ff);--d:rgba(0,0,0,.55);--l:#c4b5fd}
/* sohbet/online listesinde rumuz yazısından biraz büyük (GIF rumuz gibi öne çıksın); seçim penceresinde normal */
.fnk{font-size:1.3em}
.fnS .fnk{font-size:1em}
/* rumuz satırlarında taşmasın */
.onn .fnk,.mrw .fnk,.dmn .fnk{max-width:100%}
