:root{--font-heading: "Outfit", -apple-system, BlinkMacSystemFont, sans-serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--bg-primary: #0b0f19;--bg-secondary: #111827;--bg-tertiary: #1f293d;--bg-card: rgba(22, 30, 49, .75);--bg-card-hover: rgba(30, 41, 65, .85);--bg-glass: rgba(17, 24, 39, .7);--border-glass: rgba(255, 255, 255, .08);--border-glass-hover: rgba(255, 255, 255, .18);--text-primary: #f8fafc;--text-secondary: #94a3b8;--text-muted: #64748b;--accent-primary: #10b981;--accent-primary-hover: #059669;--accent-primary-glow: rgba(16, 185, 129, .25);--accent-indigo: #6366f1;--accent-indigo-glow: rgba(99, 102, 241, .25);--accent-amber: #f59e0b;--accent-amber-glow: rgba(245, 158, 11, .25);--accent-rose: #f43f5e;--accent-rose-glow: rgba(244, 63, 94, .25);--accent-violet: #8b5cf6;--accent-cyan: #06b6d4;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .25);--shadow-md: 0 8px 24px -4px rgba(0, 0, 0, .35);--shadow-lg: 0 16px 36px -6px rgba(0, 0, 0, .45);--shadow-glow: 0 0 20px rgba(16, 185, 129, .2);--radius-sm: 8px;--radius-md: 14px;--radius-lg: 20px;--radius-full: 9999px;--transition-fast: .15s ease;--transition-normal: .25s cubic-bezier(.4, 0, .2, 1);--transition-bounce: .35s cubic-bezier(.34, 1.56, .64, 1)}[data-theme=light]{--bg-primary: #f8fafc;--bg-secondary: #ffffff;--bg-tertiary: #f1f5f9;--bg-card: rgba(255, 255, 255, .85);--bg-card-hover: #ffffff;--bg-glass: rgba(255, 255, 255, .85);--border-glass: rgba(15, 23, 42, .08);--border-glass-hover: rgba(15, 23, 42, .18);--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--shadow-sm: 0 2px 8px rgba(15, 23, 42, .05);--shadow-md: 0 8px 24px -4px rgba(15, 23, 42, .08);--shadow-lg: 0 16px 36px -6px rgba(15, 23, 42, .12);--shadow-glow: 0 0 20px rgba(16, 185, 129, .15)}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}body{font-family:var(--font-body);background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;line-height:1.5;overflow-x:hidden;background-image:radial-gradient(circle at 15% 15%,rgba(16,185,129,.08) 0%,transparent 45%),radial-gradient(circle at 85% 85%,rgba(99,102,241,.08) 0%,transparent 45%),radial-gradient(circle at 50% 50%,rgba(139,92,246,.04) 0%,transparent 60%);background-attachment:fixed}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.02em;font-weight:700;color:var(--text-primary)}button,input,select,textarea{font-family:inherit;font-size:1rem}.glass-panel{background:var(--bg-card);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-glass);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:all var(--transition-normal)}.glass-panel:hover{border-color:var(--border-glass-hover)}.app-container{max-width:1280px;margin:0 auto;padding:1.25rem 1rem 6rem}@media(min-width:768px){.app-container{padding:1.75rem 2rem 4rem}}.app-header{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem;padding:1.25rem 1.5rem;position:sticky;top:.75rem;z-index:40}@media(min-width:768px){.app-header{flex-direction:row;align-items:center;justify-content:space-between}}.brand-section{display:flex;align-items:center;gap:.85rem}.brand-logo-icon{width:44px;height:44px;border-radius:var(--radius-md);background:linear-gradient(135deg,#10b981,#059669,#047857);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 14px var(--accent-primary-glow)}.brand-title{font-size:1.45rem;font-weight:800;background:linear-gradient(135deg,#fff 30%,#94a3b8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;display:flex;align-items:center;gap:.5rem}[data-theme=light] .brand-title{background:linear-gradient(135deg,#0f172a 30%,#334155);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.brand-subtitle{font-size:.78rem;color:var(--text-secondary);font-weight:500}.header-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem}.profile-selector-box{display:flex;align-items:center;gap:.5rem;background:var(--bg-tertiary);padding:.35rem .65rem;border-radius:var(--radius-full);border:1px solid var(--border-glass)}.profile-avatar-active{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.25rem;background:#ffffff1a;box-shadow:var(--shadow-sm)}.profile-select{background:transparent;border:none;color:var(--text-primary);font-weight:600;font-size:.9rem;cursor:pointer;outline:none;padding-right:.5rem}.profile-select option{background:var(--bg-secondary);color:var(--text-primary)}.role-badge{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:.2rem .6rem;border-radius:var(--radius-full)}.role-admin{background:#3b82f633;color:#60a5fa;border:1px solid rgba(59,130,246,.35)}.role-member{background:#ec489933;color:#f472b6;border:1px solid rgba(236,72,153,.35)}.btn-icon{width:38px;height:38px;border-radius:var(--radius-md);background:var(--bg-tertiary);border:1px solid var(--border-glass);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast)}.btn-icon:hover{color:var(--text-primary);border-color:var(--border-glass-hover);transform:translateY(-1px)}.nav-tabs{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.5rem;margin-bottom:1.75rem;scrollbar-width:none}.nav-tabs::-webkit-scrollbar{display:none}.nav-tab-btn{display:flex;align-items:center;gap:.5rem;padding:.65rem 1.15rem;border-radius:var(--radius-full);background:var(--bg-card);border:1px solid var(--border-glass);color:var(--text-secondary);font-weight:600;font-size:.92rem;cursor:pointer;white-space:nowrap;transition:all var(--transition-normal)}.nav-tab-btn:hover{background:var(--bg-card-hover);color:var(--text-primary);border-color:var(--border-glass-hover)}.nav-tab-btn.active{background:linear-gradient(135deg,#10b98133,#6366f133);border-color:var(--accent-primary);color:#fff;box-shadow:0 4px 16px var(--accent-primary-glow)}[data-theme=light] .nav-tab-btn.active{color:#065f46;background:#ecfdf5;border-color:#10b981}.tab-badge{background:var(--accent-amber);color:#000;font-size:.72rem;font-weight:800;padding:.15rem .5rem;border-radius:var(--radius-full);line-height:1}.btn-primary{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;font-weight:600;padding:.7rem 1.35rem;border-radius:var(--radius-md);display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;box-shadow:0 4px 14px var(--accent-primary-glow);transition:all var(--transition-normal)}.btn-primary:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-2px);box-shadow:0 6px 20px var(--accent-primary-glow)}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-glass);font-weight:600;padding:.7rem 1.25rem;border-radius:var(--radius-md);display:inline-flex;align-items:center;gap:.5rem;cursor:pointer;transition:all var(--transition-fast)}.btn-secondary:hover{border-color:var(--border-glass-hover);background:var(--bg-card-hover)}.btn-danger{background:#f43f5e26;color:#fb7185;border:1px solid rgba(244,63,94,.3);font-weight:600;padding:.6rem 1rem;border-radius:var(--radius-md);display:inline-flex;align-items:center;gap:.4rem;cursor:pointer;transition:all var(--transition-fast)}.btn-danger:hover{background:#f43f5e40;color:#fff}.fab-btn{position:fixed;bottom:2rem;right:2rem;background:linear-gradient(135deg,#10b981,#6366f1);color:#fff;border:none;border-radius:var(--radius-full);padding:.9rem 1.5rem;display:flex;align-items:center;gap:.6rem;font-weight:700;font-size:1rem;box-shadow:0 8px 28px #10b98173;cursor:pointer;z-index:50;transition:all var(--transition-bounce)}.fab-btn:hover{transform:scale(1.05) translateY(-2px);box-shadow:0 12px 36px #6366f180}.hero-card{padding:1.5rem;margin-bottom:2rem;display:flex;flex-direction:column;gap:1rem;background:linear-gradient(135deg,#10b9811f,#6366f114);border:1px solid rgba(16,185,129,.2)}@media(min-width:768px){.hero-card{flex-direction:row;align-items:center;justify-content:space-between;padding:1.75rem 2rem}}.hero-content h2{font-size:1.5rem;margin-bottom:.35rem}.hero-content p{color:var(--text-secondary);font-size:.95rem;max-width:600px}.status-pill{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .75rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:700;letter-spacing:.02em}.status-pending{background:#f59e0b26;color:#fbbf24;border:1px solid rgba(245,158,11,.3)}.status-approved{background:#10b98126;color:#34d399;border:1px solid rgba(16,185,129,.3)}.status-executed{background:#8b5cf62e;color:#c084fc;border:1px solid rgba(139,92,246,.3)}.status-rejected{background:#f43f5e26;color:#fb7185;border:1px solid rgba(244,63,94,.3)}.urgency-pill{font-size:.7rem;font-weight:700;padding:.2rem .55rem;border-radius:var(--radius-full)}.urgency-alta{background:#ef444433;color:#fca5a5}.urgency-media{background:#f59e0b33;color:#fde68a}.urgency-baja{background:#10b98133;color:#a7f3d0}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.25rem}.req-card{padding:1.35rem;display:flex;flex-direction:column;justify-content:space-between;gap:1rem;position:relative;overflow:hidden}.req-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--card-accent, var(--border-glass))}.req-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.req-title{font-size:1.1rem;font-weight:700;line-height:1.3;margin-bottom:.35rem}.req-beneficiary-row{display:flex;align-items:center;gap:.5rem;font-size:.82rem;color:var(--text-secondary);flex-wrap:wrap}.family-tag{display:inline-flex;align-items:center;gap:.3rem;background:var(--bg-tertiary);padding:.15rem .5rem;border-radius:var(--radius-full);font-weight:600;color:var(--text-primary)}.req-amount-box{display:flex;align-items:baseline;gap:.3rem}.amount-label{font-size:.78rem;color:var(--text-muted)}.amount-val{font-size:1.4rem;font-family:var(--font-heading);font-weight:800;color:var(--accent-primary)}.req-details{display:flex;flex-direction:column;gap:.4rem;background:#00000026;padding:.75rem;border-radius:var(--radius-md);font-size:.85rem}.req-detail-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.req-note{color:var(--text-secondary);font-style:italic;margin-top:.25rem;line-height:1.4}.req-actions{display:flex;align-items:center;gap:.5rem;padding-top:.75rem;border-top:1px solid var(--border-glass)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:100;display:flex;align-items:center;justify-content:center;padding:1rem;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--bg-secondary);border:1px solid var(--border-glass);border-radius:var(--radius-lg);width:100%;max-width:540px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg);display:flex;flex-direction:column}.modal-header{padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-glass);display:flex;align-items:center;justify-content:space-between}.modal-body{padding:1.5rem;display:flex;flex-direction:column;gap:1.2rem}.modal-footer{padding:1rem 1.5rem;border-top:1px solid var(--border-glass);display:flex;justify-content:flex-end;gap:.75rem}.form-group{display:flex;flex-direction:column;gap:.4rem}.form-label{font-size:.85rem;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:.4rem}.form-input,.form-select,.form-textarea{background:var(--bg-tertiary);border:1px solid var(--border-glass);color:var(--text-primary);border-radius:var(--radius-md);padding:.7rem .9rem;outline:none;transition:all var(--transition-fast)}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-primary-glow)}.form-textarea{min-height:80px;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-bottom:2rem}.metric-card{padding:1.25rem 1.4rem;display:flex;flex-direction:column;gap:.5rem;position:relative;overflow:hidden}.metric-title{font-size:.82rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);display:flex;align-items:center;gap:.5rem}.metric-value{font-size:1.85rem;font-family:var(--font-heading);font-weight:800;line-height:1.1}.metric-hint{font-size:.78rem;color:var(--text-muted)}.chart-card{padding:1.5rem;margin-bottom:1.5rem}.chart-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;flex-wrap:wrap;gap:.5rem}.chart-title{font-size:1.15rem;font-weight:700;display:flex;align-items:center;gap:.5rem}.table-responsive{width:100%;overflow-x:auto}.custom-table{width:100%;border-collapse:collapse;text-align:left}.custom-table th{padding:.85rem 1rem;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);border-bottom:1px solid var(--border-glass)}.custom-table td{padding:1rem;font-size:.9rem;border-bottom:1px solid var(--border-glass)}.custom-table tr:hover td{background:#ffffff05}.filter-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.25rem}.filter-group{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.filter-chip{padding:.4rem .85rem;border-radius:var(--radius-full);background:var(--bg-tertiary);border:1px solid var(--border-glass);font-size:.82rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.filter-chip:hover{color:var(--text-primary);border-color:var(--border-glass-hover)}.filter-chip.active{background:var(--accent-primary);color:#064e3b;border-color:var(--accent-primary);font-weight:700}.empty-state{padding:3rem 1.5rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.85rem}.empty-icon{font-size:3rem;margin-bottom:.5rem;opacity:.7}.empty-state h3{font-size:1.2rem;color:var(--text-primary)}.empty-state p{color:var(--text-secondary);max-width:400px;font-size:.9rem}
