/* Dymtlost H-Chat — gerçek IRC yetki ve Flatcast şapka görünümü */

:root {
  --auth-netadmin-a: #ff304f; --auth-netadmin-b: #ffbd2e;
  --auth-founder-a: #ff3d71; --auth-founder-b: #ffd45c;
  --auth-admin-a: #35c788; --auth-admin-b: #88f0be;
  --auth-operator-a: #aeb7c7; --auth-operator-b: #fff;
  --auth-moderator-a: #6f7787; --auth-moderator-b: #bcc3cf;
  --auth-vip-a: #d69b12; --auth-vip-b: #ffe076;
}

#userlist .authority-row { position: relative; min-height: 56px; isolation: isolate; }
#userlist .authority-row::before { content: ""; position: absolute; inset: 5px 6px; z-index: -1; border-radius: 10px; opacity: 0; transition: opacity .2s ease; }
#userlist .authority-row:hover::before { opacity: 1; }
#userlist .authority-netadmin::before { background: linear-gradient(90deg,rgba(255,48,79,.12),rgba(255,189,46,.08)); }
#userlist .authority-founder::before { background: linear-gradient(90deg,rgba(255,61,113,.11),rgba(255,212,92,.07)); }
#userlist .authority-admin::before { background: linear-gradient(90deg,rgba(53,199,136,.12),rgba(136,240,190,.07)); }
#userlist .authority-operator::before { background: linear-gradient(90deg,rgba(120,139,170,.12),rgba(223,230,241,.08)); }
#userlist .authority-moderator::before { background: linear-gradient(90deg,rgba(66,73,87,.13),rgba(143,151,166,.07)); }
#userlist .authority-vip::before { background: linear-gradient(90deg,rgba(214,155,18,.12),rgba(255,224,118,.08)); }

#userlist .ul-identity { min-width: 0; display: flex; flex: 1 1 auto; flex-direction: column; justify-content: center; gap: 3px; }
#userlist .ul-role { color: #8c92a0; font-size: 9px; font-weight: 850; letter-spacing: .08em; line-height: 1; text-transform: uppercase; }
#userlist .ul-badge { width: 36px; height: 36px; flex-basis: 36px; border: 0; background: transparent !important; box-shadow: none; font-size: 13px; }
#userlist .ul-badge.user { color: #717887; border: 1px solid #dfe3eb; border-radius: 10px; background: #e8ebf1 !important; }

.authority-hat { width: 36px; height: 37px; display: inline-block; flex: 0 0 36px; object-fit: contain; vertical-align: middle; filter: drop-shadow(0 3px 6px rgba(0,0,0,.32)); animation: authority-hat-float 2.7s ease-in-out infinite; }
.authority-hat-compact { width: 25px; height: 25px; margin: -6px 3px -5px 1px; filter: drop-shadow(0 2px 4px rgba(0,0,0,.28)); }
.authority-nick { display: inline-block; max-width: 100%; overflow: hidden; font-weight: 850; text-overflow: ellipsis; vertical-align: bottom; white-space: nowrap; }

.authority-nick.authority-netadmin,
.authority-nick.authority-founder,
.authority-nick.authority-admin,
.authority-nick.authority-operator,
.authority-nick.authority-moderator,
.authority-nick.authority-vip { background-size: 220% 100%; background-clip: text; -webkit-background-clip: text; color: transparent !important; -webkit-text-fill-color: transparent; animation: authority-shine 3s linear infinite; }
.authority-nick.authority-netadmin { background-image: linear-gradient(90deg,var(--auth-netadmin-a),#fff0a0,var(--auth-netadmin-b),var(--auth-netadmin-a)); animation-duration: 1.8s; }
.authority-nick.authority-founder { background-image: linear-gradient(90deg,var(--auth-founder-a),var(--auth-founder-b),var(--auth-founder-a)); animation-duration: 2.2s; }
.authority-nick.authority-admin { background-image: linear-gradient(90deg,var(--auth-admin-a),var(--auth-admin-b),var(--auth-admin-a)); animation-duration: 2.5s; }
.authority-nick.authority-operator { background-image: linear-gradient(90deg,var(--auth-operator-a),var(--auth-operator-b),var(--auth-operator-a)); }
.authority-nick.authority-moderator { background-image: linear-gradient(90deg,var(--auth-moderator-a),var(--auth-moderator-b),var(--auth-moderator-a)); animation-duration: 3.4s; }
.authority-nick.authority-vip { background-image: linear-gradient(90deg,var(--auth-vip-a),var(--auth-vip-b),var(--auth-vip-a)); animation-duration: 2.8s; }
.irc-line .authority-nick { font-weight: 900; }

@keyframes authority-shine { 0% { background-position: 100% 50%; filter: brightness(1); transform: translateY(0); } 50% { filter: brightness(1.18); transform: translateY(-1px); } 100% { background-position: -120% 50%; filter: brightness(1); transform: translateY(0); } }
@keyframes authority-hat-float { 50% { transform: translateY(-2px) rotate(2deg); } }
body.dark #userlist .ul-role { color: #8f97a9; }
body.dark #userlist .ul-badge.user { color: #b4bbca; border-color: #414858; background: #343a49 !important; }
@media (max-width:768px) { .authority-hat { width: 31px; height: 32px; flex-basis: 31px; } .authority-hat-compact { width: 23px; height: 23px; margin-top: -5px; margin-bottom: -5px; } }
@media (prefers-reduced-motion:reduce) { .authority-nick,.authority-hat { animation: none !important; transform: none !important; } }
