:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;place-content:center;justify-content:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}#root{width:100%;margin:0;padding:0;text-align:initial}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}body{background:#f3f4f6;font-family:Helvetica,Arial,sans-serif;padding-top:60px}button{background:#097c4b;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.85rem;transition:background .2s ease;height:2.5rem;box-sizing:border-box}button:hover{background:#08643d}.login-page{display:flex;flex-direction:column;justify-content:start;align-items:center;min-height:85vh;margin-top:20px;padding-bottom:100px}.login-page form,.login-form{background:#fff;padding:1.5rem 1.75rem;border-radius:10px;box-shadow:0 4px 12px #00000014;width:300px;text-align:left}.login-page label{display:block;margin-bottom:.25rem;font-weight:600;font-size:.85rem}.login-page input{width:100%;padding:.5rem .65rem;border:1px solid #d1d5db;border-radius:6px;margin-bottom:1rem;font-size:.85rem;height:2.5rem;box-sizing:border-box}.login-title{margin-bottom:.25rem;font-size:1.7rem;color:#097c4b}.login-subtitle{margin-bottom:1.25rem;color:#6b7280;font-size:.85rem}.login-logos{display:flex;justify-content:center;align-items:center;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.company-logo{height:45px;width:auto;object-fit:contain}.login-page button{width:100%;margin-top:.4rem;padding:.5rem .9rem;font-size:.85rem;height:2.5rem;box-sizing:border-box}.menu-page{max-width:800px;margin:2rem auto;background:#fff;padding:2rem;border-radius:10px;box-shadow:0 4px 12px #00000014;text-align:center}.menu-page button{width:100%;margin:.5rem 0}.certificate-page form,.payroll-page form{margin:1.25rem 0}.certificate-page input,.payroll-page input{width:240px;padding:.5rem .65rem;border:1px solid #d1d5db;border-radius:6px;margin-right:.5rem;font-size:.85rem;height:2.5rem;box-sizing:border-box}.certificate-page a,.payroll-page a{margin-top:.75rem;display:block;text-decoration:none;background-color:#097c4b;color:#fff;padding:.5rem .9rem;border-radius:6px;text-align:center;font-weight:700;font-size:.85rem;max-width:240px;margin:.75rem auto;height:2.5rem;box-sizing:border-box}.certificate-page label,.payroll-page label{margin-right:.5rem;font-size:.85rem}.pdf-viewer{border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 2px 8px #0000000f;width:100%;height:85vh}.pdf-toolbar{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid #e5e7eb;background-color:#f9fafb;border-radius:8px;padding:.75rem 1rem;margin-bottom:1rem}.pdf-toolbar-left{display:flex;align-items:center;gap:.5rem}.pdf-toolbar-right{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.back-button{background-color:#6b7280;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.85rem;transition:all .2s;font-weight:500}.back-button:hover{background-color:#4b5563;transform:translateY(-1px)}.download-button{background-color:#097c4b;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;text-decoration:none;font-size:.85rem;cursor:pointer;transition:all .2s;font-weight:500;display:inline-block}.download-button:hover{background-color:#065a35;transform:translateY(-1px)}.pdf-info{font-size:.9rem;color:#6b7280;margin-right:.5rem;font-weight:500}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.pdf-loading-overlay{position:absolute;inset:0;background-color:#fffffff2;display:flex;justify-content:center;align-items:center;z-index:10;border-radius:8px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.pdf-loading-content{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem;background-color:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a}.pdf-loading-spinner{width:40px;height:40px;border:4px solid #e5e7eb;border-top:4px solid #097c4b;border-radius:50%;animation:spin 1s linear infinite}.pdf-loading-text{font-size:1.1rem;font-weight:500;color:#097c4b;text-align:center}.pdf-loading-subtitle{font-size:.9rem;color:#6b7280;text-align:center;margin-top:.5rem}@media (max-width: 768px){.pdf-toolbar{flex-direction:column;gap:1rem;align-items:stretch}.pdf-toolbar-right{justify-content:space-between;flex-direction:column;gap:.5rem}.back-button,.download-button{width:100%;text-align:center}.pdf-info{margin-right:0;text-align:center}}.layout-container{display:flex;flex-direction:column;min-height:100vh}.app-content{display:block;align-items:center;justify-content:center;padding:1rem 1rem 6rem;width:70%;margin:0 auto}.app-header{width:100%;position:fixed;top:0;left:0;z-index:1000;background-color:#fff;box-shadow:0 2px 4px #0000001a;padding:.5rem 1.5rem;display:flex;justify-content:center;align-items:center}.header-inner{max-width:1000px;width:100%;display:flex;justify-content:space-between;align-items:center}.header-right{display:flex;gap:.75rem;align-items:center}.hamburger-btn{display:none;background:transparent;border:none;font-size:1.6rem;color:#097c4b;cursor:pointer}.logo-title{color:#097c4b;font-size:1.5rem;font-weight:700;margin:0}.header-logo{height:40px}.logout-btn{background:transparent;color:#097c4b;border:1px solid #097c4b;padding:.4rem 1rem;border-radius:6px;font-size:.85rem;cursor:pointer;transition:all .2s ease}.logout-btn:hover{background:#097c4b;color:#fff}.app-footer{position:fixed;bottom:0;left:0;width:100%;text-align:center;padding:.7rem 0;font-size:.85rem;color:#6b7280;background:#f9fafb;border-top:1px solid #e5e7eb}.cedula-page{display:flex;justify-content:center;align-items:center;height:75vh}.cedula-card{background:#fff;padding:1.75rem 2rem;border-radius:10px;box-shadow:0 4px 12px #00000014;width:320px;text-align:left}.cedula-card h2{margin-bottom:1rem;font-size:1.4rem;color:#097c4b}.cedula-card label{display:block;margin-bottom:.25rem;font-weight:600;font-size:.85rem}.cedula-card input{width:100%;padding:.5rem .65rem;border:1px solid #d1d5db;border-radius:6px;margin-bottom:1rem;font-size:.85rem;height:2.5rem;box-sizing:border-box}.cedula-card button{width:100%}.empresas-page{max-width:560px;margin:1.5rem auto;background:#fff;padding:1.75rem;border-radius:10px;box-shadow:0 4px 12px #00000014}.empresas-page ul{list-style:none;padding:0}.empresas-page li{margin:.2rem 0;text-align:left}@media (max-width: 768px){.header-inner{flex-direction:column;align-items:flex-start;gap:.5rem}.logo-title{font-size:1.25rem}.logout-btn{font-size:.75rem;padding:.3rem .8rem}.app-content{width:95%;padding:1rem .5rem}}@media (max-width: 1024px){.header-inner{flex-direction:row;align-items:center;position:relative}.hamburger-btn{display:block;margin-right:2rem}.header-right{display:none;position:absolute;top:100%;right:1rem;background:#fff;padding:.75rem 1rem;border-radius:8px;box-shadow:0 2px 8px #0000001a;flex-direction:column;gap:.5rem;z-index:1001;width:max-content}.header-right.show{display:flex}.logo-title{font-size:1.25rem}.logout-btn{font-size:.8rem;padding:.4rem .9rem;width:100%}}@media (min-width: 1025px){.hamburger-btn{display:none!important}}
