@font-face{font-family:'Army Stencil';src:url('/clientes/assets/BlackOpsOne-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
/* Identidad de la web. El recibo conserva sus estilos de papel. */
@media screen{
 html{background:#0c100b;color-scheme:dark}
 body.member-portal{max-width:1440px;min-height:100vh;margin:auto;background:#151b11;color:#f0efe6;box-shadow:0 0 65px #0005;display:flex;flex-direction:column;--sand:#d1c39e}
 .member-portal>main{width:100%;max-width:1056px;padding:52px 28px 64px;flex:1}
 .member-portal>.portal-header{width:100%;max-width:none;padding:18px clamp(20px,5vw,72px);min-height:116px;background:#10150e;border-bottom:1px solid #777c555c;gap:20px}
 .portal-header .header-identity{display:flex;align-items:center;gap:13px;flex-shrink:0}
 .portal-header .brand{display:flex;align-items:center;letter-spacing:0}
 .portal-header .brand img{width:100px;height:80px;object-fit:contain;background:none;border-radius:0;padding:0}
 .brand-wordmark{font-family:Arial,Helvetica,sans-serif;font-size:26px;font-weight:800;line-height:1.1}
 .brand-name{display:inline-flex;align-items:baseline;letter-spacing:-.055em;white-space:nowrap;line-height:1}
 .brand-army{color:#e4e7dc}.brand-gym{color:#65712c}
 .brand-letter{position:relative;display:inline-block}
 .wordmark-glyph{display:inline-block;clip-path:polygon(0 0,100% 0,100% 68%,66% 68%,66% 100%,0 100%)}
 .brand-gym .wordmark-glyph{clip-path:polygon(0 0,100% 0,100% 68%,89% 72%,78% 68%,78% 100%,0 100%)}
 .wordmark-chevrons{position:absolute;right:-.025em;bottom:.10em;width:.21em;height:.22em;overflow:visible}
 .brand-army .wordmark-chevrons{transform:rotate(-18deg)}
 .brand-wordmark small{display:block;margin-top:6px;font-size:9px;letter-spacing:.13em;color:var(--sand);font-weight:500;white-space:nowrap}
 .portal-header nav{display:flex;align-items:center;gap:24px;margin-left:auto}
 .portal-header nav a{font-size:14px;font-weight:700;text-decoration:none;white-space:nowrap;display:inline-flex;gap:10px;align-items:center;min-height:44px}
 .portal-header .directions{background:#bacb8c;color:#151b11;padding:10px 16px;border:1px solid #a9be7b}
 .portal-header .back-home{color:#bacb8c}
 #main h1{font-family:'Army Stencil','Arial Black',sans-serif;font-weight:400;font-size:clamp(30px,4vw,43px);text-transform:uppercase;line-height:1.2;color:#f5f3ea;mask-image:url('/clientes/assets/wear.svg');mask-size:640px 256px;text-shadow:1px 2px 4px #0008;overflow-wrap:anywhere}
 #main h2{color:#f5f3ea}
 #main a,.portal-footer a{color:#c8d6a7}
 #main .muted,#main small,#main .empty{color:#ccd1c3}
 #main .eyebrow{color:#d1c39e}
 #main .card{background:#1c2518;border:1px solid #495738;border-radius:2px;box-shadow:0 7px 22px #0002}
 #main .auth{max-width:540px;padding:32px;margin:0 auto;background:linear-gradient(#1c2518ed,#1c2518ed),url('/clientes/assets/camo.svg') center top/600px auto}
 #main label{color:#f0efe6}
 #main input{border-color:#59684a;border-radius:2px;background:#11180e;color:#fff}
 #main input::placeholder{color:#b2bca6;opacity:1}
 #main input:autofill{color-scheme:dark}
 #main button:not(.secondary):not(.eye),#main .button,.receipt-actions button:not(.secondary){border:1px solid #3c70ef;background:radial-gradient(ellipse at 50% 130%,#174bb4 0%,#102555 68%,#101d3b 100%);box-shadow:inset 0 0 18px #2861ffb3,inset 0 0 4px #79a2ff8c;color:#fff;text-shadow:0 1px 3px #071026;border-radius:2px}
 #main button:not(.secondary):not(.eye):hover,#main .button:hover{border-color:#719bff;box-shadow:inset 0 0 22px #3774ffdb,inset 0 0 5px #a5c1ff99}
 #main .secondary,.portal-footer .secondary{background:#26321f;color:#f0efe6;border-color:#7a8a61;border-radius:2px}
 #main .secondary:hover,.portal-footer .secondary:hover{background:#324129}
 #main .eye{background:transparent;color:#dce6c9;border-radius:2px}
 #main .eye:hover{background:#2b3822}
 #main .error{color:#ffb4ab}#main .success{color:#c1df99}
 #main .card :is(.error,.success){padding:14px 16px;border:1px solid;border-left-width:4px;border-radius:3px;font-weight:650;line-height:1.5;overflow-wrap:anywhere}
 #main .card .error{margin:0;background:#3c211e;border-color:#e68a80;color:#fff2ef}
 #main .card .success{margin:0 0 22px;background:#253d24;border-color:#a9d381;color:#f5ffed}
 #main .auth .field-error{margin-top:10px;font-size:14px}
 #main .card :is(.error,.success):empty{display:none}
 #main .username-form{display:grid;gap:16px;max-width:460px;margin:28px 0;padding-top:24px;border-top:1px solid #495738}
 #main .username-form p{margin:0}
 #main #username-help{display:block;margin-top:8px}
 #main input[aria-invalid="true"]{border:2px solid #e68a80}
 .member-portal :is(button,a,input):focus-visible{outline:3px solid #86a8ff;outline-offset:4px}
 #main .membership{border:1px solid #607049;border-radius:2px;background:linear-gradient(#182414b8,#182414b8),url('/clientes/assets/camo.svg') center/650px auto;box-shadow:0 7px 22px #0003}
 #main .membership .eyebrow,#main .details span{color:#d1d9c6}
 #main .account-nav{border-color:#495738}
 #main .account-nav a{border-radius:2px;border-color:#6e7c57;color:#f0efe6}
 #main .account-nav a[aria-current=page]{background:#142c5e;border-color:#6087ff;color:#fff;box-shadow:inset 0 0 14px #2861ff80}
 #main .account-nav a:hover:not([aria-current]){background:#2a3821}
 #main .profile-details dt{color:#c8d1bd}
 #main .receipt-row{border-color:#495738}
 .member-portal>.portal-footer{width:100%;max-width:none;padding:28px clamp(20px,5vw,72px);margin-top:0;border-top:1px solid #495738;background:#10150e;align-items:center;flex-wrap:wrap}
 .portal-footer>div{display:flex;gap:24px;flex-wrap:wrap}.portal-footer a{text-decoration:none;min-height:44px;display:inline-flex;align-items:center}
 .member-portal>dialog{border-radius:3px;background:#1c2518;border-color:#607049}
 .receipt-actions .secondary{background:#26321f;color:#f0efe6;border-color:#7a8a61;border-radius:2px}
 .ticket{color-scheme:light}
}
@media screen and (max-width:600px){
 .member-portal>.portal-header{min-height:92px;padding:12px 16px;align-items:center;gap:12px;flex-wrap:wrap}
 .portal-header .header-identity{gap:8px}.portal-header .brand img{width:66px;height:60px}
 .brand-wordmark{font-size:23px}.brand-wordmark small{font-size:7.5px;letter-spacing:.08em}
 .portal-header nav{gap:12px}.portal-header nav a{font-size:12px}.portal-header .directions{padding:10px 12px}.portal-header .directions span{display:none}
 .member-portal>main{padding:28px 18px 40px}#main .auth{padding:24px 20px}
 .member-portal>.portal-footer{padding:20px;align-items:flex-start;gap:8px}.portal-footer>div{gap:18px}
}
@media screen and (max-width:380px){.portal-header nav{gap:8px}.portal-header .brand img{width:52px;height:54px}.brand-wordmark{font-size:20px}.brand-wordmark small{font-size:6.8px}.portal-header .header-identity{gap:6px}}
