/* Toxic Slime Lab theme */
:root{--tsl-text:#f8ffe0;--tsl-dim:#c3df95}
html,body{background:radial-gradient(circle at 22% 18%, rgba(145,255,0,.18), transparent 20%),radial-gradient(circle at 78% 12%, rgba(0,255,191,.12), transparent 18%),linear-gradient(180deg,#243400 0%,#071108 100%);color:var(--tsl-text)}
body::before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.22;background:radial-gradient(circle at 12% 24%, rgba(212,255,0,.25) 0 16px, transparent 18px),radial-gradient(circle at 86% 72%, rgba(0,255,191,.18) 0 12px, transparent 14px),radial-gradient(circle at 46% 84%, rgba(212,255,0,.18) 0 10px, transparent 12px);z-index:0} body>*{position:relative;z-index:1}
h1,h2,h3{color:#fcffe7;text-transform:uppercase;letter-spacing:.05em;text-shadow:0 0 12px rgba(145,255,0,.18)}
.muted,.admin-status-label,#profileUserInfo,#joinQrText,#mapHelp{color:var(--tsl-dim)!important}
.card,.admin-section,.profile-modal,.join-qr-card,.join-player-card,.admin-status-card,.admin-panel,.modal-backdrop .card{background:linear-gradient(180deg, rgba(33,48,9,.95), rgba(10,18,10,.97));border:1px solid rgba(182,255,0,.28);box-shadow:0 16px 34px rgba(0,0,0,.4),inset 0 0 0 1px rgba(255,255,255,.03)}
.admin-status-card{background:radial-gradient(circle at top left, rgba(145,255,0,.16), transparent 32%),radial-gradient(circle at bottom right, rgba(0,255,191,.10), transparent 24%),linear-gradient(180deg, rgba(33,48,9,.98), rgba(10,18,10,.98))}
.admin-tab-button,.sub-tab-button,.button-link,button{border:1px solid rgba(212,255,0,.46);color:var(--tsl-text);background:linear-gradient(180deg, rgba(111,176,0,.88), rgba(42,90,23,.94));box-shadow:0 0 14px rgba(145,255,0,.08)}
.admin-tab-button:hover,.sub-tab-button:hover,.button-link:hover,button:hover{border-color:rgba(237,255,178,.94);background:linear-gradient(180deg, rgba(134,206,17,.92), rgba(56,113,28,.98))}
.admin-tab-button.active,.sub-tab-button.active{background:linear-gradient(180deg, rgba(0,255,191,.82), rgba(44,181,106,.92));border-color:rgba(214,255,248,.95);color:#042016;box-shadow:0 0 22px rgba(0,255,191,.22)}
button.secondary,.secondary-link{background:linear-gradient(180deg, rgba(0,255,191,.74), rgba(11,139,104,.88));border-color:rgba(190,255,240,.72);color:#06251d}
button.danger-button{background:linear-gradient(180deg, rgba(255,146,63,.92), rgba(170,72,20,.95));border-color:rgba(255,210,170,.72);color:#281307}
.ready-button{background:linear-gradient(180deg, rgba(212,255,0,.98), rgba(79,220,84,.98))!important;border-color:rgba(246,255,179,.96)!important;color:#183200!important;box-shadow:0 0 24px rgba(145,255,0,.22)!important}
.status-pill{color:#f9ffe9;border-color:rgba(182,255,0,.34);background:rgba(25,43,8,.78)}
.status-pill-good{background:rgba(67,181,91,.34);border-color:rgba(212,255,0,.84)}.status-pill-waiting{background:rgba(255,191,66,.30);border-color:rgba(255,227,154,.82)}.status-pill-paused{background:rgba(0,255,191,.26);border-color:rgba(190,255,240,.82)}.status-pill-ended{background:rgba(255,146,63,.28);border-color:rgba(255,210,170,.82)}
input,select,textarea{color:var(--tsl-text);background:rgba(11,19,10,.96);border:1px solid rgba(182,255,0,.32)}
input:focus,select:focus,textarea:focus{outline:none;border-color:rgba(0,255,191,.92);box-shadow:0 0 0 3px rgba(0,255,191,.14),0 0 16px rgba(145,255,0,.14)}
.readonly-input{background:rgba(28,40,16,.88);color:#d5eba2}
.admin-list>*,.join-player-row{background:rgba(25,43,8,.74);border:1px solid rgba(182,255,0,.16)}
.join-player-avatar,.profile-avatar-preview,.profile-icon-button{border:1px solid rgba(0,255,191,.42);box-shadow:0 0 12px rgba(0,255,191,.12)}
.profile-icon-button{background:linear-gradient(180deg, rgba(111,176,0,.88), rgba(42,90,23,.94))}
.fallback-avatar,.profile-icon-fallback{color:#f7ffe2}.fallback-avatar{background:rgba(0,255,191,.28);border:1px solid rgba(190,255,240,.52)}
.join-qr-placeholder{background:linear-gradient(180deg, rgba(24,39,10,.95), rgba(8,14,8,.98));border:1px dashed rgba(0,255,191,.28)}
.join-qr-image{background:#fffffa}
#adminMap,.admin-map,.map,.leaflet-container{border:1px solid rgba(182,255,0,.32);box-shadow:0 10px 28px rgba(0,0,0,.28),0 0 14px rgba(145,255,0,.08)}
.map-status{color:#fbffe9;background:rgba(24,39,10,.92);border:1px solid rgba(182,255,0,.24)} .map-status.success{background:rgba(67,181,91,.22);border-color:rgba(212,255,0,.66)} .map-status.error{background:rgba(255,146,63,.22);border-color:rgba(255,210,170,.68)}
.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#1f3208;color:var(--tsl-text)}
a,a:visited{color:#bfffa6} a:hover{color:#fff}
.status.success{background:rgba(67,181,91,.26);border:1px solid rgba(212,255,0,.7);color:#f7ffed}.status.error{background:rgba(255,146,63,.24);border:1px solid rgba(255,210,170,.7);color:#fff4ec}
.login-card{background:radial-gradient(circle at top right, rgba(145,255,0,.12), transparent 24%),radial-gradient(circle at bottom left, rgba(0,255,191,.10), transparent 22%),linear-gradient(180deg, rgba(33,48,9,.98), rgba(10,18,10,.98))}
