@import "https://fonts.googleapis.com/css2?family=Outfit:wght@500;600;700;800&family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap";:root{--bg-color:#080d0a;--surface-color:#0d1711b8;--surface-solid:#0d1812;--surface-card:#101c15ad;--surface-hover:#16261dd9;--primary:#10b981;--primary-rgb:16, 185, 129;--primary-light:#34d399;--primary-deep:#059669;--primary-glow:#10b98140;--forest-green:#064e3b;--accent-gold:#f59e0b;--accent-gold-glow:#f59e0b40;--accent-blue:#38bdf8;--accent-red:#fb7185;--accent-pink:#f472b6;--text-main:#f8fafc;--text-dim:#94a3b8;--text-muted:#64748b;--header-height:68px;--nav-height:84px;--glass-border:#34d3991f;--glass-border-focus:#34d39973;--glass-bg:#ffffff09;--radius-sm:10px;--radius-md:16px;--radius-lg:24px;--radius-xl:32px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background-color:var(--bg-color);color:var(--text-main);-webkit-font-smoothing:antialiased;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}body{background-color:var(--bg-color);background-image:radial-gradient(circle at 15% 10%, rgba(var(--primary-rgb), .08) 0%, transparent 45%), radial-gradient(circle at 85% 85%, #38bdf80d 0%, transparent 45%), radial-gradient(circle at 50% 50%, #22543d26 0%, transparent 65%);width:100%;max-width:100vw;min-height:100vh;color:var(--text-main);box-sizing:border-box;background-attachment:fixed;justify-content:center;margin:0;display:flex;overflow-x:hidden}html,body{box-sizing:border-box!important;width:100%!important;max-width:100vw!important;overflow-x:hidden!important}#root{box-sizing:border-box;flex-direction:column;width:100%;max-width:100vw;min-height:100vh;display:flex;position:relative;overflow-x:hidden}.app-container{width:100%;max-width:520px;min-height:100vh;padding-bottom:calc(var(--nav-height) + env(safe-area-inset-bottom,0px));box-sizing:border-box;background-color:#070d0af2;border-left:1px solid #ffffff0a;border-right:1px solid #ffffff0a;flex-direction:column;margin:0 auto;display:flex;position:relative;overflow-x:hidden;box-shadow:0 0 80px #000000d9}h1,h2,h3,h4,h5{letter-spacing:-.025em;color:var(--text-main);font-family:Outfit,sans-serif;font-weight:700}.card{background:var(--surface-color);-webkit-backdrop-filter:blur(24px);border-radius:var(--radius-lg);border:1px solid var(--glass-border);width:calc(100% - 24px);max-width:calc(100% - 24px);margin:10px 12px;padding:16px;transition:transform .25s cubic-bezier(.16,1,.3,1),border-color .25s,box-shadow .25s;box-shadow:0 16px 36px -8px #00000080,inset 0 1px #ffffff14;box-sizing:border-box!important}.card[style*="margin: 0"]{width:100%!important;max-width:100%!important;margin:0!important}.card:hover{border-color:#34d39940;box-shadow:0 20px 42px -10px #0009,inset 0 1px #ffffff1f}.top-header{height:var(--header-height);min-height:var(--header-height);z-index:90;-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--glass-border);box-sizing:border-box;background:#080d0ae0;justify-content:space-between;align-items:center;width:100%;max-width:100vw;padding:0 10px;display:flex;position:sticky;top:0;overflow:hidden;box-shadow:0 4px 20px #0000004d}.pulse-indicator{justify-content:center;align-items:center;width:8px;height:8px;display:inline-flex;position:relative}.pulse-indicator:before{content:"";background-color:var(--primary);border-radius:50%;width:100%;height:100%;animation:2s cubic-bezier(0,0,.2,1) infinite radar-ping;position:absolute}.pulse-indicator:after{content:"";background-color:var(--primary-light);width:6px;height:6px;box-shadow:0 0 6px var(--primary);border-radius:50%;position:absolute}@keyframes radar-ping{0%{opacity:.8;transform:scale(.9)}75%,to{opacity:0;transform:scale(2.4)}}.bottom-nav{width:100%;max-width:520px;height:calc(var(--nav-height) + env(safe-area-inset-bottom,0px));-webkit-backdrop-filter:blur(28px);padding:0 10px calc(14px + env(safe-area-inset-bottom,0px));z-index:100;box-sizing:border-box;background:#0a130ef0;border-top:1px solid #34d39926;justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -8px 24px #0006}.nav-item{color:var(--text-dim);cursor:pointer;border-radius:var(--radius-md);background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:8px 12px;font-size:11px;font-weight:600;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;position:relative}.nav-item.active{color:var(--primary-light)}.nav-item.active:after{content:"";background:var(--primary-light);width:16px;height:3px;box-shadow:0 0 10px var(--primary-light);border-radius:4px;position:absolute;bottom:0}.fab-center{color:#fff;cursor:pointer;background:linear-gradient(135deg,#10b981 0%,#047857 100%);border:1px solid #34d39973;border-radius:50%;justify-content:center;align-items:center;width:54px;height:54px;font-weight:700;transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s;display:flex;transform:translateY(-14px);box-shadow:0 10px 28px #10b98166,inset 0 1px #ffffff59}.fab-center:hover,.fab-center:active{transform:translateY(-16px)scale(1.05);box-shadow:0 14px 34px #10b9818c,inset 0 1px #ffffff80}.btn-neon{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-deep) 100%);color:#fff;border-radius:var(--radius-md);cursor:pointer;box-shadow:0 4px 18px var(--primary-glow);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border:none;justify-content:center;align-items:center;gap:8px;padding:13px 20px;font-size:14px;font-weight:700;transition:all .2s;display:inline-flex}.btn-neon:hover{transform:translateY(-1px);box-shadow:0 6px 22px #a3e63573}.btn-glass{background:var(--glass-bg);color:var(--text-main);border:1px solid var(--glass-border);border-radius:var(--radius-md);cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:10px 16px;font-size:13px;font-weight:600;transition:all .2s;display:inline-flex}.btn-glass:hover{background:#ffffff14;border-color:#ffffff2e}.chip{letter-spacing:.3px;border-radius:20px;align-items:center;gap:4px;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}.chip-activa{color:#4ade80;background:#34c75926;border:1px solid #4ade804d}.chip-prenada{color:#38bdf8;background:#38bdf826;border:1px solid #38bdf84d}.chip-enferma{color:#f87171;background:#f8717126;border:1px solid #f871714d}.chip-vendida{color:#fbbf24;background:#f59e0b26;border:1px solid #fbbf244d}.modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:200;background:#000000b8;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.modal-sheet{border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl);width:100%;max-width:520px;max-height:88vh;padding:24px 20px calc(36px + env(safe-area-inset-bottom,0px));box-sizing:border-box;background:#0f1d14;border-top:1px solid #ffffff1f;animation:.28s cubic-bezier(.16,1,.3,1) slideUp;overflow-y:auto;box-shadow:0 -10px 40px #0009}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.sheet-handle{background:#fff3;border-radius:4px;width:44px;height:4px;margin:0 auto 20px}.form-group{margin-bottom:16px}.form-label{color:var(--text-dim);margin-bottom:6px;font-size:12px;font-weight:600;display:block}.input-glass{border:1px solid var(--glass-border);border-radius:var(--radius-md);width:100%;color:var(--text-main);background:#ffffff0d;outline:none;padding:12px 14px;font-size:14px;transition:all .2s}select,.input-glass,select.input-glass{--lightningcss-light: !important;--lightningcss-dark:initial!important;color-scheme:dark!important}select.input-glass option,select option,.input-glass option{color:#fff!important;background-color:#0d1a12!important;padding:10px 14px!important;font-size:14px!important}select.input-glass option:checked,select option:checked{color:#fff!important;background-color:#10b981!important}.input-glass:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow);background:#ffffff14}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:6px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-up{animation:.42s cubic-bezier(.16,1,.3,1) both fadeInUp}.stagger-1{animation-delay:40ms}.stagger-2{animation-delay:.1s}.stagger-3{animation-delay:.16s}.stagger-4{animation-delay:.22s}.stagger-5{animation-delay:.28s}@keyframes heartbeat{0%{transform:scale(1)}14%{transform:scale(1.18)}28%{transform:scale(1.04)}42%{transform:scale(1.16)}70%{transform:scale(1)}to{transform:scale(1)}}.animate-heartbeat{transform-origin:50%;animation:2.2s ease-in-out infinite heartbeat}@keyframes soundWave{0%{opacity:.8;transform:scale(.9)}50%{opacity:.3}to{opacity:0;transform:scale(2.2)}}.sound-wave-ring{pointer-events:none;border:2px solid #10b98199;border-radius:50%;animation:2s cubic-bezier(.1,.8,.3,1) infinite soundWave;position:absolute;inset:-12px}.sound-wave-ring-delayed{animation-delay:.6s}.sound-wave-ring-fast{animation-delay:1.2s}.fab-rotate-active{background:linear-gradient(135deg,#ef4444 0%,#b91c1c 100%)!important;border-color:#ef444466!important;transform:translateY(-14px)rotate(45deg)!important;box-shadow:0 10px 28px #ef444480!important}body.field-sun-mode{--bg-main:#000;--bg-card:#0a140d;--text-main:#fff;--text-dim:#d1fae5;--text-muted:#86efac;--primary:#10b981;--primary-light:#4ade80}body.field-sun-mode .card,body.field-sun-mode .modal-sheet{background:#0d1a12!important;border-width:2px!important;border-color:#4ade808c!important;box-shadow:0 8px 32px #000000f2,inset 0 1px #ffffff26!important}body.field-sun-mode .btn-glass{color:#fff!important;background:#132419!important;border-width:1.5px!important;border-color:#4ade8080!important}body.field-sun-mode .chip{border-width:1.5px!important;font-weight:800!important}@media (width<=860px){.desktop-nav-links{display:none!important}}@media (width<=640px){.mobile-floating-cta{display:flex!important}}@media (width<=440px){.top-header{padding-left:10px!important;padding-right:10px!important}.btn-install-header{border-radius:50%!important;width:34px!important;height:34px!important;padding:7px!important}.btn-install-header .install-label-text{display:none!important}.btn-user-header{padding:6px 8px!important}.app-container{box-shadow:none!important;border-left:none!important;border-right:none!important}}.quick-actions-container::-webkit-scrollbar{display:none!important}@media (width<=640px){html,body,#root{max-width:100vw!important;overflow-x:hidden!important}.welcome-header{padding:8px 12px!important}.welcome-brand-subtitle,.welcome-btn-demo-header{display:none!important}.welcome-btn-login-header{padding:6px 12px!important;font-size:11px!important}.welcome-sena-logo{width:32px!important;height:32px!important;margin-left:2px!important}.welcome-hero-section{padding:16px 12px 28px!important}.welcome-hero-grid{grid-template-columns:1fr!important;gap:20px!important}h1{margin-bottom:10px!important;font-size:26px!important;line-height:1.2!important}.welcome-auth-card{border-radius:18px!important;padding:14px 12px!important}.welcome-simulator-card{border-radius:20px!important;padding:14px 10px!important}}@media (width<=380px){h1{font-size:23px!important}}@media (width<=768px){.welcome-header{padding:8px 10px!important}.welcome-brand-subtitle,.welcome-btn-demo-header{display:none!important}.welcome-btn-login-header{white-space:nowrap!important;padding:6px 12px!important;font-size:11px!important}.welcome-sena-logo{flex-shrink:0!important;width:32px!important;height:32px!important;margin-left:4px!important;display:block!important}.welcome-header-actions{gap:6px!important}.top-header{padding:0 10px!important}.btn-user-header{border-radius:50%!important;flex-shrink:0!important;justify-content:center!important;align-items:center!important;width:34px!important;height:34px!important;padding:0!important;display:inline-flex!important}.btn-user-header .user-label-text{display:none!important}}

/* === RegiGan: ajuste automatico a cualquier pantalla (agregado) === */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
.app-container{max-width:min(100vw,520px)!important;overflow-x:clip!important}
.app-container img,.app-container video,.app-container canvas,.app-container svg{max-width:100%}
.app-container table{display:block;max-width:100%;overflow-x:auto}
.app-container button,.app-container input,.app-container select,.app-container textarea{max-width:100%}
.top-header{max-width:100%!important}
.bottom-nav{max-width:min(100vw,520px)!important}
.nav-item{padding:8px clamp(4px,2.2vw,12px)!important}
/* Telefonos angostos: se reduce todo proporcionalmente */
@media (max-width:359px){.app-container{zoom:.92}}
@media (max-width:319px){.app-container{zoom:.84}}
/* Fuentes del sistema muy grandes: evitar que rompan la rejilla */
.quick-action-btn{min-width:0!important}
