/* V64 · Panel ADMIN con identidad Arena, sin cambiar el diseño público. */
#app #adminTab[hidden],#adminAccessOverlay[hidden]{display:none!important}
#app #adminTab{display:block!important;width:100%!important;min-width:0!important;max-width:none!important;margin:0!important;padding:12px 0 38px!important;color:#eaf6f4}
#app #adminTab .admin-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;background:linear-gradient(105deg,#142b38,#0d2330);border:1px solid #476575;border-top:4px solid #89ded6;padding:24px 28px;margin-bottom:22px}
#app #adminTab .admin-eyebrow{color:#88e0d3;letter-spacing:.12em;font:900 11px Inter,system-ui,sans-serif}
#app #adminTab .admin-hero h1{color:#fff;font:900 clamp(30px,4vw,48px) Inter,system-ui,sans-serif;line-height:1.1;margin:9px 0}
#app #adminTab .admin-hero h1 em{color:#fa7654;font-style:normal}
#app #adminTab .admin-hero p{color:#bed4d8;margin:0;font-size:13px;line-height:1.5}
#app #adminTab .admin-hero-tools{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
#app #adminTab .stats-upload{display:inline-flex!important;cursor:pointer!important;background:#f87857!important;padding:12px 16px!important;color:#091925!important;font-weight:900!important;font-size:12px!important;letter-spacing:.03em}
#app #adminTab .stats-upload input{display:none!important}
#app #adminTab .admin-lock{cursor:pointer;background:#1a3542;border:1px solid #5d8991;padding:12px 15px;color:#eaf6f4;font-weight:800;font-size:11px}
#app #adminTab .stats-upload-feedback{margin:0 0 15px;padding:13px 15px;border:1px solid #476c70;background:#1a3340;color:#e8f6f4;font-size:12px;overflow-wrap:anywhere}
#app #adminTab .admin-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
#app #adminTab .stats-admin{background:#102632;border:1px solid #3e6670;border-top:3px solid #86dfd5;padding:20px;color:#eaf5f4;min-width:0}
#app #adminTab .stats-admin:first-child{grid-column:1/-1}
#app #adminTab .stats-admin-head strong{display:block;font-weight:900;font-size:15px;letter-spacing:.035em;color:#fff}
#app #adminTab .stats-admin-head small{display:block;color:#b5cfd4;margin-top:7px;font-size:12px}
#app #adminTab .stats-admin-summary{display:flex;gap:16px;flex-wrap:wrap;margin:15px 0;font-size:12px;color:#c0d7d9}
#app #adminTab .stats-admin-summary b{color:#86dfd5}
#app #adminTab .stats-admin .stats-muted{font-size:12px;line-height:1.5;color:#bcd2d6}
#app #adminTab .stats-admin-games{max-height:240px;overflow-y:auto;margin:8px 0}
#app #adminTab .stats-admin .match-row{display:flex;gap:8px;justify-content:space-between;padding:10px 0;border-top:1px solid #375762;font-size:12px}
#app #adminTab .stats-admin .match-row b{color:#fff}
#app #adminTab .stats-admin .match-row small{display:block;font-size:11px;margin-top:4px;color:#b7d0d3}
#app #adminTab .stats-admin .status-review{font-size:10px;color:#ffd09a;white-space:nowrap}
#app #adminTab .stats-admin-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
#app #adminTab .stats-btn{font-size:11px;font-weight:850;padding:11px 13px;color:#eef8f7;background:#183543;border:1px solid #628c93;cursor:pointer}
#app #adminTab .stats-btn:hover{background:#29505e}
#app #adminTab #settingsSlot{grid-column:1/-1}
#app #adminTab #cloudPanel{display:block;position:static!important;width:100%!important}
#app #adminTab #cloudPanel[hidden]{display:none!important}
#app #adminTab .stats-integrity-panel{margin:0 0 20px!important;border:1px solid #476d75!important;background:#102632!important;padding:20px!important}
#app #adminTab .stats-integrity-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;flex-wrap:wrap}
#app #adminTab .stats-integrity-kicker{font-size:11px;font-weight:900;letter-spacing:.12em;color:#8be4d7}
#app #adminTab .stats-integrity-heading h2{font:900 clamp(22px,3vw,33px) Inter,system-ui,sans-serif;color:#fff;margin:7px 0}
#app #adminTab .stats-integrity-heading h2 em{font-style:normal;color:#f87857}
#app #adminTab .stats-integrity-heading p{margin:0;color:#bed4d8;font-size:12px;line-height:1.6;max-width:770px}
#app #adminTab .stats-integrity-upload{cursor:pointer;background:#23444f;border:1px solid #79c8ba;color:#fff;font:850 11px Inter,system-ui,sans-serif;padding:12px 15px}
#app #adminTab .stats-integrity-counters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:17px 0}
#app #adminTab .stats-integrity-stat{padding:14px 12px;background:#173543;border:1px solid #3e6773}
#app #adminTab .stats-integrity-stat b{display:block;font-size:25px;color:#fff}
#app #adminTab .stats-integrity-stat span{display:block;font-size:10px;color:#aacece;margin-top:6px;letter-spacing:.03em}
#app #adminTab .stats-integrity-reference{color:#bdd5d6;font-size:12px;line-height:1.6;border-left:3px solid #f87857;padding-left:12px}
#app #adminTab .admin-audit-filters{display:flex;gap:9px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin:18px 0}
#app #adminTab .admin-audit-filters label{font-weight:900;font-size:11px;color:#a5e5d9}
#app #adminTab .admin-audit-filters select{padding:10px 13px;background:#0c1c29;color:#fff;border:1px solid #4c7b82;max-width:100%}
#app #adminTab .stats-integrity-list{display:grid;gap:10px}
#app #adminTab .stats-integrity-game{border:1px solid #3d6670;background:#122b37;min-width:0}
#app #adminTab .stats-integrity-game>summary{cursor:pointer;display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;padding:15px 17px;font-size:12px;color:#e8f4f4}
#app #adminTab .stats-integrity-game>summary b{color:#fff;font-size:13px;overflow-wrap:anywhere}
#app #adminTab .admin-audit-status{font-weight:900;color:#8fe1d0;font-size:11px}
#app #adminTab .admin-audit-status.is-warning{color:#ffbd93}
#app #adminTab .admin-audit-details{padding:0 17px 16px}
#app #adminTab .admin-match-facts{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:13px}
#app #adminTab .admin-match-facts span{background:#1b3948;border:1px solid #3c5d65;color:#cfdee1;font-size:11px;padding:8px 10px}
#app #adminTab .stats-integrity-warning{color:#ffbca3;font-size:12px}
#app #adminTab .admin-audit-table-wrap{overflow-x:auto;border:1px solid #3f5d68}
#app #adminTab .admin-audit-table{width:100%;border-collapse:collapse;font-size:11px;min-width:870px}
#app #adminTab .admin-audit-table th{background:#1d3b48;color:#9fe6d8;font-size:10px;text-align:left;padding:11px 9px}
#app #adminTab .admin-audit-table td{padding:10px 9px;border-top:1px solid #365461;color:#dcebed;vertical-align:top}
#app #adminTab .admin-audit-table td:first-child{font-weight:800;white-space:nowrap}
#app #adminTab .admin-audit-table td.is-missing{color:#ffb89b;font-weight:900}
#app #adminTab .admin-audit-table small{display:block;color:#b3cfd0;margin-top:4px}
#app #adminTab .admin-audit-table td.is-missing small{color:#ffbd9e}
#app #adminTab .admin-audit-more{padding:12px 15px;border:1px solid #6b9b9b;color:#fff;font-weight:900;background:#1b4855;cursor:pointer;margin-top:15px}
#adminAccessOverlay{position:fixed;z-index:15000;inset:0;display:grid;place-items:center;padding:18px}
#adminAccessBackdrop{position:absolute;inset:0;background:#020b14d9;backdrop-filter:blur(7px)}
#adminAccessDialog{position:relative;z-index:1;width:min(460px,100%);padding:30px;border:1px solid #74c5bd;border-top:4px solid #f87857;background:#102733;color:#fff;box-shadow:0 30px 90px #000a}
#adminAccessDialog .admin-access-top{display:flex;justify-content:space-between;gap:12px;align-items:center}
#adminAccessDialog .admin-access-top span{font-weight:900;font-size:11px;letter-spacing:.12em;color:#8ae4d6}
#adminAccessDialog .admin-access-top button{background:transparent;border:0;color:#fff;font-size:25px;cursor:pointer}
#adminAccessDialog h2{font:900 27px Inter,system-ui,sans-serif;margin:18px 0 10px}
#adminAccessDialog p{font-size:13px;color:#bcd3d8;line-height:1.6}
#adminAccessDialog label{display:block;font-size:11px;font-weight:900;color:#9edcd4;margin:22px 0 7px}
#adminAccessDialog input{width:100%;box-sizing:border-box;background:#081a27;border:1px solid #72979e;padding:14px;color:#fff;font-size:16px}
#adminAccessDialog .admin-access-error{color:#ff9d8b;min-height:18px;margin:9px 0;font-size:12px}
#adminAccessDialog #adminAccessSubmit{width:100%;padding:14px;cursor:pointer;background:#f87857;border:0;color:#091925;font-weight:900}
body.admin-login-open{overflow:hidden}
@media(max-width:760px){
 #app #adminTab .admin-panels{grid-template-columns:1fr}
 #app #adminTab .admin-panels>*{grid-column:1/-1}
 #app #adminTab .stats-integrity-counters{grid-template-columns:repeat(2,minmax(0,1fr))}
 #app #adminTab .admin-hero{padding:20px 16px}
}
#app #adminTab .stats-integrity-details{border-top:1px solid #385b63;margin-top:15px;padding-top:12px}
#app #adminTab .stats-integrity-details>summary{cursor:pointer;font-weight:900;font-size:12px;color:#a9ead9;padding:11px 0;margin-bottom:10px}
#app #adminTab .stats-integrity-details summary::-webkit-details-marker{display:none}
#app #adminTab .stats-integrity-player{display:grid;grid-template-columns:minmax(125px,1fr) 120px minmax(200px,2fr);gap:9px;padding:10px 8px;border-top:1px solid #35515e;font-size:11px;color:#c2dadd}
#app #adminTab .stats-integrity-player strong{color:#fff;overflow-wrap:anywhere}
#app #adminTab .stats-integrity-fields{color:#ffbb9b;overflow-wrap:anywhere}
#app #adminTab .stats-integrity-clear{color:#aee0d0;font-size:12px}
@media(max-width:650px){#app #adminTab .stats-integrity-player{grid-template-columns:1fr 1fr}#app #adminTab .stats-integrity-fields{grid-column:1/-1}}

/* V66: el acceso vive fuera de #app; centrar el diálogo en el viewport. */
#adminAccessOverlay:not([hidden]){display:grid!important;position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;z-index:20000!important;place-items:center!important;align-items:center!important;justify-items:center!important;overflow-y:auto!important;box-sizing:border-box!important;padding:18px!important}
#adminAccessBackdrop{position:absolute!important;inset:0!important;background:rgba(2,10,20,.88)!important;backdrop-filter:blur(8px)}
#adminAccessDialog{position:relative!important;z-index:1!important;margin:auto!important;max-height:calc(100dvh - 36px)!important;overflow-y:auto!important;box-sizing:border-box!important}
#app > .tab-page[hidden],#app #adminTab[hidden],#adminAccessOverlay[hidden]{display:none!important}

/* V67: indicador público visible de la única fuente de estadísticas. */
#statsPublicSyncStatus.stats-public-sync{
 display:inline-flex;align-items:center;margin-top:9px;padding:6px 11px;
 border:1px solid rgba(119,194,198,.46);background:rgba(15,48,57,.75);
 color:#a0e7d9;font-size:10px;font-weight:900;letter-spacing:.065em;
 line-height:1.5;max-width:100%;box-sizing:border-box;
}
#statsPublicSyncStatus[data-sync="loading"]{color:#ffdda2;border-color:rgba(255,210,153,.4)}
#statsPublicSyncStatus[data-sync="error"]{color:#ffb7ad;border-color:rgba(255,132,132,.65);background:rgba(80,20,27,.42)}

