/* Alien Invasion theme */
:root{--ai-text:#f2fffb;--ai-dim:#b8e8de}
html,body{background:radial-gradient(circle at 24% 12%, rgba(128,255,178,.14), transparent 18%),radial-gradient(circle at 82% 18%, rgba(174,85,255,.14), transparent 18%),linear-gradient(180deg,#141336 0%,#070711 100%);color:var(--ai-text)}
body::before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.24;background:radial-gradient(circle at 10% 20%, rgba(128,255,178,.22) 0 2px, transparent 3px),radial-gradient(circle at 75% 15%, rgba(255,255,255,.28) 0 1px, transparent 2px),radial-gradient(circle at 65% 78%, rgba(174,85,255,.20) 0 2px, transparent 3px);background-size:140px 140px,160px 160px,180px 180px;z-index:0} body>*{position:relative;z-index:1}
h1,h2,h3{color:#f5fffd;text-transform:uppercase;letter-spacing:.06em;text-shadow:0 0 14px rgba(128,255,178,.18)}
.muted,.admin-status-label,#profileUserInfo,#joinQrText,#mapHelp{color:var(--ai-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(24,23,67,.95), rgba(11,11,29,.97));border:1px solid rgba(128,255,178,.24);box-shadow:0 16px 34px rgba(0,0,0,.42)}
.admin-status-card{background:radial-gradient(circle at top left, rgba(128,255,178,.16), transparent 32%),radial-gradient(circle at bottom right, rgba(174,85,255,.12), transparent 24%),linear-gradient(180deg, rgba(24,23,67,.98), rgba(11,11,29,.98))}
.admin-tab-button,.sub-tab-button,.button-link,button{border:1px solid rgba(128,255,178,.42);color:var(--ai-text);background:linear-gradient(180deg, rgba(93,55,189,.9), rgba(37,27,93,.96));box-shadow:0 0 14px rgba(174,85,255,.08)}
.admin-tab-button:hover,.sub-tab-button:hover,.button-link:hover,button:hover{border-color:rgba(221,255,239,.92);background:linear-gradient(180deg, rgba(108,67,206,.94), rgba(47,34,111,.98))}
.admin-tab-button.active,.sub-tab-button.active{background:linear-gradient(180deg, rgba(128,255,178,.84), rgba(40,196,162,.92));border-color:rgba(223,255,239,.95);color:#05221c;box-shadow:0 0 22px rgba(128,255,178,.2)}
button.secondary,.secondary-link{background:linear-gradient(180deg, rgba(86,220,255,.82), rgba(46,120,222,.9));border-color:rgba(203,246,255,.74);color:#071e36}
button.danger-button{background:linear-gradient(180deg, rgba(255,126,161,.9), rgba(180,42,91,.94));border-color:rgba(255,196,214,.72);color:#2c0716}
.ready-button{background:linear-gradient(180deg, rgba(187,255,98,.98), rgba(68,225,122,.98))!important;border-color:rgba(237,255,198,.96)!important;color:#17300e!important}
.status-pill{color:#f7fffd;border-color:rgba(128,255,178,.24);background:rgba(28,24,67,.76)} .status-pill-good{background:rgba(68,225,122,.28);border-color:rgba(187,255,98,.82)} .status-pill-waiting{background:rgba(255,220,104,.28);border-color:rgba(255,239,178,.82);color:#fffce8} .status-pill-paused{background:rgba(86,220,255,.26);border-color:rgba(203,246,255,.82)} .status-pill-ended{background:rgba(255,126,161,.28);border-color:rgba(255,196,214,.82)}
input,select,textarea{color:var(--ai-text);background:rgba(12,12,31,.96);border:1px solid rgba(128,255,178,.26)} input:focus,select:focus,textarea:focus{outline:none;border-color:rgba(128,255,178,.92);box-shadow:0 0 0 3px rgba(128,255,178,.12),0 0 14px rgba(128,255,178,.12)}
.readonly-input{background:rgba(26,25,56,.88);color:#cdeae2}
.admin-list>*,.join-player-row{background:rgba(28,24,67,.72);border:1px solid rgba(128,255,178,.14)}
.join-player-avatar,.profile-avatar-preview,.profile-icon-button{border:1px solid rgba(128,255,178,.36);box-shadow:0 0 10px rgba(128,255,178,.08)}
.profile-icon-button{background:linear-gradient(180deg, rgba(93,55,189,.9), rgba(37,27,93,.96))}
.fallback-avatar,.profile-icon-fallback{color:#fbfffe}.fallback-avatar{background:rgba(86,220,255,.28);border:1px solid rgba(203,246,255,.46)}
.join-qr-placeholder{background:linear-gradient(180deg, rgba(31,27,73,.95), rgba(12,12,31,.98));border:1px dashed rgba(128,255,178,.24)}
.join-qr-image{background:#fff}
#adminMap,.admin-map,.map,.leaflet-container{border:1px solid rgba(128,255,178,.24);box-shadow:0 10px 28px rgba(0,0,0,.28),0 0 14px rgba(128,255,178,.08)}
.map-status{color:#f6fffd;background:rgba(24,23,67,.92);border:1px solid rgba(128,255,178,.18)} .map-status.success{background:rgba(68,225,122,.22);border-color:rgba(187,255,98,.66)} .map-status.error{background:rgba(255,126,161,.22);border-color:rgba(255,196,214,.68)}
.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#231f56;color:var(--ai-text)}
a,a:visited{color:#9dffe2} a:hover{color:#fff}
.status.success{background:rgba(68,225,122,.26);border:1px solid rgba(187,255,98,.68);color:#f4fff7}.status.error{background:rgba(255,126,161,.26);border:1px solid rgba(255,196,214,.7);color:#fff0f5}
.login-card{background:radial-gradient(circle at top right, rgba(128,255,178,.10), transparent 24%),radial-gradient(circle at bottom left, rgba(174,85,255,.10), transparent 22%),linear-gradient(180deg, rgba(24,23,67,.98), rgba(11,11,29,.98))}
