/* =====================================================
   AMNESIA – VENDÉG KÖZPONT (hub) + modern finomítások
   ===================================================== */
.c-pink{--c1:#ff2e88;--c2:#ff8a3d}.c-sun{--c1:#ffd34d;--c2:#ff8a3d}.c-aqua{--c1:#2de2e6;--c2:#1fa2ff}.c-violet{--c1:#9b7bff;--c2:#ff2e88}
.c-green{--c1:#3dff8a;--c2:#2de2e6}.c-orange{--c1:#ff8a3d;--c2:#ff3d5a}.c-red{--c1:#ff3d5a;--c2:#9b1d5a}.c-ice{--c1:#e8f6ff;--c2:#9bc4ff}

/* ---------- avatar ---------- */
.av{--s:30px;font-style:normal;flex-shrink:0;width:var(--s);height:var(--s);border-radius:50%;display:grid!important;place-items:center;
  background:linear-gradient(145deg,var(--a1,#ff2e88),var(--a2,#ff8a3d))!important;color:#12051f!important;font-family:"Bungee",sans-serif;font-size:calc(var(--s)*.46)!important;
  border:2px solid #12051f;box-shadow:0 0 0 2px rgba(255,255,255,.18),0 3px 0 #12051f;line-height:1;user-select:none}
.av.emo{font-family:system-ui,"Apple Color Emoji","Segoe UI Emoji",sans-serif;font-size:calc(var(--s)*.58)!important}
.av.sm{--s:26px}.av.xl{--s:58px;border-width:3px}.av.xxl{--s:108px;border-width:4px;box-shadow:0 0 0 4px rgba(255,255,255,.15),0 6px 0 #12051f,0 0 40px color-mix(in srgb,var(--a1) 55%,transparent)}
.user-chip .av,.ud-head .av,.dr-user .av{--s:30px}
.dr-user .av{--s:44px}
.user-chip{position:relative}
.user-chip.has-unread::after{content:attr(data-unread);position:absolute;top:-6px;left:22px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#ff3d5a;color:#fff;
  font:800 10.5px/18px "Fredoka",sans-serif;text-align:center;border:2px solid #12051f;animation:hbPop .4s var(--bounce,ease)}
@keyframes hbPop{0%{transform:scale(0)}100%{transform:scale(1)}}
body.is-in #userMenu[hidden]{display:block!important}

/* ---------- fejléc rendrakás ---------- */
.tb-search{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;cursor:pointer;background:var(--card,#25103d);border:2px solid var(--ol,#12051f);
  box-shadow:0 3px 0 var(--ol,#12051f);color:var(--sand,#ffe9cf);transition:transform .15s}
.tb-search svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round}
.tb-search:hover{transform:translateY(-2px) rotate(-6deg);color:#fff}
@media (max-width:1560px){ .topbar .mood-chip{display:none} }
@media (max-width:1440px){ .topbar .neon-open{display:none!important} .user-chip [data-gname]{max-width:96px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap} }
@media (max-width:1280px){ .user-chip [data-gname],.user-chip .chev{display:none} .user-chip{padding:4px} }
@media (max-width:980px){ .tb-search{width:36px;height:36px} }

/* ---------- fiók menü ---------- */
.tb-drop.user.acct{width:368px;padding:10px;max-height:calc(100vh - 110px);overflow:auto}
.hb-card{position:relative;padding:14px;border-radius:16px;overflow:hidden;border:2px solid #12051f;
  background:radial-gradient(120% 90% at 0 0,color-mix(in srgb,var(--c1) 38%,transparent),transparent 60%),radial-gradient(100% 80% at 100% 0,color-mix(in srgb,var(--c2) 30%,transparent),transparent 60%),#1b0b2e}
.hb-top{display:flex;gap:12px;align-items:center}
.hb-id{min-width:0}
.hb-id b{display:block;font-family:var(--f-display,"Luckiest Guy");font-size:22px;letter-spacing:.5px;color:#fff;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:2px 2px 0 #12051f}
.hb-id small{display:block;font-size:12.5px;color:#e7d6ff;opacity:.85;margin-top:2px}
.hb-tier{display:inline-block;padding:2px 9px;margin-bottom:4px;border-radius:999px;font:800 10px/1.6 "Orbitron",sans-serif;letter-spacing:1.4px;border:2px solid #12051f;background:#2de2e6;color:#12051f}
.hb-tier.vip{background:linear-gradient(90deg,#ffe28a,#ffd34d,#ff8a3d)}.hb-tier.reg{background:#ff9f43}.hb-tier.new{background:#9b7bff;color:#fff}
.hb-stamps{display:flex;justify-content:space-between;align-items:baseline;margin:14px 0 6px;font-size:13px;color:#ffe9cf}
.hb-stamps b{color:#ffd34d}.hb-stamps em{font-style:normal;font-size:12px;color:#e7d6ff;opacity:.85}
.hb-bar{height:9px;border-radius:9px;background:rgba(0,0,0,.4);border:2px solid #12051f;overflow:hidden}
.hb-bar i{display:block;height:100%;background:linear-gradient(90deg,#ffd34d,#ff8a3d,#ff2e88);border-radius:9px;box-shadow:0 0 12px rgba(255,211,77,.6);transition:width .8s cubic-bezier(.2,.8,.2,1)}
.hb-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:12px}
.hb-stats>*{display:flex;flex-direction:column;align-items:center;padding:8px 4px;border-radius:12px;background:rgba(0,0,0,.28);border:1px solid rgba(255,255,255,.1);text-decoration:none;color:#fff;cursor:pointer;font:inherit;transition:.15s}
.hb-stats>*:hover{background:rgba(255,255,255,.1);transform:translateY(-2px)}
.hb-stats b{font-family:var(--f-display,"Luckiest Guy");font-size:22px;line-height:1}.hb-stats small{font:700 9.5px "Orbitron",sans-serif;letter-spacing:1.3px;color:#e7d6ff;margin-top:3px}
.hb-next{display:flex;align-items:center;gap:10px;margin-top:10px;padding:10px 12px;border-radius:12px;text-decoration:none;color:#fff;background:linear-gradient(90deg,rgba(61,255,138,.18),rgba(45,226,230,.12));border:2px solid rgba(61,255,138,.5)}
.hb-next.wait{background:rgba(255,211,77,.12);border-color:rgba(255,211,77,.5)}.hb-next.cta{background:linear-gradient(90deg,rgba(255,46,136,.25),rgba(255,138,61,.15));border-color:rgba(255,46,136,.6)}
.hb-next i{font-style:normal;font-size:22px}.hb-next span{flex:1;min-width:0}.hb-next small{display:block;font:700 9.5px "Orbitron",sans-serif;letter-spacing:1.3px;color:#bfffd8}
.hb-next b{display:block;font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hb-next em{font-style:normal;font-weight:800;color:#3dff8a;font-size:13px}
.hb-links{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-top:8px}
.tb-drop.user.acct .hb-links>a,.hb-links>button{display:flex;align-items:center;gap:9px;padding:9px 10px;border-radius:11px;text-decoration:none;color:var(--sand,#ffe9cf);font:500 13.5px "Fredoka",sans-serif;
  background:none;border:0;cursor:pointer;text-align:left;position:relative}
.hb-links>*:hover{background:rgba(255,255,255,.07);color:#fff}
.hb-links i{font-style:normal;width:22px;text-align:center}
.hb-dot{margin-left:auto;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#ff3d5a;color:#fff;font:800 10.5px/18px "Fredoka";text-align:center}
.tb-drop.user.acct .hb-out{display:block;margin-top:6px;padding:10px 12px;border-top:1px solid rgba(255,255,255,.1);color:#ff9a9a;font-size:14px;text-decoration:none;border-radius:0 0 12px 12px}
.hb-out small{display:block;font-size:11px;color:#c9b6e8;opacity:.8}
.hb-out:hover{background:rgba(255,61,90,.1)}

/* ---------- belépő kapu: mentett karakterek ---------- */
.gate-chars{margin:4px 0 14px}
.gate-chars>small{display:block;font:700 10px "Orbitron",sans-serif;letter-spacing:1.6px;color:#2de2e6;margin-bottom:8px}
.gc-list{display:flex;flex-direction:column;gap:7px}
.gc{position:relative;display:flex;align-items:center;gap:12px;width:100%;padding:9px 40px 9px 10px;border-radius:14px;cursor:pointer;text-align:left;font:inherit;color:#fff;
  background:rgba(255,255,255,.05);border:2px solid rgba(255,255,255,.12);transition:.18s}
.gc .av{--s:42px}
.gc span{min-width:0}.gc b{display:block;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gc small{display:block;font-size:12px;color:#d9c6f5;opacity:.85}
.gc:hover{border-color:rgba(45,226,230,.6);background:rgba(45,226,230,.08);transform:translateX(3px)}
.gc.on{border-color:#ffd34d;background:linear-gradient(90deg,rgba(255,211,77,.16),rgba(255,46,136,.08));box-shadow:0 0 0 3px rgba(255,211,77,.15)}
.gc.on::before{content:"✓";position:absolute;right:38px;top:50%;transform:translateY(-50%);color:#ffd34d;font-weight:900}
.gc em{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:11px;color:#c9b6e8;opacity:.55}
.gc em:hover{opacity:1;background:rgba(255,61,90,.25);color:#fff}
.gate-remember{display:flex!important;gap:10px;align-items:flex-start;margin:12px 0 2px;font-size:13px!important;letter-spacing:0!important;text-transform:none!important;font-family:"Fredoka",sans-serif!important;color:#e7d6ff!important;cursor:pointer;line-height:1.4}
.gate-remember input{width:18px!important;height:18px;margin-top:2px;accent-color:#ff2e88;flex-shrink:0}
.gate-remember b{color:#ffd34d}

/* ---------- karakterlap szerkesztő ---------- */
body.ce-open{overflow:hidden}
.ce-modal{position:fixed;inset:0;z-index:600;display:grid;place-items:center;padding:16px;background:rgba(8,2,16,.72);backdrop-filter:blur(8px);animation:ceIn .2s ease}
.ce-modal.out{animation:ceOut .2s ease forwards}
@keyframes ceIn{from{opacity:0}}@keyframes ceOut{to{opacity:0}}
.ce-card{position:relative;width:min(860px,100%);max-height:calc(100vh - 32px);overflow:auto;padding:26px;border-radius:24px;background:#22103a;border:3px solid #12051f;box-shadow:8px 8px 0 #12051f,0 30px 80px rgba(0,0,0,.6);animation:cePop .3s var(--bounce,ease)}
@keyframes cePop{from{transform:scale(.92) translateY(10px)}}
.ce-x{position:absolute;top:14px;right:14px;width:36px;height:36px;border-radius:50%;border:2px solid #12051f;background:#341256;color:#fff;cursor:pointer;font-size:15px}
.ce-head small{font:700 11px "Orbitron",sans-serif;letter-spacing:2px;color:#2de2e6}
.ce-head h3{font-family:var(--f-display,"Luckiest Guy");font-size:32px;color:#fff;margin:4px 0;text-shadow:3px 3px 0 #12051f;letter-spacing:.5px}
.ce-head p{color:#d9c6f5;font-size:14px;margin-bottom:18px}
.ce-grid{display:grid;grid-template-columns:250px 1fr;gap:22px;align-items:start}
.ce-prev{position:sticky;top:0}
.ce-pc{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:22px 16px;border-radius:20px;border:3px solid #12051f;box-shadow:5px 5px 0 #12051f;
  background:radial-gradient(120% 80% at 50% 0,color-mix(in srgb,var(--c1) 45%,transparent),transparent 65%),#1b0b2e}
.ce-pc b{font-family:var(--f-display,"Luckiest Guy");font-size:24px;color:#fff;margin-top:8px;text-shadow:2px 2px 0 #12051f}
.ce-pc>small{color:#e7d6ff;font-size:13px}
.ce-pc p{font-size:13.5px;color:#fff3e6;font-style:italic;line-height:1.5;margin-top:6px}.ce-pc p.mu{opacity:.55}
.ce-chip{display:inline-block;padding:3px 10px;border-radius:999px;background:rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.15);font-size:12.5px;color:#fff}
.ce-form label{display:flex;justify-content:space-between;margin:14px 0 7px;font:700 11px "Orbitron",sans-serif;letter-spacing:1.6px;color:#ffd34d}
.ce-form label:first-child{margin-top:0}
.ce-form label small{font-family:"Fredoka",sans-serif;letter-spacing:0;color:#c9b6e8;font-weight:500}
.ce-form input,.ce-form textarea{width:100%;padding:11px 13px;border-radius:12px;border:2px solid #12051f;background:#120722;color:#fff;font:15px "Fredoka",sans-serif;outline:0;resize:vertical}
.ce-form input:focus,.ce-form textarea:focus{border-color:#2de2e6;box-shadow:0 0 0 3px rgba(45,226,230,.2)}
.ce-avs{display:grid;grid-template-columns:repeat(auto-fill,minmax(42px,1fr));gap:6px}
.ce-avs button{aspect-ratio:1;border-radius:12px;border:2px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);font-size:22px;cursor:pointer;transition:.12s;color:#fff}
.ce-avs button b{font-family:"Bungee";font-size:17px}
.ce-avs button:hover{transform:scale(1.12);background:rgba(255,255,255,.12)}
.ce-avs button.on{border-color:#ffd34d;background:rgba(255,211,77,.18);box-shadow:0 0 0 3px rgba(255,211,77,.2)}
.ce-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}
.ce-cols button{display:flex;align-items:flex-end;height:46px;padding:6px 8px;border-radius:12px;cursor:pointer;border:2px solid #12051f;background:linear-gradient(135deg,var(--a1),var(--a2));box-shadow:0 3px 0 #12051f;transition:.12s}
.ce-cols span{font:800 11px "Fredoka",sans-serif;color:#12051f;background:rgba(255,255,255,.65);padding:1px 6px;border-radius:6px}
.ce-cols button:hover{transform:translateY(-2px)}
.ce-cols button.on{outline:3px solid #fff;outline-offset:2px}
.ce-foot{display:flex;justify-content:flex-end;gap:10px;margin-top:22px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}
@media (max-width:720px){ .ce-grid{grid-template-columns:1fr} .ce-prev{position:static} .ce-card{padding:20px 16px} .ce-cols{grid-template-columns:repeat(2,1fr)} }

/* ---------- főoldal: személyes panel ---------- */
.me-sec{position:relative;z-index:3;padding:34px 20px 10px}
.me-head{display:flex;align-items:center;gap:18px;padding:20px 22px;border-radius:24px;border:3px solid #12051f;box-shadow:6px 6px 0 #12051f;
  background:radial-gradient(90% 140% at 0 0,color-mix(in srgb,var(--c1) 40%,transparent),transparent 60%),radial-gradient(70% 120% at 100% 100%,color-mix(in srgb,var(--c2) 25%,transparent),transparent 60%),#22103a}
.me-head .av{--s:74px}
.me-hi{flex:1;min-width:0}
.me-hi small{font:800 12px "Orbitron",sans-serif;letter-spacing:2.4px;color:#2de2e6}
.me-hi h2{font-family:var(--f-display,"Luckiest Guy");font-size:clamp(30px,4vw,46px);line-height:1.05;color:#fff;text-shadow:3px 3px 0 #12051f;letter-spacing:.5px}
.me-hi p{color:#f1e6ff;font-size:15px;margin-top:4px}.me-hi p b{color:#3dff8a}
.wave{display:inline-block;animation:wave 2.4s ease-in-out infinite;transform-origin:70% 70%}
@keyframes wave{0%,60%,100%{transform:rotate(0)}10%,30%{transform:rotate(14deg)}20%{transform:rotate(-8deg)}40%{transform:rotate(-4deg)}50%{transform:rotate(10deg)}}
.me-tier{display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.me-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:16px}
.me-card{position:relative;display:flex;flex-direction:column;gap:3px;min-height:168px;padding:18px;border-radius:20px;text-decoration:none;color:#fff;text-align:left;font:inherit;cursor:pointer;
  background:#25103d;border:3px solid #12051f;box-shadow:5px 5px 0 #12051f;transition:transform .2s var(--bounce,ease),box-shadow .2s;overflow:hidden}
.me-card::before{content:"";position:absolute;inset:0;opacity:.18;background:radial-gradient(80% 80% at 100% 0,var(--mc,#ff2e88),transparent 70%);pointer-events:none}
.me-card:hover{transform:translate(-2px,-4px) rotate(-.6deg);box-shadow:8px 9px 0 #12051f}
.me-card.t1{--mc:#3dff8a}.me-card.t2{--mc:#ffd34d}.me-card.t3{--mc:#2de2e6}.me-card.t4{--mc:#9b7bff}
.me-card.ok{background:linear-gradient(160deg,rgba(61,255,138,.16),transparent 60%),#25103d}
.me-card>i{font-style:normal;font-size:30px;margin-bottom:6px;filter:drop-shadow(2px 2px 0 #12051f)}
.me-card>small{font:800 10px "Orbitron",sans-serif;letter-spacing:1.8px;color:var(--mc)}
.me-card>b{font-family:var(--f-display,"Luckiest Guy");font-size:21px;letter-spacing:.4px;line-height:1.15;text-shadow:2px 2px 0 #12051f}
.me-card>span{font-size:13.5px;color:#e7d6ff;line-height:1.4}
.me-card>em{margin-top:auto;padding-top:8px;font-style:normal;font-weight:700;font-size:13px;color:var(--mc)}
.me-ring{position:absolute;right:14px;top:14px;width:68px;height:68px;transform:rotate(-90deg)}
.me-ring circle{fill:none;stroke:rgba(255,255,255,.1);stroke-width:7}.me-ring circle.on{stroke:url(#gSun);stroke:#ffd34d;stroke-linecap:round;transition:stroke-dashoffset 1s ease}
.me-ring-t{position:absolute;right:14px;top:14px;width:68px;height:68px;display:grid;place-items:center;align-content:center;grid-auto-flow:column;gap:1px}
.me-ring-t b{font-family:var(--f-display,"Luckiest Guy");font-size:24px}.me-ring-t small{font-size:12px;color:#e7d6ff}
.me-card.t2>small{margin-top:58px}
.me-quick{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.me-quick a{padding:8px 14px;border-radius:999px;text-decoration:none;color:#fff;font-weight:600;font-size:14px;background:rgba(255,255,255,.06);border:2px solid rgba(255,255,255,.12);transition:.15s}
.me-quick a:hover{background:rgba(255,46,136,.2);border-color:#ff2e88;transform:translateY(-2px)}
@media (max-width:1060px){ .me-grid{grid-template-columns:repeat(2,1fr)} }
@media (max-width:640px){ .me-head{flex-wrap:wrap;padding:16px} .me-head .av{--s:58px} .me-tier{flex-direction:row;align-items:center;width:100%;justify-content:space-between} .me-grid{grid-template-columns:1fr} .me-card{min-height:0} }

/* ---------- profil: karakter hero ---------- */
.pf-hero{position:relative;margin-bottom:18px;border-radius:26px;border:3px solid #12051f;box-shadow:7px 7px 0 #12051f;background:#22103a;overflow:hidden}
.pfh-cover{position:relative;height:150px;background:linear-gradient(120deg,var(--c1),var(--c2));overflow:hidden}
.pfh-cover::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(0,0,0,.12) 0 2px,transparent 2px 7px),linear-gradient(180deg,transparent 40%,#22103a)}
.pfh-cover i{position:absolute;border-radius:50%;background:rgba(255,255,255,.25);filter:blur(1px)}
.pfh-cover i:nth-child(1){width:220px;height:220px;right:8%;top:30px;background:radial-gradient(circle,#fff6c2,#ffd34d 50%,transparent 70%);opacity:.75}
.pfh-cover i:nth-child(2){width:90px;height:90px;left:12%;top:20px;opacity:.3}
.pfh-cover i:nth-child(3){width:40px;height:40px;left:40%;top:70px;opacity:.25}
.pfh-body{position:relative;display:flex;gap:22px;align-items:flex-end;padding:0 26px 18px;margin-top:-62px}
.pfh-id{flex:1;min-width:0;padding-bottom:4px}
.pfh-id h2{font-family:var(--f-display,"Luckiest Guy");font-size:clamp(30px,4.4vw,52px);line-height:1;color:#fff;text-shadow:3px 3px 0 #12051f;letter-spacing:.5px;margin:2px 0 8px;overflow-wrap:anywhere}
.pfh-meta{display:flex;flex-wrap:wrap;gap:6px}
.pfh-meta span{padding:4px 11px;border-radius:999px;background:rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.14);font-size:13px;color:#fff3e6}
.pfh-bio{margin-top:12px;max-width:640px;font-size:15.5px;line-height:1.55;color:#fff3e6;font-style:italic}
.pfh-bio.mu{font-style:normal;color:#c9b6e8}
.lnk{background:none;border:0;color:#2de2e6;font:inherit;font-weight:700;cursor:pointer;padding:0;text-decoration:underline}
.pfh-acts{display:flex;flex-direction:column;gap:10px;padding-bottom:6px}
.pfh-stamps{padding:12px 26px 20px;font-size:14px;color:#ffe9cf}
.pfh-stamps span{display:block;margin-bottom:7px}.pfh-stamps b{color:#ffd34d}
@media (max-width:820px){ .pfh-body{flex-direction:column;align-items:flex-start;margin-top:-56px;padding:0 18px 14px} .pfh-acts{flex-direction:row;flex-wrap:wrap} .pfh-stamps{padding:8px 18px 18px} }
.pf-tabs{position:sticky;top:calc(var(--ann-h,0px) + 136px);z-index:40;display:flex;gap:6px;overflow-x:auto;max-width:1200px;margin:16px auto 0;padding:8px;border-radius:18px;
  background:rgba(23,8,40,.86);backdrop-filter:blur(10px);border:2px solid #12051f;box-shadow:0 6px 0 #12051f;scrollbar-width:none}
.pf-tabs::-webkit-scrollbar{display:none}
.pf-tabs a{flex-shrink:0;padding:9px 15px;border-radius:12px;text-decoration:none;color:#e7d6ff;font-weight:600;font-size:14px;transition:.15s;white-space:nowrap}
.pf-tabs a:hover{background:rgba(255,255,255,.07);color:#fff}
.pf-tabs a.on{background:linear-gradient(90deg,#ff2e88,#ff8a3d);color:#fff;box-shadow:0 3px 0 #9e0f55}
@media (max-width:980px){ .pf-tabs{top:calc(var(--ann-h,0px) + 118px);margin:12px 12px 0} }
.pf-sec{display:grid;grid-template-columns:1fr auto;gap:12px 18px;align-items:center;margin-top:22px;padding:18px 20px;border-radius:18px;background:#25103d;border:3px solid #12051f;box-shadow:5px 5px 0 #12051f}
.pf-sec b{display:block;color:#fff;font-size:15.5px}.pf-sec small{color:#c9b6e8;font-size:13px}
@media (max-width:640px){ .pf-sec{grid-template-columns:1fr} }

/* ---------- gyorskereső ---------- */
.cp-modal{position:fixed;inset:0;z-index:700;display:flex;justify-content:center;align-items:flex-start;padding:12vh 14px 14px;background:rgba(8,2,16,.66);backdrop-filter:blur(6px);animation:ceIn .15s ease}
.cp-card{width:min(640px,100%);border-radius:22px;overflow:hidden;background:#22103a;border:3px solid #12051f;box-shadow:8px 8px 0 #12051f,0 30px 70px rgba(0,0,0,.6);animation:cePop .22s var(--bounce,ease)}
.cp-in{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:2px solid rgba(255,255,255,.08)}
.cp-in span{font-size:20px}
.cp-in input{flex:1;min-width:0;background:none;border:0;outline:0;color:#fff;font:500 18px "Fredoka",sans-serif}
.cp-in input::placeholder{color:#9d87bf}
.cp-modal kbd{display:inline-block;padding:2px 7px;border-radius:6px;background:#341256;border:1px solid rgba(255,255,255,.18);color:#e7d6ff;font:600 11px "Fredoka",sans-serif;margin:0 2px}
.cp-list{max-height:min(52vh,460px);overflow:auto;padding:8px}
.cp-it{display:flex;align-items:center;gap:13px;width:100%;padding:10px 12px;border-radius:13px;border:0;background:none;color:#fff;font:inherit;text-align:left;cursor:pointer}
.cp-it i{font-style:normal;width:36px;height:36px;display:grid;place-items:center;border-radius:11px;background:rgba(255,255,255,.07);font-size:18px;flex-shrink:0}
.cp-it span{flex:1;min-width:0}.cp-it b{display:block;font-size:15px}.cp-it small{display:block;font-size:12.5px;color:#c9b6e8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cp-it em{font-style:normal;opacity:0;color:#ffd34d;font-weight:800}
.cp-it.on,.cp-it:hover{background:linear-gradient(90deg,rgba(255,46,136,.22),rgba(255,138,61,.1))}
.cp-it.on em{opacity:1}
.cp-empty{padding:28px;text-align:center;color:#c9b6e8}
.cp-foot{display:flex;gap:18px;justify-content:center;padding:10px;border-top:2px solid rgba(255,255,255,.06);font-size:12px;color:#9d87bf}
@media (max-width:640px){ .cp-foot{display:none} .cp-modal{padding-top:8vh} }

/* ---------- mobil dokk: én ---------- */
.tabbar button.me{position:relative}
.tabbar button.me .av{--s:26px;margin:0 auto 1px;border-width:2px;box-shadow:0 2px 0 #12051f}
.tabbar button.me em{position:absolute;top:2px;right:calc(50% - 22px);min-width:16px;height:16px;border-radius:8px;background:#ff3d5a;color:#fff;font:800 9.5px/16px "Fredoka";font-style:normal;padding:0 4px;border:2px solid #12051f}

/* ---------- általános finomítások: élesebb, gyorsabb érzet ---------- */
html{scroll-padding-top:110px}
:focus-visible{outline:3px solid #2de2e6;outline-offset:3px;border-radius:6px}
a,button{-webkit-tap-highlight-color:transparent}
::selection{background:#ff2e88;color:#fff}
@media (prefers-reduced-motion:reduce){ *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important} }

/* ---------- hero: kompakt üdvözlő sáv ---------- */
.me-mini{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;margin:0 auto 14px;padding:8px 8px 8px 10px;border-radius:999px;position:relative;z-index:4;
  background:rgba(18,5,31,.72);backdrop-filter:blur(10px);border:2px solid color-mix(in srgb,var(--c1) 70%,#12051f);box-shadow:0 0 30px color-mix(in srgb,var(--c1) 30%,transparent),0 5px 0 #12051f;animation:mmIn .6s var(--bounce,ease) both .2s}
@keyframes mmIn{from{opacity:0;transform:translateY(14px) scale(.96)}}
.me-mini .av{--s:34px}
.mm-hi{color:#fff;font-size:15px;padding:0 6px}.mm-hi b{color:var(--c1)}
.mm-it{padding:6px 12px;border-radius:999px;font:600 13px "Fredoka",sans-serif;color:#fff;text-decoration:none;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);cursor:pointer;white-space:nowrap;max-width:260px;overflow:hidden;text-overflow:ellipsis}
.mm-it.ok{background:rgba(61,255,138,.16);border-color:rgba(61,255,138,.45)}.mm-it.hot{background:rgba(255,61,90,.25);border-color:#ff3d5a}
.mm-it:hover{background:rgba(255,255,255,.16)}
.mm-go{padding:7px 14px;border-radius:999px;border:0;cursor:pointer;font:800 13px "Fredoka",sans-serif;color:#12051f;background:linear-gradient(90deg,var(--c1),var(--c2))}
.mm-go:hover{filter:brightness(1.1)}
@media (max-width:640px){ .me-mini{border-radius:20px;margin-top:16px} .mm-hi{width:100%;text-align:center} }
/* belépve a hero-ban kevesebb dísz, több hely a személyes sávnak (ne lógjon a visszaszámlálóra) */
body.is-in .hero .onair,body.is-in .hero .sub{display:none}
body.is-in .hero .tag{margin-bottom:14px}
@media (max-height:860px){ body.is-in .hero .tag{display:none} }

/* ---------- aloldali fejléc: a leírás ne csússzon rá a tenger csíkjaira ---------- */
.page-hero{padding-bottom:96px}
.page-hero .lead{max-width:760px;margin-left:auto;margin-right:auto;text-wrap:balance}
.page-hero .ph-inner::before{inset:-40px -110px -30px}
@media (max-width:620px){ .page-hero{padding-bottom:70px} }
.h2 .m,.h2 .s{text-wrap:balance}

/* ---------- mobil menü: karakterkártya ---------- */
.dr-card{margin:4px 0 14px;padding:14px;border-radius:18px;border:3px solid #12051f;box-shadow:4px 4px 0 #12051f;
  background:radial-gradient(120% 90% at 0 0,color-mix(in srgb,var(--c1) 38%,transparent),transparent 60%),#22103a}
.drc-top{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff}
.drc-top .av{--s:52px}
.drc-top>span{flex:1;min-width:0}.drc-top b{display:block;font-family:var(--f-display,"Luckiest Guy");font-size:20px;letter-spacing:.4px;text-shadow:2px 2px 0 #12051f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.drc-top small{display:block;font-size:12.5px;color:#e7d6ff}.drc-top em{font-style:normal;font-weight:900;color:var(--c1)}
.dr-card .hb-stamps{margin-top:12px}
.drc-btns{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:12px}
.drc-btns>*{display:flex;align-items:center;justify-content:center;gap:4px;padding:9px 4px;border-radius:12px;border:1px solid rgba(255,255,255,.14);background:rgba(0,0,0,.25);color:#fff;font:600 12.5px "Fredoka",sans-serif;text-decoration:none;cursor:pointer;white-space:nowrap}
.drc-btns b{min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:#ff3d5a;font-size:10px;line-height:16px}

/* ---------- profil: kitűzők ---------- */
.pf-badges{margin-bottom:18px;padding:18px;border-radius:22px;background:#22103a;border:3px solid #12051f;box-shadow:6px 6px 0 #12051f}
.pfb-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px}
.pfb-head b{font-family:var(--f-display,"Luckiest Guy");font-size:24px;color:#fff;letter-spacing:.5px;text-shadow:2px 2px 0 #12051f}
.pfb-head span{font:700 11px "Orbitron",sans-serif;letter-spacing:1.4px;color:#ffd34d}
.pfb-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.pfb{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:3px;padding:14px 10px 12px;border-radius:16px;background:rgba(255,255,255,.04);border:2px dashed rgba(255,255,255,.14);transition:transform .2s}
.pfb i{font-style:normal;font-size:30px;filter:grayscale(1) opacity(.45)}
.pfb b{font-size:14px;color:#cdbfe6}.pfb small{font-size:11.5px;line-height:1.35;color:#9d87bf}
.pfb em{font-style:normal;margin-top:4px;font:800 10.5px "Orbitron",sans-serif;letter-spacing:1px;color:#9d87bf}
.pfb-bar{width:80%;height:6px;margin-top:6px;border-radius:6px;background:rgba(0,0,0,.4);overflow:hidden}.pfb-bar span{display:block;height:100%;background:linear-gradient(90deg,#9b7bff,#ff2e88)}
.pfb.ok{border:2px solid #12051f;background:linear-gradient(160deg,rgba(255,211,77,.18),rgba(255,46,136,.08));box-shadow:0 4px 0 #12051f}
.pfb.ok i{filter:drop-shadow(2px 2px 0 #12051f);animation:pfbIn .6s var(--bounce,ease) both}
.pfb.ok b{color:#fff}.pfb.ok small{color:#e7d6ff}.pfb.ok em{color:#3dff8a}
.pfb.ok:hover{transform:translateY(-4px) rotate(-1deg)}
@keyframes pfbIn{from{transform:scale(.3) rotate(-30deg)}}
@media (max-width:980px){ .pfb-grid{grid-template-columns:repeat(3,1fr)} }
@media (max-width:560px){ .pfb-grid{grid-template-columns:repeat(2,1fr)} }

/* ---------- „van jegyed” jelvény ---------- */
.flyer.is-mine{box-shadow:0 0 0 4px #3dff8a,0 0 34px rgba(61,255,138,.45)!important}
.fl-mine{position:absolute;bottom:92px;left:22px;z-index:6;padding:6px 12px;border-radius:999px;text-decoration:none;font:800 12.5px "Fredoka",sans-serif;color:#12051f;
  background:#3dff8a;border:2px solid #12051f;box-shadow:0 3px 0 #12051f;animation:hbPop .4s var(--bounce,ease)}
.fl-mine.pending{background:#ffd34d}
.fl-mine:hover{filter:brightness(1.08)}
.tk-ev.is-mine::after{content:"✅";position:absolute;top:6px;right:8px;font-size:15px;filter:drop-shadow(1px 1px 0 #12051f)}
.tk-ev{position:relative}

/* ---------- buli részletei ---------- */
.flyer[data-ev]{cursor:pointer}
.fl-more{position:absolute;right:14px;top:50%;z-index:6;padding:5px 11px;border-radius:999px;font:800 11.5px "Fredoka",sans-serif;color:#fff;background:rgba(18,5,31,.85);border:2px solid #12051f;
  opacity:0;transform:translateY(6px);transition:.2s;pointer-events:none}
.flyer:hover .fl-more,.flyer:focus-within .fl-more{opacity:1;transform:none}
@media (hover:none){ .fl-more{opacity:.92;transform:none;top:auto;bottom:92px;left:auto} }
.ev-modal{position:fixed;inset:0;z-index:650;display:grid;place-items:center;padding:16px;background:rgba(8,2,16,.74);backdrop-filter:blur(8px);animation:ceIn .2s ease}
.ev-modal.out{animation:ceOut .2s ease forwards}
.ev-card{position:relative;width:min(620px,100%);max-height:calc(100vh - 32px);overflow:auto;border-radius:26px;background:#22103a;border:3px solid #12051f;box-shadow:8px 8px 0 #12051f,0 30px 80px rgba(0,0,0,.6);animation:cePop .3s var(--bounce,ease)}
.ev-top{position:relative;padding:30px 26px 26px;color:#12051f;overflow:hidden;--g1:#ffd34d;--g2:#ff8a3d}
.ev-card.f2 .ev-top{--g1:#e9fbff;--g2:#9bf6ff}.ev-card.f3 .ev-top{--g1:#2b0c45;--g2:#12051f;color:#fff}.ev-card.f4 .ev-top{--g1:#ffd6e8;--g2:#ff8a7a}
.ev-card.f5 .ev-top{--g1:#1fa2ff;--g2:#a6ffcb}.ev-card.f6 .ev-top{--g1:#9b7bff;--g2:#ff2e88;color:#fff}
.ev-top::before{content:"";position:absolute;inset:0;z-index:-1;background:repeating-conic-gradient(from 0deg at 85% 120%,var(--g1) 0 8deg,var(--g2) 8deg 16deg)}
.ev-top{isolation:isolate}
.ev-day{display:inline-block;font:900 12px "Orbitron",sans-serif;letter-spacing:3px;padding:5px 11px;border-radius:999px;background:rgba(255,255,255,.75);color:#12051f;border:2px solid #12051f}
.ev-tag{display:inline-block;margin-left:6px;font:900 11px "Orbitron",sans-serif;letter-spacing:2px;padding:5px 10px;border-radius:999px;background:#12051f;color:#ffd34d}
.ev-top h3{margin-top:14px;line-height:.95}
.ev-top h3 em{display:block;font-family:Yellowtail,cursive;font-style:normal;font-size:46px;color:#ff2e88;text-shadow:2px 2px 0 #12051f}
.ev-top h3 b{display:block;font-family:var(--f-display,"Luckiest Guy");font-size:clamp(40px,8vw,62px);letter-spacing:1px;color:#fff;-webkit-text-stroke:5px #12051f;paint-order:stroke fill;text-shadow:5px 5px 0 #12051f;text-transform:uppercase}
.ev-body{padding:20px 24px 24px}
.ev-desc{font-size:16px;line-height:1.6;color:#f1e6ff}
.ev-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
.ev-facts>div{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;padding:11px 12px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1)}
.ev-facts i{grid-row:1/3;font-style:normal;font-size:24px}
.ev-facts small{font:800 9.5px "Orbitron",sans-serif;letter-spacing:1.4px;color:#2de2e6}
.ev-facts b,.ev-price{font-size:15px;color:#fff}
.ev-price s{color:#9d87bf;margin-right:4px}.ev-price em{font-style:normal;font-size:11px;font-weight:800;color:#12051f;background:#ffd34d;padding:1px 6px;border-radius:6px;margin-left:4px}
.ev-mine{margin-top:14px;padding:10px 14px;border-radius:12px;background:rgba(61,255,138,.14);border:2px solid rgba(61,255,138,.5);color:#fff;font-size:14.5px}
.ev-mine.pending{background:rgba(255,211,77,.12);border-color:rgba(255,211,77,.5)}
.ev-acts{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
@media (max-width:560px){ .ev-facts{grid-template-columns:1fr} .ev-top{padding:24px 18px 20px} .ev-body{padding:16px 18px 20px} .ev-acts .btn{flex:1} }

/* ---------- jegyek: naptár gomb, ajtó mód ---------- */
.tk-cal{margin-top:8px;padding:6px 12px;border-radius:999px;border:2px solid #12051f;background:#fff8ec;color:#12051f;font:800 12px "Fredoka",sans-serif;cursor:pointer;box-shadow:0 3px 0 #12051f}
.tk-cal:hover{transform:translateY(-1px);background:#ffd34d}
.qr-wake{margin:-4px 0 12px;padding:6px 10px;border-radius:10px;background:rgba(61,255,138,.15);color:#3dff8a;font:700 12.5px "Fredoka",sans-serif;text-align:center}
.hb-next{width:100%;font:inherit;cursor:pointer;text-align:left}
button.me-card.t1{width:100%}

/* ---------- itallap: eszközsor, kedvencek, ajánló ---------- */
.dk-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;padding:12px;border-radius:20px;background:#22103a;border:3px solid #12051f;box-shadow:5px 5px 0 #12051f}
.dk-search{max-width:none;flex:1 1 220px;height:42px;border-radius:14px;background:#120722;border:2px solid #12051f}
.dk-search input{color:#fff;font:500 15px "Fredoka",sans-serif}
.dk-chips{display:flex;flex-wrap:wrap;gap:6px}
.dk-chips button{padding:9px 14px;border-radius:999px;border:2px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);color:#fff;font:600 14px "Fredoka",sans-serif;cursor:pointer;transition:.15s}
.dk-chips button:hover{border-color:#ff2e88}
.dk-chips button.on{background:linear-gradient(90deg,#ff2e88,#ff8a3d);border-color:#12051f;box-shadow:0 3px 0 #12051f}
.dk-bar select{height:42px;padding:0 12px;border-radius:14px;border:2px solid #12051f;background:#120722;color:#fff;font:500 14px "Fredoka",sans-serif;cursor:pointer}
.dk-pick{display:flex;align-items:center;gap:16px;margin-bottom:18px;padding:14px 18px;border-radius:20px;border:3px solid #12051f;box-shadow:5px 5px 0 #12051f;
  background:linear-gradient(110deg,rgba(255,211,77,.22),rgba(255,46,136,.16) 60%,transparent),#22103a}
.dk-pick:empty{display:none}
.dkp-rat{flex-shrink:0;width:64px;height:70px}.dkp-rat svg{width:100%;height:100%}
.dk-pick>div:nth-child(2){flex:1;min-width:0}
.dk-pick small{display:block;font:800 10.5px "Orbitron",sans-serif;letter-spacing:1.8px;color:#ffd34d}
.dk-pick b{display:block;font-family:var(--f-display,"Luckiest Guy");font-size:26px;letter-spacing:.5px;color:#fff;text-shadow:2px 2px 0 #12051f}
.dk-pick span{font-size:14px;color:#f1e6ff}
.dkp-price{font-family:var(--f-display,"Luckiest Guy");font-size:24px!important;color:#ffd34d!important;white-space:nowrap}
.drink{position:relative;grid-template-columns:56px 1fr auto 40px!important}
@media (max-width:620px){ .drink{grid-template-columns:44px 1fr auto 36px!important} .dk-pick{flex-wrap:wrap} .dkp-rat{width:48px;height:54px} }
.dk-fav{width:36px;height:36px;border-radius:50%;border:2px solid rgba(255,255,255,.18);background:rgba(255,255,255,.05);color:#ff7ab6;font-size:18px;cursor:pointer;transition:.15s;line-height:1}
.dk-fav:hover{border-color:#ff2e88;transform:scale(1.1)}
.dk-fav.on{background:rgba(255,46,136,.22);border-color:#ff2e88;color:#ff2e88}
.dk-fav.pop{animation:dkPop .45s var(--bounce,ease)}
@keyframes dkPop{40%{transform:scale(1.45)}}
.drink.is-mydrink{background:linear-gradient(90deg,rgba(255,211,77,.12),transparent);border-radius:14px;padding-left:8px;padding-right:8px}
.drink.is-pick svg{filter:drop-shadow(0 0 12px rgba(255,211,77,.7))}
.dk-my{position:absolute;top:2px;right:52px;padding:1px 8px;border-radius:999px;font:800 10px "Fredoka",sans-serif;color:#12051f;background:#ffd34d;border:1px solid #12051f}
.drink[hidden],.card[hidden]{display:none!important}
.dk-none{text-align:center;padding:30px;color:#e7d6ff;font-size:16px}
.dk-search{display:flex;align-items:center;gap:8px;padding:0 12px}
.dk-search:focus-within{border-color:#2de2e6;box-shadow:0 0 0 3px rgba(45,226,230,.2)}
.dk-search input{flex:1;min-width:0;height:100%;background:none;border:0;outline:0;padding:0;box-shadow:none}
.dk-search input::placeholder{color:#9d87bf}

/* ---------- foglalásaim ---------- */
.my-res{margin-bottom:22px;padding:18px;border-radius:22px;background:#22103a;border:3px solid #12051f;box-shadow:6px 6px 0 #12051f}
.mr-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px}
.mr-head b{font-family:var(--f-display,"Luckiest Guy");font-size:24px;color:#fff;text-shadow:2px 2px 0 #12051f;letter-spacing:.5px}
.mr-head small{font:800 11px "Orbitron",sans-serif;letter-spacing:1.4px;color:#3dff8a}
.mr-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}
.mr-it{display:flex;gap:12px;align-items:flex-start;padding:12px;border-radius:16px;background:rgba(255,255,255,.04);border:2px solid rgba(255,255,255,.1);--mc:#ffd34d}
.mr-it.green{--mc:#3dff8a}.mr-it.aqua{--mc:#2de2e6}.mr-it.red{--mc:#ff3d5a}.mr-it.gray{--mc:#9d87bf}
.mr-it{border-left:5px solid var(--mc)}.mr-it.past{opacity:.6}
.mr-date{flex-shrink:0;width:52px;padding:6px 0;border-radius:12px;text-align:center;background:#12051f;border:2px solid var(--mc)}
.mr-date b{display:block;font-family:var(--f-display,"Luckiest Guy");font-size:24px;color:#fff;line-height:1}.mr-date small{font:800 10px "Orbitron",sans-serif;color:var(--mc);letter-spacing:1px}
.mr-main{min-width:0}.mr-main b{display:block;color:#fff;font-size:15.5px}.mr-main small{display:block;font-size:12.5px;color:#d9c6f5}.mr-main code{color:#ffd34d}
.mr-st{display:inline-block;font:800 9.5px "Orbitron",sans-serif;letter-spacing:1.2px;color:var(--mc);margin-bottom:2px}
.mr-main em{display:block;margin-top:4px;font-size:12.5px;font-style:normal;color:#fff3e6}

/* ---------- GYIK kereső ---------- */
.faq-search{display:flex;align-items:center;gap:10px;max-width:760px;margin:0 auto 18px;padding:0 16px;height:54px;border-radius:18px;background:#22103a;border:3px solid #12051f;box-shadow:5px 5px 0 #12051f}
.faq-search:focus-within{border-color:#2de2e6}
.faq-search span{font-size:20px}
.faq-search input{flex:1;min-width:0;height:100%;background:none;border:0;outline:0;color:#fff;font:500 16px "Fredoka",sans-serif}
.faq-search input::placeholder{color:#9d87bf}
.faq-search em{font-style:normal;font:800 11px "Orbitron",sans-serif;letter-spacing:1px;color:#ffd34d;white-space:nowrap}
.faq details[hidden]{display:none}
.faq-more{max-width:760px;margin:16px auto 0;padding:14px 18px;border-radius:16px;text-align:center;background:rgba(45,226,230,.1);border:2px dashed rgba(45,226,230,.5);color:#fff;font-size:15px}
.faq-more a{color:#2de2e6;font-weight:700}

/* ---------- kezdő lépések ---------- */
.me-steps{margin-top:14px;padding:16px 18px;border-radius:22px;background:#22103a;border:3px solid #12051f;box-shadow:5px 5px 0 #12051f}
.ms-head{display:flex;align-items:center;gap:12px;margin-bottom:8px}
.ms-head b{font-family:var(--f-display,"Luckiest Guy");font-size:22px;color:#fff;letter-spacing:.5px;text-shadow:2px 2px 0 #12051f}
.ms-head span{font:800 11px "Orbitron",sans-serif;letter-spacing:1.4px;color:#ffd34d;margin-right:auto}
.ms-x{width:30px;height:30px;border-radius:50%;border:2px solid rgba(255,255,255,.15);background:none;color:#c9b6e8;cursor:pointer}
.ms-x:hover{color:#fff;border-color:#ff3d5a}
.ms-list{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:12px}
.ms-it{display:flex;flex-direction:column;gap:6px;padding:12px;border-radius:16px;text-decoration:none;color:#fff;text-align:left;font:inherit;cursor:pointer;
  background:rgba(255,255,255,.04);border:2px dashed rgba(255,255,255,.16);transition:.18s}
.ms-it:hover{border-color:#ff2e88;transform:translateY(-3px);background:rgba(255,46,136,.08)}
.ms-it i{font-style:normal;font-size:24px}
.ms-it b{display:block;font-size:14px;line-height:1.25}.ms-it small{display:block;font-size:12px;color:#c9b6e8;margin-top:2px}
.ms-it.ok{border:2px solid rgba(61,255,138,.5);background:rgba(61,255,138,.08)}
.ms-it.ok b{text-decoration:line-through;text-decoration-color:rgba(61,255,138,.7);opacity:.8}
@media (max-width:1060px){ .ms-list{grid-template-columns:repeat(2,1fr)} }
@media (max-width:520px){ .ms-list{grid-template-columns:1fr} .ms-it{flex-direction:row;align-items:center} }

/* ---------- új üzenet: pulzáló fiók gomb ---------- */
.user-chip.ping{animation:chipPing 1.2s ease 2}
@keyframes chipPing{0%,100%{box-shadow:0 4px 0 #12051f}50%{box-shadow:0 4px 0 #12051f,0 0 0 8px rgba(255,61,90,.45)}}

/* ---------- zene: saját kérések ---------- */
.rq-mine{background:linear-gradient(90deg,rgba(255,211,77,.14),transparent)!important;border-color:rgba(255,211,77,.5)!important}
.rq-tag{display:inline-block;margin:2px 0 0 0;padding:1px 8px;border-radius:999px;font:800 10.5px "Fredoka",sans-serif;color:#12051f;background:#ffd34d}

/* a „ma este” sáv negatív margóval felcsúszik – a panel alatt hely kell */
.me-sec{padding-bottom:84px}
@media (max-width:640px){ .me-sec{padding-bottom:70px} }

/* ---------- telepíthető app ---------- */
.hb-links .hb-install{grid-column:1/-1;justify-content:center;margin-top:4px;background:linear-gradient(90deg,rgba(45,226,230,.18),rgba(155,123,255,.18));border:2px solid rgba(45,226,230,.45)!important;color:#fff!important;font-weight:700!important}
.ins-card{padding:26px}
.ins-top{display:flex;align-items:center;gap:16px}
.ins-top img{border-radius:20px;border:3px solid #12051f;box-shadow:4px 4px 0 #12051f}
.ins-top small{font:800 11px "Orbitron",sans-serif;letter-spacing:2px;color:#2de2e6}
.ins-top b{display:block;font-family:var(--f-display,"Luckiest Guy");font-size:28px;line-height:1.05;color:#fff;text-shadow:2px 2px 0 #12051f}
.ins-steps{margin:20px 0 0 20px;color:#f1e6ff;font-size:16px;line-height:1.6}
.ins-steps li{margin-bottom:8px}.ins-steps b{color:#ffd34d}
.ins-ic{display:inline-block;padding:0 6px;border-radius:6px;background:rgba(255,255,255,.1)}
.ins-tip{margin-top:12px;color:#c9b6e8;font-size:14px}
/* appként futva: nincs szükség a böngészős elemekre */
.is-app .tb-cta{display:none}

/* ---------- jelentkezéseim ---------- */
.my-apps{display:flex;flex-direction:column;gap:10px;margin-bottom:18px}
.ma-title{font-family:var(--f-display,"Luckiest Guy");font-size:20px;color:#fff;letter-spacing:.5px;text-shadow:2px 2px 0 #12051f}
.ma-it{padding:14px;border-radius:16px;background:rgba(255,255,255,.05);border:2px solid rgba(255,255,255,.12);border-left:5px solid var(--mc,#ffd34d);--mc:#ffd34d}
.ma-it.aqua{--mc:#2de2e6}.ma-it.green{--mc:#3dff8a}.ma-it.gray{--mc:#9d87bf}
.ma-top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.ma-top b{color:#fff;font-size:16px}.ma-top span{font:800 10px "Orbitron",sans-serif;letter-spacing:1.2px;color:var(--mc)}
.ma-track{display:grid;grid-template-columns:repeat(3,1fr);margin:12px 0 8px;position:relative}
.ma-track::before{content:"";position:absolute;left:16%;right:16%;top:7px;height:3px;background:rgba(255,255,255,.12)}
.ma-track i{position:relative;display:flex;flex-direction:column;align-items:center;gap:5px;font-style:normal;font-size:11.5px;color:#9d87bf}
.ma-track em{width:16px;height:16px;border-radius:50%;background:#2b1546;border:3px solid rgba(255,255,255,.2)}
.ma-track i.on{color:#fff}.ma-track i.on em{background:var(--mc);border-color:#12051f;box-shadow:0 0 10px var(--mc)}
.ma-it small{display:block;font-size:12.5px;color:#d9c6f5}

/* ---------- újdonságok ---------- */
.nw-card{padding:24px}
.nw-top{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.nw-rat{width:70px;height:78px;flex-shrink:0}.nw-rat svg{width:100%;height:100%}
.nw-top small{font:800 11px "Orbitron",sans-serif;letter-spacing:2px;color:#2de2e6}
.nw-top b{display:block;font-family:var(--f-display,"Luckiest Guy");font-size:30px;line-height:1.05;color:#fff;text-shadow:3px 3px 0 #12051f;letter-spacing:.5px}
.nw-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.nw-it{display:flex;align-items:flex-start;gap:10px;padding:11px 12px;border-radius:14px;text-decoration:none;color:#fff;text-align:left;font:inherit;cursor:pointer;
  background:rgba(255,255,255,.05);border:2px solid rgba(255,255,255,.1);transition:.15s}
a.nw-it:not([href]){cursor:default}
.nw-it:hover{border-color:#ff2e88;background:rgba(255,46,136,.08)}
.nw-it i{font-style:normal;font-size:22px}.nw-it span{flex:1;min-width:0}
.nw-it b{display:block;font-size:14.5px}.nw-it small{display:block;font-size:12.5px;color:#d9c6f5;line-height:1.4;margin-top:2px}
.nw-it em{font-style:normal;color:#ff2e88;font-weight:900}
.nw-ok{width:100%;margin-top:16px}
@media (max-width:620px){ .nw-list{grid-template-columns:1fr} .nw-top b{font-size:24px} }

/* ---------- hányan jönnek ---------- */
.fl-going{position:absolute;top:12px;left:50%;transform:translateX(-50%);z-index:6;white-space:nowrap;padding:4px 11px;border-radius:999px;font:800 11.5px "Fredoka",sans-serif;color:#fff;
  background:linear-gradient(90deg,#ff3d5a,#ff8a3d);border:2px solid #12051f;box-shadow:0 3px 0 #12051f}
.ev-facts .ev-hot{grid-column:1/-1;background:linear-gradient(90deg,rgba(255,61,90,.18),rgba(255,138,61,.1));border-color:rgba(255,138,61,.5)}
.ev-facts .ev-hot small{color:#ff8a3d}
/* a plakát saját „.flyer > *” szabálya ne írja felül a jelvényeket */
.flyer>.fl-mine,.flyer>.fl-going,.flyer>.fl-more{position:absolute!important;z-index:7!important}

.flyer>.fl-going{top:auto;bottom:92px;left:22px;transform:none}
.flyer>.fl-mine{bottom:128px}

/* ---------- mobil dokk: belépő QR ---------- */
.tabbar a.mid.qr-now{background:linear-gradient(180deg,#5dffa5,#18c27a)!important;color:#12051f!important;animation:qrGlow 2s ease-in-out infinite}
@keyframes qrGlow{50%{box-shadow:0 0 0 4px rgba(61,255,138,.35),0 0 24px rgba(61,255,138,.6)}}
/* ---------- gyorsbillentyűk ---------- */
.kb-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.kb-list>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1)}
.kb-list b{font-size:14px;color:#fff;font-weight:600;text-align:right}
.kb-list kbd{display:inline-block;min-width:24px;padding:3px 7px;margin:0 2px;border-radius:7px;background:#341256;border:1px solid rgba(255,255,255,.2);box-shadow:0 2px 0 #12051f;color:#fff;font:700 12px "Fredoka",sans-serif;text-align:center}
.kb-list em{font-style:normal;font-size:11px;color:#9d87bf;margin:0 3px}
@media (max-width:620px){ .kb-list{grid-template-columns:1fr} }
