/* SpeciesSwap admin action scoped to /players. */
.species-admin-change-button{display:inline-flex;align-items:center;gap:7px;margin-top:9px;min-height:34px;padding:0 12px;border-radius:10px;border:1px solid rgba(224,174,77,.38);background:rgba(224,174,77,.10);color:#e7c081;font-size:11px;font-weight:850;cursor:pointer}
.species-admin-change-button:hover{background:rgba(224,174,77,.17)}
.as-overlay{position:fixed;inset:0;z-index:3000;display:grid;place-items:center;padding:14px;background:rgba(0,4,2,.78);backdrop-filter:blur(6px)}
.as-modal{box-sizing:border-box;width:min(600px,100%);max-height:calc(100dvh - 28px);display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(224,174,77,.26);border-radius:20px;background:#0a100c;color:#edf2ed;box-shadow:0 28px 100px rgba(0,0,0,.65)}
.as-head,.as-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 20px;border-bottom:1px solid rgba(255,255,255,.09)}
.as-head small{font-size:9px;font-weight:850;letter-spacing:.13em;color:#dbb679}
.as-head h2{font-size:19px;margin:4px 0 0}
.as-close{width:38px;height:38px;flex:0 0 38px;border:1px solid rgba(255,255,255,.17);border-radius:10px;color:#ccd5cb;background:transparent;font-size:20px;cursor:pointer}
.as-body{padding:17px 20px;overflow:auto;display:flex;flex-direction:column;gap:11px;scrollbar-width:thin;scrollbar-color:#a77d45 #111912}
.as-target{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.as-target strong{font-size:15px}.as-target small{color:#929f93;font-size:11px}.as-target #as-active{width:100%;font-size:11px;color:#deb571}
.as-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.as-stats>div{padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:11px;background:rgba(255,255,255,.025);min-width:0}.as-stats small{display:block;color:#95a095;font-size:10px;margin-bottom:6px}.as-stats b{font-size:14px;overflow-wrap:anywhere}.as-stats>div:last-child b{color:#ddb06b}
.as-label{font-size:12px;font-weight:850;color:#cbd5cc}.as-modal select,.as-modal textarea{box-sizing:border-box;width:100%;min-height:43px;border-radius:11px;border:1px solid rgba(224,174,77,.23);padding:11px 13px;background:#121c15;color:#edf2ed;font:inherit;font-size:12px}
.as-modal textarea{resize:vertical;min-height:65px}.as-modal :focus-visible{outline:2px solid #d6ae71;outline-offset:2px}
.as-preview{display:flex;align-items:center;gap:15px;min-height:55px;padding:9px;border:1px solid rgba(255,255,255,.06);border-radius:12px;color:#99a69a;font-size:11px}
.as-preview img{width:110px;height:72px;object-fit:contain}.as-preview img[hidden]{display:none}
.as-check{display:flex;gap:9px;align-items:flex-start;font-size:11px;line-height:1.6;color:#c9d2ca}.as-check input{accent-color:#d1a25b;flex-shrink:0;margin-top:3px}
.as-message{padding:10px 12px;border:1px solid rgba(218,165,78,.28);border-radius:11px;color:#e5c48e;background:rgba(218,165,78,.06);font-size:12px}.as-message[data-kind=error]{border-color:rgba(211,93,81,.35);color:#eea29d}.as-message[hidden]{display:none}
.as-history{border-top:1px solid rgba(255,255,255,.08);padding-top:10px}.as-history summary{cursor:pointer;color:#c0cbbf;font-size:11px}.as-log-entry{padding:9px 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:11px;color:#9eada0}
.as-foot{border-top:1px solid rgba(255,255,255,.09);border-bottom:0;justify-content:flex-end}.as-foot button{min-height:42px;border:1px solid rgba(255,255,255,.14);padding:0 16px;border-radius:10px;background:#172019;color:#e4eee5;font-weight:800;cursor:pointer}.as-foot #as-submit{background:#cda15f;border-color:#dcb577;color:#15120a}.as-foot button:disabled{opacity:.4;cursor:not-allowed}
@media(max-width:520px){.as-head,.as-body,.as-foot{padding-left:14px;padding-right:14px}.as-stats>div{padding:8px}.as-stats b{font-size:12px}.as-foot button{flex:1}}

.as-lock-badge{display:inline-flex;margin-left:8px;align-items:center;border:1px solid rgba(225,173,92,.35);border-radius:999px;padding:5px 9px;color:#e4bc7b;background:rgba(225,173,92,.08);font-size:10px;font-weight:900}
.as-lock-badge[hidden]{display:none!important}
#detail-card button:disabled{cursor:not-allowed;opacity:.45}

.species-admin-change-button[hidden]{display:none!important}

.as-message[data-kind=success]{border-color:rgba(101,190,122,.34);color:#9bd6a9;background:rgba(65,144,82,.12)}
.as-modal select:disabled,.as-modal textarea:disabled{opacity:.56;cursor:not-allowed}

/* Selected-player card title action in Admin Control Center. */
.player-card-title .player-card-title-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-shrink:0}
.player-card-title .species-admin-change-button{margin:0;white-space:nowrap;min-height:32px;padding:0 10px}
@media(max-width:560px){.player-card-title .player-card-title-actions{flex-wrap:wrap}.player-card-title .species-admin-change-button{font-size:10px}}

/* Live Map player header: compact green action matching the other controls. */
.player-card-title-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-shrink:0}
.player-card-title-actions .species-admin-change-button{margin:0;min-height:34px;padding:0 12px;border-radius:9px;border:1px solid rgba(91,205,169,.38);background:linear-gradient(135deg,rgba(25,91,77,.95),rgba(17,59,49,.95));color:#d9fff0;font:inherit;font-size:11px;font-weight:800;line-height:1.3;display:inline-flex;align-items:center;gap:7px;white-space:nowrap;cursor:pointer;box-shadow:inset 0 1px 0 rgba(255,255,255,.055);transition:background .16s,border-color .16s}
.player-card-title-actions .species-admin-change-button:hover:not(:disabled){background:#236f59;border-color:#6fd5ad;color:#fff}
.player-card-title-actions .species-admin-change-button:disabled{opacity:.43;cursor:not-allowed}
.player-card-title-actions .player-card-close{margin:0}
@media(max-width:580px){.player-card-title-actions{gap:7px}.player-card-title-actions .species-admin-change-button{padding:0 9px;font-size:10px}}

/* Refined selected-player action matching the adjacent controls. */
.player-card-title-actions .species-admin-change-button{min-height:34px;max-width:100%;padding:0 13px;border:1px solid rgba(100,196,163,.32);border-radius:10px;background:rgba(30,91,75,.68);color:#d8f6e9;font-size:12px;font-weight:700;letter-spacing:.01em;box-shadow:none;transition:background .15s ease,border-color .15s ease,transform .15s ease}
.player-card-title-actions .species-admin-change-button i{font-size:13px;opacity:.85}
.player-card-title-actions .species-admin-change-button:hover:not(:disabled){background:rgba(41,117,93,.9);border-color:rgba(123,224,183,.7);transform:translateY(-1px)}
.player-card-title-actions .species-admin-change-button:focus-visible{outline:2px solid #9ce2c3;outline-offset:2px}
@media(max-width:580px){.player-card-title-actions .species-admin-change-button{min-height:32px;padding:0 10px;font-size:11px}.player-card-title-actions{min-width:0;flex-wrap:wrap}}
/* SpeciesSwap: match the Admin Web emerald palette and shared design tokens. */
.species-admin-change-button,.player-card-title-actions .species-admin-change-button{border:1px solid var(--line,rgba(132,230,191,.22));border-radius:8px;background:rgba(102,230,182,.09);color:var(--accent,#66e6b6);font-size:11px;font-weight:750;box-shadow:none;transform:none}
.species-admin-change-button:hover:not(:disabled),.player-card-title-actions .species-admin-change-button:hover:not(:disabled){background:rgba(102,230,182,.17);border-color:rgba(102,230,182,.42);color:var(--text,#e8fff6);transform:none}
.as-modal{border-color:var(--line,rgba(132,230,191,.16));border-radius:14px;background:var(--panel,#0d1b19);color:var(--text,#e8fff6)}
.as-head,.as-foot,.as-history{border-color:var(--line,rgba(132,230,191,.16))}
.as-head small,.as-stats>div:last-child b,.as-target #as-active{color:var(--accent,#66e6b6)}
.as-close,.as-foot button{border-color:var(--line,rgba(132,230,191,.16));background:#10211d;color:var(--text,#e8fff6)}
.as-close:hover,.as-foot button:hover:not(:disabled){background:#1a3830}
.as-body{scrollbar-color:rgba(102,230,182,.5) #10211d}
.as-target small,.as-stats small,.as-preview,.as-history summary{color:var(--muted,#8fa9a0)}
.as-stats>div,.as-preview{border-color:var(--line,rgba(132,230,191,.16));background:rgba(102,230,182,.035)}
.as-label,.as-check{color:var(--text,#e8fff6)}
.as-modal select,.as-modal textarea{border-color:var(--line,rgba(132,230,191,.16));background:#10211d;color:var(--text,#e8fff6)}
.as-modal :focus-visible,.player-card-title-actions .species-admin-change-button:focus-visible{outline:2px solid var(--accent,#66e6b6);outline-offset:2px}
.as-foot #as-submit{background:var(--accent,#66e6b6);border-color:var(--accent,#66e6b6);color:#071713}
.as-foot #as-submit:hover:not(:disabled){background:#8bf1ca}
.as-message{border-color:var(--line,rgba(132,230,191,.16));background:rgba(102,230,182,.055);color:var(--text,#e8fff6)}
.as-message[data-kind=error]{border-color:rgba(255,111,117,.35);color:var(--danger,#ff6f75)}
.as-lock-badge{border-color:var(--line,rgba(132,230,191,.16));background:rgba(102,230,182,.08);color:var(--accent,#66e6b6)}
/* SpeciesSwap field and alert hierarchy */
.as-body{gap:14px}
.as-modal select,.as-modal textarea{border:1px solid rgba(132,230,191,.38);background:#061411;box-shadow:inset 0 1px 3px rgba(0,0,0,.26)}
.as-modal textarea{min-height:78px}
.as-modal select:focus,.as-modal textarea:focus{border-color:var(--accent,#66e6b6)}
.as-preview{position:relative;align-items:flex-start;min-height:55px;padding:12px 14px;border:1px solid rgba(102,230,182,.2);border-left:4px solid #6dd8ae;border-radius:10px;background:rgba(102,230,182,.085);color:#cceadd;line-height:1.55}
.as-preview:before{content:'ⓘ';color:#76e8bd;font-size:16px;flex-shrink:0}
.as-preview span{padding-top:1px}
.as-check{padding:10px 12px;border:1px solid rgba(132,230,191,.14);border-radius:9px;background:rgba(255,255,255,.025)}
.as-history{padding:10px 12px;border:1px solid rgba(132,230,191,.15);border-radius:9px;background:rgba(0,0,0,.13)}
.as-history summary{font-weight:700}
.as-message{border-left-width:4px}
.as-foot #as-submit:not(:disabled){box-shadow:0 5px 14px rgba(102,230,182,.14)}
/* SpeciesSwap compact layout v10 — aligned Admin Web modal controls. */
.as-modal{width:min(560px,calc(100vw - 28px));border-radius:13px}
.as-head{padding:14px 18px;min-height:0;align-items:center}
.as-head>div{min-width:0}
.as-head small{font-size:9px;letter-spacing:.1em}
.as-head h2{font-size:18px;line-height:1.3;margin:3px 0 0}
.as-modal .as-close{display:grid;place-items:center;box-sizing:border-box;width:30px;height:30px;min-width:30px;min-height:30px;flex:0 0 30px;padding:0;margin:0;border:1px solid var(--line,rgba(132,230,191,.22));border-radius:8px;background:transparent;color:var(--text,#e8fff6);font:600 19px/1 Arial,sans-serif;box-shadow:none;cursor:pointer}
.as-modal .as-close:hover{background:rgba(102,230,182,.1);border-color:rgba(102,230,182,.4)}
.as-body{gap:10px;padding:14px 18px;line-height:1.45}
.as-target{gap:6px;padding:0 0 2px}
.as-target strong{font-size:13px}
.as-target small{font-size:10px}
.as-stats{gap:7px}
.as-stats>div{padding:9px 10px;border-radius:9px}
.as-stats small{font-size:9px;margin-bottom:3px}
.as-stats b{font-size:13px}
.as-label{margin-top:3px;font-size:11px}
.as-modal select{height:39px;min-height:39px;padding:8px 11px;font-size:12px;border-radius:8px}
.as-modal textarea{height:64px;min-height:64px;padding:10px 11px;font-size:12px;border-radius:8px}
.as-preview{min-height:0;padding:9px 11px;gap:10px;border-radius:9px;font-size:10px;line-height:1.45}
.as-preview:before{font-size:15px}
.as-preview img{max-width:86px;height:54px}
.as-check{padding:8px 10px;border-radius:8px;font-size:10px;line-height:1.5}
.as-check input{margin-top:2px}
.as-message{padding:9px 11px;border-radius:8px;font-size:11px}
.as-history{padding:8px 10px;border-radius:8px}
.as-history summary{font-size:10px}
.as-log-entry{padding:7px 0;font-size:10px;line-height:1.4}
.as-foot{min-height:0;padding:12px 18px;gap:8px}
.as-foot button{box-sizing:border-box;min-height:36px;min-width:0;padding:0 14px;border-radius:8px;font-size:12px;box-shadow:none}
.as-foot #as-submit:not(:disabled){box-shadow:none}
@media(max-width:520px){.as-modal{width:100%}.as-head,.as-body,.as-foot{padding-left:13px;padding-right:13px}.as-stats>div{padding:8px 7px}.as-stats b{font-size:12px}.as-foot button{flex:0 1 auto}.as-foot #as-submit{flex:1}.as-modal .as-close{width:30px;height:30px;min-width:30px;min-height:30px}}