:root{--bg: #eef3f8;--surface: rgba(255,255,255,.82);--surface-solid: #ffffff;--line: #dbe4ee;--text: #1d2733;--muted: #6a7786;--primary: #5f7d99;--primary-dark: #4d667f;--success: #4f7a6d;--danger: #a76363;--warning: #c28b2d;--shadow: 0 14px 40px rgba(24, 39, 58, .08);--radius-lg: 22px;--radius-md: 16px;--radius-sm: 12px}html,body,#root{min-height:100%}body{margin:0;padding:0;background:radial-gradient(circle at top left,rgba(95,125,153,.1),transparent 26%),radial-gradient(circle at bottom right,rgba(79,122,109,.08),transparent 24%),var(--bg);color:var(--text);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}a{text-decoration:none;color:inherit}button{font:inherit;cursor:pointer}.app-mobile-shell{min-height:100vh}.app-topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:#ffffffb8;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid rgba(219,228,238,.9)}.app-topbar-left,.app-topbar-right{display:flex;align-items:center;gap:12px}.menu-toggle-btn{border:1px solid var(--line);background:#fff;border-radius:12px;width:42px;height:42px;font-size:20px;line-height:1;color:var(--text)}.app-brand-title,.login-brand-title{font-size:20px;font-weight:700;color:#16212c}.app-brand-subtitle,.login-brand-subtitle{font-size:12px;color:var(--muted);margin-top:2px}.topbar-link,.mobile-nav-item{padding:10px 14px;border-radius:12px;color:var(--text);background:#ffffffb8;border:1px solid var(--line)}.topbar-link:hover,.mobile-nav-item:hover{background:#fff}.user-chip{padding:10px 14px;border-radius:999px;background:#fff;border:1px solid var(--line)}.desktop-only{display:inline-flex}.menu-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#11182759;opacity:0;pointer-events:none;transition:.2s ease;z-index:29}.menu-overlay.open{opacity:1;pointer-events:auto}.menu-canvas{position:fixed;top:0;left:0;bottom:0;width:320px;max-width:calc(100vw - 32px);padding:18px;background:#fff;border-top-right-radius:24px;border-bottom-right-radius:24px;box-shadow:var(--shadow);transform:translate(-105%);transition:.25s ease;z-index:30}.menu-canvas.open{transform:translate(0)}.menu-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:18px}.menu-title{margin:0;font-size:20px}.menu-subtitle{color:var(--muted);font-size:13px}.menu-close-btn{border:0;background:transparent;font-size:28px;line-height:1}.mobile-nav{display:flex;flex-direction:column;gap:8px}.mobile-nav-item.active{background:#f0f5fa;border-color:#b9c8d6;font-weight:600}.mobile-nav-item.danger{color:var(--danger)}.app-page-wrap{padding:20px;max-width:1280px;margin:0 auto}.page-card,.form-card,.table-card,.table-wrap,.qr-card-shell,.panel-card{background:var(--surface);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(219,228,238,.95);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.page-card,.form-card,.qr-card-shell,.panel-card,.table-card{padding:24px}.form-shell,.content-shell{max-width:1100px;margin:0 auto}.compact-form{max-width:980px;margin:0 auto}.page-title{font-size:28px;font-weight:700;color:#16212c;margin-bottom:6px}.page-title.small-title{font-size:22px}.page-subtitle{color:var(--muted);margin-bottom:22px}.page-actions-strip{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:24px}.kpi-card{background:linear-gradient(180deg,#fffffff2,#f7fafcf2);border:1px solid var(--line);border-radius:18px;padding:20px;height:100%}.kpi-label{color:var(--muted);font-size:13px;margin-bottom:10px}.kpi-value{font-size:28px;font-weight:700;color:#16212c}.kpi-value.small{font-size:22px}.action-row,.inline-actions,.form-actions,.radio-row{display:flex;gap:10px;flex-wrap:wrap}.action-btn{display:inline-flex;align-items:center;justify-content:center;padding:11px 16px;border-radius:12px;border:1px solid transparent;background:#e8eef4;color:#223142;transition:.2s ease}.action-btn:hover{background:#dde6ef;color:#16212c}.action-btn.primary{background:var(--primary);color:#fff}.action-btn.primary:hover{background:var(--primary-dark);color:#fff}.action-btn.success{background:var(--success);color:#fff}.action-btn.secondary{background:#edf2f7;color:#304050;border-color:var(--line)}.action-btn.small{padding:8px 12px;font-size:13px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.form-label{font-weight:600;color:#304050;display:block;margin-bottom:8px}.form-control,.form-select{width:100%;border-radius:14px;border:1px solid #d7e1eb;padding:12px 14px;background:#fffffff0;box-shadow:none!important}.form-grid{display:grid;gap:16px}.form-grid-2,.section-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.span-2{grid-column:span 2}.user-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.field,.form-span-2{min-width:0}.form-span-2{grid-column:span 2}.panel-header h2{margin:0 0 6px}.panel-header p{margin:0 0 20px;color:var(--muted)}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse}.table th{background:#f5f8fb;color:#43505e;font-weight:600;border-bottom:1px solid var(--line);text-align:left;padding:12px 14px;white-space:nowrap}.table td{padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:middle}.empty-cell{text-align:center;color:var(--muted)}.table-filter-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.table-filter-row.single{grid-template-columns:minmax(240px,420px)}.table-link{color:var(--primary);font-weight:600}.badge-status{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700}.badge-status.success{background:#4f7a6d26;color:#32554b}.badge-status.warning{background:#c28b2d29;color:#8c6317}.badge-status.danger{background:#a763631f;color:#7b4343}.status-box{padding:14px 16px;border-radius:14px;margin-bottom:16px}.status-box.success{background:#4f7a6d1f;color:#32554b;border:1px solid rgba(79,122,109,.18)}.status-box.error{background:#a763631a;color:#7b4343;border:1px solid rgba(167,99,99,.16)}.login-page-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.login-panel{width:100%;max-width:420px;background:#ffffffeb;border:1px solid rgba(219,228,238,.95);border-radius:20px;box-shadow:var(--shadow);padding:26px}.login-card-head{display:flex;gap:14px;align-items:center;margin-bottom:24px}.login-brand-mark{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary),var(--success));color:#fff;font-weight:700}.login-form{display:grid;gap:14px}.checkin-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:24px}.qr-reader{min-height:340px;background:#ffffffeb;border:1px solid var(--line);border-radius:18px;padding:12px}.scan-status{margin-top:12px;color:var(--muted)}.scan-success{color:#32554b}.scan-error{color:#7b4343}.detail-stack{display:grid;gap:8px}.credential-print-card{background:#ffffffeb;border:1px solid var(--line);border-radius:18px;padding:22px}.credential-header{text-align:center;margin-bottom:18px}.credential-title{font-size:22px;font-weight:700}.credential-event{color:var(--muted)}.credential-body{display:grid;grid-template-columns:240px 1fr;gap:24px;align-items:center}.credential-qr-box img{max-width:100%;border-radius:14px;background:#fff;padding:10px;border:1px solid var(--line)}.credential-name{font-size:24px;font-weight:700;margin-bottom:12px}.credential-note{margin-top:12px;color:var(--muted)}@media (max-width: 980px){.kpi-grid,.table-filter-row,.form-grid-2,.section-grid,.user-form,.checkin-grid,.credential-body{grid-template-columns:1fr}.desktop-only{display:none}.app-page-wrap{padding:16px}.page-card,.form-card,.table-card,.qr-card-shell,.panel-card{padding:18px}.span-2,.form-span-2{grid-column:auto}}.btn-linkish{border:0}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.corporate-form{display:grid;gap:16px}.stack-field{display:grid;gap:8px}.login-panel-v3{max-width:460px;border-radius:28px;padding:34px 30px;box-shadow:0 24px 60px #18273a1f}.login-page-body{background:radial-gradient(circle at top left,rgba(95,125,153,.12),transparent 28%),radial-gradient(circle at bottom right,rgba(79,122,109,.1),transparent 24%),#edf2f7}.login-brand{display:flex;align-items:center;gap:14px}.login-submit-btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 16px;border-radius:14px;border:0;background:var(--primary);color:#fff;width:100%}.login-submit-btn:hover{background:var(--primary-dark)}.login-input{min-height:48px}.mvc-row{display:grid;gap:16px}.g-3{gap:16px}.g-4{gap:24px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}.gap-3{gap:12px}.align-items-start{align-items:start}.dashboard-kpi-text{font-size:22px}.result-title{font-size:24px}.registrations-filters{grid-template-columns:repeat(4,minmax(0,1fr))}.section-grid-mvc,.section-grid-mvc-checkin{display:grid;gap:16px}.mvc-col-4,.mvc-col-5,.mvc-col-6,.mvc-col-7,.mvc-col-12{min-width:0}.form-check-input{margin:0}.v3-print-card .credential-info{display:grid;gap:10px}.qr-footer-links{margin-top:10px}@media (min-width: 768px){.mvc-row{grid-template-columns:repeat(12,minmax(0,1fr))}.mvc-col-4{grid-column:span 4}.mvc-col-5{grid-column:span 5}.mvc-col-6{grid-column:span 6}.mvc-col-7{grid-column:span 7}.mvc-col-12{grid-column:span 12}}@media (max-width: 980px){.registrations-filters{grid-template-columns:1fr}}.info-btn{background:#0dcaf0;color:#0b2a32}.warning-btn{background:#f0ad4e;color:#3b2c06}.print-toolbar{display:flex;gap:10px;margin-bottom:16px}.standalone-print-card{max-width:340px;margin:0 auto;background:#fff;border-radius:20px;border:1px solid var(--line);padding:22px;text-align:center}.centered-print-box img{max-width:100%;border-radius:14px;background:#fff;padding:10px;border:1px solid var(--line)}.print-info{display:grid;gap:10px;margin-top:16px}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;min-height:100%;width:100%}img{max-width:100%;height:auto;display:block}button,input,select,textarea{font:inherit}.form-control,.form-select,.login-input{width:100%;min-height:44px}.action-btn,.login-submit-btn,button{min-height:44px;touch-action:manipulation}.app-shell,.page-shell,.main-shell{width:100%;min-height:100vh}.page-content,.content-area,.main-content{width:100%;min-width:0}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:16px}.page-header h1{margin:0 0 6px}.page-header p{margin:0}.mvc-row,.section-grid-mvc,.table-filter-grid{display:flex;flex-wrap:wrap;gap:16px}.mvc-col-12{width:100%}.mvc-col-6{width:calc(50% - 8px)}.mvc-col-4{width:calc(33.333% - 11px)}.mvc-col-3{width:calc(25% - 12px)}.form-shell{width:100%}.form-card,.table-card,.login-panel,.credential-print-card{width:100%;max-width:100%;overflow:hidden}.compact-form{max-width:1280px;margin:0 auto}.form-label{display:block;margin-bottom:6px;font-weight:600}.form-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.form-actions .action-btn,.form-actions button{min-width:160px}.radio-row{display:flex;gap:16px;flex-wrap:wrap}.form-check{display:inline-flex;align-items:center;gap:8px}.table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:12px}.table{width:100%;border-collapse:collapse;min-width:980px}.table th,.table td{padding:12px 10px;vertical-align:middle;text-align:left;white-space:nowrap}.table td .action-btn,.table td button{white-space:nowrap}.empty-cell{text-align:center;padding:24px}.badge-status{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:4px 10px;border-radius:999px;white-space:nowrap}.qr-card-shell{width:100%}.credential-print-card{border-radius:18px;padding:24px}.credential-header{display:flex;flex-direction:column;gap:4px;margin-bottom:20px}.credential-title{font-size:20px;font-weight:700}.credential-event{font-size:16px;opacity:.8}.credential-body{display:flex;gap:28px;align-items:center;justify-content:space-between}.credential-qr-box{width:240px;min-width:240px;display:flex;align-items:center;justify-content:center}.credential-qr-box img{width:220px;height:220px;object-fit:contain}.credential-info{flex:1;min-width:0}.credential-name{font-size:24px;font-weight:800;margin-bottom:16px;word-break:break-word}.credential-note{margin-top:16px;line-height:1.4}.qr-footer-links{margin-top:16px}.login-page-shell,.login-page-body{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.login-panel,.login-panel-v3{width:100%;max-width:460px;padding:28px;border-radius:18px}.login-form{display:flex;flex-direction:column;gap:16px}.d-flex{display:flex}.flex-wrap{flex-wrap:wrap}.gap-2{gap:8px}.gap-3{gap:16px}.mb-3{margin-bottom:16px}.mb-4{margin-bottom:20px}.w-full{width:100%}.no-print{display:block}@media (max-width: 1024px){.mvc-col-6,.mvc-col-4,.mvc-col-3{width:calc(50% - 8px)}.credential-body{gap:20px}.credential-qr-box{width:200px;min-width:200px}.credential-qr-box img{width:180px;height:180px}}@media (max-width: 768px){.page-header{flex-direction:column;align-items:stretch}.mvc-row,.section-grid-mvc,.table-filter-grid{display:flex;flex-direction:column;gap:14px}.mvc-col-6,.mvc-col-4,.mvc-col-3,.mvc-col-12{width:100%}.form-card,.table-card,.login-panel,.credential-print-card{padding:16px;border-radius:14px}.form-actions{flex-direction:column}.form-actions .action-btn,.form-actions button{width:100%;min-width:0}.d-flex.gap-2,.d-flex.gap-3{flex-wrap:wrap}.credential-body{flex-direction:column;align-items:center;text-align:left}.credential-qr-box{width:100%;min-width:0}.credential-qr-box img{width:min(220px,70vw);height:auto}.credential-info{width:100%}.credential-name{font-size:20px}.table{min-width:760px}.login-page-shell,.login-page-body{padding:16px}.login-panel,.login-panel-v3{padding:20px}}@media (max-width: 480px){.page-title{font-size:28px;line-height:1.15}.page-subtitle{font-size:15px}.credential-title{font-size:18px}.credential-event{font-size:14px}.credential-name{font-size:18px}.table{min-width:680px}}@media (max-width: 768px){.qr-card-shell .d-flex.flex-wrap.gap-2.mb-4{display:flex;flex-direction:column}.qr-card-shell .d-flex.flex-wrap.gap-2.mb-4>*{width:100%}}.mobile-registration-list{display:none}@media (max-width: 768px){.table-wrap{display:none}.mobile-registration-list{display:flex;flex-direction:column;gap:14px;margin-top:14px}.mobile-registration-card,.mobile-empty-card{background:#fff;border:1px solid #dbe3ee;border-radius:14px;padding:14px;box-shadow:0 1px 3px #0f172a0a}.mobile-registration-name{font-size:16px;font-weight:700;color:#1f2937;line-height:1.3;margin-bottom:4px}.mobile-registration-sub{font-size:12px;color:#6b7280;margin-bottom:10px;word-break:break-word}.mobile-registration-grid{display:grid;grid-template-columns:1fr;gap:8px;font-size:14px;color:#374151}.mobile-actions{display:flex;flex-direction:column;align-items:stretch;gap:8px;margin-top:14px}.mobile-actions .action-btn,.mobile-actions button{width:100%;justify-content:center;text-align:center}}.mobile-registration-card{transition:transform .08s ease,box-shadow .08s ease}.mobile-registration-card:active{transform:scale(.98);box-shadow:0 2px 6px #00000014}.mobile-actions .action-btn{font-weight:600;border-radius:10px}.mobile-registration-grid div{padding:4px 0;border-bottom:1px solid #f1f5f9}.mobile-registration-grid div:last-child{border-bottom:none}.skeleton-box{background:linear-gradient(90deg,#e5e7eb 25%,#f3f4f6 37%,#e5e7eb 63%);background-size:400% 100%;animation:skeleton-loading 1.4s ease infinite;border-radius:10px}@keyframes skeleton-loading{0%{background-position:100% 50%}to{background-position:0 50%}}.table-skeleton{display:flex;flex-direction:column;gap:12px;padding:12px}.table-skeleton-row{display:grid;grid-template-columns:2.2fr 1fr 1fr 1.2fr 1.8fr 1.2fr 1.6fr 1.6fr;gap:12px;align-items:center}.h-12{height:12px}.h-18{height:18px}.h-44{height:44px}.w-10,.w-12,.w-16,.w-18,.w-22{width:100%}.w-45{width:45%}.w-50{width:50%}.w-55{width:55%}.w-58{width:58%}.w-60{width:60%}.w-70{width:70%}.w-100{width:100%}.mb-8{margin-bottom:8px}.mb-12{margin-bottom:12px}.skeleton-mobile{display:none}@media (max-width: 768px){.skeleton-desktop{display:none}.skeleton-mobile{display:flex;flex-direction:column;gap:14px;margin-top:14px}}.page-standard{width:calc(100% - 40px);max-width:1240px;margin:0 auto}.page-wide{width:calc(100% - 32px);max-width:1480px;margin:0 auto}@media (max-width: 768px){.page-standard,.page-wide{width:calc(100% - 20px)}}.scan-status{margin-top:12px;padding:12px 14px;border-radius:10px;background:#f4f7fb;color:#334155;font-weight:600}.scan-success{background:#eaf7ee;color:#146c43;border:1px solid #b7e4c7}.scan-error{background:#fdecec;color:#b42318;border:1px solid #f5c2c7}@media (max-width: 768px){.table-wrap{overflow-x:visible}.table{min-width:0;border-collapse:separate;border-spacing:0 12px}.table thead{display:none}.table,.table tbody,.table tr,.table td{display:block;width:100%}.table tr{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:12px;box-shadow:0 4px 12px #0000000f}.table td{border:none;padding:6px 0}.table td:nth-child(1):before{content:"Nombre: ";font-weight:700}.table td:nth-child(2):before{content:"Correo: ";font-weight:700}.table td:nth-child(3):before{content:"Rol: ";font-weight:700}.table td:nth-child(4):before{content:"Distrito: ";font-weight:700}.table td:nth-child(5):before{content:"Activo: ";font-weight:700}.table td:nth-child(6):before{content:"Acciones: ";font-weight:700;display:block;margin-bottom:6px}.table-actions{display:flex;flex-direction:column;gap:8px}.table-actions .action-btn{width:100%;text-align:center}}.qr-print-page{min-height:100vh;background:#f3f4f6;padding:24px}.print-toolbar{display:flex;gap:12px;margin-bottom:24px}.action-btn{border:none;background:#111827;color:#fff;padding:10px 18px;border-radius:8px;text-decoration:none;font-weight:600;cursor:pointer}.action-btn.secondary{background:#6b7280}.print-page{display:flex;gap:30px;align-items:flex-start;justify-content:center;flex-wrap:wrap}.badge{page-break-inside:avoid!important;break-inside:avoid!important;color:#000!important;background:#fff!important;box-shadow:none!important;overflow:visible!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.badge-vertical{display:flex!important;flex-direction:column!important}.badge-card{display:flex!important}.badge-top{background:linear-gradient(135deg,#111827,#1f2937);color:#fff;padding:18px 16px;text-align:center}.badge-label{font-size:11px;letter-spacing:2px;font-weight:700;text-transform:uppercase;opacity:.9}.badge-event{margin-top:8px;font-size:18px;font-weight:800;line-height:1.2}.badge-body{flex:1;padding:18px;text-align:center}.badge-name{font-size:24px;font-weight:900;line-height:1.15;margin-bottom:10px;text-transform:uppercase}.badge-role{display:inline-block;background:#e5e7eb;color:#111827;padding:6px 14px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:1px;margin-bottom:18px}.badge-qr img{width:48mm;height:48mm;object-fit:contain}.badge-data{margin-top:16px;text-align:left;font-size:13px;line-height:1.7;border-top:1px solid #e5e7eb;padding-top:12px}.badge-footer{background:#f9fafb;border-top:1px solid #e5e7eb;padding:10px;text-align:center;font-size:11px;color:#4b5563}.badge-card{width:85.6mm;height:54mm;display:flex}.card-left{flex:1;padding:12px 14px;display:flex;flex-direction:column}.card-event{font-size:13px;font-weight:800;margin-top:4px;line-height:1.1}.card-name{margin-top:12px;font-size:17px;font-weight:900;line-height:1.15;text-transform:uppercase}.card-data{margin-top:auto;font-size:9.5px;line-height:1.45}.card-right{width:30mm;background:#111827;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center}.card-right img{width:24mm;height:24mm;background:#fff;padding:4px;border-radius:6px}.qr-text{margin-top:6px;font-size:8px;font-weight:800;letter-spacing:1px}.badge{position:relative}.badge:after{content:"";position:absolute;top:2mm;right:2mm;bottom:2mm;left:2mm;border:.4px dashed #9ca3af;border-radius:16px;pointer-events:none}.badge:before{content:"";position:absolute;display:none!important;background:linear-gradient(#6b7280,#6b7280) top left,linear-gradient(#6b7280,#6b7280) top right,linear-gradient(#6b7280,#6b7280) bottom left,linear-gradient(#6b7280,#6b7280) bottom right;background-size:10mm 1px,1px 10mm;background-repeat:no-repeat;pointer-events:none}@media print{@page{size:A4;margin:10mm}html,body,#root{background:#fff!important;margin:0!important;padding:0!important}.app-topbar,.menu-canvas,.menu-overlay,.no-print,.no-print *{display:none!important}.qr-print-page{background:#fff!important;padding:0!important;margin:0!important}.print-page{display:flex!important;gap:12mm!important;justify-content:center!important;align-items:flex-start!important;flex-wrap:nowrap!important}.qr-badge{background:#fff!important;color:#000!important;box-shadow:none!important;border:1px solid #d1d5db!important;overflow:hidden!important;page-break-inside:avoid!important;break-inside:avoid!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.qr-badge-vertical{display:flex!important;flex-direction:column!important;width:90mm!important;height:130mm!important}.qr-badge-card{display:flex!important;width:85.6mm!important;height:54mm!important}.badge-top,.card-right{background:#111827!important;color:#fff!important}.badge-top *,.card-right *{color:#fff!important}.qr-badge img{display:block!important;opacity:1!important;visibility:visible!important}}@media (max-width: 768px){.desktop-table{display:none}.mobile-cards{display:grid;gap:12px}.user-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:14px;box-shadow:0 2px 8px #0000000f}.user-card-header{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:12px}.user-card-row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid #f1f1f1}.user-card-row span{color:#666;font-size:13px}.user-card-row b{text-align:right;font-size:13px;word-break:break-word}.user-card-actions{display:grid;grid-template-columns:1fr;gap:8px;margin-top:12px}.user-card-actions .action-btn{width:100%;text-align:center}.badge{border-radius:999px;padding:4px 9px;font-size:12px;font-weight:600}.badge.active{background:#dcfce7;color:#166534}.badge.inactive{background:#fee2e2;color:#991b1b}}.mobile-cards{display:none}@media (max-width: 768px){.desktop-table{display:none}.mobile-cards{display:grid;gap:12px}.event-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:14px;box-shadow:0 4px 12px #0000000f}.event-card-header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:12px}.event-card-header h3{margin:4px 0 0;font-size:16px;color:#111827}.event-code{font-size:12px;font-weight:700;color:#6b7280}.event-card-row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid #f3f4f6;font-size:14px}.event-card-row strong{color:#374151}.event-card-row span{text-align:right;color:#111827}.badge{padding:5px 9px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}.badge.active{background:#dcfce7;color:#166534}.badge.inactive{background:#fee2e2;color:#991b1b}.empty-card{text-align:center;padding:18px;color:#6b7280;background:#fff;border-radius:12px;border:1px solid #e5e7eb}}.metrics-page{display:grid;gap:18px}.metrics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.metric-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:18px;box-shadow:0 4px 12px #0000000d}.metric-title{font-size:14px;color:#6b7280;margin-bottom:8px}.metric-value{font-size:32px;font-weight:800;color:#111827}.metrics-section{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:18px}.metrics-section h3{margin:0 0 16px;font-size:18px;color:#111827}.simple-bars{display:grid;gap:14px}.bar-info{display:flex;justify-content:space-between;font-size:14px;margin-bottom:6px}.bar-track{height:10px;background:#e5e7eb;border-radius:999px;overflow:hidden}.bar-fill{height:100%;background:#2563eb;border-radius:999px}@media (max-width: 768px){.metrics-grid{grid-template-columns:1fr}.metric-value{font-size:28px}.metrics-section{padding:14px}}@media print{@page{size:letter portrait;margin:0}body{margin:0!important;padding:0!important;background:#fff!important}.no-print,header,nav,.navbar{display:none!important}.print-page{width:216mm;min-height:279mm;padding:10mm;box-sizing:border-box;display:flex;gap:10mm;align-items:flex-start;justify-content:center;background:#fff!important}.gafete-print{position:relative}.hole-mark{position:absolute;top:7mm;left:50%;transform:translate(-50%);width:6mm;height:6mm;border:1px dashed rgba(255,255,255,.4);border-radius:50%;background:transparent;z-index:10}.credencial-print{width:86mm;height:54mm;page-break-inside:avoid;position:relative;box-sizing:border-box}}
