:root{--primary-color:#e0f3ff;--secondary-color:rgba(224,243,255,0.8);--accent-color:#1976d2;--success-color:#4caf50;--text-primary:#2c3e50;--text-secondary:#7f8c8d;--shadow-light:0 4px 20px rgba(224,243,255,0.3);--shadow-medium:0 8px 30px rgba(224,243,255,0.4);--border-radius:16px}.fichaje-container[data-v-a66e4c54]{min-height:100vh;background:#fcfcfc;padding:20px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-family:Roboto,sans-serif}.header-section[data-v-a66e4c54]{text-align:center;margin-bottom:40px;-webkit-animation:fadeInDown-data-v-a66e4c54 .8s ease-out;animation:fadeInDown-data-v-a66e4c54 .8s ease-out}.logo-container[data-v-a66e4c54]{margin-bottom:20px}.company-logo[data-v-a66e4c54]{border-radius:50%;-webkit-box-shadow:var(--shadow-light);box-shadow:var(--shadow-light);-webkit-transition:-webkit-transform .3s ease;transition:-webkit-transform .3s ease;transition:transform .3s ease;transition:transform .3s ease,-webkit-transform .3s ease}.company-logo[data-v-a66e4c54]:hover{-webkit-transform:scale(1.05);transform:scale(1.05)}.company-name[data-v-a66e4c54]{font-size:24px;font-weight:600;color:var(--text-primary);margin-top:16px;letter-spacing:.5px}.welcome-text[data-v-a66e4c54]{font-size:18px;color:var(--text-secondary);font-weight:300}.main-card[data-v-a66e4c54]{width:100%;max-width:480px;border-radius:var(--border-radius)!important;background:hsla(0,0%,100%,.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(224,243,255,.3);-webkit-animation:fadeInUp-data-v-a66e4c54 .8s ease-out;animation:fadeInUp-data-v-a66e4c54 .8s ease-out;-webkit-transition:all .4s ease;transition:all .4s ease;overflow:hidden}.main-card[data-v-a66e4c54]:hover{-webkit-transform:translateY(-5px);transform:translateY(-5px);-webkit-box-shadow:0 16px 40px rgba(224,243,255,.5);box-shadow:0 16px 40px rgba(224,243,255,.5)}.card-validated[data-v-a66e4c54]{border-color:var(--success-color);-webkit-box-shadow:0 0 20px rgba(76,175,80,.3);box-shadow:0 0 20px rgba(76,175,80,.3)}.card-header[data-v-a66e4c54]{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));padding:24px;text-align:center;position:relative;overflow:hidden}.card-header[data-v-a66e4c54]:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,hsla(0,0%,100%,.1) 0,transparent 50%);-webkit-animation:pulse-data-v-a66e4c54 3s ease-in-out infinite;animation:pulse-data-v-a66e4c54 3s ease-in-out infinite}.header-icon[data-v-a66e4c54]{margin-bottom:12px}.header-title[data-v-a66e4c54]{color:var(--text-primary);font-weight:500;font-size:20px;margin:0;letter-spacing:.5px}.form-content[data-v-a66e4c54]{padding:32px 24px}.input-group[data-v-a66e4c54]{margin-bottom:28px;position:relative}.input-label[data-v-a66e4c54]{font-weight:500;color:var(--text-primary);margin-bottom:12px;font-size:14px;letter-spacing:.25px}.input-label[data-v-a66e4c54],.input-wrapper[data-v-a66e4c54]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.input-wrapper[data-v-a66e4c54]{position:relative}.custom-input[data-v-a66e4c54],.custom-select[data-v-a66e4c54],.custom-textbox[data-v-a66e4c54]{border-radius:12px!important;-webkit-transition:all .3s ease;transition:all .3s ease}.custom-textbox.input-success[data-v-a66e4c54]{border-color:var(--success-color)!important;-webkit-box-shadow:0 0 0 2px rgba(76,175,80,.2);box-shadow:0 0 0 2px rgba(76,175,80,.2)}.validation-check[data-v-a66e4c54]{position:absolute;right:12px;-webkit-animation:bounceIn-data-v-a66e4c54 .5s ease;animation:bounceIn-data-v-a66e4c54 .5s ease}.action-section[data-v-a66e4c54]{padding:0 24px 32px}.fichar-btn[data-v-a66e4c54]{background:#4b83db!important;color:#fff!important;border-radius:12px!important;height:56px!important;font-weight:600!important;font-size:16px!important;letter-spacing:.5px!important;position:relative;overflow:hidden;-webkit-transition:all .3s ease;transition:all .3s ease}.fichar-btn[data-v-a66e4c54]:hover:not(:disabled){-webkit-transform:translateY(-2px);transform:translateY(-2px);-webkit-box-shadow:0 8px 25px rgba(25,118,210,.4);box-shadow:0 8px 25px rgba(25,118,210,.4)}.fichar-btn[data-v-a66e4c54]:disabled{background:#e0e0e0!important;color:#9e9e9e!important}.btn-ripple[data-v-a66e4c54]{position:absolute;top:0;left:-100%;width:100%;height:100%;background:-webkit-gradient(linear,left top,right top,from(transparent),color-stop(hsla(0,0%,100%,.2)),to(transparent));background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.2),transparent);-webkit-transition:left .5s;transition:left .5s}.fichar-btn:hover .btn-ripple[data-v-a66e4c54]{left:100%}.modal-card[data-v-a66e4c54]{border-radius:var(--border-radius)!important;overflow:hidden}.modal-header[data-v-a66e4c54]{background:var(--primary-color);padding:24px;text-align:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:12px}.modal-header h3[data-v-a66e4c54]{margin:0;color:var(--text-primary);font-weight:500}.modal-content[data-v-a66e4c54]{padding:24px}.modal-actions[data-v-a66e4c54]{padding:16px 24px 24px;gap:12px}.cancel-btn[data-v-a66e4c54]{color:var(--text-secondary)!important}.create-btn[data-v-a66e4c54]{background:#4b83db!important;color:#fff!important;border-radius:8px!important}.location-indicator[data-v-a66e4c54]{position:fixed;bottom:20px;right:20px;padding:8px 16px;border-radius:20px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:8px;font-size:12px;font-weight:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);-webkit-animation:slideInRight-data-v-a66e4c54 .5s ease;animation:slideInRight-data-v-a66e4c54 .5s ease;color:#fff}.location-success[data-v-a66e4c54]{background:rgba(76,175,80,.9)}.location-error[data-v-a66e4c54]{background:rgba(244,67,54,.9)}.location-loading[data-v-a66e4c54]{background:rgba(255,152,0,.9)}@-webkit-keyframes fadeInDown-data-v-a66e4c54{0%{opacity:0;-webkit-transform:translateY(-30px);transform:translateY(-30px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeInDown-data-v-a66e4c54{0%{opacity:0;-webkit-transform:translateY(-30px);transform:translateY(-30px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes fadeInUp-data-v-a66e4c54{0%{opacity:0;-webkit-transform:translateY(30px);transform:translateY(30px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeInUp-data-v-a66e4c54{0%{opacity:0;-webkit-transform:translateY(30px);transform:translateY(30px)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes bounceIn-data-v-a66e4c54{0%{opacity:0;-webkit-transform:scale(.3);transform:scale(.3)}50%{opacity:1;-webkit-transform:scale(1.05);transform:scale(1.05)}70%{-webkit-transform:scale(.9);transform:scale(.9)}to{-webkit-transform:scale(1);transform:scale(1)}}@keyframes bounceIn-data-v-a66e4c54{0%{opacity:0;-webkit-transform:scale(.3);transform:scale(.3)}50%{opacity:1;-webkit-transform:scale(1.05);transform:scale(1.05)}70%{-webkit-transform:scale(.9);transform:scale(.9)}to{-webkit-transform:scale(1);transform:scale(1)}}@-webkit-keyframes slideInRight-data-v-a66e4c54{0%{opacity:0;-webkit-transform:translateX(100px);transform:translateX(100px)}to{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes slideInRight-data-v-a66e4c54{0%{opacity:0;-webkit-transform:translateX(100px);transform:translateX(100px)}to{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@-webkit-keyframes pulse-data-v-a66e4c54{0%,to{opacity:.3}50%{opacity:.1}}@keyframes pulse-data-v-a66e4c54{0%,to{opacity:.3}50%{opacity:.1}}.slide-fade-enter-active[data-v-a66e4c54]{-webkit-transition:all .4s ease;transition:all .4s ease}.slide-fade-enter-from[data-v-a66e4c54]{-webkit-transform:translateY(-20px);transform:translateY(-20px);opacity:0}.dx-field-value[data-v-a66e4c54]{width:100%}.dx-field-label[data-v-a66e4c54]{width:100%;text-align:initial}.dx-field-value-static[data-v-a66e4c54],.dx-field-value[data-v-a66e4c54]:not(.dx-switch):not(.dx-checkbox):not(.dx-button){width:100%}.dx-textbox[data-v-a66e4c54]{border-radius:12px!important;border:2px solid rgba(224,243,255,.5)!important;-webkit-transition:all .3s ease!important;transition:all .3s ease!important}.dx-textbox[data-v-a66e4c54]:hover{border-color:var(--accent-color)!important}.dx-textbox.dx-state-focused[data-v-a66e4c54]{border-color:var(--accent-color)!important;-webkit-box-shadow:0 0 0 3px rgba(25,118,210,.1)!important;box-shadow:0 0 0 3px rgba(25,118,210,.1)!important}@media (max-width:600px){.fichaje-container[data-v-a66e4c54]{padding:16px}.main-card[data-v-a66e4c54]{max-width:100%}.form-content[data-v-a66e4c54]{padding:24px 20px}.company-name[data-v-a66e4c54]{font-size:20px}.welcome-text[data-v-a66e4c54]{font-size:16px}}.forgot-password-btn[data-v-a66e4c54]{background:transparent;color:#64748b;border:none;padding:12px;font-size:14px;font-weight:500;cursor:pointer;-webkit-transition:all .3s ease;transition:all .3s ease;border-radius:12px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;gap:6px}.forgot-password-btn[data-v-a66e4c54]:hover:not(:disabled){color:#519de1;background:rgba(81,157,225,.05)}.cancel-btn[data-v-a66e4c54]:focus,.create-btn[data-v-a66e4c54]:focus,.fichar-btn[data-v-a66e4c54]:focus{outline:2px solid var(--accent-color);outline-offset:2px}.company-logo[data-v-a66e4c54]{-webkit-animation:logoFloat-data-v-a66e4c54 3s ease-in-out infinite;animation:logoFloat-data-v-a66e4c54 3s ease-in-out infinite}@-webkit-keyframes logoFloat-data-v-a66e4c54{0%,to{-webkit-transform:translateY(0);transform:translateY(0)}50%{-webkit-transform:translateY(-5px);transform:translateY(-5px)}}@keyframes logoFloat-data-v-a66e4c54{0%,to{-webkit-transform:translateY(0);transform:translateY(0)}50%{-webkit-transform:translateY(-5px);transform:translateY(-5px)}}