.inp{width:100%;border:1px solid #cbd5e1;border-radius:.9rem;padding:.65rem .9rem;background:#fff;color:#1e293b;outline:none;font-size:.95rem}
.dark .inp{background:#0f172a;border-color:#334155;color:#e2e8f0}
.inp:focus{border-color:#f97316;box-shadow:0 0 0 3px rgba(249,115,22,.2)}
textarea.inp{min-height:7rem}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;background:linear-gradient(90deg,#f59e0b,#f97316,#f43f5e);color:#fff;font-weight:700;border-radius:.9rem;padding:.65rem 1.2rem;border:0;cursor:pointer;text-decoration:none}
.btn:hover{filter:brightness(1.07)}
.btn-sec{background:#e2e8f0;color:#334155}.dark .btn-sec{background:#334155;color:#e2e8f0}
.btn-red{background:#dc2626}
.btn-sm{padding:.3rem .7rem;font-size:.8rem;border-radius:.6rem}
.card{background:#fff;border:1px solid #e2e8f0;border-radius:1.5rem;padding:1.5rem}
.dark .card{background:#1e293b;border-color:#334155}
.lbl{display:block;font-size:.8rem;font-weight:600;margin-bottom:.25rem;color:#64748b}
.alert-ok,.alert-err{padding:.7rem 1rem;border-radius:.9rem;font-size:.9rem}
.alert-ok{background:#dcfce7;color:#166534}.alert-err{background:#fee2e2;color:#991b1b}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.prose-lite p{margin:.6rem 0}.prose-lite ul{list-style:disc;padding-left:1.4rem;margin:.6rem 0}.prose-lite h2{font-size:1.25rem;font-weight:800;margin:1rem 0 .4rem}.prose-lite a{color:#f97316;text-decoration:underline}
.custom-scrollbar::-webkit-scrollbar{width:5px}.custom-scrollbar::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}.dark .custom-scrollbar::-webkit-scrollbar-thumb{background:#334155}
/* Tabellen (Admin) */
.tbl{width:100%;font-size:.85rem;border-collapse:collapse}
.tbl th{text-align:left;padding:.5rem;font-size:.7rem;text-transform:uppercase;color:#64748b}
.tbl td{padding:.5rem;border-top:1px solid #e2e8f0;vertical-align:top}
.dark .tbl td{border-color:#334155}
.pill{display:inline-block;font-size:.7rem;font-weight:700;padding:.1rem .5rem;border-radius:99px;background:#e2e8f0;color:#334155}
.pill-red{background:#fee2e2;color:#991b1b}.pill-green{background:#dcfce7;color:#166534}.pill-amber{background:#fef3c7;color:#92400e}
/* Chat */
.chatlog{flex:1;overflow-y:auto;padding:.75rem 1rem;font-size:.92rem}
.m{padding:.12rem 0;overflow-wrap:anywhere}
.m-t{color:#94a3b8;font-size:.7rem;margin-right:.4rem}
.m-n{font-weight:700;cursor:pointer}
.g-m{color:#2563eb}.g-f{color:#e11d48}.g-n{color:#7c3aed}
.m-sys,.m-err{color:#94a3b8;font-style:italic}.m-err{color:#dc2626}
.m-me{color:#a855f7;font-style:italic}
.m-r{opacity:0;margin-left:.4rem;border:0;background:none;cursor:pointer;color:#94a3b8;font-size:.75rem}
.m:hover .m-r{opacity:.9}
.roomlink{display:flex;justify-content:space-between;gap:.5rem;padding:.4rem .6rem;border-radius:.7rem;font-size:.85rem}
.roomlink:hover{background:#fff7ed}.dark .roomlink:hover{background:#334155}
.roomlink.active{background:#f97316;color:#fff;font-weight:700}
.cnt{font-size:.7rem;opacity:.8}
.u-li{display:flex;align-items:center;gap:.4rem;cursor:pointer;padding:.15rem .3rem;border-radius:.5rem}
.u-li:hover{background:#fff7ed}.dark .u-li:hover{background:#334155}
.btn-sec.on{background:#f97316;color:#fff}
.m-bot{color:#0d9488;white-space:pre-line}
.dark .m-bot{color:#5eead4}
.pill:empty{display:none}
/* Chat Vollbild */
.chat-aside{display:none;flex-direction:column}
@media(min-width:768px){#aside-rooms{display:flex}}
@media(min-width:1024px){#aside-users{display:flex}}
.chat-aside.open{display:flex;position:absolute;top:0;bottom:0;z-index:40;box-shadow:0 0 30px rgba(0,0,0,.35)}
#aside-rooms.open{left:0}#aside-users.open{right:0}
.chatlog{min-height:0}
/* Emoji-Picker */
.emp{position:absolute;bottom:100%;left:.5rem;margin-bottom:.4rem;width:21rem;max-width:calc(100vw - 1rem);background:#fff;border:1px solid #e2e8f0;border-radius:1rem;box-shadow:0 10px 40px rgba(0,0,0,.2);z-index:30;overflow:hidden}
.dark .emp{background:#1e293b;border-color:#334155}
.emp-tabs{display:flex;overflow-x:auto;border-bottom:1px solid #e2e8f0;background:#f8fafc}.dark .emp-tabs{background:#0f172a;border-color:#334155}
.emp-tab{flex:0 0 auto;padding:.4rem .6rem;font-size:1.15rem;border:0;background:none;cursor:pointer;border-bottom:2px solid transparent;opacity:.7}
.emp-tab.on{border-bottom-color:#f97316;opacity:1}
.emp-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:2px;padding:.5rem;max-height:11rem;overflow-y:auto}
.emp-grid button{font-size:1.3rem;line-height:1.9rem;border:0;background:none;cursor:pointer;border-radius:.5rem}
.emp-grid button:hover{background:#fff7ed;transform:scale(1.2)}.dark .emp-grid button:hover{background:#334155}
.emp-name{padding:.2rem .7rem .4rem;font-size:.7rem;color:#94a3b8}
/* Namens-Menü */
.umenu{position:fixed;z-index:60;min-width:13rem;background:#fff;border:1px solid #e2e8f0;border-radius:1rem;box-shadow:0 10px 40px rgba(0,0,0,.25);padding:.4rem;font-size:.85rem}
.dark .umenu{background:#1e293b;border-color:#334155}
.umenu .uh{padding:.3rem .6rem;font-weight:700;border-bottom:1px solid #e2e8f0;margin-bottom:.25rem}.dark .umenu .uh{border-color:#334155}
.umenu a,.umenu button.ui{display:block;width:100%;text-align:left;padding:.4rem .6rem;border-radius:.6rem;border:0;background:none;cursor:pointer;color:inherit;text-decoration:none}
.umenu a:hover,.umenu button.ui:hover{background:#fff7ed}.dark .umenu a:hover,.dark .umenu button.ui:hover{background:#334155}
.umenu .ur{display:flex;align-items:center;gap:.3rem;padding:.25rem .6rem;color:#64748b}
.umenu .ur span{flex:1}.umenu .ur button{border:0;border-radius:.5rem;background:#e2e8f0;padding:.15rem .5rem;cursor:pointer;font-size:.75rem}
.umenu .ur button.red{background:#fee2e2;color:#991b1b}
.umenu .ud{border-top:1px solid #e2e8f0;margin:.25rem 0}.dark .umenu .ud{border-color:#334155}

/* Shop-Perk: Avatar-Rahmen */
[class*="frame-"]{padding:4px;box-sizing:border-box}
.frame-gold{background:linear-gradient(135deg,#fde68a,#f59e0b,#fde68a);box-shadow:0 0 14px 2px rgba(245,158,11,.55)}
.frame-neon{background:#06b6d4;box-shadow:0 0 6px #22d3ee,0 0 18px 3px rgba(34,211,238,.7)}
.frame-fire{background:linear-gradient(135deg,#ef4444,#f59e0b);box-shadow:0 0 16px 3px rgba(239,68,68,.55)}
.frame-ice{background:linear-gradient(135deg,#e0f2fe,#38bdf8);box-shadow:0 0 14px 2px rgba(56,189,248,.5)}
.frame-royal{background:linear-gradient(135deg,#7c3aed,#c084fc,#7c3aed);box-shadow:0 0 14px 2px rgba(124,58,237,.5)}
.frame-rainbow{background:conic-gradient(#ef4444,#f59e0b,#22c55e,#06b6d4,#6366f1,#d946ef,#ef4444)}
.frame-emerald{background:linear-gradient(135deg,#10b981,#a7f3d0);box-shadow:0 0 14px 2px rgba(16,185,129,.5)}
.frame-rose{background:linear-gradient(135deg,#fda4af,#e11d48);box-shadow:0 0 14px 2px rgba(225,29,72,.45)}
