@import "https://fonts.googleapis.com/css2?family=Bebas+Neue&family=DM+Sans:wght@400;500;600;700&display=swap";
@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}body{color:#fff;background-color:#0d1a12;font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button{cursor:pointer}.card{background:#ffffff08;border:1px solid #ffffff14;border-radius:.75rem;padding:1.5rem;transition:transform .2s}.card:hover{transform:translateY(-2px)}.btn{color:#0f2218;letter-spacing:.1em;cursor:pointer;text-transform:uppercase;background:#c9a84c;border:none;border-radius:.5rem;justify-content:center;align-items:center;padding:.75rem 1.5rem;font-family:Bebas Neue,cursive;font-size:1rem;font-weight:700;transition:transform .1s,opacity .1s;display:inline-flex}.btn:hover{opacity:.9;transform:scale(1.05)}.btn-secondary{color:#fff;background:0 0;border:2px solid #fff6}.btn-secondary:hover{border-color:#fff9}.input{color:#fff;background:#ffffff0d;border:1px solid #fff3;border-radius:.5rem;width:100%;padding:.75rem;font-family:DM Sans,sans-serif;font-size:.95rem}.input::placeholder{color:#fff6}.input option{color:#fff;background:#1a2e20}.input:focus{border-color:#c9a84c;outline:none;box-shadow:0 0 0 2px #c9a84c1a}.label{color:#c9a84c;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;font-family:DM Sans,sans-serif;font-size:.8rem;font-weight:600;display:block}.grid{gap:1rem;display:grid}.grid-2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}h1,h2,h3,h4,h5,h6{letter-spacing:.05em;font-family:Bebas Neue,cursive}.page-container{background:#0d1a12;min-height:100vh;padding:2rem 1rem}.page-content{max-width:1200px;margin:0 auto}.page-content-narrow{max-width:900px;margin:0 auto}.loading-container{justify-content:center;align-items:center;min-height:100vh;display:flex}.loading-text{color:#c9a84c;font-size:1.2rem}.alert-error{color:#fca5a5;background:#ef44441a;border:1px solid #ef44444d;border-radius:.5rem;margin-bottom:1.5rem;padding:1rem}.badge{border-radius:999px;padding:.25rem .6rem;font-size:.75rem;font-weight:600;display:inline-block}.badge-aprobado{color:#4ade80;background:#4ade8021}.badge-rechazado{color:#f87171;background:#f8717121}.badge-pendiente{color:#fbbf24;background:#fbbf2421}.badge-completo{color:#60a5fa;background:#60a5fa21}.tag-rol{border-radius:.25rem;padding:.2rem .5rem;font-size:.8rem;font-weight:600;display:inline-block}.tag-admin{color:#c9a84c;background:#c9a84c33}.tag-manager{color:#a5b4fc;background:#6366f133}.tag-parent{color:#ffffffb3;background:#ffffff14}.section-label{text-transform:uppercase;color:#c9a84c;letter-spacing:.05em;margin:0 0 .5rem;font-size:.8rem;font-weight:600}.section-label-muted{text-transform:uppercase;color:#fff6;letter-spacing:.05em;margin:0 0 .5rem;font-size:.8rem;font-weight:600}.btn-approve{color:#4ade80;cursor:pointer;background:#4ade8026;border:1px solid #4ade8066;border-radius:.375rem;padding:.35rem .75rem;font-size:.8rem;font-weight:600}.btn-reject{color:#f87171;cursor:pointer;background:#f8717126;border:1px solid #f8717166;border-radius:.375rem;padding:.35rem .75rem;font-size:.8rem;font-weight:600}.btn-password{color:#a5b4fc;cursor:pointer;background:#6366f126;border:1px solid #6366f166;border-radius:.375rem;padding:.35rem .75rem;font-size:.8rem}.btn-delete{color:#f87171;cursor:pointer;background:#ef444426;border:1px solid #ef444466;border-radius:.375rem;padding:.35rem .75rem;font-size:.8rem}.btn-sm{padding:.35rem .75rem;font-size:.8rem}.table{border-collapse:collapse;width:100%}.table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:#c9a84c;border-bottom:1px solid #ffffff1a;padding:.75rem 1rem;font-size:.8rem;font-weight:600}.table td{border-bottom:1px solid #ffffff0d;padding:.85rem 1rem}.text-muted{color:#ffffffb3}.text-muted-light{color:#ffffff80}.text-muted-dim{color:#ffffff4d}.text-sm{font-size:.85rem}.info-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem 2rem;display:grid}.info-item-label{text-transform:uppercase;color:#c9a84c;letter-spacing:.05em;margin:0;font-size:.75rem;font-weight:600}.info-item-value{margin:.25rem 0 0}.form-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.form-full-width{grid-column:1/-1}.form-actions{grid-column:1/-1;justify-content:flex-end;display:flex}.input-error{border-color:#f87171!important}.error-text{color:#fca5a5;margin-top:.25rem;font-size:.75rem}.contact-card{background:#ffffff08;border:1px solid #ffffff12;border-radius:.5rem;padding:.75rem 1rem}.section-divider{border-top:1px solid #ffffff12;padding-top:1rem}.empty-state{color:#ffffff80;text-align:center;padding:2rem 0}.nav-card{text-align:center;background:#ffffff08;border:1px solid #ffffff1a;flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem;display:flex}.nav-card-icon{font-size:2rem}.nav-card-desc{color:#ffffff80;font-size:.75rem}@media (max-width:640px){.page-container{padding:1rem .75rem}.card{padding:1rem}.btn{padding:.6rem 1rem;font-size:.85rem}.input{padding:.6rem;font-size:.9rem}h1{font-size:1.6rem!important}.page-header{flex-direction:column!important;align-items:flex-start!important;gap:.75rem!important}.page-header-actions{flex-wrap:wrap;width:100%}.page-header-actions .btn,.page-header-actions button{flex:1;justify-content:center;min-width:120px}.table-wrapper{-webkit-overflow-scrolling:touch;margin:0 -.75rem;padding:0 .75rem;overflow-x:auto}table{min-width:480px;font-size:.8rem}table td,table th{padding:.5rem .6rem!important}.form-grid{grid-template-columns:1fr!important}.form-actions{justify-content:stretch}.form-actions .btn{width:100%}.info-grid{grid-template-columns:repeat(2,1fr)!important}.grid-2{grid-template-columns:1fr!important}.col-hide-mobile{display:none!important}}@media (max-width:480px){h1{font-size:1.3rem!important}.card{padding:.75rem}.info-grid{grid-template-columns:1fr!important}}
