@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=DM+Sans:wght@400;500;600;700;800&display=swap');
:root{--navy:#061a31;--navy2:#092c53;--gold:#ffcc29;--ink:#0a2342;--line:#dce4ed;--paper:#f7f9fc;--muted:#54657b;--warn:#8a250f}
*{box-sizing:border-box}html{min-height:100%}body{margin:0;min-height:100vh;color:var(--ink);background:var(--navy);font-family:'DM Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased}button,input{font:inherit}button{cursor:pointer}button:disabled{opacity:.56;cursor:not-allowed}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #b98900;outline-offset:3px}h1,h2,h3,p{margin-top:0}.page{min-height:100vh;display:grid;grid-template-columns:minmax(360px,44%) 1fr}.info{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;padding:clamp(26px,4.4vw,70px);color:#fff;background:var(--navy);overflow:hidden}.info:before{position:absolute;inset:0;z-index:-2;content:'';background:url('../cancha-real-san-jose.webp') center center /cover no-repeat;filter:saturate(1.13) brightness(.74)}.info:after{position:absolute;inset:0;z-index:-1;content:'';background:linear-gradient(115deg,rgba(3,18,37,.95),rgba(3,18,37,.78) 58%,rgba(3,18,37,.35));}.navbrand{display:flex;align-items:center;gap:14px;width:fit-content}.navbrand img{width:53px;height:66px;object-fit:contain}.navbrand .sm{display:block;font-size:11px;letter-spacing:2px;color:var(--gold);font-weight:800}.navbrand strong{display:block;font-size:19px;letter-spacing:-.7px;margin-top:3px}.eyebrow{font-size:11px;letter-spacing:2.6px;color:var(--gold);text-transform:uppercase;font-weight:800}.info h1{font-family:'Barlow Condensed',Arial,sans-serif;font-size:clamp(60px,5vw,88px);font-weight:900;line-height:.99;letter-spacing:-1.6px;margin:18px 0 22px}.info h1 em{display:block;color:var(--gold);font-style:normal}.info p{color:#e1eaf6;font-size:15px;line-height:1.7;max-width:490px}.info .foot{color:#dce6f4;font-size:12px;display:flex;gap:12px;flex-wrap:wrap;align-items:center}.foot a{text-decoration:underline;text-underline-offset:4px}.panel-area{background:#f6f8fb;display:flex;justify-content:center;align-items:center;padding:46px 28px;min-width:0}.card{width:min(100%,474px);background:#fff;border:1px solid #e8edf3;border-radius:22px;padding:clamp(22px,3.3vw,42px);box-shadow:0 28px 75px rgba(9,32,58,.085)}.card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:20px}.chip{display:inline-flex;align-items:center;gap:6px;border-radius:999px;font-size:10px;letter-spacing:1.1px;font-weight:800;padding:9px 12px;color:#143a69;background:#eaf1f9;text-transform:uppercase}.rgv{font-size:12px;font-weight:900;letter-spacing:1.3px;color:#133d6c}.rgv em{font-style:normal;color:#d4a411}.card h2{font-family:'Barlow Condensed',Arial,sans-serif;font-weight:900;line-height:1.02;font-size:clamp(38px,3.2vw,49px);letter-spacing:-.5px;margin:0 0 11px}.lead{color:var(--muted);font-size:13px;line-height:1.66;margin:0 0 22px}.tabs{display:grid;grid-template-columns:1fr 1fr;background:#f1f4f9;border:1px solid #e3eaf3;border-radius:12px;padding:4px;gap:4px;margin-bottom:22px}.tab{border:0;border-radius:9px;padding:12px 7px;font-size:12px;font-weight:800;background:transparent;color:#6c7a8a}.tab[aria-selected=true]{color:#122f53;background:#fff;box-shadow:0 2px 8px rgba(9,30,56,.07)}.authform{display:grid;gap:13px}.authform[hidden],.tabs[hidden],.hidden,[hidden]{display:none!important}label{display:block;font-size:12px;font-weight:800;margin:0 0 7px}.field{width:100%;border:1px solid #d6dfeb;background:#fbfcfe;color:#142c4b;border-radius:11px;padding:14px 13px;font-size:14px;outline:none;transition:border-color .15s}.field:focus{border-color:#174e91;box-shadow:0 0 0 3px rgba(23,78,145,.11)}.field::placeholder{color:#9ba9b9}.actions{margin-top:5px}.primary{width:100%;border:0;border-radius:12px;background:#092e57;color:white;font-size:13px;font-weight:800;min-height:50px;padding:12px 15px;transition:background .2s,transform .2s}.primary:not(:disabled):hover{background:#174a83;transform:translateY(-1px)}.minor{border:0;background:none;padding:9px 0;color:#1c558d;text-decoration:underline;text-underline-offset:3px;font-size:12px;font-weight:750}.fine{font-size:12px;color:#617084;line-height:1.65;margin-top:17px;margin-bottom:0}.alert{display:block;margin-top:18px;font-size:12px;line-height:1.6;padding:12px 13px;border-radius:10px;border:1px solid #dae6f2;background:#f1f7fd;color:#224663;white-space:pre-wrap}.alert:empty{display:none}.alert[data-kind=error]{border-color:#f0c8c2;background:#fff5f2;color:#8d2a24}.alert[data-kind=success]{border-color:#cce6d3;background:#f1faf5;color:#176039}.below{display:flex;justify-content:space-between;gap:12px;margin-top:19px;padding-top:18px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.below a{text-decoration:underline;text-underline-offset:3px}.outline{border:1px solid #b4c7db;background:#fff;color:#143963;border-radius:10px;padding:11px 16px;font-size:12px;font-weight:800}.outline:hover{background:#f1f5fb}.person{font-weight:800;margin-top:10px;color:#12385f;overflow-wrap:anywhere}.role{font-weight:800;color:#153a66}.kpi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:17px 0 22px}.kpi{border:1px solid #dce7f1;background:#f8fbfe;border-radius:13px;padding:16px}.kpi strong{font-size:24px;display:block;color:#103f75}.kpi span{color:#51677e;font-size:11px;line-height:1.5}.setup{padding:17px;background:#fff8e4;border-radius:13px;border:1px solid #f0dd9c;margin-top:20px}.setup h3{font-weight:800;font-size:15px;margin:0 0 7px;color:#533c07}.setup p{font-size:12px;line-height:1.6;color:#6b561c;margin-bottom:12px}.setup .field{background:#fff}.notice{font-size:12px;line-height:1.7;color:#687992;margin-bottom:0}.work-soon{display:flex;gap:11px;align-items:center;padding:15px;border:1px solid #e5eaf1;background:#fbfcfe;border-radius:12px;color:#486078;font-size:12px;line-height:1.6}.work-soon svg{flex-shrink:0}.divider{height:1px;background:#e4eaf1;margin:18px 0}.row-actions{display:flex;gap:8px;flex-wrap:wrap}.row-actions>*{flex:1}.waiting-title{margin-top:20px}.notice-gap{margin-top:18px}@media(max-width:910px){.page{grid-template-columns:1fr}.info{min-height:330px;padding:26px 28px 34px}.info h1{font-size:62px;margin:18px 0 10px}.info p{font-size:13px;margin-bottom:0}.info .foot{margin-top:28px}.panel-area{padding:28px 20px 54px}.card{max-width:540px}.info:before{background-position:center 50%}}@media(max-width:460px){.info{min-height:280px;padding:22px}.info h1{font-size:53px}.info p{font-size:12px}.info .foot{font-size:10px}.navbrand img{width:40px;height:49px}.navbrand strong{font-size:16px}.panel-area{padding:14px 12px 35px}.card{padding:24px 18px;border-radius:17px}.card h2{font-size:42px}.card .card-top{margin-bottom:14px}.kpi-grid{gap:8px}.kpi{padding:12px}}

/* Gestión maestra de usuarios · RGV SPORT */
.center-link{display:flex;align-items:center;justify-content:center;text-decoration:none;margin-bottom:15px}
.admin-panel-area{align-items:flex-start}
.admin-shell{width:100%;max-width:1040px}
.admin-header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}
.admin-header h2{font-family:'Barlow Condensed',Arial,sans-serif;font-size:clamp(30px,2.8vw,43px);margin:8px 0 3px;color:#0c2d50}
.admin-header h3{font-size:19px;color:#0c2d50;margin:0 0 5px}
.admin-columns{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(330px,1.15fr);gap:16px;align-items:start}
.admin-form-card{width:100%;padding:25px}
.admin-form-card h3{margin:0 0 18px;color:#092c53}
.admin-list{border:1px solid #e0e9f3;border-radius:18px;padding:23px;background:white;box-shadow:0 22px 52px rgba(9,32,58,.04)}
.user-list{display:grid;gap:10px}
.admin-user-row{border:1px solid #e0e8f1;background:#fbfcff;border-radius:13px;padding:15px}
.user-row-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.user-row-top strong{color:#0b315c;display:block;font-size:14px;overflow-wrap:anywhere}
.user-handle{font-size:12px;display:block;margin-top:3px;color:#526983}
.user-status{font-size:10px;padding:7px 10px;background:#fff3e8;border-radius:99px;color:#986211;font-weight:750;white-space:normal}
.user-status.is-active{background:#e5f5e9;color:#207348}
.small-note{color:#5c6f88;font-size:12px;margin:10px 0 12px;overflow-wrap:anywhere}
.row-buttons{display:flex;gap:6px;flex-wrap:wrap}
.row-buttons .outline{padding:9px 11px}
.user-credential{padding:9px 10px;border:1px solid #ead695;border-radius:9px;background:#fff;font-size:12px;margin:10px 0;overflow-wrap:anywhere;font-family:monospace}
#credentials button{margin-top:7px}
@media(max-width:1200px){.admin-columns{grid-template-columns:1fr}.admin-shell{max-width:610px}}
@media(max-width:460px){.admin-list{padding:15px}.admin-form-card{padding:20px}.admin-header{align-items:flex-start;flex-wrap:wrap}.user-row-top{flex-direction:column}.admin-shell{width:100%}}

/* RGV SPORT · refinamiento V7: legibilidad iPhone y panel maestro */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
html,body{max-width:100%;overflow-x:clip}
.info h1,.card h2,.admin-header h2{overflow-wrap:normal}
.kpi,.kpi strong,.kpi span,.card,.panel-area{min-width:0}
.kpi strong{font-size:clamp(18px,2.1vw,24px);line-height:1.12;font-weight:850;letter-spacing:-.045em;overflow-wrap:anywhere;word-break:normal}
.kpi span{display:block;margin-top:7px}
#full-name,#email-info{overflow-wrap:anywhere}
#email-info{margin-top:4px}
@media(max-width:600px){
  .info{padding-top:max(27px,env(safe-area-inset-top,0px));min-height:310px}
  .info h1{font-size:clamp(40px,9.3vw,58px);line-height:1.03;letter-spacing:-.015em}
  .kpi-grid{grid-template-columns:1fr;gap:10px}
  .kpi{padding:15px 17px}
  .kpi strong{font-size:clamp(20px,6vw,26px);line-height:1.12}
  .card-top{flex-wrap:wrap}
}
@media(max-width:390px){
  .info{padding:20px 18px 27px}
  .info h1{font-size:clamp(37px,10vw,43px)}
  .card h2{font-size:38px}
}

body.admin-page .page{grid-template-columns:minmax(300px,30%) minmax(0,1fr)}
body.admin-page .admin-panel-area{padding:clamp(22px,3vw,50px) clamp(20px,3vw,55px)}
.admin-panel-area .admin-shell{max-width:1100px}
.admin-page .info h1{font-size:clamp(54px,5vw,82px)}
.admin-page .master-header{align-items:center}
.admin-page .master-header h2{font-size:clamp(32px,3vw,47px);letter-spacing:-.012em}
.admin-page .master-header .lead{max-width:660px;margin:0}
.admin-page .master-back{flex-shrink:0}
.admin-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:22px 0}
.summary-cell{padding:15px 18px;background:#fff;border:1px solid #e0e8f2;border-radius:15px;box-shadow:0 6px 20px rgba(9,32,58,.035);min-width:0;display:flex;flex-direction:column;gap:6px}
.summary-cell>span{font-size:11px;line-height:1.4;color:#5b7089;font-weight:750}
.summary-cell strong{font-family:'Barlow Condensed',Arial,sans-serif;font-weight:900;font-size:38px;line-height:1;color:#10365e}
.admin-page .admin-columns{grid-template-columns:minmax(245px,.78fr) minmax(315px,1.22fr);gap:15px;align-items:start}
.admin-page .admin-form-card{width:100%;padding:clamp(19px,2vw,28px)}
.admin-page .admin-form-card h3{font-family:'Barlow Condensed',Arial,sans-serif;font-size:30px;letter-spacing:-.01em;margin:8px 0 4px}
.admin-page .admin-form-card .lead{margin-bottom:20px}
.form-overline{font-size:10px;font-weight:850;letter-spacing:.15em;color:#4c6b8e;text-transform:uppercase}
.optional{font-weight:500;color:#67809b}
.field-help{font-size:10.5px;color:#627b95;line-height:1.5;display:block;margin-top:6px}
.admin-page .admin-list{padding:clamp(17px,2vw,24px);min-width:0}
.admin-page .users-header{margin-bottom:13px}
.admin-page .users-header h3{font-size:18px}
.admin-page .users-header .lead{margin:0}
.admin-page .user-tools{display:grid;grid-template-columns:minmax(0,1fr) 142px;gap:9px;margin-bottom:14px}
.admin-page .user-tools .field{height:44px;padding:10px 12px;font-size:12px;background:#fff}
.admin-page .user-list{gap:12px}
.admin-page .admin-user-row{background:#fff;padding:16px;border-radius:14px;box-shadow:0 4px 18px rgba(15,35,70,.025)}
.user-identity{display:flex;align-items:center;gap:11px;min-width:0}
.user-identity>div{min-width:0}
.avatar{background:#e5eefb;border:1px solid #cfdef0;border-radius:12px;display:grid;place-items:center;font-weight:900;color:#184578;flex:0 0 40px;height:40px;font-size:17px}
.user-status{max-width:135px;flex-shrink:0}
.user-status.status-suspended{color:#963c43;background:#fbeded}
.user-status.status-pending{color:#946211;background:#fff5e5}
.row-buttons{gap:7px}
.row-buttons .outline{border-radius:10px;padding:9px 11px;min-height:38px}
.row-buttons .action-danger{border-color:#edccd0;color:#922f3c;background:#fffafa}
.admin-page .small-note{margin:12px 0;color:#637a95}
.users-empty{padding:29px 17px;border:1px dashed #d3dfed;border-radius:13px;text-align:center;color:#536b86}
.users-empty strong{display:block;color:#173d68;font-size:15px;margin-bottom:7px}
.users-empty p{margin:0;font-size:12px;line-height:1.55}
.admin-page .admin-message-top{margin:15px 0 18px}
.admin-page .master-note{margin-top:18px}
.credentials-card{margin-top:17px}
.credential-line{background:#fff;border:1px solid #ebd89a;border-radius:11px;padding:11px 13px;margin:9px 0;display:flex;flex-direction:column;gap:5px;overflow-wrap:anywhere}
.credential-line span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#7f651f;font-weight:850}
.credential-line strong,.credential-line code{font-size:13px;color:#163e69;overflow-wrap:anywhere}
.credentials-card #copy-credential{width:100%}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.edit-user-dialog{border:1px solid #dce5ef;background:white;color:var(--ink);border-radius:21px;padding:24px;width:min(92vw,480px);max-height:85dvh;box-shadow:0 18px 95px rgba(7,28,49,.25)}
.edit-user-dialog::backdrop{background:rgba(2,15,33,.66);backdrop-filter:blur(4px)}
.edit-user-dialog h2{font-family:'Barlow Condensed',Arial,sans-serif;font-size:35px;margin:2px 0 5px}
.edit-dialog-head{display:flex;justify-content:space-between;gap:12px}
.edit-dialog-head .lead{margin-bottom:17px}
.icon-close{border:1px solid #d8e2ee;background:#f8fafc;color:#153b68;border-radius:10px;width:36px;height:36px;flex-shrink:0;font-size:24px;line-height:1}
.edit-footer{display:flex;gap:10px;margin-top:6px}
.edit-footer>*{flex:1}
.edit-footer .primary{width:auto}
@media(max-width:1260px){.admin-page .admin-columns{grid-template-columns:1fr}.admin-page .admin-form-card{max-width:100%}}
@media(max-width:910px){body.admin-page .page{grid-template-columns:1fr}.admin-page .info{min-height:240px}.admin-page .admin-panel-area{padding:25px 23px 48px}.admin-page .admin-shell{max-width:630px}.admin-page .admin-columns{grid-template-columns:1fr}}
@media(max-width:600px){
  .admin-page .info{min-height:230px;padding:25px 22px}
  .admin-page .info h1{font-size:clamp(42px,10vw,58px);line-height:1.02}
  .admin-page .admin-panel-area{padding:23px 14px 44px}
  .admin-page .master-header{align-items:flex-start;flex-wrap:wrap}
  .admin-page .master-header .master-back{width:100%;text-align:center}
  .admin-page .admin-header h2{font-size:38px}
  .admin-page .admin-summary{gap:8px;margin:16px 0}
  .admin-page .summary-cell{padding:12px 10px;min-height:85px}
  .admin-page .summary-cell strong{font-size:31px}
  .admin-page .summary-cell span{font-size:10px}
  .admin-page .user-tools{grid-template-columns:1fr}
  .admin-page .admin-form-card,.admin-page .admin-list{padding:20px 17px}
  .admin-page .user-row-top{flex-direction:row;align-items:flex-start;flex-wrap:wrap}
  .admin-page .row-buttons{justify-content:flex-start}
  .admin-page .row-buttons .outline{flex:1 1 auto}
}
@media(max-width:375px){.admin-page .info h1{font-size:42px}.admin-page .summary-cell{padding:9px 7px}.admin-page .admin-header h2{font-size:33px}.admin-page .user-identity{gap:8px}}
