/* HEY FERCHO · V5.2.2 / Fase 2.2 · Administración y directorio de usuarios */
:root{--v522-ink:#1A1A1B;--v522-lime:#CFFF71;--v522-line:#E5E9E3;--v522-muted:#69736B}
.v522-view{color:var(--v522-ink)}
.v522-view h2,.v522-view h3{font-family:Inter,ui-sans-serif,system-ui,sans-serif!important}
.v522-admin-hero{border-radius:20px;min-height:196px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:30px 34px;background:#1A1A1B;color:#fff;overflow:hidden;position:relative;margin:0 0 28px}
.v522-admin-hero:before{content:"";position:absolute;right:-75px;top:-165px;width:335px;height:335px;border:1px solid #97C15A66;border-radius:50%;box-shadow:0 0 0 46px #1F282010,0 0 0 96px #CFFF710C;pointer-events:none}
.v522-admin-hero h2{font-size:clamp(27px,3.25vw,43px)!important;letter-spacing:-.055em!important;line-height:1.08;font-weight:850;margin:9px 0 13px;color:white}
.v522-admin-hero p{font-size:12px;color:#D3DBD1;line-height:1.7;max-width:525px;margin:0}
.v522-eyebrow{color:#5D7A34;letter-spacing:.16em;font-weight:850;font-size:10px}
.v522-admin-hero .v522-eyebrow{color:#CFFF71}
.v522-lime-dot{color:#9BC850}
.v522-hero-symbol{width:105px;height:105px;background:#CFFF71;border-radius:24px;transform:rotate(-8deg);color:#1A1A1B;display:grid;place-items:center;flex:none;font-size:41px;font-weight:950;letter-spacing:-.11em;position:relative;margin-right:24px}
.v522-hero-symbol span{font-size:23px;position:absolute;top:-17px;right:-13px;color:#CFFF71}
.v522-admin-topline{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:14px}
.v522-admin-caption{font-size:14px;font-weight:830;color:#232B24}
.v522-secure{display:inline-flex;align-items:center;gap:7px;background:#EEF8E4;color:#45642C;border:1px solid #DCEACD;font-size:10px;font-weight:700;border-radius:99px;padding:9px 12px}
.v522-secure span{font-size:9px}
.v522-admin-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:28px}
.v522-stat{background:white;border:1px solid var(--v522-line);border-radius:16px;padding:20px 18px;min-height:146px;transition:transform .2s ease,box-shadow .2s ease}
.v522-stat:hover{transform:translateY(-2px);box-shadow:0 12px 30px #1A1A1B0B}
.v522-stat-label{display:block;color:#657062;font-size:11px;font-weight:700;line-height:1.35}
.v522-stat strong{font-size:31px;letter-spacing:-.055em;font-weight:850;display:block;margin:15px 0 5px;color:#1A1A1B}
.v522-stat span:last-child{color:#7D867B;font-size:10px}
.v522-admin-main{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,0.9fr);gap:16px;align-items:start}
.v522-section-heading h3{font-size:16px;font-weight:835;letter-spacing:-.03em;margin:0 0 6px;color:#1A1A1B}
.v522-section-heading p{font-size:11px;line-height:1.5;color:#6C766B;margin:0 0 18px}
.v522-tools-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.v522-tool{border:1px solid #E5E9E3;border-radius:15px;background:white;padding:19px;min-width:0;min-height:165px;text-align:left;position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:9px;cursor:pointer;transition:transform .22s,box-shadow .22s,border-color .22s}
.v522-tool:hover{transform:translateY(-3px);border-color:#C9E6A4;box-shadow:0 12px 30px #1A1A1B0C}
.v522-tool-glyph{width:39px;height:39px;border-radius:11px;background:#ECF8DC;color:#365D1C;display:grid;place-items:center;font-size:20px}
.v522-tool strong{display:block;font-size:13px;color:#1A1A1B;font-weight:820}
.v522-tool small{display:block;font-size:11px;color:#69726A;line-height:1.5;max-width:225px;margin-top:6px}
.v522-tool-arrow{position:absolute;right:21px;top:22px;color:#658248;font-size:18px}
.v522-admin-aside{background:#fff;border:1px solid var(--v522-line);border-radius:16px;padding:22px;min-width:0}
.v522-recent-users{display:flex;flex-direction:column;gap:0}
.v522-recent-row{display:flex;gap:9px;align-items:center;padding:12px 0;border-bottom:1px solid #EEF0EA;min-width:0}
.v522-recent-row>span:nth-child(2){min-width:0;flex:1}
.v522-recent-row strong{display:block;color:#1A1A1B;font-size:11px;font-weight:790;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.v522-recent-row small{display:block;color:#6B786B;margin-top:4px;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.v522-recent-point{width:7px;height:7px;border-radius:50%;background:#A0C772;flex:none}
.v522-view-all{width:100%;margin:16px 0 0;padding:12px 14px;border-radius:9px;border:1px solid #E2E9DA;background:#F4F9EC;color:#365A20;font-weight:790;font-size:11px;text-align:left;display:flex;justify-content:space-between;cursor:pointer}
.v522-view-all:hover{background:#EAF9D9}
.v522-aside-note{margin-top:21px;padding:15px;border-radius:11px;background:#F3F7ED}
.v522-aside-note strong{font-size:11px;color:#415E31}
.v522-aside-note p{font-size:10px;line-height:1.65;color:#66775E;margin:7px 0 0}
.v522-subtle{font-size:12px;color:#657264;line-height:1.6}
/* Directory */
.v522-directory-head{display:flex;justify-content:space-between;align-items:end;gap:18px;flex-wrap:wrap;margin:0 0 24px}
.v522-directory-head h2{font-size:clamp(25px,3.1vw,38px);font-weight:850;letter-spacing:-.05em;margin:8px 0 7px;color:#1A1A1B}
.v522-directory-head p{font-size:12px;color:#697369;line-height:1.6;margin:0}
.v522-dir-actions{display:flex;gap:8px;flex-wrap:wrap}
.v522-dark-btn{background:#1A1A1B!important;color:#fff!important;border-color:#1A1A1B!important;font-weight:750}
.v522-light-btn{background:#fff!important;color:#1A1A1B!important}
.v522-people-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:17px}
.v522-people-stats>div{padding:19px 18px;border:1px solid #E6EBE1;border-radius:14px;background:#fff;display:flex;flex-direction:column;gap:5px}
.v522-people-stats strong{font-size:27px;letter-spacing:-.05em;color:#1A1A1B}
.v522-people-stats span{font-size:10px;color:#687468;font-weight:650}
.v522-directory-card{background:#fff;border:1px solid #E5EAE0;border-radius:16px;padding:19px 20px 0;overflow:hidden}
.v522-search-row{display:flex;align-items:end;gap:10px;flex-wrap:wrap;padding-bottom:17px}
.v522-search{display:flex;align-items:center;gap:8px;min-width:210px;flex:1;background:#F8F9F6;border:1px solid #E2E8DE;border-radius:10px;padding:0 11px;min-height:43px}
.v522-search span{font-size:21px;color:#70816C}
.v522-search input{border:0!important;background:transparent!important;box-shadow:none!important;outline:0!important;font-size:12px;color:#1A1A1B;min-width:0;width:100%;height:41px}
.v522-search:focus-within{outline:2px solid #B9E275;outline-offset:2px}
.v522-select-wrap{display:flex;flex-direction:column;gap:5px;min-width:126px}
.v522-select-wrap label{font-size:10px;color:#566257;font-weight:720}
.v522-select-wrap select{background:#fff;color:#283228;min-height:43px;font-size:11px;border-radius:9px;border:1px solid #E2E8DE;padding:9px 7px;max-width:175px}
.v522-results-line{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;font-size:10px;color:#6A7568;padding:14px 0;border-top:1px solid #EEF0EA}
.v522-results-line>span:first-child{font-weight:800;color:#283C29}
.v522-table-scroll{width:100%;overflow:auto;margin:0}
.v522-people-table{width:100%;border-collapse:collapse;min-width:710px}
.v522-people-table th{font-size:10px!important;text-transform:uppercase;letter-spacing:.07em;background:#F8FAF6;color:#656F63;padding:15px 13px;text-align:left;font-weight:760}
.v522-people-table td{font-size:11px!important;padding:17px 13px;border-top:1px solid #EEF1EB;color:#273127;vertical-align:middle}
.v522-people-table tr:hover td{background:#FBFDF8}
.v522-person-cell{display:flex;align-items:center;gap:11px;min-width:195px}
.v522-person-cell>div{min-width:0}
.v522-person-cell strong{display:block;color:#212A21;font-size:11px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.v522-person-cell small{display:block;color:#788276;font-size:10px;margin-top:5px;max-width:220px;overflow-wrap:anywhere}
.v522-user-avatar{width:35px;height:35px;flex:none;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:#CFFF71;color:#1A1A1B;font-size:11px;font-weight:870}
.v522-user-avatar img,.v522-avatar-large img{width:100%;height:100%;object-fit:cover}
.v522-role-chip{background:#F2F5F0;color:#4A5C49;border-radius:7px;padding:7px 8px;display:inline-flex;max-width:150px;line-height:1.3;font-size:10px;font-weight:720}
.v522-role-chip.super{background:#E9F9D4;color:#3C621D}
.v522-clients-cell{min-width:130px;max-width:220px}
.v522-client-pill{display:inline-flex;padding:5px 7px;border:1px solid #E8EDE5;border-radius:6px;font-size:9px;font-weight:680;color:#627161;background:#F8FAF7;margin:2px 3px 2px 0;white-space:normal;line-height:1.3}
.v522-dash{color:#8B958B;font-size:10px}
.v522-status-chip,.v522-state-pill{display:inline-flex;align-items:center;gap:7px;border-radius:50px;padding:7px 9px;background:#F1F3EF;color:#536053;font-size:10px;font-weight:720;white-space:nowrap}
.v522-status-chip span{width:7px;height:7px;border-radius:50%;background:#8C968B}
.v522-status-chip.active,.v522-state-pill.active{background:#E9F8E5;color:#36723A}.v522-status-chip.active span{background:#4CA356}
.v522-status-chip.pending,.v522-state-pill.pending{background:#FFF3DA;color:#8C671E}.v522-status-chip.pending span{background:#D7A346}
.v522-status-chip.suspended,.v522-status-chip.deleted,.v522-state-pill.suspended,.v522-state-pill.deleted{background:#FBE9E8;color:#A43D38}.v522-status-chip.suspended span,.v522-status-chip.deleted span{background:#BD4D47}
.v522-view-user{border:1px solid #DAE5D4;background:#F1F9E9;color:#37611C;font-size:10px;font-weight:770;white-space:nowrap;border-radius:9px;min-height:34px;padding:7px 11px;cursor:pointer}
.v522-view-user:hover{background:#E0F5CD;color:#274B12}
.v522-table-empty{padding:36px 18px!important;text-align:center;color:#687468;font-size:12px!important}
.v522-form-status{font-size:11px;color:#4B6448;margin:17px 0;line-height:1.6}
/* Right-hand user profile drawer. */
.v522-user-overlay[hidden]{display:none!important}
.v522-user-overlay{position:fixed;inset:0;z-index:195;display:flex;justify-content:flex-end;background:#151B15A8;backdrop-filter:blur(2px);animation:v522-fade-in .2s ease-out}
.v522-user-drawer{display:flex;flex-direction:column;height:100dvh;max-height:100dvh;width:min(500px,100vw);background:#fff;overflow:auto;box-shadow:-15px 0 50px #1A1A1B1A;animation:v522-slide-in .24s cubic-bezier(.2,.7,.2,1);color:#1A1A1B}
.v522-drawer-top{padding:23px 25px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #E9EDE6;gap:12px}
.v522-drawer-top button{width:37px;height:37px;flex:none;border-radius:10px;border:1px solid #E1E7DF;background:white;font-size:25px;color:#1A1A1B;cursor:pointer}
.v522-profile-hero{background:#F5F9F0;border-bottom:1px solid #E1ECDD;text-align:center;padding:26px 20px 22px}
.v522-avatar-large{width:75px;height:75px;border-radius:50%;display:grid;place-items:center;margin:0 auto 14px;background:#CFFF71;color:#1A1A1B;font-size:24px;font-weight:850;overflow:hidden}
.v522-profile-hero h2{font-size:23px;font-weight:850;letter-spacing:-.035em;margin:0 0 7px;color:#1A1A1B}
.v522-profile-hero p{font-size:12px;color:#596859;margin:0 0 13px;overflow-wrap:anywhere}
.v522-profile-body{padding:23px 28px 40px}
.v522-profile-section{margin-bottom:25px;padding-bottom:23px;border-bottom:1px solid #EAEFE6}
.v522-section-mini{font-size:10px;letter-spacing:.09em;text-transform:uppercase;color:#65804B;font-weight:850;margin-bottom:15px}
.v522-profile-dl{display:grid;gap:12px;margin:0}
.v522-profile-dl div{display:flex;justify-content:space-between;gap:20px;font-size:11px}
.v522-profile-dl dt{color:#6D786D}.v522-profile-dl dd{margin:0;font-weight:700;color:#273226;text-align:right}
.v522-memberships{display:grid;gap:8px}
.v522-membership{display:flex;justify-content:space-between;gap:12px;background:#F8FAF6;border:1px solid #E7EEE3;border-radius:9px;padding:10px 12px;font-size:11px;color:#273226}
.v522-membership span:last-child{color:#5D7756;font-weight:750}
.v522-manage-link{border:0;background:transparent;color:#355B19;font-size:11px;font-weight:780;cursor:pointer;padding:11px 0 0;text-align:left}
.v522-manage-link:hover{text-decoration:underline}
.v522-contact-form{display:flex;flex-direction:column;gap:8px}
.v522-contact-form label{font-size:11px;color:#273228;font-weight:750;margin-top:8px}
.v522-contact-form label small{color:#6E7B6C;font-weight:500}
.v522-contact-form input{width:100%;height:45px;border:1px solid #DCE5D8;border-radius:10px;padding:0 13px;color:#1A1A1B;font-size:12px;background:white}
.v522-form-helper{font-size:10px;line-height:1.6;color:#6B776A;margin:7px 0 0}
.v522-form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:15px}
.v522-save{background:#CFFF71!important;color:#1A1A1B!important;border-color:#CFFF71!important;font-weight:830}
body.v522-detail-open{overflow:hidden}
@keyframes v522-fade-in{from{opacity:0}to{opacity:1}}@keyframes v522-slide-in{from{transform:translateX(28px)}to{transform:translateX(0)}}
@media(max-width:1150px){.v522-admin-stats,.v522-people-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.v522-admin-main{grid-template-columns:1fr}.v522-admin-aside{max-width:none}}
@media(max-width:700px){.v522-admin-hero{padding:26px 22px}.v522-hero-symbol{width:75px;height:75px;font-size:28px;margin-right:7px}.v522-admin-hero h2{font-size:29px!important}.v522-admin-stats,.v522-people-stats{gap:8px}.v522-stat{padding:15px;min-height:115px}.v522-stat strong{font-size:26px}.v522-tools-grid{grid-template-columns:1fr}.v522-tool{min-height:118px;padding:16px}.v522-directory-card{padding:14px 12px 0}.v522-directory-head{align-items:flex-start}.v522-search-row{align-items:stretch}.v522-search{flex-basis:100%}.v522-select-wrap{flex:1;min-width:95px}.v522-select-wrap select{max-width:none;min-width:0;width:100%}.v522-people-stats>div{padding:14px}.v522-people-stats strong{font-size:23px}.v522-profile-body{padding:21px 18px 38px}.v522-drawer-top{padding:18px}.v522-user-drawer{width:100vw}}
@media(prefers-reduced-motion:reduce){.v522-user-overlay,.v522-user-drawer,.v522-stat,.v522-tool{animation:none!important;transition:none!important}}
@media print{.v522-user-overlay,.v522-admin-only{display:none!important}}
body.v5-admin-area .page-head{display:none!important}