/* V68 · Las replays registradas permanecen visibles aunque les falten datos. */
#statsHistorySection .history-v2-incomplete{
 border-color:rgba(246,166,104,.58)!important;
 background:linear-gradient(115deg,rgba(27,43,55,.96),rgba(40,29,29,.94))!important;
}
#statsHistorySection .history-v2-incomplete .history-v2-summary{
 gap:12px;flex-wrap:wrap;align-items:center;
}
#statsHistorySection .history-v2-pending{
 display:inline-flex;align-items:center;justify-content:center;text-align:center;
 color:#ffbd99;font-size:11px;font-weight:900;letter-spacing:.035em;
 border:1px solid rgba(247,164,113,.57);background:rgba(101,49,31,.26);
 padding:9px 12px;line-height:1.5;
}
#statsHistorySection .history-v2-pending-info{
 padding:18px 22px;background:rgba(9,26,35,.8);
 border-top:1px solid rgba(247,164,113,.35);
 color:#e6d9d2;font-size:13px;line-height:1.7;
}
#statsHistorySection .history-v2-pending-info strong{
 color:#ffc2a4;font-weight:900;letter-spacing:.04em;
}
#statsHistorySection .history-v2-pending-info p{margin:9px 0 0}
#statsPublicSyncStatus{white-space:normal}
@media(max-width:760px){#statsHistorySection .history-v2-pending-info{padding:15px}}

/* V69 · Gestión de jugadores habituales dentro del panel ADMIN. */
#app #adminTab .admin-regular-players{
 grid-column:1/-1!important;width:100%!important;min-width:0!important;
 display:block!important;margin:0!important;padding:0!important;
}
#app #adminTab .admin-regular-players .community-shell{
 width:100%!important;max-width:none!important;margin:0!important;min-width:0!important;
}
#app #adminTab .admin-regular-players .community-hero{margin:0 0 12px!important}
#app #adminTab .admin-regular-players .community-content-panel{margin-bottom:0!important}
#app #adminTab .admin-regular-players .community-hero,
#app #adminTab .admin-regular-players .community-content-panel{
 box-sizing:border-box!important;max-width:100%!important;
}
#app #adminTab .admin-regular-players .community-content-top{
 flex-wrap:wrap;gap:12px;
}
#app #adminTab .admin-regular-players .community-hero-copy h1{
 font-size:clamp(25px,3.5vw,42px)!important;
}
#app #adminTab .admin-panels > .stats-admin{min-width:0}
#app #adminTab .admin-panels > .stats-admin:nth-of-type(2){grid-column:1/-1}
#app #adminTab .stats-admin:first-child{grid-column:auto}
